Many bugfixes and tweaks, added doors

This commit is contained in:
Anuken
2017-12-02 12:46:02 -05:00
parent 01b431801d
commit 6e111f1e80
23 changed files with 294 additions and 146 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 254 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 224 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 207 B

After

Width:  |  Height:  |  Size: 207 B

View File

@@ -277,6 +277,20 @@ blocks/dirtedge
orig: 12, 12 orig: 12, 12
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/door
rotate: false
xy: 312, 130
size: 8, 8
orig: 8, 8
offset: 0, 0
index: -1
blocks/door-open
rotate: false
xy: 312, 120
size: 8, 8
orig: 8, 8
offset: 0, 0
index: -1
blocks/doubleturret blocks/doubleturret
rotate: false rotate: false
xy: 370, 220 xy: 370, 220
@@ -286,7 +300,7 @@ blocks/doubleturret
index: -1 index: -1
blocks/duriumwall blocks/duriumwall
rotate: false rotate: false
xy: 312, 130 xy: 314, 110
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -300,7 +314,7 @@ blocks/duriumwall-large
index: -1 index: -1
blocks/duriumwall-large-icon blocks/duriumwall-large-icon
rotate: false rotate: false
xy: 312, 120 xy: 314, 100
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -314,70 +328,70 @@ blocks/flameturret
index: -1 index: -1
blocks/fluxpump blocks/fluxpump
rotate: false rotate: false
xy: 314, 100 xy: 314, 80
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/grass1 blocks/grass1
rotate: false rotate: false
xy: 314, 90 xy: 314, 70
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: 314, 80 xy: 314, 60
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: 314, 70 xy: 314, 50
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/grassblock-edge-0 blocks/grassblock-edge-0
rotate: false rotate: false
xy: 314, 40 xy: 325, 209
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/grassblock-edge-1 blocks/grassblock-edge-1
rotate: false rotate: false
xy: 314, 30 xy: 325, 199
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/grassblock-edge-2 blocks/grassblock-edge-2
rotate: false rotate: false
xy: 325, 209 xy: 325, 189
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/grassblock-edge-3 blocks/grassblock-edge-3
rotate: false rotate: false
xy: 325, 199 xy: 335, 211
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/grassblock1 blocks/grassblock1
rotate: false rotate: false
xy: 314, 60 xy: 314, 40
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: 314, 50 xy: 314, 30
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -391,21 +405,21 @@ blocks/grassedge
index: -1 index: -1
blocks/ice1 blocks/ice1
rotate: false rotate: false
xy: 325, 189 xy: 345, 211
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/ice2 blocks/ice2
rotate: false rotate: false
xy: 335, 211 xy: 335, 201
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/ice3 blocks/ice3
rotate: false rotate: false
xy: 345, 211 xy: 335, 191
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -419,84 +433,84 @@ blocks/iceedge
index: -1 index: -1
blocks/icerock1 blocks/icerock1
rotate: false rotate: false
xy: 335, 201 xy: 345, 201
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/icerock2 blocks/icerock2
rotate: false rotate: false
xy: 335, 191 xy: 345, 191
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/icerockshadow1 blocks/icerockshadow1
rotate: false rotate: false
xy: 345, 201 xy: 355, 210
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/rockshadow1 blocks/rockshadow1
rotate: false rotate: false
xy: 345, 201 xy: 355, 210
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/icerockshadow2 blocks/icerockshadow2
rotate: false rotate: false
xy: 345, 191 xy: 365, 210
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/rockshadow2 blocks/rockshadow2
rotate: false rotate: false
xy: 345, 191 xy: 365, 210
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/iron1 blocks/iron1
rotate: false rotate: false
xy: 325, 163 xy: 322, 143
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: 325, 153 xy: 322, 133
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: 322, 143 xy: 322, 123
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: 322, 133 xy: 324, 113
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: 322, 123 xy: 324, 103
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: 324, 113 xy: 324, 93
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -510,7 +524,7 @@ blocks/laserturret
index: -1 index: -1
blocks/lava blocks/lava
rotate: false rotate: false
xy: 324, 103 xy: 324, 83
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -524,28 +538,28 @@ blocks/lavaedge
index: -1 index: -1
blocks/lavasmelter blocks/lavasmelter
rotate: false rotate: false
xy: 324, 93 xy: 324, 73
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/liquiditemjunction blocks/liquiditemjunction
rotate: false rotate: false
xy: 324, 83 xy: 324, 63
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/liquidjunction blocks/liquidjunction
rotate: false rotate: false
xy: 324, 73 xy: 324, 53
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/liquidrouter blocks/liquidrouter
rotate: false rotate: false
xy: 324, 63 xy: 324, 43
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -573,14 +587,14 @@ blocks/mortarturret
index: -1 index: -1
blocks/mossblock blocks/mossblock
rotate: false rotate: false
xy: 324, 43 xy: 375, 206
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: 324, 43 xy: 375, 206
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -601,7 +615,7 @@ blocks/nuclearreactor-center
index: -1 index: -1
blocks/nuclearreactor-icon blocks/nuclearreactor-icon
rotate: false rotate: false
xy: 375, 206 xy: 385, 206
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -622,7 +636,7 @@ blocks/nuclearreactor-small
index: -1 index: -1
blocks/oil blocks/oil
rotate: false rotate: false
xy: 375, 196 xy: 385, 196
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -636,14 +650,14 @@ blocks/oiledge
index: -1 index: -1
blocks/oilrefinery blocks/oilrefinery
rotate: false rotate: false
xy: 385, 206 xy: 375, 186
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: 385, 196 xy: 385, 186
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -657,63 +671,63 @@ blocks/plasmaturret
index: -1 index: -1
blocks/powerbooster blocks/powerbooster
rotate: false rotate: false
xy: 375, 186 xy: 332, 143
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/poweredconveyor blocks/poweredconveyor
rotate: false rotate: false
xy: 385, 186 xy: 332, 133
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/poweredconveyormove blocks/poweredconveyormove
rotate: false rotate: false
xy: 332, 143 xy: 332, 123
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/powerlaser blocks/powerlaser
rotate: false rotate: false
xy: 332, 133 xy: 334, 113
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/powerlaserrouter blocks/powerlaserrouter
rotate: false rotate: false
xy: 332, 123 xy: 334, 103
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/pulseconduit blocks/pulseconduit
rotate: false rotate: false
xy: 334, 113 xy: 334, 93
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/pulseconduitbottom blocks/pulseconduitbottom
rotate: false rotate: false
xy: 334, 103 xy: 334, 83
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/pulseconduittop blocks/pulseconduittop
rotate: false rotate: false
xy: 334, 93 xy: 334, 73
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/pump blocks/pump
rotate: false rotate: false
xy: 334, 83 xy: 334, 63
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -727,70 +741,70 @@ blocks/repairturret
index: -1 index: -1
blocks/rock1 blocks/rock1
rotate: false rotate: false
xy: 334, 63 xy: 334, 43
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: 334, 53 xy: 334, 33
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: 334, 43 xy: 324, 23
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/rtgenerator blocks/rtgenerator
rotate: false rotate: false
xy: 334, 33 xy: 334, 23
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/sand1 blocks/sand1
rotate: false rotate: false
xy: 324, 23 xy: 321, 13
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/sand2 blocks/sand2
rotate: false rotate: false
xy: 334, 23 xy: 331, 13
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/sand3 blocks/sand3
rotate: false rotate: false
xy: 321, 13 xy: 321, 3
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/sandblock1 blocks/sandblock1
rotate: false rotate: false
xy: 331, 13 xy: 331, 3
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/sandblock2 blocks/sandblock2
rotate: false rotate: false
xy: 321, 3 xy: 341, 13
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/sandblock3 blocks/sandblock3
rotate: false rotate: false
xy: 331, 3 xy: 341, 3
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -811,7 +825,7 @@ blocks/shadow
index: -1 index: -1
blocks/shieldgenerator blocks/shieldgenerator
rotate: false rotate: false
xy: 341, 3 xy: 448, 209
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -825,21 +839,21 @@ blocks/shotgunturret
index: -1 index: -1
blocks/shrub blocks/shrub
rotate: false rotate: false
xy: 466, 387 xy: 486, 387
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: 476, 387 xy: 461, 349
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: 486, 387 xy: 459, 339
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -853,42 +867,42 @@ blocks/sniperturret
index: -1 index: -1
blocks/snow1 blocks/snow1
rotate: false rotate: false
xy: 461, 349 xy: 459, 329
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/snow2 blocks/snow2
rotate: false rotate: false
xy: 459, 339 xy: 459, 319
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/snow3 blocks/snow3
rotate: false rotate: false
xy: 459, 329 xy: 459, 309
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/snowblock1 blocks/snowblock1
rotate: false rotate: false
xy: 459, 319 xy: 459, 299
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/snowblock2 blocks/snowblock2
rotate: false rotate: false
xy: 459, 309 xy: 459, 289
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/snowblock3 blocks/snowblock3
rotate: false rotate: false
xy: 459, 299 xy: 459, 279
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -902,28 +916,28 @@ blocks/snowedge
index: -1 index: -1
blocks/sorter blocks/sorter
rotate: false rotate: false
xy: 459, 289 xy: 459, 269
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/steelconveyor blocks/steelconveyor
rotate: false rotate: false
xy: 459, 279 xy: 459, 259
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: 459, 269 xy: 459, 249
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: 459, 259 xy: 459, 239
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -937,7 +951,7 @@ blocks/steelwall-large
index: -1 index: -1
blocks/steelwall-large-icon blocks/steelwall-large-icon
rotate: false rotate: false
xy: 459, 249 xy: 459, 229
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -951,84 +965,84 @@ blocks/stone
index: -1 index: -1
blocks/stone1 blocks/stone1
rotate: false rotate: false
xy: 459, 239 xy: 459, 219
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: 459, 229 xy: 458, 209
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: 459, 219 xy: 498, 391
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/stoneblock-edge-0 blocks/stoneblock-edge-0
rotate: false rotate: false
xy: 337, 171 xy: 464, 377
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/stoneblock-edge-1 blocks/stoneblock-edge-1
rotate: false rotate: false
xy: 335, 161 xy: 474, 377
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/stoneblock-edge-2 blocks/stoneblock-edge-2
rotate: false rotate: false
xy: 464, 377 xy: 484, 377
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/stoneblock-edge-3 blocks/stoneblock-edge-3
rotate: false rotate: false
xy: 474, 377 xy: 463, 367
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/stoneblock-smooth1 blocks/stoneblock-smooth1
rotate: false rotate: false
xy: 484, 377 xy: 473, 367
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/stoneblock1 blocks/stoneblock1
rotate: false rotate: false
xy: 458, 209 xy: 337, 181
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: 498, 391 xy: 337, 171
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: 337, 181 xy: 335, 161
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: 463, 367 xy: 483, 367
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -1042,35 +1056,35 @@ blocks/stoneedge
index: -1 index: -1
blocks/stoneformer blocks/stoneformer
rotate: false rotate: false
xy: 473, 367 xy: 469, 339
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/stonewall blocks/stonewall
rotate: false rotate: false
xy: 483, 367 xy: 469, 329
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/teleporter blocks/teleporter
rotate: false rotate: false
xy: 469, 339 xy: 469, 319
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/teleporter-top blocks/teleporter-top
rotate: false rotate: false
xy: 469, 329 xy: 469, 309
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/thermalgenerator blocks/thermalgenerator
rotate: false rotate: false
xy: 469, 319 xy: 469, 299
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -1091,49 +1105,49 @@ blocks/titancannon-icon
index: -1 index: -1
blocks/titanium1 blocks/titanium1
rotate: false rotate: false
xy: 469, 309 xy: 469, 289
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: 469, 299 xy: 469, 279
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: 469, 289 xy: 469, 269
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: 469, 279 xy: 469, 259
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/titaniumpurifier blocks/titaniumpurifier
rotate: false rotate: false
xy: 469, 269 xy: 469, 249
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/titaniumshieldwall blocks/titaniumshieldwall
rotate: false rotate: false
xy: 469, 259 xy: 469, 239
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: 469, 249 xy: 469, 229
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -1147,7 +1161,7 @@ blocks/titaniumwall-large
index: -1 index: -1
blocks/titaniumwall-large-icon blocks/titaniumwall-large-icon
rotate: false rotate: false
xy: 469, 239 xy: 469, 219
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -1161,35 +1175,35 @@ blocks/turret
index: -1 index: -1
blocks/uranium1 blocks/uranium1
rotate: false rotate: false
xy: 468, 209 xy: 347, 180
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/uranium2 blocks/uranium2
rotate: false rotate: false
xy: 496, 381 xy: 357, 180
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/uranium3 blocks/uranium3
rotate: false rotate: false
xy: 347, 180 xy: 347, 170
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/uraniumdrill blocks/uraniumdrill
rotate: false rotate: false
xy: 357, 180 xy: 357, 170
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
blocks/water blocks/water
rotate: false rotate: false
xy: 347, 170 xy: 345, 160
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -1483,49 +1497,49 @@ enemyarrow
index: -1 index: -1
icon-coal icon-coal
rotate: false rotate: false
xy: 355, 210 xy: 355, 200
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: 365, 210 xy: 365, 200
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: 355, 200 xy: 355, 190
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: 365, 200 xy: 365, 190
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: 355, 190 xy: 327, 173
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: 365, 190 xy: 325, 163
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
icon-uranium icon-uranium
rotate: false rotate: false
xy: 327, 173 xy: 325, 153
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -1553,28 +1567,28 @@ mechs/player
index: -1 index: -1
shell shell
rotate: false rotate: false
xy: 341, 13 xy: 438, 213
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
shot shot
rotate: false rotate: false
xy: 438, 213 xy: 466, 387
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
shot-long shot-long
rotate: false rotate: false
xy: 448, 209 xy: 476, 387
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
titanshell titanshell
rotate: false rotate: false
xy: 469, 229 xy: 468, 209
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
@@ -2091,35 +2105,35 @@ weapons/blaster
index: -1 index: -1
weapons/flamer weapons/flamer
rotate: false rotate: false
xy: 314, 110 xy: 314, 90
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
weapons/mortar weapons/mortar
rotate: false rotate: false
xy: 324, 53 xy: 324, 33
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
weapons/multigun weapons/multigun
rotate: false rotate: false
xy: 324, 33 xy: 375, 196
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
weapons/railgun weapons/railgun
rotate: false rotate: false
xy: 334, 73 xy: 334, 53
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0
index: -1 index: -1
weapons/triblaster weapons/triblaster
rotate: false rotate: false
xy: 469, 219 xy: 496, 381
size: 8, 8 size: 8, 8
orig: 8, 8 orig: 8, 8
offset: 0, 0 offset: 0, 0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

