Added repair point block
This commit is contained in:
BIN
core/assets-raw/sprites/blocks/units/repairpoint-shadow.png
Normal file
BIN
core/assets-raw/sprites/blocks/units/repairpoint-shadow.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 176 B |
BIN
core/assets-raw/sprites/blocks/units/repairpoint.png
Normal file
BIN
core/assets-raw/sprites/blocks/units/repairpoint.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 246 B |
@@ -279,42 +279,42 @@ pulseconduit-top
|
|||||||
index: -1
|
index: -1
|
||||||
router
|
router
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 284, 47
|
xy: 294, 47
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
sortedunloader
|
sortedunloader
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 568, 166
|
xy: 578, 166
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
sorter
|
sorter
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 578, 166
|
xy: 558, 155
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
splitter
|
splitter
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 568, 156
|
xy: 578, 156
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
steelconveyor
|
steelconveyor
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 578, 156
|
xy: 588, 162
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
steelconveyormove
|
steelconveyormove
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 588, 162
|
xy: 598, 162
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -328,7 +328,7 @@ teleporter-top
|
|||||||
index: -1
|
index: -1
|
||||||
unloader
|
unloader
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 374, 51
|
xy: 141, 26
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -342,7 +342,7 @@ vault
|
|||||||
index: -1
|
index: -1
|
||||||
vault-icon
|
vault-icon
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 141, 26
|
xy: 141, 16
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -713,56 +713,56 @@ oiledge
|
|||||||
index: -1
|
index: -1
|
||||||
rock1
|
rock1
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 264, 47
|
xy: 274, 47
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
rock2
|
rock2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 274, 47
|
xy: 284, 47
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
sand1
|
sand1
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 314, 47
|
xy: 324, 47
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
sand2
|
sand2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 324, 47
|
xy: 334, 47
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
sand3
|
sand3
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 334, 47
|
xy: 344, 47
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
sandblock1
|
sandblock1
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 344, 47
|
xy: 354, 47
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
sandblock2
|
sandblock2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 354, 47
|
xy: 370, 71
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
sandblock3
|
sandblock3
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 370, 71
|
xy: 548, 159
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -776,56 +776,56 @@ sandedge
|
|||||||
index: -1
|
index: -1
|
||||||
shrub
|
shrub
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 688, 231
|
xy: 698, 231
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
shrubshadow
|
shrubshadow
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 698, 231
|
xy: 677, 221
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
snow1
|
snow1
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 697, 221
|
xy: 677, 211
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
snow2
|
snow2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 677, 211
|
xy: 687, 211
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
snow3
|
snow3
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 687, 211
|
xy: 697, 211
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
snowblock1
|
snowblock1
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 697, 211
|
xy: 364, 59
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
snowblock2
|
snowblock2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 364, 59
|
xy: 364, 49
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
snowblock3
|
snowblock3
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 364, 49
|
xy: 558, 165
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -839,7 +839,7 @@ snowedge
|
|||||||
index: -1
|
index: -1
|
||||||
space
|
space
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 558, 155
|
xy: 568, 156
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -853,42 +853,42 @@ spaceedge
|
|||||||
index: -1
|
index: -1
|
||||||
stone1
|
stone1
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 588, 152
|
xy: 598, 152
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
stone2
|
stone2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 598, 152
|
xy: 608, 152
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
stone3
|
stone3
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 608, 152
|
xy: 618, 152
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
stoneblock1
|
stoneblock1
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 618, 152
|
xy: 628, 152
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
stoneblock2
|
stoneblock2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 628, 152
|
xy: 708, 238
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
stoneblock3
|
stoneblock3
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 708, 238
|
xy: 718, 238
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -902,49 +902,49 @@ stoneedge
|
|||||||
index: -1
|
index: -1
|
||||||
thorium1
|
thorium1
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 728, 228
|
xy: 707, 218
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
thorium2
|
thorium2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 707, 218
|
xy: 717, 218
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
thorium3
|
thorium3
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 717, 218
|
xy: 727, 218
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
titanium1
|
titanium1
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 727, 218
|
xy: 707, 208
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
titanium2
|
titanium2
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 707, 208
|
xy: 717, 208
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
titanium3
|
titanium3
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 717, 208
|
xy: 727, 208
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
water
|
water
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 144, 36
|
xy: 154, 42
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -1243,6 +1243,13 @@ powernode-shadow
|
|||||||
orig: 10, 10
|
orig: 10, 10
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
|
repairpoint-shadow
|
||||||
|
rotate: false
|
||||||
|
xy: 849, 295
|
||||||
|
size: 10, 10
|
||||||
|
orig: 10, 10
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
powernodelarge
|
powernodelarge
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 405, 107
|
xy: 405, 107
|
||||||
@@ -1266,21 +1273,21 @@ powervoid
|
|||||||
index: -1
|
index: -1
|
||||||
rtgenerator
|
rtgenerator
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 294, 47
|
xy: 304, 47
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
rtgenerator-top
|
rtgenerator-top
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 304, 47
|
xy: 314, 47
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
shieldgenerator
|
shieldgenerator
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 678, 241
|
xy: 688, 241
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -1294,7 +1301,7 @@ shieldprojector
|
|||||||
index: -1
|
index: -1
|
||||||
solarpanel
|
solarpanel
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 558, 165
|
xy: 568, 166
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -1315,7 +1322,7 @@ teleporter-top
|
|||||||
index: -1
|
index: -1
|
||||||
thermalgenerator
|
thermalgenerator
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 718, 228
|
xy: 728, 228
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -1714,21 +1721,21 @@ reinforceddrill-top
|
|||||||
index: -1
|
index: -1
|
||||||
separator
|
separator
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 548, 159
|
xy: 894, 385
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
separator-liquid
|
separator-liquid
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 894, 385
|
xy: 678, 241
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
siliconextractor
|
siliconextractor
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 677, 221
|
xy: 687, 221
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -1742,56 +1749,56 @@ siliconsmelter
|
|||||||
index: -1
|
index: -1
|
||||||
smelter
|
smelter
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 687, 221
|
xy: 697, 221
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
steeldrill
|
steeldrill
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 598, 162
|
xy: 608, 162
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
steeldrill-rotator
|
steeldrill-rotator
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 608, 162
|
xy: 618, 162
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
steeldrill-top
|
steeldrill-top
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 618, 162
|
xy: 628, 162
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
stonedrill
|
stonedrill
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 718, 238
|
xy: 728, 238
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
stoneformer
|
stoneformer
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 728, 238
|
xy: 708, 228
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
titaniumdrill
|
titaniumdrill
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 727, 208
|
xy: 738, 238
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
titaniumdrill-top
|
titaniumdrill-top
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 738, 238
|
xy: 738, 228
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -2062,6 +2069,13 @@ walkerfactory-top-open
|
|||||||
orig: 16, 16
|
orig: 16, 16
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
|
repairpoint
|
||||||
|
rotate: false
|
||||||
|
xy: 264, 47
|
||||||
|
size: 8, 8
|
||||||
|
orig: 8, 8
|
||||||
|
offset: 0, 0
|
||||||
|
index: -1
|
||||||
compositewall
|
compositewall
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 654, 275
|
xy: 654, 275
|
||||||
@@ -2120,7 +2134,7 @@ ironwall
|
|||||||
index: -1
|
index: -1
|
||||||
steelwall
|
steelwall
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 628, 162
|
xy: 588, 152
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -2134,21 +2148,21 @@ steelwall-large
|
|||||||
index: -1
|
index: -1
|
||||||
stonewall
|
stonewall
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 708, 228
|
xy: 718, 228
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
titaniumshieldwall
|
titaniumshieldwall
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 738, 228
|
xy: 737, 218
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
titaniumwall
|
titaniumwall
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 737, 218
|
xy: 737, 208
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -2232,7 +2246,7 @@ shell-back
|
|||||||
index: -1
|
index: -1
|
||||||
shot
|
shot
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 678, 231
|
xy: 688, 231
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
@@ -3414,42 +3428,42 @@ clustergun-equip
|
|||||||
index: -1
|
index: -1
|
||||||
shockgun
|
shockgun
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 688, 241
|
xy: 698, 241
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
shockgun-equip
|
shockgun-equip
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 698, 241
|
xy: 678, 231
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
triblaster
|
triblaster
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 737, 208
|
xy: 374, 61
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
triblaster-equip
|
triblaster-equip
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 374, 61
|
xy: 374, 51
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
vulcan
|
vulcan
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 141, 16
|
xy: 141, 6
|
||||||
size: 8, 8
|
size: 8, 8
|
||||||
orig: 8, 8
|
orig: 8, 8
|
||||||
offset: 0, 0
|
offset: 0, 0
|
||||||
index: -1
|
index: -1
|
||||||
vulcan-equip
|
vulcan-equip
|
||||||
rotate: false
|
rotate: false
|
||||||
xy: 141, 6
|
xy: 144, 36
|
||||||
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: 107 KiB After Width: | Height: | Size: 107 KiB |
@@ -114,6 +114,8 @@ public class Recipes {
|
|||||||
new Recipe(liquid, LiquidBlocks.pump, stack(Items.steel, 10)),
|
new Recipe(liquid, LiquidBlocks.pump, stack(Items.steel, 10)),
|
||||||
new Recipe(liquid, LiquidBlocks.fluxpump, stack(Items.steel, 10), stack(Items.densealloy, 5)),
|
new Recipe(liquid, LiquidBlocks.fluxpump, stack(Items.steel, 10), stack(Items.densealloy, 5)),
|
||||||
|
|
||||||
|
new Recipe(units, UnitBlocks.repairPoint, stack(Items.steel, 10)),
|
||||||
|
|
||||||
//new Recipe(units, UnitBlocks.droneFactory, stack(Items.steel, 10)),
|
//new Recipe(units, UnitBlocks.droneFactory, stack(Items.steel, 10)),
|
||||||
//new Recipe(units, UnitBlocks.vtolFactory, stack(Items.steel, 10)),
|
//new Recipe(units, UnitBlocks.vtolFactory, stack(Items.steel, 10)),
|
||||||
//new Recipe(units, UnitBlocks.droneFactory, stack(Items.steel, 10)),
|
//new Recipe(units, UnitBlocks.droneFactory, stack(Items.steel, 10)),
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import io.anuke.mindustry.content.Items;
|
|||||||
import io.anuke.mindustry.content.UnitTypes;
|
import io.anuke.mindustry.content.UnitTypes;
|
||||||
import io.anuke.mindustry.resource.ItemStack;
|
import io.anuke.mindustry.resource.ItemStack;
|
||||||
import io.anuke.mindustry.world.Block;
|
import io.anuke.mindustry.world.Block;
|
||||||
|
import io.anuke.mindustry.world.blocks.types.units.RepairPoint;
|
||||||
import io.anuke.mindustry.world.blocks.types.units.ResupplyPoint;
|
import io.anuke.mindustry.world.blocks.types.units.ResupplyPoint;
|
||||||
import io.anuke.mindustry.world.blocks.types.units.UnitFactory;
|
import io.anuke.mindustry.world.blocks.types.units.UnitFactory;
|
||||||
|
|
||||||
@@ -40,5 +41,9 @@ public class UnitBlocks {
|
|||||||
resupplyPoint = new ResupplyPoint("resupplypoint"){{
|
resupplyPoint = new ResupplyPoint("resupplypoint"){{
|
||||||
size = 2;
|
size = 2;
|
||||||
itemCapacity = 30;
|
itemCapacity = 30;
|
||||||
|
}},
|
||||||
|
|
||||||
|
repairPoint = new RepairPoint("repairpoint"){{
|
||||||
|
shadow = "repairpoint-shadow";
|
||||||
}};
|
}};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -96,6 +96,29 @@ public class Units {
|
|||||||
return result[0];
|
return result[0];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**Returns the closest ally of this team. Filter by predicate.*/
|
||||||
|
public static Unit getClosest(Team team, float x, float y, float range, Predicate<Unit> predicate){
|
||||||
|
Unit[] result = {null};
|
||||||
|
float[] cdist = {0};
|
||||||
|
|
||||||
|
rect.setSize(range*2f).setCenter(x, y);
|
||||||
|
|
||||||
|
getNearby(team, rect, e -> {
|
||||||
|
if (!predicate.test(e))
|
||||||
|
return;
|
||||||
|
|
||||||
|
float dist = Vector2.dst(e.x, e.y, x, y);
|
||||||
|
if (dist < range) {
|
||||||
|
if (result[0] == null || dist < cdist[0]) {
|
||||||
|
result[0] = e;
|
||||||
|
cdist[0] = dist;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
return result[0];
|
||||||
|
}
|
||||||
|
|
||||||
/**Iterates over all units in a rectangle.*/
|
/**Iterates over all units in a rectangle.*/
|
||||||
public static void getNearby(Team team, Rectangle rect, Consumer<Unit> cons){
|
public static void getNearby(Team team, Rectangle rect, Consumer<Unit> cons){
|
||||||
|
|
||||||
|
|||||||
@@ -62,8 +62,7 @@ public class TeamInfo {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**Returns a set of all teams that are enemies of this team.
|
/**Returns a set of all teams that are enemies of this team.
|
||||||
* For teams not active, an empty set is returned.
|
* For teams not active, an empty set is returned.*/
|
||||||
*/
|
|
||||||
public ObjectSet<Team> enemiesOf(Team team) {
|
public ObjectSet<Team> enemiesOf(Team team) {
|
||||||
boolean ally = allies.contains(team);
|
boolean ally = allies.contains(team);
|
||||||
boolean enemy = enemies.contains(team);
|
boolean enemy = enemies.contains(team);
|
||||||
|
|||||||
@@ -0,0 +1,93 @@
|
|||||||
|
package io.anuke.mindustry.world.blocks.types.units;
|
||||||
|
|
||||||
|
import com.badlogic.gdx.graphics.Color;
|
||||||
|
import com.badlogic.gdx.math.Rectangle;
|
||||||
|
import io.anuke.mindustry.entities.TileEntity;
|
||||||
|
import io.anuke.mindustry.entities.Unit;
|
||||||
|
import io.anuke.mindustry.entities.Units;
|
||||||
|
import io.anuke.mindustry.graphics.Layer;
|
||||||
|
import io.anuke.mindustry.world.Block;
|
||||||
|
import io.anuke.mindustry.world.Tile;
|
||||||
|
import io.anuke.mindustry.world.flags.BlockFlag;
|
||||||
|
import io.anuke.ucore.core.Timers;
|
||||||
|
import io.anuke.ucore.graphics.Draw;
|
||||||
|
import io.anuke.ucore.graphics.Shapes;
|
||||||
|
import io.anuke.ucore.util.Angles;
|
||||||
|
import io.anuke.ucore.util.EnumSet;
|
||||||
|
import io.anuke.ucore.util.Mathf;
|
||||||
|
|
||||||
|
public class RepairPoint extends Block{
|
||||||
|
private static Rectangle rect = new Rectangle();
|
||||||
|
|
||||||
|
protected int timerTarget = timers ++;
|
||||||
|
|
||||||
|
protected float repairRadius = 50f;
|
||||||
|
protected float repairSpeed = 0.3f;
|
||||||
|
protected float powerUsage = 0.2f;
|
||||||
|
|
||||||
|
public RepairPoint(String name) {
|
||||||
|
super(name);
|
||||||
|
update = true;
|
||||||
|
solid = true;
|
||||||
|
flags = EnumSet.of(BlockFlag.repair);
|
||||||
|
layer = Layer.laser;
|
||||||
|
hasItems = false;
|
||||||
|
hasPower = true;
|
||||||
|
powerCapacity = 20f;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void drawLayer(Tile tile) {
|
||||||
|
RepairPointEntity entity = tile.entity();
|
||||||
|
|
||||||
|
if(entity.target != null){
|
||||||
|
float ang = entity.angleTo(entity.target);
|
||||||
|
float len = 2f;
|
||||||
|
|
||||||
|
Draw.color(Color.valueOf("e8ffd7"));
|
||||||
|
Draw.alpha(entity.strength);
|
||||||
|
Shapes.laser("laser", "laser-end",
|
||||||
|
tile.drawx() + Angles.trnsx(ang, len), tile.drawy() + Angles.trnsy(ang, len),
|
||||||
|
entity.target.x, entity.target.y);
|
||||||
|
Draw.color();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void update(Tile tile) {
|
||||||
|
RepairPointEntity entity = tile.entity();
|
||||||
|
|
||||||
|
if(entity.target != null && (entity.target.isDead() || entity.target.distanceTo(tile) > repairRadius ||
|
||||||
|
entity.target.health >= entity.target.maxhealth)){
|
||||||
|
entity.target = null;
|
||||||
|
}else if(entity.target != null){
|
||||||
|
entity.target.health += repairSpeed * Timers.delta() * entity.strength;
|
||||||
|
entity.target.clampHealth();
|
||||||
|
}
|
||||||
|
|
||||||
|
float powerUse = Math.min(Timers.delta() * powerUsage, powerCapacity);
|
||||||
|
|
||||||
|
if(entity.target != null && entity.power.amount >= powerUse){
|
||||||
|
entity.power.amount -= powerUse;
|
||||||
|
entity.strength = Mathf.lerpDelta(entity.strength, 1f, 0.07f * Timers.delta());
|
||||||
|
}else{
|
||||||
|
entity.strength = Mathf.lerpDelta(entity.strength, 0f, 0.05f * Timers.delta());
|
||||||
|
}
|
||||||
|
|
||||||
|
if(entity.timer.get(timerTarget, 20)) {
|
||||||
|
rect.setSize(repairRadius * 2).setCenter(tile.drawx(), tile.drawy());
|
||||||
|
entity.target = Units.getClosest(tile.getTeam(), tile.drawx(), tile.drawy(), repairRadius,
|
||||||
|
unit -> unit.health < unit.maxhealth);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public TileEntity getEntity() {
|
||||||
|
return new RepairPointEntity();
|
||||||
|
}
|
||||||
|
|
||||||
|
public class RepairPointEntity extends TileEntity{
|
||||||
|
public Unit target;
|
||||||
|
public float strength;
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user