Added coal purifier block
@@ -79,7 +79,7 @@ project(":core") {
|
|||||||
apply plugin: "java"
|
apply plugin: "java"
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
compile 'com.github.anuken:ucore:779c75e1b2'
|
compile 'com.github.anuken:ucore:073aa61a1c'
|
||||||
compile "com.badlogicgames.gdx:gdx:$gdxVersion"
|
compile "com.badlogicgames.gdx:gdx:$gdxVersion"
|
||||||
compile "com.badlogicgames.gdx:gdx-ai:1.8.1"
|
compile "com.badlogicgames.gdx:gdx-ai:1.8.1"
|
||||||
}
|
}
|
||||||
|
|||||||
BIN
core/assets-raw/sprites/blocks/coalpurifier.png
Normal file
|
After Width: | Height: | Size: 274 B |
@@ -46,104 +46,111 @@ blocks/coaldrill
|
|||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/conduit
|
blocks/coalpurifier
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 331, 23
|
xy: 331, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/conduitbottom
|
blocks/conduit
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 341, 23
|
xy: 341, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/conduitliquid
|
blocks/conduitbottom
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 351, 23
|
xy: 351, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/conduittop
|
blocks/conduitliquid
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 361, 23
|
xy: 361, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/conveyor
|
blocks/conduittop
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 371, 23
|
xy: 371, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/conveyormove
|
blocks/conveyor
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 381, 23
|
xy: 381, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/core
|
blocks/conveyormove
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 391, 23
|
xy: 391, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/cross
|
blocks/core
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 401, 23
|
xy: 401, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/crucible
|
blocks/cross
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 411, 23
|
xy: 411, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/deepwater
|
blocks/crucible
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 421, 23
|
xy: 421, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/dirt1
|
blocks/deepwater
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 431, 23
|
xy: 431, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/dirt2
|
blocks/dirt1
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 441, 23
|
xy: 441, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/dirt3
|
blocks/dirt2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 451, 23
|
xy: 451, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/dirtblock
|
blocks/dirt3
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 461, 23
|
xy: 461, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
|
blocks/dirtblock
|
||||||
|
rotate: false
|
||||||
|
xy: 471, 23
|
||||||
|
size: 8, 8
|
||||||
|
orig: 8, 8
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
blocks/dirtedge
|
blocks/dirtedge
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 85, 19
|
xy: 85, 19
|
||||||
@@ -160,7 +167,7 @@ blocks/doubleturret
|
|||||||
index: -1
|
index: -1
|
||||||
blocks/drill
|
blocks/drill
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 471, 23
|
xy: 481, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -174,35 +181,35 @@ blocks/flameturret
|
|||||||
index: -1
|
index: -1
|
||||||
blocks/grass1
|
blocks/grass1
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 491, 23
|
xy: 501, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/grass2
|
blocks/grass2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 501, 23
|
xy: 128, 11
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/grass3
|
blocks/grass3
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 128, 11
|
xy: 128, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/grassblock
|
blocks/grassblock
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 128, 1
|
xy: 138, 11
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/grassblock2
|
blocks/grassblock2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 138, 11
|
xy: 138, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -216,42 +223,42 @@ blocks/grassedge
|
|||||||
index: -1
|
index: -1
|
||||||
blocks/iron1
|
blocks/iron1
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 168, 1
|
xy: 178, 11
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/iron2
|
blocks/iron2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 178, 11
|
xy: 178, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/iron3
|
blocks/iron3
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 178, 1
|
xy: 188, 11
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/irondrill
|
blocks/irondrill
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 188, 11
|
xy: 188, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/ironwall
|
blocks/ironwall
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 188, 1
|
xy: 198, 11
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/junction
|
blocks/junction
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 198, 11
|
xy: 198, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -286,21 +293,21 @@ blocks/mortarturret
|
|||||||
index: -1
|
index: -1
|
||||||
blocks/mossblock
|
blocks/mossblock
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 208, 11
|
xy: 208, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/mossstone
|
blocks/mossstone
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 208, 11
|
xy: 208, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/omnidrill
|
blocks/omnidrill
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 208, 1
|
xy: 218, 11
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -314,7 +321,7 @@ blocks/plasmaturret
|
|||||||
index: -1
|
index: -1
|
||||||
blocks/pump
|
blocks/pump
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 218, 1
|
xy: 228, 11
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -328,35 +335,35 @@ blocks/repairturret
|
|||||||
index: -1
|
index: -1
|
||||||
blocks/rock
|
blocks/rock
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 228, 11
|
xy: 228, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/rock2
|
blocks/rock2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 228, 1
|
xy: 238, 11
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/rock2shadow
|
blocks/rock2shadow
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 238, 11
|
xy: 238, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/rockshadow
|
blocks/rockshadow
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 238, 1
|
xy: 248, 11
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/router
|
blocks/router
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 248, 11
|
xy: 248, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -377,21 +384,21 @@ blocks/shotgunturret
|
|||||||
index: -1
|
index: -1
|
||||||
blocks/shrub
|
blocks/shrub
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 248, 1
|
xy: 258, 11
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/shrubshadow
|
blocks/shrubshadow
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 258, 11
|
xy: 258, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/smelter
|
blocks/smelter
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 258, 1
|
xy: 268, 11
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -405,21 +412,21 @@ blocks/sniperturret
|
|||||||
index: -1
|
index: -1
|
||||||
blocks/steelconveyor
|
blocks/steelconveyor
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 268, 11
|
xy: 268, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/steelconveyormove
|
blocks/steelconveyormove
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 268, 1
|
xy: 278, 13
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/steelwall
|
blocks/steelwall
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 278, 13
|
xy: 278, 3
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -433,49 +440,49 @@ blocks/stone
|
|||||||
index: -1
|
index: -1
|
||||||
blocks/stone1
|
blocks/stone1
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 278, 3
|
xy: 288, 13
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/stone2
|
blocks/stone2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 288, 13
|
xy: 288, 3
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/stone3
|
blocks/stone3
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 288, 3
|
xy: 298, 13
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/stoneblock
|
blocks/stoneblock
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 298, 13
|
xy: 298, 3
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/stoneblock2
|
blocks/stoneblock2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 298, 3
|
xy: 308, 13
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/stoneblock3
|
blocks/stoneblock3
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 308, 13
|
xy: 308, 3
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/stonedrill
|
blocks/stonedrill
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 308, 3
|
xy: 318, 13
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -489,42 +496,42 @@ blocks/stoneedge
|
|||||||
index: -1
|
index: -1
|
||||||
blocks/stonewall
|
blocks/stonewall
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 318, 13
|
xy: 318, 3
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/titanium1
|
blocks/titanium1
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 318, 3
|
xy: 328, 13
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/titanium2
|
blocks/titanium2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 328, 13
|
xy: 328, 3
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/titanium3
|
blocks/titanium3
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 328, 3
|
xy: 338, 13
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/titaniumdrill
|
blocks/titaniumdrill
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 338, 13
|
xy: 338, 3
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
blocks/titaniumwall
|
blocks/titaniumwall
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 338, 3
|
xy: 348, 13
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -538,7 +545,7 @@ blocks/turret
|
|||||||
index: -1
|
index: -1
|
||||||
blocks/water
|
blocks/water
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 348, 13
|
xy: 348, 3
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -580,7 +587,7 @@ enemies/bossmech
|
|||||||
index: -1
|
index: -1
|
||||||
enemies/fastmech
|
enemies/fastmech
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 481, 23
|
xy: 491, 23
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -594,49 +601,49 @@ enemies/firemech
|
|||||||
index: -1
|
index: -1
|
||||||
enemies/mech1
|
enemies/mech1
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 198, 1
|
xy: 208, 11
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
icon-coal
|
icon-coal
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 138, 1
|
xy: 148, 11
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
icon-dirium
|
icon-dirium
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 148, 11
|
xy: 148, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
icon-iron
|
icon-iron
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 148, 1
|
xy: 158, 11
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
icon-steel
|
icon-steel
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 158, 11
|
xy: 158, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
icon-stone
|
icon-stone
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 158, 1
|
xy: 168, 11
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
icon-titanium
|
icon-titanium
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 168, 11
|
xy: 168, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -657,7 +664,7 @@ laserend
|
|||||||
index: -1
|
index: -1
|
||||||
player
|
player
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 218, 11
|
xy: 218, 1
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 8.7 KiB After Width: | Height: | Size: 8.8 KiB |
@@ -402,7 +402,7 @@ public class Control extends ControlModule{
|
|||||||
|
|
||||||
if(!GameState.is(State.paused)){
|
if(!GameState.is(State.paused)){
|
||||||
Inputs.update();
|
Inputs.update();
|
||||||
Timers.update(Gdx.graphics.getDeltaTime()*60f);
|
Timers.update();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -36,6 +36,13 @@ public class EffectLoader{
|
|||||||
Draw.reset();
|
Draw.reset();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Effects.create("purify", 10, e -> {
|
||||||
|
Draw.color(Hue.mix(Color.ROYAL, Color.GRAY, e.ifract()));
|
||||||
|
Draw.thickness(2f);
|
||||||
|
Draw.spikes(e.x, e.y, e.ifract() * 4f, 2, 6);
|
||||||
|
Draw.reset();
|
||||||
|
});
|
||||||
|
|
||||||
Effects.create("spark", 10, e -> {
|
Effects.create("spark", 10, e -> {
|
||||||
Draw.thickness(1f);
|
Draw.thickness(1f);
|
||||||
Draw.color(Hue.mix(Color.WHITE, Color.GRAY, e.ifract()));
|
Draw.color(Hue.mix(Color.WHITE, Color.GRAY, e.ifract()));
|
||||||
|
|||||||
@@ -108,7 +108,7 @@ public abstract class BulletType extends BaseBulletType<Bullet>{
|
|||||||
Draw.reset();
|
Draw.reset();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
plasmaflame = new BulletType(0.8f, 15){
|
plasmaflame = new BulletType(0.8f, 17){
|
||||||
{
|
{
|
||||||
lifetime = 65f;
|
lifetime = 65f;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ public class Player extends DestructibleEntity{
|
|||||||
float speed = this.speed;
|
float speed = this.speed;
|
||||||
|
|
||||||
if(Vars.debug)
|
if(Vars.debug)
|
||||||
speed = 2f;
|
speed *= 3f;
|
||||||
|
|
||||||
if(health < maxhealth && Timers.get(this, 50))
|
if(health < maxhealth && Timers.get(this, 50))
|
||||||
health ++;
|
health ++;
|
||||||
@@ -76,10 +76,10 @@ public class Player extends DestructibleEntity{
|
|||||||
|
|
||||||
vector.limit(speed);
|
vector.limit(speed);
|
||||||
|
|
||||||
move(vector.x*delta, vector.y*delta, 4);
|
move(vector.x*Timers.delta(), vector.y*Timers.delta(), 4);
|
||||||
|
|
||||||
if(!shooting){
|
if(!shooting){
|
||||||
direction.add(vector.scl(delta));
|
direction.add(vector.scl(Timers.delta()));
|
||||||
direction.limit(speed*6);
|
direction.limit(speed*6);
|
||||||
}else{
|
}else{
|
||||||
float angle = Angles.mouseAngle(x, y);
|
float angle = Angles.mouseAngle(x, y);
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ import io.anuke.mindustry.world.Tile;
|
|||||||
import io.anuke.mindustry.world.blocks.Blocks;
|
import io.anuke.mindustry.world.blocks.Blocks;
|
||||||
import io.anuke.mindustry.world.blocks.ProductionBlocks;
|
import io.anuke.mindustry.world.blocks.ProductionBlocks;
|
||||||
import io.anuke.ucore.core.Effects;
|
import io.anuke.ucore.core.Effects;
|
||||||
|
import io.anuke.ucore.core.Timers;
|
||||||
import io.anuke.ucore.entities.Entity;
|
import io.anuke.ucore.entities.Entity;
|
||||||
import io.anuke.ucore.util.Mathf;
|
import io.anuke.ucore.util.Mathf;
|
||||||
|
|
||||||
@@ -67,7 +68,7 @@ public class TileEntity extends Entity{
|
|||||||
@Override
|
@Override
|
||||||
public void update(){
|
public void update(){
|
||||||
if(health != 0 && !tile.block().name().contains("block") &&
|
if(health != 0 && !tile.block().name().contains("block") &&
|
||||||
Mathf.chance(0.009f*delta*(1f-(float)health/maxhealth))){
|
Mathf.chance(0.009f*Timers.delta()*(1f-(float)health/maxhealth))){
|
||||||
|
|
||||||
Effects.effect("smoke", x+Mathf.range(4), y+Mathf.range(4));
|
Effects.effect("smoke", x+Mathf.range(4), y+Mathf.range(4));
|
||||||
}
|
}
|
||||||
@@ -87,6 +88,10 @@ public class TileEntity extends Entity{
|
|||||||
return items.get(item, 0) > 0;
|
return items.get(item, 0) > 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean hasItem(Item item, int amount){
|
||||||
|
return items.get(item, 0) >= amount;
|
||||||
|
}
|
||||||
|
|
||||||
public void addItem(Item item, int amount){
|
public void addItem(Item item, int amount){
|
||||||
items.put(item, items.get(item, 0) + amount);
|
items.put(item, items.get(item, 0) + amount);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,7 +48,7 @@ public class Enemy extends DestructibleEntity{
|
|||||||
Vector2 vec = Pathfind.find(this);
|
Vector2 vec = Pathfind.find(this);
|
||||||
vec.sub(x, y).setLength(speed);
|
vec.sub(x, y).setLength(speed);
|
||||||
|
|
||||||
move(vec.x*delta, vec.y*delta, Vars.tilesize-4);
|
move(vec.x*Timers.delta(), vec.y*Timers.delta(), Vars.tilesize-4);
|
||||||
|
|
||||||
if(Timers.get(this, 15)){
|
if(Timers.get(this, 15)){
|
||||||
target = World.findTileTarget(x, y, null, range, false);
|
target = World.findTileTarget(x, y, null, range, false);
|
||||||
|
|||||||
@@ -76,7 +76,7 @@ public class Input{
|
|||||||
Tile cursor = World.cursorTile();
|
Tile cursor = World.cursorTile();
|
||||||
|
|
||||||
//block breaking
|
//block breaking
|
||||||
if(Inputs.buttonDown(Buttons.RIGHT) && World.cursorNear() && cursor.breakable()
|
if(cursor != null && Inputs.buttonDown(Buttons.RIGHT) && World.cursorNear() && cursor.breakable()
|
||||||
&& cursor.block() != ProductionBlocks.core){
|
&& cursor.block() != ProductionBlocks.core){
|
||||||
Tile tile = cursor;
|
Tile tile = cursor;
|
||||||
player.breaktime += Timers.delta();
|
player.breaktime += Timers.delta();
|
||||||
|
|||||||
@@ -27,8 +27,8 @@ public enum Recipe{
|
|||||||
sniperturret(defense, WeaponBlocks.sniperturret, stack(Item.iron, 30), stack(Item.steel, 20)),
|
sniperturret(defense, WeaponBlocks.sniperturret, stack(Item.iron, 30), stack(Item.steel, 20)),
|
||||||
laserturret(defense, WeaponBlocks.laserturret, stack(Item.steel, 20), stack(Item.titanium, 20)),
|
laserturret(defense, WeaponBlocks.laserturret, stack(Item.steel, 20), stack(Item.titanium, 20)),
|
||||||
mortarturret(defense, WeaponBlocks.mortarturret, stack(Item.steel, 40), stack(Item.titanium, 30)),
|
mortarturret(defense, WeaponBlocks.mortarturret, stack(Item.steel, 40), stack(Item.titanium, 30)),
|
||||||
waveturret(defense, WeaponBlocks.teslaturret, stack(Item.steel, 20), stack(Item.titanium, 20), stack(Item.dirium, 20)),
|
teslaturret(defense, WeaponBlocks.teslaturret, stack(Item.steel, 20), stack(Item.titanium, 30), stack(Item.dirium, 30)),
|
||||||
plasmaturret(defense, WeaponBlocks.plasmaturret, stack(Item.steel, 40), stack(Item.titanium, 30), stack(Item.dirium, 25)),
|
plasmaturret(defense, WeaponBlocks.plasmaturret, stack(Item.steel, 20), stack(Item.titanium, 20), stack(Item.dirium, 30)),
|
||||||
|
|
||||||
healturret(defense, WeaponBlocks.repairturret, stack(Item.iron, 50)),
|
healturret(defense, WeaponBlocks.repairturret, stack(Item.iron, 50)),
|
||||||
megahealturret(defense, WeaponBlocks.megarepairturret, stack(Item.iron, 30), stack(Item.steel, 50)),
|
megahealturret(defense, WeaponBlocks.megarepairturret, stack(Item.iron, 30), stack(Item.steel, 50)),
|
||||||
@@ -40,6 +40,7 @@ public enum Recipe{
|
|||||||
omnidrill(production, ProductionBlocks.omnidrill, stack(Item.steel, 50), stack(Item.titanium, 50)),
|
omnidrill(production, ProductionBlocks.omnidrill, stack(Item.steel, 50), stack(Item.titanium, 50)),
|
||||||
smelter(production, ProductionBlocks.smelter, stack(Item.stone, 80), stack(Item.iron, 80)),
|
smelter(production, ProductionBlocks.smelter, stack(Item.stone, 80), stack(Item.iron, 80)),
|
||||||
crucible(production, ProductionBlocks.crucible, stack(Item.titanium, 80), stack(Item.steel, 80)),
|
crucible(production, ProductionBlocks.crucible, stack(Item.titanium, 80), stack(Item.steel, 80)),
|
||||||
|
coalpurifier(production, ProductionBlocks.coalpurifier, stack(Item.steel, 20), stack(Item.iron, 20)),
|
||||||
|
|
||||||
conduit(distribution, ProductionBlocks.conduit, stack(Item.steel, 1)),
|
conduit(distribution, ProductionBlocks.conduit, stack(Item.steel, 1)),
|
||||||
pump(production, ProductionBlocks.pump, stack(Item.steel, 20));
|
pump(production, ProductionBlocks.pump, stack(Item.steel, 20));
|
||||||
|
|||||||
@@ -62,7 +62,7 @@ public class Generator{
|
|||||||
floor = Blocks.coal;
|
floor = Blocks.coal;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(Noise.nnoise(x, y, 5, 1) > 0.2){
|
if(Noise.nnoise(x, y, 9, 1) > 0.254){
|
||||||
floor = Blocks.titanium;
|
floor = Blocks.titanium;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import io.anuke.mindustry.Inventory;
|
|||||||
import io.anuke.mindustry.Renderer;
|
import io.anuke.mindustry.Renderer;
|
||||||
import io.anuke.mindustry.Vars;
|
import io.anuke.mindustry.Vars;
|
||||||
import io.anuke.mindustry.resource.Item;
|
import io.anuke.mindustry.resource.Item;
|
||||||
|
import io.anuke.mindustry.resource.Liquid;
|
||||||
import io.anuke.mindustry.world.Block;
|
import io.anuke.mindustry.world.Block;
|
||||||
import io.anuke.mindustry.world.Tile;
|
import io.anuke.mindustry.world.Tile;
|
||||||
import io.anuke.mindustry.world.blocks.types.*;
|
import io.anuke.mindustry.world.blocks.types.*;
|
||||||
@@ -154,6 +155,20 @@ public class ProductionBlocks{
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
coalpurifier = new Purifier("coalpurifier"){
|
||||||
|
{
|
||||||
|
formalName = "coal purifier";
|
||||||
|
input = Item.stone;
|
||||||
|
inputLiquid = Liquid.water;
|
||||||
|
output = Item.coal;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String description(){
|
||||||
|
return "Takes in stone + water, outputs coal.";
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
stonedrill = new Drill("stonedrill"){{
|
stonedrill = new Drill("stonedrill"){{
|
||||||
resource = Blocks.stone;
|
resource = Blocks.stone;
|
||||||
result = Item.stone;
|
result = Item.stone;
|
||||||
|
|||||||
@@ -141,7 +141,7 @@ public class WeaponBlocks{
|
|||||||
reload = 20f;
|
reload = 20f;
|
||||||
bullet = BulletType.shell;
|
bullet = BulletType.shell;
|
||||||
ammo = Item.stone;
|
ammo = Item.stone;
|
||||||
health = 1100;
|
health = 140;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -150,7 +150,7 @@ public class WeaponBlocks{
|
|||||||
Angles.translation(entity.rotation, 4);
|
Angles.translation(entity.rotation, 4);
|
||||||
|
|
||||||
new TeslaOrb(tile.worldx() + Angles.x(), tile.worldy() + Angles.y(),
|
new TeslaOrb(tile.worldx() + Angles.x(), tile.worldy() + Angles.y(),
|
||||||
70, (int)(10*Vars.multiplier)).add();
|
70, (int)(8*Vars.multiplier)).add();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ import io.anuke.ucore.core.Draw;
|
|||||||
import io.anuke.ucore.core.Timers;
|
import io.anuke.ucore.core.Timers;
|
||||||
|
|
||||||
public class Conduit extends Block{
|
public class Conduit extends Block{
|
||||||
protected float capacity = 10f;
|
protected float liquidCapacity = 10f;
|
||||||
protected float flowfactor = 4f;
|
protected float flowfactor = 4f;
|
||||||
|
|
||||||
public Conduit(String name) {
|
public Conduit(String name) {
|
||||||
@@ -26,9 +26,9 @@ public class Conduit extends Block{
|
|||||||
ConduitEntity entity = tile.entity();
|
ConduitEntity entity = tile.entity();
|
||||||
|
|
||||||
Draw.rect(name() + "bottom", tile.worldx(), tile.worldy(), tile.rotation * 90);
|
Draw.rect(name() + "bottom", tile.worldx(), tile.worldy(), tile.rotation * 90);
|
||||||
if(entity.liquid != null && entity.amount > 0.01f){
|
if(entity.liquid != null && entity.liquidAmount > 0.01f){
|
||||||
Draw.color(entity.liquid.color);
|
Draw.color(entity.liquid.color);
|
||||||
Draw.alpha(entity.amount / capacity);
|
Draw.alpha(entity.liquidAmount / liquidCapacity);
|
||||||
Draw.rect("conduitliquid", tile.worldx(), tile.worldy(), tile.rotation * 90);
|
Draw.rect("conduitliquid", tile.worldx(), tile.worldy(), tile.rotation * 90);
|
||||||
Draw.color();
|
Draw.color();
|
||||||
}
|
}
|
||||||
@@ -45,7 +45,7 @@ public class Conduit extends Block{
|
|||||||
public void update(Tile tile){
|
public void update(Tile tile){
|
||||||
ConduitEntity entity = tile.entity();
|
ConduitEntity entity = tile.entity();
|
||||||
|
|
||||||
if(entity.amount > 0.01f && Timers.get(entity, "flow", 3)){
|
if(entity.liquidAmount > 0.01f && Timers.get(entity, "flow", 3)){
|
||||||
tryMoveLiquid(tile, tile.getNearby()[tile.rotation]);
|
tryMoveLiquid(tile, tile.getNearby()[tile.rotation]);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -54,7 +54,7 @@ public class Conduit extends Block{
|
|||||||
public void tryDumpLiquid(Tile tile){
|
public void tryDumpLiquid(Tile tile){
|
||||||
ConduitEntity entity = tile.entity();
|
ConduitEntity entity = tile.entity();
|
||||||
|
|
||||||
if(entity.amount > 0.01f){
|
if(entity.liquidAmount > 0.01f){
|
||||||
tryMoveLiquid(tile, tile.getNearby()[tile.dump]);
|
tryMoveLiquid(tile, tile.getNearby()[tile.dump]);
|
||||||
tile.dump ++;
|
tile.dump ++;
|
||||||
tile.dump %= 4;
|
tile.dump %= 4;
|
||||||
@@ -66,47 +66,47 @@ public class Conduit extends Block{
|
|||||||
|
|
||||||
Liquid liquid = entity.liquid;
|
Liquid liquid = entity.liquid;
|
||||||
|
|
||||||
if(next != null && next.block() instanceof Conduit && entity.amount > 0.01f){
|
if(next != null && next.block() instanceof Conduit && entity.liquidAmount > 0.01f){
|
||||||
Conduit other = (Conduit)next.block();
|
Conduit other = (Conduit)next.block();
|
||||||
ConduitEntity otherentity = next.entity();
|
ConduitEntity otherentity = next.entity();
|
||||||
|
|
||||||
float flow = Math.min(other.capacity - otherentity.amount - 0.001f, Math.min(entity.amount/flowfactor, entity.amount));
|
float flow = Math.min(other.liquidCapacity - otherentity.liquidAmount - 0.001f, Math.min(entity.liquidAmount/flowfactor, entity.liquidAmount));
|
||||||
|
|
||||||
if(flow <= 0f || entity.amount < flow) return;
|
if(flow <= 0f || entity.liquidAmount < flow) return;
|
||||||
|
|
||||||
if(other.accept(next, tile, liquid, flow)){
|
if(other.acceptLiquid(next, tile, liquid, flow)){
|
||||||
other.addLiquid(next, tile, liquid, flow);
|
other.addLiquid(next, tile, liquid, flow);
|
||||||
entity.amount -= flow;
|
entity.liquidAmount -= flow;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean accept(Tile tile, Tile source, Liquid liquid, float amount){
|
public boolean acceptLiquid(Tile tile, Tile source, Liquid liquid, float amount){
|
||||||
ConduitEntity entity = tile.entity();
|
ConduitEntity entity = tile.entity();
|
||||||
|
|
||||||
return entity.amount + amount < capacity && (entity.liquid == liquid || entity.amount <= 0.01f);
|
return entity.liquidAmount + amount < liquidCapacity && (entity.liquid == liquid || entity.liquidAmount <= 0.01f);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void addLiquid(Tile tile, Tile source, Liquid liquid, float amount){
|
public void addLiquid(Tile tile, Tile source, Liquid liquid, float amount){
|
||||||
ConduitEntity entity = tile.entity();
|
ConduitEntity entity = tile.entity();
|
||||||
entity.liquid = liquid;
|
entity.liquid = liquid;
|
||||||
entity.amount += amount;
|
entity.liquidAmount += amount;
|
||||||
}
|
}
|
||||||
|
|
||||||
static class ConduitEntity extends TileEntity{
|
static class ConduitEntity extends TileEntity{
|
||||||
Liquid liquid;
|
Liquid liquid;
|
||||||
float amount;
|
float liquidAmount;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void write(DataOutputStream stream) throws IOException{
|
public void write(DataOutputStream stream) throws IOException{
|
||||||
stream.writeByte(liquid.ordinal());
|
stream.writeByte(liquid.ordinal());
|
||||||
stream.writeByte((byte)(amount));
|
stream.writeByte((byte)(liquidAmount));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void read(DataInputStream stream) throws IOException{
|
public void read(DataInputStream stream) throws IOException{
|
||||||
liquid = Liquid.values()[stream.readByte()];
|
liquid = Liquid.values()[stream.readByte()];
|
||||||
amount = stream.readByte();
|
liquidAmount = stream.readByte();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ public class Drill extends Block{
|
|||||||
Effects.effect("spark", tile.worldx(), tile.worldy());
|
Effects.effect("spark", tile.worldx(), tile.worldy());
|
||||||
}
|
}
|
||||||
|
|
||||||
if(Timers.get(tile.hashCode() + "dump", 30)){
|
if(Timers.get(tile.hashCode(), "dump", 30)){
|
||||||
tryDump(tile);
|
tryDump(tile);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ public class Pump extends Conduit{
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean accept(Tile tile, Tile source, Liquid liquid, float amount){
|
public boolean acceptLiquid(Tile tile, Tile source, Liquid liquid, float amount){
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -27,9 +27,9 @@ public class Pump extends Conduit{
|
|||||||
public void update(Tile tile){
|
public void update(Tile tile){
|
||||||
ConduitEntity entity = tile.entity();
|
ConduitEntity entity = tile.entity();
|
||||||
|
|
||||||
if(Timers.get(tile, "pump", 8) && entity.amount < capacity){
|
if(Timers.get(tile, "pump", 8) && entity.liquidAmount < liquidCapacity){
|
||||||
entity.liquid = Liquid.water;
|
entity.liquid = Liquid.water;
|
||||||
entity.amount += pumpspeed;
|
entity.liquidAmount += pumpspeed;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(Timers.get(tile, "dump", 1)){
|
if(Timers.get(tile, "dump", 1)){
|
||||||
|
|||||||
77
core/src/io/anuke/mindustry/world/blocks/types/Purifier.java
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
package io.anuke.mindustry.world.blocks.types;
|
||||||
|
|
||||||
|
import com.badlogic.gdx.graphics.Color;
|
||||||
|
|
||||||
|
import io.anuke.mindustry.Renderer;
|
||||||
|
import io.anuke.mindustry.entities.TileEntity;
|
||||||
|
import io.anuke.mindustry.resource.Item;
|
||||||
|
import io.anuke.mindustry.resource.Liquid;
|
||||||
|
import io.anuke.mindustry.world.Tile;
|
||||||
|
import io.anuke.ucore.core.Draw;
|
||||||
|
import io.anuke.ucore.core.Effects;
|
||||||
|
import io.anuke.ucore.core.Timers;
|
||||||
|
|
||||||
|
public class Purifier extends Conduit{
|
||||||
|
public Item input = null;
|
||||||
|
public int inputAmount = 5;
|
||||||
|
public Liquid inputLiquid = null;
|
||||||
|
public float liquidAmount = 19.99f;
|
||||||
|
public Item output = null;
|
||||||
|
public int itemCapacity = 100;
|
||||||
|
public int purifyTime = 90;
|
||||||
|
|
||||||
|
public Purifier(String name) {
|
||||||
|
super(name);
|
||||||
|
update = true;
|
||||||
|
rotate = false;
|
||||||
|
liquidCapacity = 20f;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void draw(Tile tile){
|
||||||
|
ConduitEntity entity = tile.entity();
|
||||||
|
Draw.rect(name(), tile.worldx(), tile.worldy());
|
||||||
|
|
||||||
|
Draw.color(Color.ROYAL);
|
||||||
|
Draw.alpha(entity.liquidAmount / liquidCapacity);
|
||||||
|
Draw.rect("blank", tile.worldx(), tile.worldy(), 2, 2);
|
||||||
|
Draw.color();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void update(Tile tile){
|
||||||
|
ConduitEntity entity = tile.entity();
|
||||||
|
|
||||||
|
if(Timers.get(tile, "purify", purifyTime) && entity.liquidAmount >= liquidAmount &&
|
||||||
|
entity.hasItem(input, inputAmount)){
|
||||||
|
|
||||||
|
entity.removeItem(input, inputAmount);
|
||||||
|
entity.liquidAmount -= liquidAmount;
|
||||||
|
offloadNear(tile, output);
|
||||||
|
Effects.effect("purify", tile.worldx(), tile.worldy());
|
||||||
|
}
|
||||||
|
|
||||||
|
if(Timers.get(tile.hashCode(), "dump", 30)){
|
||||||
|
tryDump(tile, -1, output);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void drawPixelOverlay(Tile tile){
|
||||||
|
float fract = (float)tile.entity.items.get(input, 0) / itemCapacity;
|
||||||
|
|
||||||
|
Renderer.drawBar(Color.GREEN, tile.worldx(), tile.worldy() + 13, fract);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean acceptLiquid(Tile tile, Tile source, Liquid liquid, float amount){
|
||||||
|
return super.acceptLiquid(tile, source, liquid, amount) && liquid == inputLiquid;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean accept(Item item, Tile tile, Tile source){
|
||||||
|
TileEntity entity = tile.entity();
|
||||||
|
return item == input && entity.items.get(item, 0) < itemCapacity;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
BIN
desktop/gifexport/recording1506017475.gif
Normal file
|
After Width: | Height: | Size: 8.1 MiB |
BIN
desktop/gifexport/recording1506017731.gif
Normal file
|
After Width: | Height: | Size: 1.8 MiB |
BIN
desktop/gifexport/recording1506017778.gif
Normal file
|
After Width: | Height: | Size: 1.5 MiB |
BIN
desktop/gifexport/recording1506017832.gif
Normal file
|
After Width: | Height: | Size: 850 KiB |
BIN
desktop/gifexport/recording1506018606.gif
Normal file
|
After Width: | Height: | Size: 999 KiB |
BIN
desktop/gifexport/recording1506023873.gif
Normal file
|
After Width: | Height: | Size: 1.0 MiB |
BIN
desktop/gifexport/recording1506023906.gif
Normal file
|
After Width: | Height: | Size: 1.5 MiB |
BIN
desktop/gifexport/recording1506024063.gif
Normal file
|
After Width: | Height: | Size: 242 KiB |
BIN
desktop/gifexport/recording1506024075.gif
Normal file
|
After Width: | Height: | Size: 1.5 MiB |
BIN
desktop/gifexport/recording1506024118.gif
Normal file
|
After Width: | Height: | Size: 1.4 MiB |
BIN
desktop/gifexport/recording1506024266.gif
Normal file
|
After Width: | Height: | Size: 1.6 MiB |
BIN
desktop/gifexport/recording1506024543.gif
Normal file
|
After Width: | Height: | Size: 1.1 MiB |
BIN
desktop/gifexport/recording1506024651.gif
Normal file
|
After Width: | Height: | Size: 1.2 MiB |