Create fuel_generators.js
This commit is contained in:
parent
32f8ac5d89
commit
4261c6cb23
|
|
@ -0,0 +1,131 @@
|
|||
elements.gasoline = {
|
||||
color: ["#FFFF66", "#FFFF66", "#FFFF66", "#FFFF66", "#FFFF66"],
|
||||
burn: 15,
|
||||
burnTime: 300,
|
||||
viscosity: 0.6,
|
||||
density: 750,
|
||||
category: "fuels",
|
||||
behavior: behaviors.LIQUID,
|
||||
state: "liquid",
|
||||
desc: "Used in Gas Generators!"
|
||||
}
|
||||
|
||||
elements.diesel = {
|
||||
color: "#EBFBB5",
|
||||
burn: 10,
|
||||
burnTime: 600,
|
||||
viscosity: 3,
|
||||
density: 860,
|
||||
category: "fuels",
|
||||
behavior: behaviors.LIQUID,
|
||||
state: "liquid",
|
||||
desc: "Used in Diesel Generators!"
|
||||
}
|
||||
|
||||
elements.gasoline_generator = {
|
||||
color: "#6d5f5d",
|
||||
behavior: behaviors.WALL,
|
||||
state: "solid",
|
||||
density: 1000,
|
||||
category: "machines",
|
||||
properties: {
|
||||
shocksToDo: 0
|
||||
},
|
||||
hoverStat: function(pixel){return pixel.shocksToDo || 0},
|
||||
tick: function(pixel){
|
||||
if (pixel.shocksToDo <= 40){
|
||||
for (var i = 0; i < adjacentCoords.length; i++){
|
||||
var coord = adjacentCoords[i]
|
||||
var x = pixel.x + coord[0]
|
||||
var y = pixel.y + coord[1]
|
||||
if (!isEmpty(x, y, true)){
|
||||
var otherPixel = pixelMap[x][y]
|
||||
if (otherPixel.element == "gasoline"){
|
||||
deletePixel(x, y)
|
||||
if(!pixel.shocksToDo){pixel.shocksToDo = 0}
|
||||
pixel.shocksToDo += 10
|
||||
}
|
||||
else if (otherPixel.element == "gasoline_generator"){
|
||||
var otherPixel = pixelMap[x][y]
|
||||
var otherShock = otherPixel.shocksToDo || 0
|
||||
var currentShock = pixel.shocksToDo || 0
|
||||
if (otherShock > currentShock){
|
||||
otherPixel.shocksToDo --
|
||||
pixel.shocksToDo ++
|
||||
} else if (currentShock > otherShock) {
|
||||
otherPixel.shocksToDo ++
|
||||
pixel.shocksToDo --
|
||||
}
|
||||
}
|
||||
}
|
||||
}}
|
||||
if (!pixel.charge && !pixel.chargeCD && pixel.shocksToDo){
|
||||
for (var i = 0; i < adjacentCoords.length; i++){
|
||||
var coord = adjacentCoords[i]
|
||||
var x = pixel.x + coord[0]
|
||||
var y = pixel.y + coord[1]
|
||||
if (!isEmpty(x, y, true)){
|
||||
if (elements[pixelMap[x][y].element].conduct > 0){
|
||||
pixel.charge = 1
|
||||
pixel.shocksToDo --
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
elements.diesel_generator = {
|
||||
color: "#FF9C27",
|
||||
behavior: behaviors.WALL,
|
||||
state: "solid",
|
||||
density: 1000,
|
||||
category: "machines",
|
||||
properties: {
|
||||
shocksToDo: 0
|
||||
},
|
||||
hoverStat: function(pixel){return pixel.shocksToDo || 0},
|
||||
tick: function(pixel){
|
||||
if (pixel.shocksToDo <= 80){
|
||||
for (var i = 0; i < adjacentCoords.length; i++){
|
||||
var coord = adjacentCoords[i]
|
||||
var x = pixel.x + coord[0]
|
||||
var y = pixel.y + coord[1]
|
||||
if (!isEmpty(x, y, true)){
|
||||
var otherPixel = pixelMap[x][y]
|
||||
if (otherPixel.element == "diesel"){
|
||||
deletePixel(x, y)
|
||||
if(!pixel.shocksToDo){pixel.shocksToDo = 0}
|
||||
pixel.shocksToDo += 20
|
||||
}
|
||||
else if (otherPixel.element == "diesel_generator"){
|
||||
var otherPixel = pixelMap[x][y]
|
||||
var otherShock = otherPixel.shocksToDo || 0
|
||||
var currentShock = pixel.shocksToDo || 0
|
||||
if (otherShock > currentShock){
|
||||
otherPixel.shocksToDo --
|
||||
pixel.shocksToDo ++
|
||||
} else if (currentShock > otherShock) {
|
||||
otherPixel.shocksToDo ++
|
||||
pixel.shocksToDo --
|
||||
}
|
||||
}
|
||||
}
|
||||
}}
|
||||
if (!pixel.charge && !pixel.chargeCD && pixel.shocksToDo){
|
||||
for (var i = 0; i < adjacentCoords.length; i++){
|
||||
var coord = adjacentCoords[i]
|
||||
var x = pixel.x + coord[0]
|
||||
var y = pixel.y + coord[1]
|
||||
if (!isEmpty(x, y, true)){
|
||||
if (elements[pixelMap[x][y].element].conduct > 0){
|
||||
pixel.charge = 1
|
||||
pixel.shocksToDo --
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue