Update flipflop.js

This commit is contained in:
felixs-alt 2023-09-27 09:52:10 +02:00 committed by GitHub
parent 8eb6cc7c30
commit f720f4eaa6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 40 additions and 5 deletions

View File

@ -15,11 +15,10 @@ elements.flipflop = {
let Output = pixelMap[pixel.x+1][pixel.y] let Output = pixelMap[pixel.x+1][pixel.y]
let Input = pixelMap[pixel.x-1][pixel.y] let Input = pixelMap[pixel.x-1][pixel.y]
if (typeof Output !== "undefined" && typeof Input !== "undefined") { if (typeof Output !== "undefined" && typeof Input !== "undefined") {
console.log(pixel.cooldown) if (Input.charge == undefined && pixel.cooldown == 1) {
if (Input.charge == 0 && pixel.cooldown == 1) {
pixel.cooldown = 0 pixel.cooldown = 0
} }
if (Input.charge > 0.5 && pixel.cooldown == 0) { if (Input.charge > 0 && pixel.cooldown == 0) {
pixel.cooldown = 1 pixel.cooldown = 1
if (pixel.powerstate == "true") { if (pixel.powerstate == "true") {
pixel.powerstate = "false" pixel.powerstate = "false"
@ -29,8 +28,44 @@ elements.flipflop = {
pixel.color = "#94CF0D" pixel.color = "#94CF0D"
Output.charge = 1 Output.charge = 1
} }
} else { } else if (cooldown == 0) {
Output.charge = 0 Output.charge = undefined
}
}
}
};
elements.flipflop = {
properties: {
powerstate: "false",
cooldown: 0,
},
name: "Flip Flop",
color: "#CF300D",
state: "solid",
category: "machines",
tick: function(pixel) {
doHeat(pixel)
doBurning(pixel)
doElectricity(pixel)
let Output = pixelMap[pixel.x+1][pixel.y]
let Input = pixelMap[pixel.x-1][pixel.y]
if (typeof Output !== "undefined" && typeof Input !== "undefined") {
if (Input.charge == undefined && pixel.cooldown == 1) {
pixel.cooldown = 0
}
if (Input.charge > 0 && pixel.cooldown == 0) {
pixel.cooldown = 1
if (pixel.powerstate == "true") {
pixel.powerstate = "false"
pixel.color = "#CF300D"
} else if (pixel.powerstate == "false") {
pixel.powerstate = "true"
pixel.color = "#94CF0D"
Output.charge = 1
}
} else if (cooldown == 0) {
Output.charge = undefined
} }
} }
} }