diff --git a/core/assets-raw/sprites/blocks/production/biomattercompressor-frame0.png b/core/assets-raw/sprites/blocks/production/biomattercompressor-frame0.png index f83f257b6d..bbe09a38b8 100644 Binary files a/core/assets-raw/sprites/blocks/production/biomattercompressor-frame0.png and b/core/assets-raw/sprites/blocks/production/biomattercompressor-frame0.png differ diff --git a/core/assets-raw/sprites/blocks/production/biomattercompressor-frame1.png b/core/assets-raw/sprites/blocks/production/biomattercompressor-frame1.png index 6cd1f91b99..e0b2fff505 100644 Binary files a/core/assets-raw/sprites/blocks/production/biomattercompressor-frame1.png and b/core/assets-raw/sprites/blocks/production/biomattercompressor-frame1.png differ diff --git a/core/assets-raw/sprites/blocks/production/biomattercompressor.png b/core/assets-raw/sprites/blocks/production/biomattercompressor.png index a7d633c61b..3c499904d6 100644 Binary files a/core/assets-raw/sprites/blocks/production/biomattercompressor.png and b/core/assets-raw/sprites/blocks/production/biomattercompressor.png differ diff --git a/core/assets-raw/sprites/blocks/production/cultivator-top.png b/core/assets-raw/sprites/blocks/production/cultivator-top.png index fd4b013d72..4ac8993b98 100644 Binary files a/core/assets-raw/sprites/blocks/production/cultivator-top.png and b/core/assets-raw/sprites/blocks/production/cultivator-top.png differ diff --git a/core/assets-raw/sprites/mechs/mechs/tau-mech-base.png b/core/assets-raw/sprites/mechs/mechs/tau-mech-base.png index 277d848d8f..8b4b329810 100644 Binary files a/core/assets-raw/sprites/mechs/mechs/tau-mech-base.png and b/core/assets-raw/sprites/mechs/mechs/tau-mech-base.png differ diff --git a/core/assets-raw/sprites/mechs/mechs/tau-mech-leg.png b/core/assets-raw/sprites/mechs/mechs/tau-mech-leg.png index d25325c6bc..803a4bb4c5 100644 Binary files a/core/assets-raw/sprites/mechs/mechs/tau-mech-leg.png and b/core/assets-raw/sprites/mechs/mechs/tau-mech-leg.png differ diff --git a/core/assets-raw/sprites/mechs/mechs/tau-mech.png b/core/assets-raw/sprites/mechs/mechs/tau-mech.png index 039c8834b8..f5bd954b7b 100644 Binary files a/core/assets-raw/sprites/mechs/mechs/tau-mech.png and b/core/assets-raw/sprites/mechs/mechs/tau-mech.png differ diff --git a/core/assets-raw/sprites/weapons/heal-blaster-equip.png b/core/assets-raw/sprites/weapons/heal-blaster-equip.png new file mode 100644 index 0000000000..29702cc4b4 Binary files /dev/null and b/core/assets-raw/sprites/weapons/heal-blaster-equip.png differ diff --git a/core/assets/sprites/sprites.atlas b/core/assets/sprites/sprites.atlas index 30b632caf1..8a2ee82cf2 100644 --- a/core/assets/sprites/sprites.atlas +++ b/core/assets/sprites/sprites.atlas @@ -13,287 +13,287 @@ background index: -1 bridge-conveyor-arrow rotate: false - xy: 903, 279 + xy: 873, 259 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 bridge-conveyor-bridge rotate: false - xy: 913, 279 + xy: 883, 269 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 bridge-conveyor-end rotate: false - xy: 923, 279 + xy: 853, 236 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-0-1 rotate: false - xy: 853, 216 + xy: 903, 249 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-0-2 rotate: false - xy: 863, 219 + xy: 913, 259 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-0-3 rotate: false - xy: 873, 229 + xy: 923, 269 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-1-0 rotate: false - xy: 883, 239 + xy: 853, 196 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-1-1 rotate: false - xy: 893, 249 + xy: 863, 199 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-1-2 rotate: false - xy: 903, 259 + xy: 873, 209 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-1-3 rotate: false - xy: 913, 269 + xy: 883, 219 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-2-0 rotate: false - xy: 853, 206 + xy: 893, 229 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-2-1 rotate: false - xy: 863, 209 + xy: 903, 239 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-2-2 rotate: false - xy: 873, 219 + xy: 913, 249 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-2-3 rotate: false - xy: 883, 229 + xy: 923, 259 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-3-0 rotate: false - xy: 893, 239 + xy: 933, 269 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-3-1 rotate: false - xy: 903, 249 + xy: 943, 275 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-3-2 rotate: false - xy: 913, 259 + xy: 873, 199 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-3-3 rotate: false - xy: 923, 269 + xy: 883, 209 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-4-0 rotate: false - xy: 853, 196 + xy: 893, 219 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-4-1 rotate: false - xy: 863, 199 + xy: 903, 229 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-4-2 rotate: false - xy: 873, 209 + xy: 913, 239 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-4-3 rotate: false - xy: 883, 219 + xy: 923, 249 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-0-1 rotate: false - xy: 469, 98 + xy: 431, 34 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-0-2 rotate: false - xy: 479, 108 + xy: 441, 34 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-0-3 rotate: false - xy: 469, 88 + xy: 451, 34 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-1-0 rotate: false - xy: 479, 98 + xy: 461, 34 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-1-1 rotate: false - xy: 489, 108 + xy: 471, 34 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-1-2 rotate: false - xy: 479, 88 + xy: 481, 34 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-1-3 rotate: false - xy: 489, 98 + xy: 476, 74 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-2-0 rotate: false - xy: 499, 108 + xy: 476, 64 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-2-1 rotate: false - xy: 489, 88 + xy: 485, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-2-2 rotate: false - xy: 499, 98 + xy: 491, 44 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-2-3 rotate: false - xy: 509, 108 + xy: 491, 34 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-3-0 rotate: false - xy: 499, 88 + xy: 311, 31 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-3-1 rotate: false - xy: 509, 98 + xy: 321, 31 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-3-2 rotate: false - xy: 519, 108 + xy: 331, 31 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-3-3 rotate: false - xy: 509, 88 + xy: 341, 31 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-4-0 rotate: false - xy: 519, 98 + xy: 351, 31 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-4-1 rotate: false - xy: 529, 108 + xy: 361, 31 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-4-2 rotate: false - xy: 519, 88 + xy: 371, 31 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-4-3 rotate: false - xy: 529, 98 + xy: 381, 31 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -307,21 +307,21 @@ mass-driver-turret index: -1 phase-conveyor-arrow rotate: false - xy: 983, 175 + xy: 411, 41 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 phase-conveyor-bridge rotate: false - xy: 993, 175 + xy: 305, 5 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 phase-conveyor-end rotate: false - xy: 1003, 177 + xy: 419, 114 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -545,14 +545,14 @@ block-icon-blackstone index: -1 blackstone2 rotate: false - xy: 536, 159 + xy: 582, 158 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstone3 rotate: false - xy: 474, 148 + xy: 592, 158 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -566,56 +566,56 @@ blackstoneedge index: -1 coal1 rotate: false - xy: 933, 279 + xy: 863, 239 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 coal2 rotate: false - xy: 853, 276 + xy: 873, 249 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 coal3 rotate: false - xy: 853, 266 + xy: 883, 259 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 copper1 rotate: false - xy: 893, 229 + xy: 933, 259 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 copper2 rotate: false - xy: 903, 239 + xy: 953, 275 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 copper3 rotate: false - xy: 913, 249 + xy: 943, 265 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 dirt2 rotate: false - xy: 893, 219 + xy: 933, 249 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 dirt3 rotate: false - xy: 903, 229 + xy: 963, 275 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -629,98 +629,98 @@ dirtedge index: -1 generic-cliff-edge rotate: false - xy: 903, 219 + xy: 973, 275 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ice-cliff-edge rotate: false - xy: 903, 219 + xy: 973, 275 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 generic-cliff-edge-1 rotate: false - xy: 913, 229 + xy: 943, 245 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ice-cliff-edge-1 rotate: false - xy: 913, 229 + xy: 943, 245 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 generic-cliff-edge-2 rotate: false - xy: 923, 239 + xy: 953, 255 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ice-cliff-edge-2 rotate: false - xy: 923, 239 + xy: 953, 255 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 generic-cliff-side rotate: false - xy: 933, 249 + xy: 963, 265 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ice-cliff-side rotate: false - xy: 933, 249 + xy: 963, 265 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 grass-cliff-edge rotate: false - xy: 953, 265 + xy: 923, 219 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 grass-cliff-edge-1 rotate: false - xy: 893, 199 + xy: 933, 229 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 grass-cliff-edge-2 rotate: false - xy: 903, 209 + xy: 983, 275 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 grass-cliff-side rotate: false - xy: 913, 219 + xy: 943, 235 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 grass2 rotate: false - xy: 963, 275 + xy: 903, 199 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 grass3 rotate: false - xy: 943, 255 + xy: 913, 209 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -734,385 +734,385 @@ grassedge index: -1 ice2 rotate: false - xy: 933, 239 + xy: 963, 255 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ice3 rotate: false - xy: 973, 275 + xy: 973, 265 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 iceedge rotate: false - xy: 177, 17 + xy: 191, 17 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 icerock2 rotate: false - xy: 943, 245 + xy: 913, 199 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icerockshadow1 rotate: false - xy: 953, 255 + xy: 923, 209 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 rockshadow1 rotate: false - xy: 953, 255 + xy: 923, 209 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icerockshadow2 rotate: false - xy: 963, 265 + xy: 933, 219 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 rockshadow2 rotate: false - xy: 963, 265 + xy: 933, 219 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lavaedge rotate: false - xy: 191, 3 + xy: 723, 186 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 lead1 rotate: false - xy: 963, 235 + xy: 963, 215 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lead2 rotate: false - xy: 973, 245 + xy: 973, 225 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lead3 rotate: false - xy: 983, 255 + xy: 983, 235 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 metalfloor2 rotate: false - xy: 963, 215 + xy: 993, 215 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 metalfloor3 rotate: false - xy: 973, 225 + xy: 993, 205 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 metalfloor4 rotate: false - xy: 983, 235 + xy: 863, 189 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 metalfloor5 rotate: false - xy: 993, 245 + xy: 873, 189 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 metalfloor6 rotate: false - xy: 963, 205 + xy: 883, 189 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 metalflooredge rotate: false - xy: 401, 51 + xy: 486, 195 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 oiledge rotate: false - xy: 500, 195 + xy: 514, 195 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 rock2 rotate: false - xy: 381, 41 + xy: 459, 94 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sand2 rotate: false - xy: 401, 41 + xy: 429, 84 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sand3 rotate: false - xy: 411, 41 + xy: 439, 84 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sandedge rotate: false - xy: 514, 195 + xy: 528, 195 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 shrubshadow rotate: false - xy: 429, 114 + xy: 446, 74 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snow2 rotate: false - xy: 419, 94 + xy: 456, 74 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snow3 rotate: false - xy: 429, 104 + xy: 466, 74 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snowedge rotate: false - xy: 542, 195 + xy: 556, 192 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 spaceedge rotate: false - xy: 556, 192 + xy: 484, 181 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 stone-cliff-edge rotate: false - xy: 429, 84 + xy: 465, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stone-cliff-edge-1 rotate: false - xy: 439, 84 + xy: 421, 44 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stone-cliff-edge-2 rotate: false - xy: 449, 84 + xy: 431, 44 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stone-cliff-side rotate: false - xy: 459, 84 + xy: 441, 44 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stone2 rotate: false - xy: 459, 94 + xy: 445, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stone3 rotate: false - xy: 419, 84 + xy: 455, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stoneedge rotate: false - xy: 484, 181 + xy: 498, 181 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 thorium1 rotate: false - xy: 418, 74 + xy: 451, 44 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 thorium2 rotate: false - xy: 428, 74 + xy: 461, 44 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 thorium3 rotate: false - xy: 438, 74 + xy: 471, 44 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium1 rotate: false - xy: 448, 74 + xy: 475, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium2 rotate: false - xy: 458, 74 + xy: 481, 44 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium3 rotate: false - xy: 469, 108 + xy: 421, 34 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 water-cliff-edge rotate: false - xy: 529, 88 + xy: 401, 31 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 water-cliff-edge-1 rotate: false - xy: 539, 98 + xy: 411, 31 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 water-cliff-edge-2 rotate: false - xy: 549, 108 + xy: 307, 21 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 water-cliff-side rotate: false - xy: 539, 88 + xy: 317, 21 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 wateredge rotate: false - xy: 540, 181 + xy: 509, 167 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 block-border rotate: false - xy: 494, 138 + xy: 662, 159 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-elevation rotate: false - xy: 504, 148 + xy: 1007, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 combustion-generator-top rotate: false - xy: 504, 148 + xy: 1007, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-middle rotate: false - xy: 843, 188 + xy: 863, 269 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pump-liquid rotate: false - xy: 843, 188 + xy: 863, 269 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-slope rotate: false - xy: 853, 286 + xy: 853, 256 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 border rotate: false - xy: 863, 279 + xy: 863, 259 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-liquid rotate: false - xy: 883, 259 + xy: 893, 249 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 cross-1 rotate: false - xy: 923, 259 + xy: 883, 199 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1140,7 +1140,7 @@ cross-4 index: -1 enemyspawn rotate: false - xy: 893, 209 + xy: 933, 239 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1154,21 +1154,21 @@ nuclearreactor-shadow index: -1 place-arrow rotate: false - xy: 1013, 177 + xy: 419, 104 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 playerspawn rotate: false - xy: 287, 15 + xy: 429, 114 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ripples rotate: false - xy: 654, 180 + xy: 594, 168 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -1217,7 +1217,7 @@ rubble-3-1 index: -1 shadow-1 rotate: false - xy: 666, 180 + xy: 606, 168 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -1259,14 +1259,14 @@ shadow-6 index: -1 shadow-corner rotate: false - xy: 1007, 277 + xy: 618, 168 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 shadow-round-1 rotate: false - xy: 406, 69 + xy: 630, 168 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -1294,154 +1294,154 @@ shadow-rounded-2 index: -1 bridge-conduit-arrow rotate: false - xy: 873, 279 + xy: 873, 269 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 bridge-conduit-bridge rotate: false - xy: 883, 279 + xy: 853, 246 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 bridge-conduit-end rotate: false - xy: 893, 279 + xy: 863, 249 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-bottom rotate: false - xy: 873, 269 + xy: 873, 239 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-bottom-0 rotate: false - xy: 853, 246 + xy: 883, 249 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-bottom-1 rotate: false - xy: 863, 249 + xy: 893, 259 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-bottom-2 rotate: false - xy: 873, 259 + xy: 903, 269 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-bottom-3 rotate: false - xy: 883, 269 + xy: 853, 216 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-bottom-4 rotate: false - xy: 853, 236 + xy: 863, 219 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-bottom-5 rotate: false - xy: 863, 239 + xy: 873, 229 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-bottom-6 rotate: false - xy: 873, 249 + xy: 883, 239 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-top-0 rotate: false - xy: 893, 269 + xy: 903, 259 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-top-1 rotate: false - xy: 853, 226 + xy: 913, 269 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-top-2 rotate: false - xy: 863, 229 + xy: 853, 206 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-top-3 rotate: false - xy: 873, 239 + xy: 863, 209 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-top-4 rotate: false - xy: 883, 249 + xy: 873, 219 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-top-5 rotate: false - xy: 893, 259 + xy: 883, 229 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-top-6 rotate: false - xy: 903, 269 + xy: 893, 239 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquid-router rotate: false - xy: 973, 235 + xy: 973, 205 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquid-router-bottom rotate: false - xy: 983, 245 + xy: 983, 215 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquid-router-liquid rotate: false - xy: 993, 255 + xy: 993, 225 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquid-router-top rotate: false - xy: 953, 205 + xy: 983, 205 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1469,70 +1469,70 @@ liquid-tank-top index: -1 phase-conduit-arrow rotate: false - xy: 953, 175 + xy: 381, 41 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 phase-conduit-bridge rotate: false - xy: 963, 175 + xy: 391, 41 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 phase-conduit-end rotate: false - xy: 973, 175 + xy: 401, 41 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pulse-conduit-top-0 rotate: false - xy: 297, 15 + xy: 419, 94 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pulse-conduit-top-1 rotate: false - xy: 285, 5 + xy: 429, 104 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pulse-conduit-top-2 rotate: false - xy: 295, 5 + xy: 439, 114 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pulse-conduit-top-3 rotate: false - xy: 301, 39 + xy: 429, 94 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pulse-conduit-top-4 rotate: false - xy: 311, 41 + xy: 439, 104 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pulse-conduit-top-5 rotate: false - xy: 321, 41 + xy: 449, 114 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pulse-conduit-top-6 rotate: false - xy: 331, 41 + xy: 439, 94 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1623,7 +1623,7 @@ fusion-reactor-top index: -1 rtg-generator-top rotate: false - xy: 391, 41 + xy: 419, 84 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1812,14 +1812,14 @@ cultivator-top index: -1 lavasmelter rotate: false - xy: 953, 225 + xy: 953, 205 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 oilrefinery rotate: false - xy: 993, 205 + xy: 973, 195 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1861,21 +1861,21 @@ poweralloysmelter-top index: -1 pulverizer rotate: false - xy: 341, 41 + xy: 449, 104 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pulverizer-rotator rotate: false - xy: 351, 41 + xy: 459, 114 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 separator-liquid rotate: false - xy: 419, 114 + xy: 426, 74 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1896,21 +1896,21 @@ core-top index: -1 sortedunloader rotate: false - xy: 439, 94 + xy: 456, 64 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-1 rotate: false - xy: 494, 148 + xy: 642, 159 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-1-top rotate: false - xy: 484, 128 + xy: 652, 159 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1980,7 +1980,7 @@ cyclone index: -1 duo rotate: false - xy: 883, 199 + xy: 923, 229 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2001,7 +2001,7 @@ spectre index: -1 hail rotate: false - xy: 923, 229 + xy: 953, 245 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2078,21 +2078,21 @@ salvo-panel-right index: -1 scatter rotate: false - xy: 1003, 167 + xy: 469, 94 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 scorch rotate: false - xy: 1013, 167 + xy: 469, 84 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 scorch-shoot rotate: false - xy: 305, 5 + xy: 416, 74 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2246,14 +2246,14 @@ reconstructor-open index: -1 repair-point-turret rotate: false - xy: 361, 41 + xy: 449, 94 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 resupply-point rotate: false - xy: 371, 41 + xy: 459, 104 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2281,7 +2281,7 @@ door-large-open index: -1 door-open rotate: false - xy: 943, 265 + xy: 913, 219 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2316,7 +2316,7 @@ bullet index: -1 bullet-back rotate: false - xy: 481, 158 + xy: 571, 171 size: 9, 9 orig: 9, 9 offset: 0, 0 @@ -2337,21 +2337,21 @@ clear index: -1 command-attack rotate: false - xy: 863, 269 + xy: 893, 269 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 command-idle rotate: false - xy: 853, 256 + xy: 853, 226 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 command-retreat rotate: false - xy: 863, 259 + xy: 863, 229 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2407,14 +2407,14 @@ minelaser-end index: -1 missile rotate: false - xy: 492, 158 + xy: 642, 169 size: 9, 9 orig: 9, 9 offset: 0, 0 index: -1 missile-back rotate: false - xy: 503, 158 + xy: 653, 169 size: 9, 9 orig: 9, 9 offset: 0, 0 @@ -2456,21 +2456,21 @@ scorch5 index: -1 shell rotate: false - xy: 514, 158 + xy: 664, 169 size: 9, 9 orig: 9, 9 offset: 0, 0 index: -1 shell-back rotate: false - xy: 525, 158 + xy: 571, 160 size: 9, 9 orig: 9, 9 offset: 0, 0 index: -1 shot rotate: false - xy: 419, 104 + xy: 436, 74 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2484,7 +2484,7 @@ transfer index: -1 transfer-arrow rotate: false - xy: 539, 108 + xy: 391, 31 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2498,28 +2498,28 @@ transfer-end index: -1 blackstone-cliff-edge rotate: false - xy: 474, 138 + xy: 602, 158 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstone-cliff-edge-1 rotate: false - xy: 484, 148 + xy: 612, 158 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstone-cliff-edge-2 rotate: false - xy: 474, 128 + xy: 622, 158 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstone-cliff-side rotate: false - xy: 484, 138 + xy: 632, 158 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2547,28 +2547,28 @@ block-icon-blast-drill index: -1 block-icon-bridge-conduit rotate: false - xy: 494, 128 + xy: 406, 71 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 bridge-conduit rotate: false - xy: 494, 128 + xy: 406, 71 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-bridge-conveyor rotate: false - xy: 504, 138 + xy: 675, 170 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 bridge-conveyor rotate: false - xy: 504, 138 + xy: 675, 170 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2589,14 +2589,14 @@ centrifuge index: -1 block-icon-combustion-generator rotate: false - xy: 514, 148 + xy: 672, 159 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 combustion-generator rotate: false - xy: 514, 148 + xy: 672, 159 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2617,14 +2617,14 @@ command-center index: -1 block-icon-composite-wall rotate: false - xy: 504, 128 + xy: 813, 288 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 composite-wall rotate: false - xy: 504, 128 + xy: 813, 288 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2645,35 +2645,35 @@ composite-wall-large index: -1 block-icon-conduit rotate: false - xy: 514, 138 + xy: 823, 288 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-conveyor rotate: false - xy: 524, 148 + xy: 811, 278 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor-0-0 rotate: false - xy: 524, 148 + xy: 811, 278 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-copper-wall rotate: false - xy: 514, 128 + xy: 833, 288 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 copper-wall rotate: false - xy: 514, 128 + xy: 833, 288 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2750,28 +2750,28 @@ dart-ship-factory index: -1 block-icon-deepwater rotate: false - xy: 524, 138 + xy: 821, 278 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 deepwater rotate: false - xy: 524, 138 + xy: 821, 278 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-deflector-wall rotate: false - xy: 524, 128 + xy: 813, 268 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 deflector-wall rotate: false - xy: 524, 128 + xy: 813, 268 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2806,14 +2806,14 @@ delta-mech-factory index: -1 block-icon-dirt rotate: false - xy: 474, 118 + xy: 831, 278 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 dirt1 rotate: false - xy: 474, 118 + xy: 831, 278 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2834,14 +2834,14 @@ distributor index: -1 block-icon-door rotate: false - xy: 484, 118 + xy: 813, 258 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 door rotate: false - xy: 484, 118 + xy: 813, 258 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2869,21 +2869,21 @@ block-icon-drone-pad index: -1 block-icon-drop-point rotate: false - xy: 494, 118 + xy: 823, 268 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 drop-point rotate: false - xy: 494, 118 + xy: 823, 268 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-duo rotate: false - xy: 504, 118 + xy: 813, 248 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2911,63 +2911,63 @@ block-icon-fusion-reactor index: -1 block-icon-grass rotate: false - xy: 514, 118 + xy: 823, 258 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 grass1 rotate: false - xy: 514, 118 + xy: 823, 258 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-hail rotate: false - xy: 524, 118 + xy: 813, 238 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-ice rotate: false - xy: 813, 288 + xy: 823, 248 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ice1 rotate: false - xy: 813, 288 + xy: 823, 248 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-icerock rotate: false - xy: 823, 288 + xy: 813, 228 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icerock1 rotate: false - xy: 823, 288 + xy: 813, 228 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-incinerator rotate: false - xy: 811, 278 + xy: 823, 238 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 incinerator rotate: false - xy: 811, 278 + xy: 823, 238 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2981,28 +2981,28 @@ block-icon-interceptor-pad index: -1 block-icon-itemsource rotate: false - xy: 833, 288 + xy: 813, 218 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 itemsource rotate: false - xy: 833, 288 + xy: 813, 218 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-itemvoid rotate: false - xy: 821, 278 + xy: 823, 228 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 itemvoid rotate: false - xy: 821, 278 + xy: 823, 228 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3023,14 +3023,14 @@ javelin-ship-factory index: -1 block-icon-junction rotate: false - xy: 813, 268 + xy: 813, 208 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 junction rotate: false - xy: 813, 268 + xy: 813, 208 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3051,35 +3051,35 @@ block-icon-laser-drill index: -1 block-icon-lava rotate: false - xy: 831, 278 + xy: 823, 218 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lava rotate: false - xy: 831, 278 + xy: 823, 218 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-liquid-junction rotate: false - xy: 813, 258 + xy: 813, 198 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquid-junction rotate: false - xy: 813, 258 + xy: 813, 198 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-liquid-router rotate: false - xy: 823, 268 + xy: 823, 208 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3093,14 +3093,14 @@ block-icon-liquid-tank index: -1 block-icon-liquidsource rotate: false - xy: 813, 248 + xy: 813, 188 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquidsource rotate: false - xy: 813, 248 + xy: 813, 188 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3128,14 +3128,14 @@ block-icon-mechanical-drill index: -1 block-icon-mechanical-pump rotate: false - xy: 823, 258 + xy: 823, 198 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 mechanical-pump rotate: false - xy: 823, 258 + xy: 823, 198 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3149,28 +3149,28 @@ block-icon-meltdown index: -1 block-icon-melter rotate: false - xy: 813, 238 + xy: 823, 188 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 melter rotate: false - xy: 813, 238 + xy: 823, 188 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-metalfloor rotate: false - xy: 823, 248 + xy: 833, 268 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 metalfloor1 rotate: false - xy: 823, 248 + xy: 833, 268 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3184,14 +3184,14 @@ block-icon-monsoon-pad index: -1 block-icon-oil rotate: false - xy: 813, 228 + xy: 833, 258 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 oil rotate: false - xy: 813, 228 + xy: 833, 258 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3205,56 +3205,56 @@ block-icon-oil-extractor index: -1 block-icon-overflow-gate rotate: false - xy: 823, 238 + xy: 833, 248 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 overflow-gate rotate: false - xy: 823, 238 + xy: 833, 248 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-phase-conduit rotate: false - xy: 813, 218 + xy: 833, 238 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 phase-conduit rotate: false - xy: 813, 218 + xy: 833, 238 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-phase-conveyor rotate: false - xy: 823, 228 + xy: 833, 228 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 phase-conveyor rotate: false - xy: 823, 228 + xy: 833, 228 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-phase-wall rotate: false - xy: 813, 208 + xy: 833, 218 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 phase-wall rotate: false - xy: 813, 208 + xy: 833, 218 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3310,14 +3310,14 @@ block-icon-pneumatic-drill index: -1 block-icon-power-node rotate: false - xy: 823, 218 + xy: 833, 208 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 power-node rotate: false - xy: 823, 218 + xy: 833, 208 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3338,42 +3338,42 @@ power-node-large index: -1 block-icon-powerinfinite rotate: false - xy: 813, 198 + xy: 833, 198 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 powerinfinite rotate: false - xy: 813, 198 + xy: 833, 198 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-powervoid rotate: false - xy: 823, 208 + xy: 833, 188 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 powervoid rotate: false - xy: 823, 208 + xy: 833, 188 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-pulse-conduit rotate: false - xy: 813, 188 + xy: 841, 278 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-pulverizer rotate: false - xy: 823, 198 + xy: 843, 268 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3436,14 +3436,14 @@ reconstructor index: -1 block-icon-repair-point rotate: false - xy: 823, 188 + xy: 843, 258 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 repair-point rotate: false - xy: 823, 188 + xy: 843, 258 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3457,14 +3457,14 @@ block-icon-ripple index: -1 block-icon-rock rotate: false - xy: 833, 268 + xy: 843, 248 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 rock1 rotate: false - xy: 833, 268 + xy: 843, 248 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3485,28 +3485,28 @@ rotary-pump index: -1 block-icon-router rotate: false - xy: 833, 258 + xy: 843, 238 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 router rotate: false - xy: 833, 258 + xy: 843, 238 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-rtg-generator rotate: false - xy: 833, 248 + xy: 843, 228 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 rtg-generator rotate: false - xy: 833, 248 + xy: 843, 228 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3520,49 +3520,49 @@ block-icon-salvo index: -1 block-icon-sand rotate: false - xy: 833, 238 + xy: 843, 218 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sand1 rotate: false - xy: 833, 238 + xy: 843, 218 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-scorch rotate: false - xy: 833, 228 + xy: 843, 208 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-separator rotate: false - xy: 833, 218 + xy: 843, 198 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 separator rotate: false - xy: 833, 218 + xy: 843, 198 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-shrub rotate: false - xy: 833, 208 + xy: 843, 188 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shrub rotate: false - xy: 833, 208 + xy: 843, 188 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3583,42 +3583,42 @@ silicon-smelter index: -1 block-icon-smelter rotate: false - xy: 833, 198 + xy: 853, 286 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 smelter rotate: false - xy: 833, 198 + xy: 853, 286 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-snow rotate: false - xy: 833, 188 + xy: 863, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snow1 rotate: false - xy: 833, 188 + xy: 863, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-solar-panel rotate: false - xy: 841, 278 + xy: 873, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 solar-panel rotate: false - xy: 841, 278 + xy: 873, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3639,42 +3639,42 @@ solar-panel-large index: -1 block-icon-solidifer rotate: false - xy: 843, 268 + xy: 883, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 solidifer rotate: false - xy: 843, 268 + xy: 883, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-sorter rotate: false - xy: 843, 258 + xy: 893, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sorter rotate: false - xy: 843, 258 + xy: 893, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 block-icon-space rotate: false - xy: 843, 248 + xy: 903, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 space rotate: false - xy: 843, 248 + xy: 903, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3688,14 +3688,14 @@ block-icon-spectre index: -1 block-icon-stone rotate: false - xy: 843, 238 + xy: 913, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stone1 rotate: false - xy: 843, 238 + xy: 913, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3751,14 +3751,14 @@ thorium-reactor index: -1 block-icon-thorium-wall rotate: false - xy: 843, 228 + xy: 923, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 thorium-wall rotate: false - xy: 843, 228 + xy: 923, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3786,14 +3786,14 @@ block-icon-titan-pad index: -1 block-icon-titanium-conveyor rotate: false - xy: 843, 218 + xy: 933, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium-conveyor-0-0 rotate: false - xy: 843, 218 + xy: 933, 279 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3814,14 +3814,14 @@ turbine-generator index: -1 block-icon-unloader rotate: false - xy: 843, 208 + xy: 853, 276 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 unloader rotate: false - xy: 843, 208 + xy: 853, 276 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3856,14 +3856,14 @@ warp-gate index: -1 block-icon-water rotate: false - xy: 843, 198 + xy: 853, 266 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 water rotate: false - xy: 843, 198 + xy: 853, 266 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -3884,147 +3884,147 @@ block-icon-wave index: -1 deepwater-cliff-edge rotate: false - xy: 933, 269 + xy: 893, 209 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 deepwater-cliff-edge-1 rotate: false - xy: 943, 275 + xy: 903, 219 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 deepwater-cliff-edge-2 rotate: false - xy: 873, 199 + xy: 913, 229 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 deepwater-cliff-side rotate: false - xy: 883, 209 + xy: 923, 239 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 dirt-cliff-edge rotate: false - xy: 913, 239 + xy: 943, 255 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 dirt-cliff-edge-1 rotate: false - xy: 923, 249 + xy: 953, 265 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 dirt-cliff-edge-2 rotate: false - xy: 933, 259 + xy: 893, 199 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 dirt-cliff-side rotate: false - xy: 953, 275 + xy: 903, 209 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lava-cliff-edge rotate: false - xy: 983, 265 + xy: 963, 225 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lava-cliff-edge-1 rotate: false - xy: 923, 199 + xy: 973, 235 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lava-cliff-edge-2 rotate: false - xy: 933, 209 + xy: 983, 245 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lava-cliff-side rotate: false - xy: 943, 215 + xy: 993, 255 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquid-icon-cryofluid rotate: false - xy: 933, 199 + xy: 963, 205 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquid-icon-lava rotate: false - xy: 943, 205 + xy: 973, 215 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquid-icon-oil rotate: false - xy: 953, 215 + xy: 983, 225 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquid-icon-water rotate: false - xy: 963, 225 + xy: 993, 235 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 mech-icon-alpha-mech rotate: false - xy: 723, 186 + xy: 737, 186 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 mech-icon-dart-ship rotate: false - xy: 737, 186 + xy: 751, 186 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 mech-icon-delta-mech rotate: false - xy: 751, 186 + xy: 765, 186 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 mech-icon-halberd-ship rotate: false - xy: 765, 186 + xy: 779, 186 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 mech-icon-trident-ship rotate: false - xy: 765, 186 + xy: 779, 186 size: 12, 12 orig: 12, 12 offset: 0, 0 @@ -4038,784 +4038,784 @@ mech-icon-omega-mech index: -1 mech-icon-tau-mech rotate: false - xy: 779, 186 + xy: 401, 51 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 metalfloor-cliff-edge rotate: false - xy: 973, 215 + xy: 893, 189 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 metalfloor-cliff-edge-1 rotate: false - xy: 983, 225 + xy: 903, 189 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 metalfloor-cliff-edge-2 rotate: false - xy: 993, 235 + xy: 913, 189 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 metalfloor-cliff-side rotate: false - xy: 973, 205 + xy: 923, 189 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 oil-cliff-edge rotate: false - xy: 983, 215 + xy: 933, 189 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 oil-cliff-edge-1 rotate: false - xy: 993, 225 + xy: 943, 195 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 oil-cliff-edge-2 rotate: false - xy: 983, 205 + xy: 953, 195 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 oil-cliff-side rotate: false - xy: 993, 215 + xy: 963, 195 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-blackstone1 rotate: false - xy: 863, 189 + xy: 983, 195 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-blackstone2 rotate: false - xy: 873, 189 + xy: 993, 195 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-blackstone3 rotate: false - xy: 883, 189 + xy: 1003, 269 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-grass1 rotate: false - xy: 893, 189 + xy: 1003, 259 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-grass2 rotate: false - xy: 903, 189 + xy: 1003, 249 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-grass3 rotate: false - xy: 913, 189 + xy: 1003, 239 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-ice1 rotate: false - xy: 923, 189 + xy: 1003, 229 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-ice2 rotate: false - xy: 933, 189 + xy: 1003, 219 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-ice3 rotate: false - xy: 943, 195 + xy: 1003, 209 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-sand1 rotate: false - xy: 953, 195 + xy: 1003, 199 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-sand2 rotate: false - xy: 963, 195 + xy: 943, 185 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-sand3 rotate: false - xy: 973, 195 + xy: 953, 185 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-snow1 rotate: false - xy: 983, 195 + xy: 963, 185 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-snow2 rotate: false - xy: 993, 195 + xy: 973, 185 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-snow3 rotate: false - xy: 1003, 267 + xy: 983, 185 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-stone1 rotate: false - xy: 1003, 257 + xy: 993, 185 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-stone2 rotate: false - xy: 1003, 247 + xy: 1003, 189 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-coal-stone3 rotate: false - xy: 1003, 237 + xy: 1013, 269 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-blackstone1 rotate: false - xy: 1003, 227 + xy: 1013, 259 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-blackstone2 rotate: false - xy: 1003, 217 + xy: 1013, 249 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-blackstone3 rotate: false - xy: 1003, 207 + xy: 1013, 239 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-grass1 rotate: false - xy: 1003, 197 + xy: 1013, 229 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-grass2 rotate: false - xy: 943, 185 + xy: 1013, 219 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-grass3 rotate: false - xy: 953, 185 + xy: 1013, 209 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-ice1 rotate: false - xy: 963, 185 + xy: 1013, 199 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-ice2 rotate: false - xy: 973, 185 + xy: 1013, 189 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-ice3 rotate: false - xy: 983, 185 + xy: 1003, 179 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-sand1 rotate: false - xy: 993, 185 + xy: 1013, 179 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-sand2 rotate: false - xy: 1003, 187 + xy: 207, 23 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-sand3 rotate: false - xy: 1013, 267 + xy: 217, 23 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-snow1 rotate: false - xy: 1013, 257 + xy: 227, 23 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-snow2 rotate: false - xy: 1013, 247 + xy: 237, 23 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-snow3 rotate: false - xy: 1013, 237 + xy: 247, 23 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-stone1 rotate: false - xy: 1013, 227 + xy: 257, 23 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-stone2 rotate: false - xy: 1013, 217 + xy: 267, 23 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-copper-stone3 rotate: false - xy: 1013, 207 + xy: 277, 23 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-blackstone1 rotate: false - xy: 1013, 197 + xy: 287, 25 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-blackstone2 rotate: false - xy: 1013, 187 + xy: 205, 13 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-blackstone3 rotate: false - xy: 207, 23 + xy: 205, 3 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-grass1 rotate: false - xy: 217, 23 + xy: 215, 13 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-grass2 rotate: false - xy: 227, 23 + xy: 215, 3 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-grass3 rotate: false - xy: 237, 23 + xy: 225, 13 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-ice1 rotate: false - xy: 247, 23 + xy: 225, 3 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-ice2 rotate: false - xy: 257, 23 + xy: 235, 13 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-ice3 rotate: false - xy: 267, 23 + xy: 235, 3 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-sand1 rotate: false - xy: 277, 23 + xy: 245, 13 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-sand2 rotate: false - xy: 287, 25 + xy: 245, 3 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-sand3 rotate: false - xy: 205, 13 + xy: 255, 13 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-snow1 rotate: false - xy: 205, 3 + xy: 255, 3 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-snow2 rotate: false - xy: 215, 13 + xy: 265, 13 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-snow3 rotate: false - xy: 215, 3 + xy: 265, 3 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-stone1 rotate: false - xy: 225, 13 + xy: 275, 13 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-stone2 rotate: false - xy: 225, 3 + xy: 275, 3 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-lead-stone3 rotate: false - xy: 235, 13 + xy: 297, 25 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-blackstone1 rotate: false - xy: 235, 3 + xy: 523, 159 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-blackstone2 rotate: false - xy: 245, 13 + xy: 533, 159 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-blackstone3 rotate: false - xy: 245, 3 + xy: 543, 158 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-grass1 rotate: false - xy: 255, 13 + xy: 553, 158 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-grass2 rotate: false - xy: 255, 3 + xy: 409, 107 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-grass3 rotate: false - xy: 265, 13 + xy: 409, 97 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-ice1 rotate: false - xy: 265, 3 + xy: 409, 87 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-ice2 rotate: false - xy: 275, 13 + xy: 682, 160 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-ice3 rotate: false - xy: 275, 3 + xy: 863, 179 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-sand1 rotate: false - xy: 297, 25 + xy: 873, 179 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-sand2 rotate: false - xy: 409, 107 + xy: 883, 179 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-sand3 rotate: false - xy: 409, 97 + xy: 893, 179 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-snow1 rotate: false - xy: 409, 87 + xy: 903, 179 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-snow2 rotate: false - xy: 546, 158 + xy: 913, 179 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-snow3 rotate: false - xy: 556, 158 + xy: 923, 179 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-stone1 rotate: false - xy: 534, 148 + xy: 933, 179 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-stone2 rotate: false - xy: 534, 138 + xy: 943, 175 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-thorium-stone3 rotate: false - xy: 534, 128 + xy: 953, 175 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-blackstone1 rotate: false - xy: 534, 118 + xy: 963, 175 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-blackstone2 rotate: false - xy: 544, 148 + xy: 973, 175 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-blackstone3 rotate: false - xy: 544, 138 + xy: 983, 175 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-grass1 rotate: false - xy: 554, 148 + xy: 993, 175 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-grass2 rotate: false - xy: 544, 128 + xy: 1003, 169 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-grass3 rotate: false - xy: 554, 138 + xy: 1013, 169 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-ice1 rotate: false - xy: 544, 118 + xy: 287, 15 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-ice2 rotate: false - xy: 554, 128 + xy: 297, 15 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-ice3 rotate: false - xy: 554, 118 + xy: 285, 5 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-sand1 rotate: false - xy: 863, 179 + xy: 295, 5 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-sand2 rotate: false - xy: 873, 179 + xy: 301, 39 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-sand3 rotate: false - xy: 883, 179 + xy: 311, 41 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-snow1 rotate: false - xy: 893, 179 + xy: 321, 41 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-snow2 rotate: false - xy: 903, 179 + xy: 331, 41 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-snow3 rotate: false - xy: 913, 179 + xy: 341, 41 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-stone1 rotate: false - xy: 923, 179 + xy: 351, 41 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-stone2 rotate: false - xy: 933, 179 + xy: 361, 41 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ore-titanium-stone3 rotate: false - xy: 943, 175 + xy: 371, 41 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sand-cliff-edge rotate: false - xy: 564, 148 + xy: 449, 84 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sand-cliff-edge-1 rotate: false - xy: 564, 138 + xy: 459, 84 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sand-cliff-edge-2 rotate: false - xy: 564, 128 + xy: 469, 114 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sand-cliff-side rotate: false - xy: 564, 118 + xy: 469, 104 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snow-cliff-edge rotate: false - xy: 439, 114 + xy: 416, 64 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snow-cliff-edge-1 rotate: false - xy: 429, 94 + xy: 426, 64 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snow-cliff-edge-2 rotate: false - xy: 439, 104 + xy: 436, 64 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snow-cliff-side rotate: false - xy: 449, 114 + xy: 446, 64 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 space-cliff-edge rotate: false - xy: 449, 104 + xy: 466, 64 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 space-cliff-edge-1 rotate: false - xy: 459, 114 + xy: 415, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 space-cliff-edge-2 rotate: false - xy: 449, 94 + xy: 425, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 space-cliff-side rotate: false - xy: 459, 104 + xy: 435, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 unit-icon-dagger rotate: false - xy: 526, 181 + xy: 495, 167 size: 12, 12 orig: 12, 12 offset: 0, 0 @@ -4829,112 +4829,112 @@ unit-icon-titan index: -1 item-biomatter rotate: false - xy: 923, 219 + xy: 953, 235 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-blast-compound rotate: false - xy: 933, 229 + xy: 963, 245 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-coal rotate: false - xy: 983, 275 + xy: 973, 255 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-copper rotate: false - xy: 943, 235 + xy: 983, 265 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-dense-alloy rotate: false - xy: 953, 245 + xy: 923, 199 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-lead rotate: false - xy: 963, 255 + xy: 933, 209 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-phase-matter rotate: false - xy: 973, 265 + xy: 943, 215 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-plastanium rotate: false - xy: 913, 199 + xy: 953, 225 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-pyratite rotate: false - xy: 923, 209 + xy: 963, 235 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-sand rotate: false - xy: 933, 219 + xy: 973, 245 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-silicon rotate: false - xy: 993, 275 + xy: 983, 255 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-stone rotate: false - xy: 943, 225 + xy: 993, 265 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-surge-alloy rotate: false - xy: 953, 235 + xy: 933, 199 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-thorium rotate: false - xy: 963, 245 + xy: 943, 205 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-titanium rotate: false - xy: 973, 255 + xy: 953, 215 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquid-icon rotate: false - xy: 993, 265 + xy: 993, 245 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -5004,7 +5004,21 @@ omega-mech-leg index: -1 tau-mech rotate: false - xy: 512, 181 + xy: 526, 181 + size: 12, 12 + orig: 12, 12 + offset: 0, 0 + index: -1 +tau-mech-base + rotate: false + xy: 540, 181 + size: 12, 12 + orig: 12, 12 + offset: 0, 0 + index: -1 +tau-mech-leg + rotate: false + xy: 481, 167 size: 12, 12 orig: 12, 12 offset: 0, 0 @@ -5032,14 +5046,14 @@ trident-ship index: -1 javelin-ship rotate: false - xy: 177, 3 + xy: 191, 3 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 mech-icon-javelin-ship rotate: false - xy: 177, 3 + xy: 191, 3 size: 12, 12 orig: 12, 12 offset: 0, 0 @@ -5286,14 +5300,14 @@ icon-arrow-left index: -1 icon-arrow-right rotate: false - xy: 582, 192 + xy: 523, 169 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-arrow-up rotate: false - xy: 594, 192 + xy: 535, 169 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -5328,7 +5342,7 @@ icon-cancel index: -1 icon-chat rotate: false - xy: 606, 192 + xy: 582, 192 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -5342,21 +5356,21 @@ icon-check index: -1 icon-crafting rotate: false - xy: 618, 192 + xy: 594, 192 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-cursor rotate: false - xy: 630, 192 + xy: 606, 192 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-defense rotate: false - xy: 642, 192 + xy: 618, 192 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -5377,7 +5391,7 @@ icon-discord index: -1 icon-distribution rotate: false - xy: 654, 192 + xy: 630, 192 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -5517,14 +5531,14 @@ icon-grid index: -1 icon-hold rotate: false - xy: 666, 192 + xy: 642, 192 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-holdDelete rotate: false - xy: 481, 169 + xy: 654, 192 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -5545,7 +5559,7 @@ icon-host index: -1 icon-info rotate: false - xy: 493, 169 + xy: 666, 192 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -5559,14 +5573,14 @@ icon-itch.io index: -1 icon-item rotate: false - xy: 505, 169 + xy: 554, 180 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-items-none rotate: false - xy: 903, 199 + xy: 993, 275 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -5587,7 +5601,7 @@ icon-link index: -1 icon-liquid rotate: false - xy: 517, 169 + xy: 1007, 313 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -5629,7 +5643,7 @@ icon-locked index: -1 icon-logic rotate: false - xy: 529, 169 + xy: 1007, 301 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -5643,7 +5657,7 @@ icon-map index: -1 icon-menu rotate: false - xy: 541, 169 + xy: 1007, 289 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -5657,28 +5671,28 @@ icon-menu-large index: -1 icon-missing rotate: false - xy: 554, 180 + xy: 570, 182 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-none rotate: false - xy: 553, 168 + xy: 582, 180 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-nullitem rotate: false - xy: 913, 209 + xy: 943, 225 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icon-pause rotate: false - xy: 1007, 313 + xy: 594, 180 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -5706,7 +5720,7 @@ icon-pick index: -1 icon-play rotate: false - xy: 1007, 301 + xy: 606, 180 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -5720,21 +5734,21 @@ icon-play-2 index: -1 icon-players rotate: false - xy: 1007, 289 + xy: 618, 180 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-power rotate: false - xy: 570, 182 + xy: 630, 180 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-production rotate: false - xy: 582, 180 + xy: 642, 180 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -5825,7 +5839,7 @@ icon-save-map index: -1 icon-settings rotate: false - xy: 594, 180 + xy: 654, 180 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -5846,14 +5860,14 @@ icon-tools index: -1 icon-touch rotate: false - xy: 606, 180 + xy: 666, 180 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-touchDelete rotate: false - xy: 618, 180 + xy: 547, 168 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -5895,7 +5909,7 @@ icon-undo index: -1 icon-units rotate: false - xy: 630, 180 + xy: 559, 168 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -5909,7 +5923,7 @@ icon-unlocks index: -1 icon-weapon rotate: false - xy: 642, 180 + xy: 582, 168 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -6137,13 +6151,6 @@ delta-mech-base orig: 12, 12 offset: 0, 0 index: -1 -tau-mech-base - rotate: false - xy: 287, 35 - size: 12, 12 - orig: 12, 12 - offset: 0, 0 - index: -1 dagger-leg rotate: false xy: 303, 51 @@ -6151,13 +6158,6 @@ dagger-leg orig: 12, 12 offset: 0, 0 index: -1 -tau-mech-leg - rotate: false - xy: 303, 51 - size: 12, 12 - orig: 12, 12 - offset: 0, 0 - index: -1 drone rotate: false xy: 373, 51 @@ -6188,14 +6188,14 @@ unit-icon-fabricator index: -1 interceptor rotate: false - xy: 191, 17 + xy: 177, 3 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 unit-icon-interceptor rotate: false - xy: 191, 17 + xy: 177, 3 size: 12, 12 orig: 12, 12 offset: 0, 0 @@ -6270,23 +6270,30 @@ flamethrower-equip orig: 12, 12 offset: 0, 0 index: -1 +heal-blaster-equip + rotate: false + xy: 177, 17 + size: 12, 12 + orig: 12, 12 + offset: 0, 0 + index: -1 missiles-equip rotate: false - xy: 486, 195 + xy: 500, 195 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 shockgun-equip rotate: false - xy: 528, 195 + xy: 542, 195 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 swarmer-equip rotate: false - xy: 498, 181 + xy: 512, 181 size: 12, 12 orig: 12, 12 offset: 0, 0 diff --git a/core/assets/sprites/sprites.png b/core/assets/sprites/sprites.png index c1b28754b9..e8712b9e44 100644 Binary files a/core/assets/sprites/sprites.png and b/core/assets/sprites/sprites.png differ diff --git a/core/src/io/anuke/mindustry/content/AmmoTypes.java b/core/src/io/anuke/mindustry/content/AmmoTypes.java index 0e22367dff..9bb46b8cb6 100644 --- a/core/src/io/anuke/mindustry/content/AmmoTypes.java +++ b/core/src/io/anuke/mindustry/content/AmmoTypes.java @@ -12,6 +12,7 @@ import io.anuke.mindustry.type.ContentList; public class AmmoTypes implements ContentList{ public static AmmoType bulletCopper, bulletDense, bulletThorium, bulletSilicon, bulletPyratite, shotgunTungsten, bombExplosive, bombIncendiary, bombOil, shellCarbide, flamerThermite, weaponMissile, weaponMissileSwarm, bulletMech, + healBlaster, flakLead, flakExplosive, flakPlastic, flakSurge, missileExplosive, missileIncindiary, missileSurge, artilleryDense, artilleryPlastic, artilleryHoming, artilleryIncindiary, artilleryExplosive, basicFlame, lancerLaser, lightning, spectreLaser, meltdownLaser, fuseShotgun, oil, water, lava, cryofluid; @@ -28,6 +29,13 @@ public class AmmoTypes implements ContentList{ inaccuracy = 5f; }}; + healBlaster = new AmmoType(TurretBullets.healBullet){{ + shootEffect = ShootFx.shootHeal; + smokeEffect = BulletFx.hitLaser; + reloadMultiplier = 1f; + inaccuracy = 2f; + }}; + shotgunTungsten = new AmmoType(WeaponBullets.tungstenShotgun){{ shootEffect = ShootFx.shootBig; smokeEffect = ShootFx.shootBigSmoke; diff --git a/core/src/io/anuke/mindustry/content/Mechs.java b/core/src/io/anuke/mindustry/content/Mechs.java index a846051623..f99b3bcae7 100644 --- a/core/src/io/anuke/mindustry/content/Mechs.java +++ b/core/src/io/anuke/mindustry/content/Mechs.java @@ -2,18 +2,29 @@ package io.anuke.mindustry.content; import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.graphics.g2d.TextureRegion; +import com.badlogic.gdx.math.Rectangle; import com.badlogic.gdx.utils.Array; +import io.anuke.mindustry.content.fx.UnitFx; import io.anuke.mindustry.entities.Player; +import io.anuke.mindustry.entities.Unit; +import io.anuke.mindustry.entities.Units; +import io.anuke.mindustry.entities.effect.Fire; import io.anuke.mindustry.game.Content; import io.anuke.mindustry.graphics.Palette; import io.anuke.mindustry.graphics.Shaders; import io.anuke.mindustry.type.ContentList; import io.anuke.mindustry.type.Mech; import io.anuke.mindustry.type.Upgrade; +import io.anuke.mindustry.world.Tile; import io.anuke.ucore.core.Core; +import io.anuke.ucore.core.Effects; import io.anuke.ucore.core.Graphics; import io.anuke.ucore.core.Timers; import io.anuke.ucore.graphics.Draw; +import io.anuke.ucore.util.Mathf; + +import static io.anuke.mindustry.Vars.tilesize; +import static io.anuke.mindustry.Vars.world; public class Mechs implements ContentList{ public static Mech alpha, delta, tau, omega, dart, javelin, trident, halberd; @@ -33,34 +44,98 @@ public class Mechs implements ContentList{ maxSpeed = 4f; }}; - delta = new Mech("delta-mech", false){{ - drillPower = -1; - speed = 0.75f; - boostSpeed = 0.95f; - itemCapacity = 15; - armor = 30f; - weaponOffsetX = -1; - itemCapacity = 15; - weaponOffsetY = -1; - weapon = Weapons.shockgun; - trailColorTo = Color.valueOf("d3ddff"); - maxSpeed = 5f; - }}; + delta = new Mech("delta-mech", false){ + { + drillPower = -1; + speed = 0.75f; + boostSpeed = 0.95f; + itemCapacity = 15; + armor = 30f; + weaponOffsetX = -1; + itemCapacity = 15; + weaponOffsetY = -1; + weapon = Weapons.shockgun; + trailColorTo = Color.valueOf("d3ddff"); + maxSpeed = 5f; + altChargeAlpha = 0.05f; + } - tau = new Mech("tau-mech", false){{ - drillPower = 3; - mineSpeed = 3f; - itemCapacity = 70; - speed = 0.44f; - drag = 0.35f; - boostSpeed = 0.8f; - weapon = Weapons.blaster; - maxSpeed = 5f; - armor = 30f; - }}; + @Override + public void updateAlt(Player player){ + if(player.altHeat > 0.01f){ + player.applyEffect(StatusEffects.overdrive, 0.1f); + } + } + + @Override + public void draw(Player player){ + super.draw(player); + player.hitTime = Math.max(player.hitTime, player.altHeat * Unit.hitDuration); + } + }; + + tau = new Mech("tau-mech", false){ + protected float healRange = 60f; + protected float healAmount = 10f; + + protected Rectangle rect = new Rectangle(); + + { + drillPower = 4; + mineSpeed = 3f; + itemCapacity = 70; + weaponOffsetY = -1; + weaponOffsetX = 1; + speed = 0.44f; + drag = 0.35f; + boostSpeed = 0.8f; + weapon = Weapons.healBlaster; + maxSpeed = 5f; + armor = 30f; + altChargeAlpha = 0.05f; + trailColorTo = Palette.heal; + } + + @Override + public void draw(Player player){ + super.draw(player); + player.hitTime = Math.max(player.hitTime, player.altHeat * Unit.hitDuration); + } + + @Override + public void updateAlt(Player player){ + if(player.altHeat >= 0.91f){ + Effects.effect(UnitFx.healWave, player); + rect.setSize(healRange*2f).setCenter(player.x, player.y); + Units.getNearby(player.getTeam(), rect, unit -> { + if(unit.distanceTo(player) <= healRange){ + if(unit.health < unit.maxHealth()){ + Effects.effect(UnitFx.heal, unit); + } + unit.healBy(healAmount); + } + }); + + int blockRange = (int)(healRange/tilesize); + int px = world.toTile(player.x), py = world.toTile(player.y); + + for(int x = -blockRange; x <= blockRange; x++){ + for(int y = -blockRange; y <= blockRange; y++){ + if(Mathf.dst(x, y) > blockRange) continue; + Tile tile = world.tile(px + x, py + y); + if(tile != null){ + Fire.extinguish(tile, 1000f); + } + } + } + player.altHeat = 0f; + } + } + }; omega = new Mech("omega-mech", false){ protected TextureRegion armorRegion; + { drillPower = 2; mineSpeed = 1.5f; @@ -76,6 +151,11 @@ public class Mechs implements ContentList{ armor = 50f; } + @Override + public float getRotationAlpha(Player player){ + return 0.6f - player.altHeat * 0.3f; + } + @Override public float spreadX(Player player){ return player.altHeat*2f; diff --git a/core/src/io/anuke/mindustry/content/Recipes.java b/core/src/io/anuke/mindustry/content/Recipes.java index d260e3c49b..5964b999d4 100644 --- a/core/src/io/anuke/mindustry/content/Recipes.java +++ b/core/src/io/anuke/mindustry/content/Recipes.java @@ -129,6 +129,7 @@ public class Recipes implements ContentList{ new Recipe(units, UpgradeBlocks.javelinFactory, new ItemStack(Items.lead, 200), new ItemStack(Items.silicon, 250), new ItemStack(Items.titanium, 300), new ItemStack(Items.plastanium, 200)); new Recipe(units, UpgradeBlocks.deltaFactory, new ItemStack(Items.densealloy, 160), new ItemStack(Items.silicon, 220), new ItemStack(Items.titanium, 250)).setDesktop(); new Recipe(units, UpgradeBlocks.omegaFactory, new ItemStack(Items.densealloy, 160), new ItemStack(Items.silicon, 220), new ItemStack(Items.titanium, 250)).setDesktop(); + new Recipe(units, UpgradeBlocks.tauFactory, new ItemStack(Items.densealloy, 160), new ItemStack(Items.silicon, 220), new ItemStack(Items.titanium, 250)).setDesktop(); //new Recipe(units, UpgradeBlocks.deltaFactory, new ItemStack(Items.copper, 30), new ItemStack(Items.lead, 50), new ItemStack(Items.silicon, 30)); diff --git a/core/src/io/anuke/mindustry/content/UnitTypes.java b/core/src/io/anuke/mindustry/content/UnitTypes.java index 247582a11f..eda50e1c5d 100644 --- a/core/src/io/anuke/mindustry/content/UnitTypes.java +++ b/core/src/io/anuke/mindustry/content/UnitTypes.java @@ -45,6 +45,7 @@ public class UnitTypes implements ContentList{ speed = 0.3f; maxVelocity = 1.9f; drag = 0.01f; + weapon = Weapons.chainBlaster; isFlying = true; }}; diff --git a/core/src/io/anuke/mindustry/content/Weapons.java b/core/src/io/anuke/mindustry/content/Weapons.java index c8e63657a1..64728a4094 100644 --- a/core/src/io/anuke/mindustry/content/Weapons.java +++ b/core/src/io/anuke/mindustry/content/Weapons.java @@ -9,7 +9,7 @@ import io.anuke.mindustry.type.Upgrade; import io.anuke.mindustry.type.Weapon; public class Weapons implements ContentList{ - public static Weapon blaster, chainBlaster, shockgun, sapper, swarmer, bomber, flakgun, flamethrower, missiles; + public static Weapon blaster, healBlaster, chainBlaster, shockgun, sapper, swarmer, bomber, flakgun, flamethrower, missiles; @Override public void load(){ @@ -22,6 +22,15 @@ public class Weapons implements ContentList{ ammo = AmmoTypes.bulletMech; }}; + healBlaster = new Weapon("heal-blaster"){{ + length = 1.5f; + reload = 30f; + roundrobin = false; + ejectEffect = Fx.none; + recoil = 2f; + ammo = AmmoTypes.healBlaster; + }}; + missiles = new Weapon("missiles"){{ length = 1.5f; reload = 40f; diff --git a/core/src/io/anuke/mindustry/content/bullets/TurretBullets.java b/core/src/io/anuke/mindustry/content/bullets/TurretBullets.java index 893cbf4e7a..36306a85e4 100644 --- a/core/src/io/anuke/mindustry/content/bullets/TurretBullets.java +++ b/core/src/io/anuke/mindustry/content/bullets/TurretBullets.java @@ -30,11 +30,41 @@ import io.anuke.ucore.util.Mathf; import static io.anuke.mindustry.Vars.world; public class TurretBullets extends BulletList implements ContentList{ - public static BulletType fireball, basicFlame, lancerLaser, fuseShot, waterShot, cryoShot, lavaShot, oilShot, lightning, driverBolt; + public static BulletType fireball, basicFlame, lancerLaser, fuseShot, waterShot, cryoShot, lavaShot, oilShot, lightning, driverBolt, healBullet; @Override public void load(){ + healBullet = new BulletType(5.2f, 25){ + float healAmount = 14f; + { + hiteffect = BulletFx.hitLaser; + despawneffect = BulletFx.hitLaser; + collidesTeam = true; + } + + @Override + public void draw(Bullet b){ + Draw.color(Palette.heal); + Lines.stroke(2f); + Lines.lineAngleCenter(b.x, b.y, b.angle(), 7f); + Draw.color(Color.WHITE); + Lines.lineAngleCenter(b.x, b.y, b.angle(), 3f); + Draw.reset(); + } + + @Override + public void hitTile(Bullet b, Tile tile){ + super.hit(b); + + if(tile.getTeam() == b.getTeam()){ + Effects.effect(BlockFx.healBlock, tile.drawx(), tile.drawy(), tile.block().size); + tile.entity.health += healAmount; + tile.entity.health = Mathf.clamp(tile.entity.health, 0, tile.block().health); + } + } + }; + fireball = new BulletType(1f, 4){ { pierce = true; diff --git a/core/src/io/anuke/mindustry/content/fx/BlockFx.java b/core/src/io/anuke/mindustry/content/fx/BlockFx.java index 626e40520a..add9771e93 100644 --- a/core/src/io/anuke/mindustry/content/fx/BlockFx.java +++ b/core/src/io/anuke/mindustry/content/fx/BlockFx.java @@ -19,7 +19,7 @@ public class BlockFx extends FxList implements ContentList{ public static Effect reactorsmoke, nuclearsmoke, nuclearcloud, redgeneratespark, generatespark, fuelburn, plasticburn, pulverize, pulverizeRed, pulverizeRedder, pulverizeSmall, pulverizeMedium, producesmoke, smeltsmoke, formsmoke, blastsmoke, lava, dooropen, doorclose, dooropenlarge, doorcloselarge, purify, purifyoil, purifystone, generate, mine, mineBig, mineHuge, - smelt, teleportActivate, teleport, teleportOut, ripple, bubble, commandSend; + smelt, teleportActivate, teleport, teleportOut, ripple, bubble, commandSend, healBlock; @Override public void load(){ @@ -284,5 +284,12 @@ public class BlockFx extends FxList implements ContentList{ Lines.poly(e.x, e.y, 40, 4f + e.finpow() * 120f); Draw.color(); }); + + healBlock = new Effect(20, e -> { + Draw.color(Palette.heal); + Lines.stroke(2f * e.fout() + 0.5f); + Lines.square(e.x, e.y, 1f + (e.fin() * e.rotation * tilesize/2f-1f)); + Draw.color(); + }); } } diff --git a/core/src/io/anuke/mindustry/content/fx/BulletFx.java b/core/src/io/anuke/mindustry/content/fx/BulletFx.java index 7c45efac74..1d58130efa 100644 --- a/core/src/io/anuke/mindustry/content/fx/BulletFx.java +++ b/core/src/io/anuke/mindustry/content/fx/BulletFx.java @@ -11,7 +11,7 @@ import io.anuke.ucore.util.Angles; import io.anuke.ucore.util.Mathf; public class BulletFx extends FxList implements ContentList{ - public static Effect hitBulletSmall, hitBulletBig, hitFlameSmall, hitLiquid, hitLancer, despawn, flakExplosion, blastExplosion, plasticExplosion, + public static Effect hitBulletSmall, hitBulletBig, hitFlameSmall, hitLiquid, hitLaser, hitLancer, despawn, flakExplosion, blastExplosion, plasticExplosion, artilleryTrail, incendTrail, missileTrail; @Override @@ -82,6 +82,13 @@ public class BulletFx extends FxList implements ContentList{ Draw.reset(); }); + hitLaser = new Effect(8, e -> { + Draw.color(Color.WHITE, Palette.heal, e.fin()); + Lines.stroke(0.5f + e.fout()); + Lines.circle(e.x, e.y, e.fin()*5f); + Draw.reset(); + }); + despawn = new Effect(12, e -> { Draw.color(Palette.lighterOrange, Color.GRAY, e.fin()); Lines.stroke(e.fout()); diff --git a/core/src/io/anuke/mindustry/content/fx/ShootFx.java b/core/src/io/anuke/mindustry/content/fx/ShootFx.java index 3ad4de8e71..8593446d35 100644 --- a/core/src/io/anuke/mindustry/content/fx/ShootFx.java +++ b/core/src/io/anuke/mindustry/content/fx/ShootFx.java @@ -13,7 +13,7 @@ import io.anuke.ucore.util.Angles; import io.anuke.ucore.util.Mathf; public class ShootFx extends FxList implements ContentList{ - public static Effect shootSmall, shootSmallSmoke, shootBig, shootBig2, shootBigSmoke, shootBigSmoke2, shootSmallFlame, shootLiquid, shellEjectSmall, shellEjectMedium, shellEjectBig, lancerLaserShoot, lancerLaserShootSmoke, lancerLaserCharge, lancerLaserChargeBegin, lightningCharge, lightningShoot; + public static Effect shootSmall, shootHeal, shootSmallSmoke, shootBig, shootBig2, shootBigSmoke, shootBigSmoke2, shootSmallFlame, shootLiquid, shellEjectSmall, shellEjectMedium, shellEjectBig, lancerLaserShoot, lancerLaserShootSmoke, lancerLaserCharge, lancerLaserChargeBegin, lightningCharge, lightningShoot; @Override public void load(){ @@ -26,6 +26,14 @@ public class ShootFx extends FxList implements ContentList{ Draw.reset(); }); + shootHeal = new Effect(8, e -> { + Draw.color(Palette.heal); + float w = 1f + 5 * e.fout(); + Shapes.tri(e.x, e.y, w, 17f * e.fout(), e.rotation); + Shapes.tri(e.x, e.y, w, 4f * e.fout(), e.rotation + 180f); + Draw.reset(); + }); + shootSmallSmoke = new Effect(20f, e -> { Draw.color(Palette.lighterOrange, Color.LIGHT_GRAY, Color.GRAY, e.fin()); diff --git a/core/src/io/anuke/mindustry/content/fx/UnitFx.java b/core/src/io/anuke/mindustry/content/fx/UnitFx.java index 010c65529b..9f53e210f8 100644 --- a/core/src/io/anuke/mindustry/content/fx/UnitFx.java +++ b/core/src/io/anuke/mindustry/content/fx/UnitFx.java @@ -11,7 +11,7 @@ import io.anuke.ucore.util.Angles; import io.anuke.ucore.util.Mathf; public class UnitFx extends FxList implements ContentList{ - public static Effect vtolHover, unitDrop, unitPickup, unitLand, pickup; + public static Effect vtolHover, unitDrop, unitPickup, unitLand, pickup, healWave, heal; @Override public void load(){ @@ -53,5 +53,19 @@ public class UnitFx extends FxList implements ContentList{ Lines.spikes(e.x, e.y, 1f + e.fin() * 6f, e.fout() * 4f, 6); Draw.reset(); }); + + healWave = new Effect(22, e -> { + Draw.color(Palette.heal); + Lines.stroke(e.fout() * 2f); + Lines.poly(e.x, e.y, 30, 4f + e.finpow() * 60f); + Draw.color(); + }); + + heal = new Effect(11, e -> { + Draw.color(Palette.heal); + Lines.stroke(e.fout() * 2f); + Lines.poly(e.x, e.y, 10, 2f + e.finpow() * 7f); + Draw.color(); + }); } } diff --git a/core/src/io/anuke/mindustry/core/Renderer.java b/core/src/io/anuke/mindustry/core/Renderer.java index b9df0167fb..b0d01759f5 100644 --- a/core/src/io/anuke/mindustry/core/Renderer.java +++ b/core/src/io/anuke/mindustry/core/Renderer.java @@ -21,10 +21,7 @@ import io.anuke.mindustry.game.Team; import io.anuke.mindustry.graphics.*; import io.anuke.mindustry.world.Tile; import io.anuke.mindustry.world.meta.BlockFlag; -import io.anuke.ucore.core.Core; -import io.anuke.ucore.core.Effects; -import io.anuke.ucore.core.Graphics; -import io.anuke.ucore.core.Settings; +import io.anuke.ucore.core.*; import io.anuke.ucore.entities.EntityDraw; import io.anuke.ucore.entities.EntityGroup; import io.anuke.ucore.entities.impl.EffectEntity; @@ -253,11 +250,14 @@ public class Renderer extends RendererModule{ blocks.drawBlocks(Layer.overlay); if(itemGroup.size() > 0){ - Shaders.outline.color.set(Team.none.color); - - Graphics.beginShaders(Shaders.outline); + Graphics.surface(effectSurface); drawAndInterpolate(itemGroup); - Graphics.endShaders(); + Graphics.surface(); + + Draw.color(0, 0, 0, 0.2f); + Draw.rect(effectSurface, -1, -1); + Draw.color(); + Draw.rect(effectSurface, 0, 0); } drawAllTeams(false); diff --git a/core/src/io/anuke/mindustry/entities/Player.java b/core/src/io/anuke/mindustry/entities/Player.java index a50396fc09..a40bb31d92 100644 --- a/core/src/io/anuke/mindustry/entities/Player.java +++ b/core/src/io/anuke/mindustry/entities/Player.java @@ -45,6 +45,7 @@ import static io.anuke.mindustry.Vars.*; public class Player extends Unit implements BuilderTrait, CarryTrait, ShooterTrait{ public static final int timerSync = 2; + public static final int timerAbility = 3; private static final int timerShootLeft = 0; private static final int timerShootRight = 1; private static final float liftoffBoost = 0.2f; @@ -581,13 +582,14 @@ public class Player extends Unit implements BuilderTrait, CarryTrait, ShooterTra } if(!ui.chatfrag.chatOpen()){ + float baseLerp = mech.getRotationAlpha(this); if(!isShooting()){ if(!movement.isZero()){ - rotation = Mathf.slerpDelta(rotation, movement.angle(), 0.13f); + rotation = Mathf.slerpDelta(rotation, movement.angle(), 0.13f * baseLerp); } }else{ float angle = control.input(playerIndex).mouseAngle(x, y); - this.rotation = Mathf.slerpDelta(this.rotation, angle, 0.1f); + this.rotation = Mathf.slerpDelta(this.rotation, angle, 0.1f * baseLerp); } } } diff --git a/core/src/io/anuke/mindustry/entities/Unit.java b/core/src/io/anuke/mindustry/entities/Unit.java index df9aac5dfc..e5f42d4872 100644 --- a/core/src/io/anuke/mindustry/entities/Unit.java +++ b/core/src/io/anuke/mindustry/entities/Unit.java @@ -45,6 +45,7 @@ public abstract class Unit extends DestructibleEntity implements SaveTrait, Targ public UnitInventory inventory = new UnitInventory(this); public float rotation; + public float hitTime; protected Interpolator interpolator = new Interpolator(); protected StatusController status = new StatusController(); @@ -52,7 +53,6 @@ public abstract class Unit extends DestructibleEntity implements SaveTrait, Targ protected CarryTrait carrier; protected Vector2 velocity = new Translator(0f, 0.0001f); - protected float hitTime; protected float drownTime; @Override diff --git a/core/src/io/anuke/mindustry/entities/bullet/Bullet.java b/core/src/io/anuke/mindustry/entities/bullet/Bullet.java index 4aea115a35..eb3998ea9b 100644 --- a/core/src/io/anuke/mindustry/entities/bullet/Bullet.java +++ b/core/src/io/anuke/mindustry/entities/bullet/Bullet.java @@ -184,11 +184,13 @@ public class Bullet extends BulletEntity implements TeamTrait, SyncT if(tile == null) return false; tile = tile.target(); - if(tile.entity != null && tile.entity.collide(this) && !tile.entity.isDead() && tile.entity.tile.getTeam() != team){ - tile.entity.collision(this); + if(tile.entity != null && tile.entity.collide(this) && !tile.entity.isDead() && (type.collidesTeam || tile.entity.tile.getTeam() != team)){ + if(tile.entity.getTeam() != team){ + tile.entity.collision(this); + } if(!supressCollision){ - type.hit(this); + type.hitTile(this, tile); remove(); } diff --git a/core/src/io/anuke/mindustry/entities/bullet/BulletType.java b/core/src/io/anuke/mindustry/entities/bullet/BulletType.java index 47bce4794d..7a108a51d3 100644 --- a/core/src/io/anuke/mindustry/entities/bullet/BulletType.java +++ b/core/src/io/anuke/mindustry/entities/bullet/BulletType.java @@ -5,6 +5,7 @@ import io.anuke.mindustry.content.StatusEffects; import io.anuke.mindustry.content.fx.BulletFx; import io.anuke.mindustry.game.Content; import io.anuke.mindustry.type.StatusEffect; +import io.anuke.mindustry.world.Tile; import io.anuke.ucore.core.Effects; import io.anuke.ucore.entities.impl.BaseBulletType; @@ -27,6 +28,8 @@ public abstract class BulletType extends BaseBulletType implements Conte public boolean syncable; /**Whether this bullet type collides with tiles.*/ public boolean collidesTiles = true; + /**Whether this bullet type collides with tiles that are of the same team.*/ + public boolean collidesTeam = false; /**Whether this bullet types collides with anything at all.*/ public boolean collides = true; /**Whether velocity is inherited from the shooter.*/ @@ -51,6 +54,10 @@ public abstract class BulletType extends BaseBulletType implements Conte return types; } + public void hitTile(Bullet b, Tile tile){ + hit(b); + } + @Override public void hit(Bullet b, float hitx, float hity){ Effects.effect(hiteffect, hitx, hity, b.angle()); diff --git a/core/src/io/anuke/mindustry/entities/effect/ItemDrop.java b/core/src/io/anuke/mindustry/entities/effect/ItemDrop.java index 87430d7978..2de3379fd2 100644 --- a/core/src/io/anuke/mindustry/entities/effect/ItemDrop.java +++ b/core/src/io/anuke/mindustry/entities/effect/ItemDrop.java @@ -149,8 +149,8 @@ public class ItemDrop extends SolidEntity implements SaveTrait, SyncTrait, DrawT int stored = Mathf.clamp(amount / 6, 1, 8); for(int i = 0; i < stored; i++){ - float px = stored == 1 ? 0 : Mathf.randomSeedRange(i + 1, 4f); - float py = stored == 1 ? 0 : Mathf.randomSeedRange(i + 2, 4f); + float px = stored == 1 ? 0 : (int)Mathf.randomSeedRange(i + 1, 4f); + float py = stored == 1 ? 0 : (int)Mathf.randomSeedRange(i + 2, 4f); Draw.rect(item.region, x + px, y + py, size, size); } diff --git a/core/src/io/anuke/mindustry/graphics/Palette.java b/core/src/io/anuke/mindustry/graphics/Palette.java index bc2d710306..4a86ed5fc0 100644 --- a/core/src/io/anuke/mindustry/graphics/Palette.java +++ b/core/src/io/anuke/mindustry/graphics/Palette.java @@ -42,6 +42,8 @@ public class Palette{ powerLaserFrom = Color.valueOf("e3e3e3"), powerLaserTo = Color.valueOf("ffe7a8"), + heal = Color.valueOf("98ffa9"), + description = Color.WHITE, turretinfo = Color.ORANGE, iteminfo = Color.LIGHT_GRAY, diff --git a/core/src/io/anuke/mindustry/type/Mech.java b/core/src/io/anuke/mindustry/type/Mech.java index 7a52b01b95..be903f2428 100644 --- a/core/src/io/anuke/mindustry/type/Mech.java +++ b/core/src/io/anuke/mindustry/type/Mech.java @@ -53,6 +53,8 @@ public class Mech extends Upgrade implements UnlockableContent{ return 0f; } + public float getRotationAlpha(Player player){return 1f;} + @Override public void displayInfo(Table table){ ContentDisplay.displayMech(table, this); diff --git a/core/src/io/anuke/mindustry/world/blocks/units/MechFactory.java b/core/src/io/anuke/mindustry/world/blocks/units/MechFactory.java index 63d024c79c..857f2db83a 100644 --- a/core/src/io/anuke/mindustry/world/blocks/units/MechFactory.java +++ b/core/src/io/anuke/mindustry/world/blocks/units/MechFactory.java @@ -19,8 +19,10 @@ import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.Tile; import io.anuke.ucore.core.Effects; import io.anuke.ucore.core.Graphics; +import io.anuke.ucore.core.Timers; import io.anuke.ucore.graphics.Draw; import io.anuke.ucore.graphics.Lines; +import io.anuke.ucore.util.Geometry; import io.anuke.ucore.util.Mathf; import java.io.DataInputStream; @@ -81,6 +83,16 @@ public class MechFactory extends Block{ Math.abs(player.y - tile.drawy()) <= tile.block().size * tilesize / 2f && entity.player == null; } + @Override + public void drawSelect(Tile tile){ + Draw.color(Palette.accent); + for(int i = 0; i < 4; i ++){ + float length = tilesize * size/2f + 3 + Mathf.absin(Timers.time(), 5f, 2f); + Draw.rect("transfer-arrow", tile.drawx() + Geometry.d4[i].x * length, tile.drawy() + Geometry.d4[i].y * length, (i+2) * 90); + } + Draw.color(); + } + @Override public boolean isSolidFor(Tile tile){ MechFactoryEntity entity = tile.entity();