After

Width:  |  Height:  |  Size: 52 KiB

View File

@@ -435,9 +435,7 @@ public class Control extends Module{
Entities.initPhysics(); Entities.initPhysics();
Entities.setCollider(tilesize, (x, y)->{ Entities.setCollider(tilesize, (x, y)-> world.solid(x, y));
return world.solid(x, y);
});
} }
@Override @Override

View File

@@ -9,6 +9,7 @@ import com.badlogic.gdx.math.Vector2;
import io.anuke.mindustry.Vars; import io.anuke.mindustry.Vars;
import io.anuke.mindustry.entities.effect.Fx; import io.anuke.mindustry.entities.effect.Fx;
import io.anuke.mindustry.input.Input;
import io.anuke.mindustry.resource.Recipe; import io.anuke.mindustry.resource.Recipe;
import io.anuke.mindustry.resource.Weapon; import io.anuke.mindustry.resource.Weapon;
import io.anuke.ucore.core.*; import io.anuke.ucore.core.*;
@@ -78,7 +79,7 @@ public class Player extends DestructibleEntity{
if(Inputs.keyDown("right")) if(Inputs.keyDown("right"))
vector.x += speed; vector.x += speed;
boolean shooting = Inputs.buttonDown(Buttons.LEFT) && recipe == null && !ui.hasMouse(); boolean shooting = Inputs.buttonDown(Buttons.LEFT) && recipe == null && !ui.hasMouse() && !Input.onConfigurable();
if(shooting && Timers.get(this, "reload", weapon.reload)){ if(shooting && Timers.get(this, "reload", weapon.reload)){
weapon.shoot(this); weapon.shoot(this);

View File

@@ -216,6 +216,18 @@ public class Fx{
Draw.reset(); Draw.reset();
}), }),
dooropen = new Effect(10, e -> {
Draw.thickness(e.fract() * 1.6f);
Draw.square(e.x, e.y, Vars.tilesize / 2f + e.ifract() * 2f);
Draw.reset();
}),
doorclose= new Effect(10, e -> {
Draw.thickness(e.fract() * 1.6f);
Draw.square(e.x, e.y, Vars.tilesize / 2f + e.fract() * 2f);
Draw.reset();
}),
purify = new Effect(10, e -> { purify = new Effect(10, e -> {
Draw.color(Color.ROYAL, Color.GRAY, e.ifract()); Draw.color(Color.ROYAL, Color.GRAY, e.ifract());
Draw.thickness(2f); Draw.thickness(2f);

View File

@@ -95,6 +95,11 @@ public class Input{
public static boolean cursorNear(){ public static boolean cursorNear(){
return Vector2.dst(player.x, player.y, tilex() * tilesize, tiley() * tilesize) <= placerange; return Vector2.dst(player.x, player.y, tilex() * tilesize, tiley() * tilesize) <= placerange;
} }
public static boolean onConfigurable(){
Tile tile = Vars.world.tile(tilex(), tiley());
return tile != null && tile.block() instanceof Configurable;
}
public static int tilex(){ public static int tilex(){
return (player.recipe != null && player.recipe.result.isMultiblock() && return (player.recipe != null && player.recipe.result.isMultiblock() &&

View File

@@ -17,6 +17,7 @@ public enum Recipe{
steelwalllarge(defense, DefenseBlocks.steelwalllarge, stack(Item.steel, 8)), steelwalllarge(defense, DefenseBlocks.steelwalllarge, stack(Item.steel, 8)),
titaniumwalllarge(defense, DefenseBlocks.titaniumwalllarge, stack(Item.titanium, 8)), titaniumwalllarge(defense, DefenseBlocks.titaniumwalllarge, stack(Item.titanium, 8)),
duriumwalllarge(defense, DefenseBlocks.diriumwalllarge, stack(Item.dirium, 8)), duriumwalllarge(defense, DefenseBlocks.diriumwalllarge, stack(Item.dirium, 8)),
door(defense, DefenseBlocks.door, stack(Item.steel, 3), stack(Item.iron, 3)),
titaniumshieldwall(defense, DefenseBlocks.titaniumshieldwall, stack(Item.titanium, 2)), titaniumshieldwall(defense, DefenseBlocks.titaniumshieldwall, stack(Item.titanium, 2)),
conveyor(distribution, DistributionBlocks.conveyor, stack(Item.stone, 1)), conveyor(distribution, DistributionBlocks.conveyor, stack(Item.stone, 1)),

View File

@@ -39,6 +39,8 @@ public class Block{
public boolean destructible; public boolean destructible;
/**whether this is solid*/ /**whether this is solid*/
public boolean solid; public boolean solid;
/**whethe this block CAN be solid.*/
public boolean solidifes;
/**whether this is rotateable*/ /**whether this is rotateable*/
public boolean rotate; public boolean rotate;
/**whether you can break this with rightblick*/ /**whether you can break this with rightblick*/
@@ -89,8 +91,8 @@ public class Block{
return name; return name;
} }
public String errorMessage(Tile tile){ public boolean isSolidFor(Tile tile){
return null; return false;
} }
public boolean canReplace(Block other){ public boolean canReplace(Block other){

View File

@@ -151,7 +151,7 @@ public class Tile{
public boolean solid(){ public boolean solid(){
Block block = block(); Block block = block();
Block floor = floor(); Block floor = floor();
return block.solid || floor.solid; return block.solid || (floor.solid && block == Blocks.air) || block.isSolidFor(this);
} }
public boolean breakable(){ public boolean breakable(){

View File

@@ -12,6 +12,7 @@ import io.anuke.mindustry.Vars;
import io.anuke.mindustry.ai.Pathfind; import io.anuke.mindustry.ai.Pathfind;
import io.anuke.mindustry.entities.TileEntity; import io.anuke.mindustry.entities.TileEntity;
import io.anuke.mindustry.entities.effect.Fx; import io.anuke.mindustry.entities.effect.Fx;
import io.anuke.mindustry.entities.enemies.Enemy;
import io.anuke.mindustry.resource.ItemStack; import io.anuke.mindustry.resource.ItemStack;
import io.anuke.mindustry.resource.Recipe; import io.anuke.mindustry.resource.Recipe;
import io.anuke.mindustry.world.blocks.*; import io.anuke.mindustry.world.blocks.*;
@@ -64,7 +65,7 @@ public class World extends Module{
public boolean solid(int x, int y){ public boolean solid(int x, int y){
Tile tile = tile(x, y); Tile tile = tile(x, y);
return tile == null || tile.block().solid || (tile.floor().solid && (tile.block() == Blocks.air)); return tile == null || tile.solid();
} }
public boolean wallSolid(int x, int y){ public boolean wallSolid(int x, int y){
@@ -269,7 +270,7 @@ public class World extends Module{
Vector2 offset = type.getPlaceOffset(); Vector2 offset = type.getPlaceOffset();
Tmp.r2.setCenter(offset.x + x * Vars.tilesize, offset.y + y * Vars.tilesize); Tmp.r2.setCenter(offset.x + x * Vars.tilesize, offset.y + y * Vars.tilesize);
for(SolidEntity e : Entities.getNearby(x * tilesize, y * tilesize, tilesize * 2f)){ for(SolidEntity e : Entities.getNearby(Entities.getGroup(Enemy.class), x * tilesize, y * tilesize, tilesize * 2f)){
Rectangle rect = e.hitbox.getRect(e.x, e.y); Rectangle rect = e.hitbox.getRect(e.x, e.y);
if(Tmp.r2.overlaps(rect)){ if(Tmp.r2.overlaps(rect)){
@@ -277,6 +278,10 @@ public class World extends Module{
} }
} }
if(Tmp.r2.overlaps(player.hitbox.getRect(player.x, player.y))){
return false;
}
Tile tile = tile(x, y); Tile tile = tile(x, y);
if(tile == null) return false; if(tile == null) return false;

View File

@@ -2,9 +2,7 @@ package io.anuke.mindustry.world.blocks;
import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.Block;
import io.anuke.mindustry.world.blocks.types.Wall; import io.anuke.mindustry.world.blocks.types.Wall;
import io.anuke.mindustry.world.blocks.types.defense.RepairTurret; import io.anuke.mindustry.world.blocks.types.defense.*;
import io.anuke.mindustry.world.blocks.types.defense.ShieldBlock;
import io.anuke.mindustry.world.blocks.types.defense.ShieldedWallBlock;
public class DefenseBlocks{ public class DefenseBlocks{
@@ -96,5 +94,9 @@ public class DefenseBlocks{
+ "but drains energy quickly on bullet contact."; + "but drains energy quickly on bullet contact.";
formalName = "shield generator"; formalName = "shield generator";
} }
}; },
door = new Door("door"){{
fullDescription = "A block than can be opened and closed by clicking it.";
health = 90;
}};
} }

View File

@@ -1,11 +1,85 @@
package io.anuke.mindustry.world.blocks.types.defense; package io.anuke.mindustry.world.blocks.types.defense;
import io.anuke.mindustry.world.blocks.types.Wall; import static io.anuke.mindustry.Vars.*;
public class Door extends Wall{ import com.badlogic.gdx.math.Rectangle;
import com.badlogic.gdx.math.Vector2;
import com.badlogic.gdx.utils.ObjectMap;
import io.anuke.mindustry.Vars;
import io.anuke.mindustry.entities.effect.Fx;
import io.anuke.mindustry.entities.enemies.Enemy;
import io.anuke.mindustry.world.Block;
import io.anuke.mindustry.world.Tile;
import io.anuke.mindustry.world.blocks.types.Configurable;
import io.anuke.mindustry.world.blocks.types.Wall;
import io.anuke.ucore.core.Draw;
import io.anuke.ucore.core.Effects;
import io.anuke.ucore.core.Effects.Effect;
import io.anuke.ucore.entities.Entities;
import io.anuke.ucore.entities.SolidEntity;
import io.anuke.ucore.scene.ui.layout.Table;
import io.anuke.ucore.util.Tmp;
public class Door extends Wall implements Configurable{
private ObjectMap<Tile, Boolean> open = new ObjectMap<>();
protected Effect openfx = Fx.dooropen;
protected Effect closefx = Fx.doorclose;
public Door(String name) { public Door(String name) {
super(name); super(name);
solid = false;
}
@Override
public void draw(Tile tile){
if(open.get(tile, true)){
Draw.rect(name, tile.worldx(), tile.worldy());
}else{
Draw.rect(name + "-open", tile.worldx(), tile.worldy());
}
}
@Override
public boolean isSolidFor(Tile tile){
return open.get(tile, true);
}
@Override
public void buildTable(Tile tile, Table table){
if(anyEntities(tile) && !open.get(tile, true)){
return;
}
open.put(tile, !open.get(tile, true));
if(open.get(tile)){
Effects.effect(closefx, tile.worldx(), tile.worldy());
}else{
Effects.effect(openfx, tile.worldx(), tile.worldy());
}
}
boolean anyEntities(Tile tile){
int x = tile.x, y = tile.y;
Block type = tile.block();
Tmp.r2.setSize(type.width * Vars.tilesize, type.height * Vars.tilesize);
Vector2 offset = type.getPlaceOffset();
Tmp.r2.setCenter(offset.x + x * Vars.tilesize, offset.y + y * Vars.tilesize);
for(SolidEntity e : Entities.getNearby(Entities.getGroup(Enemy.class), x * tilesize, y * tilesize, tilesize * 2f)){
Rectangle rect = e.hitbox.getRect(e.x, e.y);
if(Tmp.r2.overlaps(rect)){
return true;
}
}
if(Tmp.r2.overlaps(player.hitbox.getRect(player.x, player.y))){
return true;
}
return false;
} }
} }

View File

@@ -1,5 +1,7 @@
package io.anuke.mindustry.world.blocks.types.production; package io.anuke.mindustry.world.blocks.types.production;
import com.badlogic.gdx.utils.Array;
import io.anuke.mindustry.entities.effect.Fx; import io.anuke.mindustry.entities.effect.Fx;
import io.anuke.mindustry.resource.Item; import io.anuke.mindustry.resource.Item;
import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.Block;
@@ -21,6 +23,13 @@ public class Drill extends Block{
solid = true; solid = true;
} }
@Override
public void getStats(Array<String> list){
super.getStats(list);
list.add("[iteminfo]Capacity: " + capacity);
list.add("[iteminfo]Seconds/item: " + time);
}
@Override @Override
public void update(Tile tile){ public void update(Tile tile){

View File

@@ -26,6 +26,7 @@ public class Generator extends PowerBlock{
public boolean explosive = true; public boolean explosive = true;
public boolean drawRadius = false; public boolean drawRadius = false;
public boolean hasLasers = true; public boolean hasLasers = true;
public boolean outputOnly = false;
public Generator(String name) { public Generator(String name) {
super(name); super(name);
@@ -78,15 +79,17 @@ public class Generator extends PowerBlock{
@Override @Override
public void drawOver(Tile tile){ public void drawOver(Tile tile){
PowerEntity entity = tile.entity(); PowerEntity entity = tile.entity();
if(entity.power > powerSpeed){
Draw.alpha(1f);
}else{
Draw.alpha(0.5f);
}
for(int i = 0; i < laserDirections; i++){ for(int i = 0; i < laserDirections; i++){
if(entity.power > powerSpeed){
Draw.alpha(1f);
}else{
Draw.alpha(0.5f);
}
drawLaserTo(tile, (tile.getRotation() + i) - laserDirections/2); drawLaserTo(tile, (tile.getRotation() + i) - laserDirections/2);
} }
Draw.color();
} }
@Override @Override
@@ -121,7 +124,7 @@ public class Generator extends PowerBlock{
Tmp.v1.set(Angles.translation(rotation * 90, target.block().width * Vars.tilesize/2 + 2f + Tmp.v1.set(Angles.translation(rotation * 90, target.block().width * Vars.tilesize/2 + 2f +
(interfering ? (interfering ?
Vector2.dst(tile.worldx(), tile.worldy(), target.worldx(), target.worldy()) / 2f - Vars.tilesize/2f - 1 : 0))); Vector2.dst(tile.worldx(), tile.worldy(), target.worldx(), target.worldy()) / 2f - Vars.tilesize/2f * target.block().width - 1 : 0)));
Angles.translation(rotation * 90, width * Vars.tilesize/2 + 2f); Angles.translation(rotation * 90, width * Vars.tilesize/2 + 2f);

View File

@@ -18,6 +18,7 @@ public class ItemPowerGenerator extends Generator{
public ItemPowerGenerator(String name) { public ItemPowerGenerator(String name) {
super(name); super(name);
outputOnly = true;
} }
@Override @Override

View File

@@ -7,6 +7,7 @@ import io.anuke.mindustry.Vars;
import io.anuke.mindustry.entities.TileEntity; import io.anuke.mindustry.entities.TileEntity;
import io.anuke.mindustry.resource.Item; import io.anuke.mindustry.resource.Item;
import io.anuke.mindustry.world.Tile; import io.anuke.mindustry.world.Tile;
import io.anuke.ucore.core.Draw;
import io.anuke.ucore.core.Effects; import io.anuke.ucore.core.Effects;
import io.anuke.ucore.core.Timers; import io.anuke.ucore.core.Timers;
@@ -29,6 +30,7 @@ public class LiquidItemPowerGenerator extends LiquidPowerGenerator{
Vars.renderer.drawBar(Color.GREEN, tile.worldx() + offset.x, tile.worldy() + 6 + Vars.renderer.drawBar(Color.GREEN, tile.worldx() + offset.x, tile.worldy() + 6 +
offset.y + height*Vars.tilesize/2f, (float)entity.totalItems() / itemCapacity); offset.y + height*Vars.tilesize/2f, (float)entity.totalItems() / itemCapacity);
Draw.reset();
} }
@Override @Override

View File

@@ -30,6 +30,7 @@ public class LiquidPowerGenerator extends Generator implements LiquidAcceptor{
public LiquidPowerGenerator(String name) { public LiquidPowerGenerator(String name) {
super(name); super(name);
outputOnly = true;
} }
@Override @Override
@@ -56,7 +57,7 @@ public class LiquidPowerGenerator extends Generator implements LiquidAcceptor{
public void drawLiquidCenter(Tile tile){ public void drawLiquidCenter(Tile tile){
Vector2 offset = getPlaceOffset(); Vector2 offset = getPlaceOffset();
Draw.rect("black", tile.worldx() + offset.x, tile.worldy() + offset.y, 2, 2); Draw.rect("blank", tile.worldx() + offset.x, tile.worldy() + offset.y, 2, 2);
} }
@Override @Override

View File

@@ -1,5 +1,9 @@
package io.anuke.mindustry.world.blocks.types.production; package io.anuke.mindustry.world.blocks.types.production;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.graphics.Color;
import com.badlogic.gdx.math.Vector2; import com.badlogic.gdx.math.Vector2;
@@ -26,7 +30,7 @@ public class NuclearReactor extends LiquidItemPowerGenerator{
protected float smokeThreshold = 0.3f; //threshold at which block starts smoking protected float smokeThreshold = 0.3f; //threshold at which block starts smoking
protected int explosionRadius = 19; protected int explosionRadius = 19;
protected int explosionDamage = 128; protected int explosionDamage = 128;
protected float flashThreshold = 0.5f; protected float flashThreshold = 0.46f;
public NuclearReactor(String name) { public NuclearReactor(String name) {
super(name); super(name);
@@ -91,7 +95,7 @@ public class NuclearReactor extends LiquidItemPowerGenerator{
int fuel = entity.getItem(generateItem); int fuel = entity.getItem(generateItem);
if(fuel < 5) return; if(fuel < 5 && entity.heat < 0.5f) return;
int waves = 6; int waves = 6;
float delay = 8f; float delay = 8f;
@@ -156,13 +160,14 @@ public class NuclearReactor extends LiquidItemPowerGenerator{
Draw.rect("white", tile.worldx() + offset.x, tile.worldy() + offset.y, width * Vars.tilesize, height * Vars.tilesize); Draw.rect("white", tile.worldx() + offset.x, tile.worldy() + offset.y, width * Vars.tilesize, height * Vars.tilesize);
if(entity.heat > flashThreshold){ if(entity.heat > flashThreshold){
float flash = 9f - ((entity.heat - flashThreshold) / (1f - flashThreshold)) * 4f; float flash = 1f + ((entity.heat - flashThreshold) / (1f - flashThreshold)) * 5.4f;
Draw.color(Color.RED, Color.YELLOW, Mathf.absin(Timers.time(), flash, 1f)); entity.flash += flash * Timers.delta();
Draw.color(Color.RED, Color.YELLOW, Mathf.absin(entity.flash, 9f, 1f));
Draw.alpha(0.6f); Draw.alpha(0.6f);
Draw.rect(name + "-lights", tile.worldx() + offset.x, tile.worldy() + offset.y); Draw.rect(name + "-lights", tile.worldx() + offset.x, tile.worldy() + offset.y);
} }
Draw.color(); Draw.reset();
} }
@Override @Override
@@ -172,5 +177,18 @@ public class NuclearReactor extends LiquidItemPowerGenerator{
public static class NuclearReactorEntity extends LiquidPowerEntity{ public static class NuclearReactorEntity extends LiquidPowerEntity{
public float heat; public float heat;
public float flash;
@Override
public void write(DataOutputStream stream) throws IOException{
super.write(stream);
stream.writeFloat(heat);
}
@Override
public void read(DataInputStream stream) throws IOException{
super.read(stream);
heat = stream.readFloat();
}
} }
} }

Binary file not shown.

Binary file not shown.