diff --git a/core/assets-raw/sprites/blocks/production/alloysmelter.png b/core/assets-raw/sprites/blocks/production/alloysmelter.png index abea2ffe3e..999281c9a2 100644 Binary files a/core/assets-raw/sprites/blocks/production/alloysmelter.png and b/core/assets-raw/sprites/blocks/production/alloysmelter.png differ diff --git a/core/assets-raw/sprites/blocks/production/centrifuge-liquid.png b/core/assets-raw/sprites/blocks/production/centrifuge-liquid.png new file mode 100644 index 0000000000..3cf9d7393d Binary files /dev/null and b/core/assets-raw/sprites/blocks/production/centrifuge-liquid.png differ diff --git a/core/assets-raw/sprites/blocks/production/centrifuge.png b/core/assets-raw/sprites/blocks/production/centrifuge.png index 39942b01dd..af15eab31e 100644 Binary files a/core/assets-raw/sprites/blocks/production/centrifuge.png and b/core/assets-raw/sprites/blocks/production/centrifuge.png differ diff --git a/core/assets-raw/sprites/blocks/production/melter.png b/core/assets-raw/sprites/blocks/production/melter.png index 8a34464160..38a6d5c4d0 100644 Binary files a/core/assets-raw/sprites/blocks/production/melter.png and b/core/assets-raw/sprites/blocks/production/melter.png differ diff --git a/core/assets-raw/sprites/blocks/production/poweralloysmelter.png b/core/assets-raw/sprites/blocks/production/poweralloysmelter.png index 53a79355c0..7c483b2a4b 100644 Binary files a/core/assets-raw/sprites/blocks/production/poweralloysmelter.png and b/core/assets-raw/sprites/blocks/production/poweralloysmelter.png differ diff --git a/core/assets-raw/sprites/blocks/production/powersmelter-top.png b/core/assets-raw/sprites/blocks/production/powersmelter-top.png index 9db85fcb46..67ba01fd18 100644 Binary files a/core/assets-raw/sprites/blocks/production/powersmelter-top.png and b/core/assets-raw/sprites/blocks/production/powersmelter-top.png differ diff --git a/core/assets-raw/sprites/blocks/production/powersmelter.png b/core/assets-raw/sprites/blocks/production/powersmelter.png index cbb6931a01..5f9212d4b6 100644 Binary files a/core/assets-raw/sprites/blocks/production/powersmelter.png and b/core/assets-raw/sprites/blocks/production/powersmelter.png differ diff --git a/core/assets-raw/sprites/blocks/production/separator-liquid.png b/core/assets-raw/sprites/blocks/production/separator-liquid.png new file mode 100644 index 0000000000..a87bf0b14b Binary files /dev/null and b/core/assets-raw/sprites/blocks/production/separator-liquid.png differ diff --git a/core/assets-raw/sprites/blocks/production/separator.png b/core/assets-raw/sprites/blocks/production/separator.png index b76f345288..6254945930 100644 Binary files a/core/assets-raw/sprites/blocks/production/separator.png and b/core/assets-raw/sprites/blocks/production/separator.png differ diff --git a/core/assets-raw/sprites/blocks/production/siliconsmelter-top.png b/core/assets-raw/sprites/blocks/production/siliconsmelter-top.png new file mode 100644 index 0000000000..f86c4d8f35 Binary files /dev/null and b/core/assets-raw/sprites/blocks/production/siliconsmelter-top.png differ diff --git a/core/assets-raw/sprites/blocks/production/siliconsmelter.png b/core/assets-raw/sprites/blocks/production/siliconsmelter.png new file mode 100644 index 0000000000..1543289936 Binary files /dev/null and b/core/assets-raw/sprites/blocks/production/siliconsmelter.png differ diff --git a/core/assets-raw/sprites/blocks/production/smelter-middle.png b/core/assets-raw/sprites/blocks/production/smelter-middle.png deleted file mode 100644 index caf10170b4..0000000000 Binary files a/core/assets-raw/sprites/blocks/production/smelter-middle.png and /dev/null differ diff --git a/core/assets-raw/sprites/blocks/production/smelter.png b/core/assets-raw/sprites/blocks/production/smelter.png index dd197aad34..f3ff85fa19 100644 Binary files a/core/assets-raw/sprites/blocks/production/smelter.png and b/core/assets-raw/sprites/blocks/production/smelter.png differ diff --git a/core/assets-raw/sprites/blocks/production/stoneformer.png b/core/assets-raw/sprites/blocks/production/stoneformer.png index 215f3861e2..1b0ef659cc 100644 Binary files a/core/assets-raw/sprites/blocks/production/stoneformer.png and b/core/assets-raw/sprites/blocks/production/stoneformer.png differ diff --git a/core/assets-raw/sprites/blocks/production/titaniumextractor.png b/core/assets-raw/sprites/blocks/production/titaniumextractor.png deleted file mode 100644 index 81dca5c35a..0000000000 Binary files a/core/assets-raw/sprites/blocks/production/titaniumextractor.png and /dev/null differ diff --git a/core/assets-raw/sprites/items/item-sand.png b/core/assets-raw/sprites/items/item-sand.png new file mode 100644 index 0000000000..c403b33cfc Binary files /dev/null and b/core/assets-raw/sprites/items/item-sand.png differ diff --git a/core/assets/sprites/sprites.atlas b/core/assets/sprites/sprites.atlas index ee27e9df54..27104d47d2 100644 --- a/core/assets/sprites/sprites.atlas +++ b/core/assets/sprites/sprites.atlas @@ -13,42 +13,42 @@ background index: -1 conduit-bottom rotate: false - xy: 309, 117 + xy: 762, 379 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-top rotate: false - xy: 329, 117 + xy: 782, 379 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduittunnel rotate: false - xy: 339, 117 + xy: 792, 379 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyor rotate: false - xy: 349, 117 + xy: 802, 379 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyormove rotate: false - xy: 359, 117 + xy: 812, 379 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conveyortunnel rotate: false - xy: 369, 117 + xy: 822, 379 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -62,42 +62,42 @@ core index: -1 junction rotate: false - xy: 687, 311 + xy: 435, 127 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquidjunction rotate: false - xy: 699, 351 + xy: 467, 150 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquidrouter rotate: false - xy: 699, 341 + xy: 477, 152 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquidrouter-bottom rotate: false - xy: 699, 331 + xy: 463, 138 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquidrouter-liquid rotate: false - xy: 699, 321 + xy: 465, 128 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 liquidrouter-top rotate: false - xy: 697, 311 + xy: 465, 118 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -125,77 +125,77 @@ liquidtank-top index: -1 multiplexer rotate: false - xy: 590, 256 + xy: 608, 274 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 poweredconveyor rotate: false - xy: 750, 396 + xy: 679, 351 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 poweredconveyormove rotate: false - xy: 750, 386 + xy: 679, 341 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pulseconduit-bottom rotate: false - xy: 770, 399 + xy: 667, 311 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pulseconduit-top rotate: false - xy: 760, 389 + xy: 677, 311 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 router rotate: false - xy: 800, 399 + xy: 636, 286 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sortedunloader rotate: false - xy: 840, 369 + xy: 699, 351 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sorter rotate: false - xy: 850, 379 + xy: 699, 341 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 splitter rotate: false - xy: 860, 389 + xy: 699, 331 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 steelconveyor rotate: false - xy: 850, 369 + xy: 699, 321 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 steelconveyormove rotate: false - xy: 860, 379 + xy: 697, 311 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -209,7 +209,7 @@ teleporter-top index: -1 unloader rotate: false - xy: 471, 128 + xy: 612, 212 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -223,70 +223,70 @@ vault index: -1 vault-icon rotate: false - xy: 662, 246 + xy: 586, 202 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 weaponfactory rotate: false - xy: 716, 368 + xy: 243, 121 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 blackrock1 rotate: false - xy: 223, 113 + xy: 582, 244 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackrockshadow1 rotate: false - xy: 269, 113 + xy: 750, 370 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstone1 rotate: false - xy: 279, 113 + xy: 762, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstone2 rotate: false - xy: 289, 113 + xy: 762, 389 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstone3 rotate: false - xy: 582, 244 + xy: 772, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstoneblock1 rotate: false - xy: 579, 234 + xy: 772, 389 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstoneblock2 rotate: false - xy: 592, 246 + xy: 782, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blackstoneblock3 rotate: false - xy: 602, 246 + xy: 782, 389 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -300,49 +300,49 @@ blackstoneedge index: -1 coal1 rotate: false - xy: 299, 113 + xy: 822, 389 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 coal2 rotate: false - xy: 427, 135 + xy: 832, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 coal3 rotate: false - xy: 437, 136 + xy: 832, 389 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 deepwater rotate: false - xy: 441, 126 + xy: 842, 379 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 dirt1 rotate: false - xy: 451, 126 + xy: 852, 379 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 dirt2 rotate: false - xy: 461, 126 + xy: 750, 360 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 dirt3 rotate: false - xy: 669, 351 + xy: 760, 369 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -356,35 +356,35 @@ dirtedge index: -1 grass1 rotate: false - xy: 669, 321 + xy: 840, 369 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 grass2 rotate: false - xy: 679, 321 + xy: 850, 369 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 grass3 rotate: false - xy: 667, 311 + xy: 760, 359 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 grassblock1 rotate: false - xy: 677, 311 + xy: 770, 359 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 grassblock2 rotate: false - xy: 622, 296 + xy: 780, 359 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -398,413 +398,413 @@ grassedge index: -1 ice1 rotate: false - xy: 632, 296 + xy: 790, 359 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ice2 rotate: false - xy: 626, 286 + xy: 800, 359 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ice3 rotate: false - xy: 626, 276 + xy: 810, 359 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 iceedge rotate: false - xy: 919, 415 + xy: 933, 445 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 icerock1 rotate: false - xy: 626, 266 + xy: 820, 359 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icerock2 rotate: false - xy: 626, 256 + xy: 830, 359 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icerockshadow1 rotate: false - xy: 622, 246 + xy: 840, 359 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 rockshadow1 rotate: false - xy: 622, 246 + xy: 840, 359 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 icerockshadow2 rotate: false - xy: 636, 286 + xy: 850, 359 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 rockshadow2 rotate: false - xy: 636, 286 + xy: 850, 359 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 iron1 rotate: false - xy: 636, 276 + xy: 887, 403 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 iron2 rotate: false - xy: 636, 266 + xy: 897, 403 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 iron3 rotate: false - xy: 636, 256 + xy: 907, 403 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lava rotate: false - xy: 694, 361 + xy: 435, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lavaedge rotate: false - xy: 933, 445 + xy: 979, 445 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 lead1 rotate: false - xy: 662, 299 + xy: 445, 118 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lead2 rotate: false - xy: 672, 301 + xy: 455, 128 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 lead3 rotate: false - xy: 682, 301 + xy: 455, 118 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 mossblock rotate: false - xy: 702, 301 + xy: 669, 341 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 oil rotate: false - xy: 707, 311 + xy: 669, 331 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 oiledge rotate: false - xy: 947, 445 + xy: 935, 419 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 rock1 rotate: false - xy: 770, 379 + xy: 626, 256 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 rock2 rotate: false - xy: 780, 389 + xy: 628, 246 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sand1 rotate: false - xy: 790, 389 + xy: 636, 256 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sand2 rotate: false - xy: 810, 399 + xy: 642, 296 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sand3 rotate: false - xy: 780, 369 + xy: 638, 246 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sandblock1 rotate: false - xy: 790, 379 + xy: 652, 299 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sandblock2 rotate: false - xy: 800, 389 + xy: 646, 286 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sandblock3 rotate: false - xy: 820, 399 + xy: 646, 276 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 sandedge rotate: false - xy: 935, 431 + xy: 993, 445 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 shrub rotate: false - xy: 840, 399 + xy: 487, 152 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shrubshadow rotate: false - xy: 810, 369 + xy: 689, 351 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snow1 rotate: false - xy: 820, 369 + xy: 689, 321 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snow2 rotate: false - xy: 830, 379 + xy: 687, 311 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snow3 rotate: false - xy: 840, 389 + xy: 694, 361 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snowblock1 rotate: false - xy: 860, 399 + xy: 704, 363 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snowblock2 rotate: false - xy: 830, 369 + xy: 662, 299 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snowblock3 rotate: false - xy: 840, 379 + xy: 672, 301 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 snowedge rotate: false - xy: 963, 431 + xy: 387, 121 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 stone1 rotate: false - xy: 870, 367 + xy: 309, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stone2 rotate: false - xy: 148, 54 + xy: 319, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stone3 rotate: false - xy: 158, 54 + xy: 329, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stoneblock1 rotate: false - xy: 168, 54 + xy: 339, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stoneblock2 rotate: false - xy: 178, 54 + xy: 349, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stoneblock3 rotate: false - xy: 188, 54 + xy: 359, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stoneedge rotate: false - xy: 977, 431 + xy: 985, 431 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 thorium1 rotate: false - xy: 319, 107 + xy: 188, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 thorium2 rotate: false - xy: 329, 107 + xy: 198, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 thorium3 rotate: false - xy: 339, 107 + xy: 208, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium1 rotate: false - xy: 349, 107 + xy: 218, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium2 rotate: false - xy: 359, 107 + xy: 937, 409 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanium3 rotate: false - xy: 369, 107 + xy: 937, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 water rotate: false - xy: 770, 359 + xy: 586, 192 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 wateredge rotate: false - xy: 991, 431 + xy: 999, 431 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 block-middle rotate: false - xy: 887, 403 + xy: 802, 389 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pump-liquid rotate: false - xy: 887, 403 + xy: 802, 389 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 conduit-liquid rotate: false - xy: 319, 117 + xy: 772, 379 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 cross-1 rotate: false - xy: 431, 125 + xy: 832, 379 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 cross-2 rotate: false - xy: 205, 112 + xy: 656, 361 size: 16, 16 orig: 16, 16 offset: 0, 0 @@ -818,35 +818,35 @@ cross-3 index: -1 enemyspawn rotate: false - xy: 679, 351 + xy: 810, 369 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 playerspawn rotate: false - xy: 750, 406 + xy: 684, 361 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 ripples rotate: false - xy: 477, 150 + xy: 615, 232 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 shadow rotate: false - xy: 233, 111 + xy: 750, 404 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 battery rotate: false - xy: 572, 244 + xy: 492, 197 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -860,21 +860,21 @@ batterylarge index: -1 coalgenerator rotate: false - xy: 447, 136 + xy: 842, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 coalgenerator-top rotate: false - xy: 457, 136 + xy: 842, 389 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 combustiongenerator rotate: false - xy: 467, 138 + xy: 852, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -909,56 +909,56 @@ nuclearreactor-lights index: -1 powerinfinite rotate: false - xy: 750, 376 + xy: 679, 331 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 powernode rotate: false - xy: 750, 366 + xy: 669, 321 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 powervoid rotate: false - xy: 760, 399 + xy: 679, 321 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 rtgenerator rotate: false - xy: 770, 369 + xy: 636, 276 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 rtgenerator-top rotate: false - xy: 780, 379 + xy: 636, 266 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shieldgenerator rotate: false - xy: 810, 389 + xy: 656, 286 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shieldprojector rotate: false - xy: 835, 409 + xy: 853, 409 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 solarpanel rotate: false - xy: 850, 389 + xy: 682, 301 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -972,14 +972,14 @@ teleporter index: -1 thermalgenerator rotate: false - xy: 309, 107 + xy: 178, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 alloysmelter rotate: false - xy: 492, 197 + xy: 947, 433 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1033,135 +1033,142 @@ centrifuge orig: 16, 16 offset: 0, 0 index: -1 -cryofluidmixer-bottom +centrifuge-liquid rotate: false - xy: 656, 361 + xy: 187, 112 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 -cryofluidmixer-liquid +cryofluidmixer-bottom rotate: false xy: 118, 47 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 -cryofluidmixer-top +cryofluidmixer-liquid rotate: false xy: 476, 178 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 -cultivator +cryofluidmixer-top rotate: false xy: 492, 207 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 -cultivator-middle +cultivator rotate: false xy: 510, 207 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 -cultivator-top +cultivator-middle rotate: false xy: 528, 207 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 +cultivator-top + rotate: false + xy: 546, 207 + size: 16, 16 + orig: 16, 16 + offset: 0, 0 + index: -1 extractor rotate: false - xy: 679, 341 + xy: 820, 369 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 fluxpump rotate: false - xy: 679, 331 + xy: 830, 369 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 irondrill rotate: false - xy: 632, 246 + xy: 917, 403 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 irondrill-rotator rotate: false - xy: 642, 296 + xy: 927, 403 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titaniumdrill-rotator rotate: false - xy: 642, 296 + xy: 927, 403 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 irondrill-top rotate: false - xy: 652, 299 + xy: 417, 147 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 itemsource rotate: false - xy: 689, 331 + xy: 443, 138 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 itemvoid rotate: false - xy: 689, 321 + xy: 453, 138 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 laserdrill rotate: false - xy: 698, 391 + xy: 716, 404 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 laserdrill-rotator rotate: false - xy: 716, 404 + xy: 716, 386 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 laserdrill-top rotate: false - xy: 716, 386 + xy: 572, 272 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 lavasmelter rotate: false - xy: 704, 363 + xy: 445, 128 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 melter rotate: false - xy: 692, 301 + xy: 669, 351 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1196,203 +1203,210 @@ oilextractor-top index: -1 oilrefinery rotate: false - xy: 712, 301 + xy: 674, 361 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 plasticformer rotate: false - xy: 608, 274 + xy: 608, 256 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 plasticformer-top rotate: false - xy: 608, 256 + xy: 763, 409 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 poweralloysmelter rotate: false - xy: 763, 409 + xy: 781, 409 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 poweralloysmelter-top rotate: false - xy: 781, 409 + xy: 799, 409 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 powersmelter rotate: false - xy: 799, 409 + xy: 817, 409 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 powersmelter-top rotate: false - xy: 817, 409 + xy: 835, 409 + size: 16, 16 + orig: 16, 16 + offset: 0, 0 + index: -1 +siliconsmelter-top + rotate: false + xy: 835, 409 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 pulverizer rotate: false - xy: 780, 399 + xy: 622, 296 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 pump rotate: false - xy: 760, 379 + xy: 632, 296 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 reinforceddrill rotate: false - xy: 770, 389 + xy: 626, 286 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 reinforceddrill-rotator rotate: false - xy: 790, 399 + xy: 626, 276 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 reinforceddrill-top rotate: false - xy: 760, 369 + xy: 626, 266 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 separator rotate: false - xy: 790, 369 + xy: 646, 266 + size: 8, 8 + orig: 8, 8 + offset: 0, 0 + index: -1 +separator-liquid + rotate: false + xy: 646, 256 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 siliconextractor rotate: false - xy: 820, 379 + xy: 689, 341 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 +siliconsmelter + rotate: false + xy: 885, 461 + size: 16, 16 + orig: 16, 16 + offset: 0, 0 + index: -1 smelter rotate: false - xy: 830, 389 - size: 8, 8 - orig: 8, 8 - offset: 0, 0 - index: -1 -smelter-middle - rotate: false - xy: 850, 399 + xy: 689, 331 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 steeldrill rotate: false - xy: 860, 369 + xy: 692, 301 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 steeldrill-rotator rotate: false - xy: 870, 397 + xy: 702, 301 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 steeldrill-top rotate: false - xy: 870, 387 + xy: 707, 311 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stonedrill rotate: false - xy: 198, 54 + xy: 148, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 stoneformer rotate: false - xy: 208, 54 + xy: 158, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titaniumdrill rotate: false - xy: 379, 113 + xy: 582, 222 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titaniumdrill-top rotate: false - xy: 389, 113 - size: 8, 8 - orig: 8, 8 - offset: 0, 0 - index: -1 -titaniumextractor - rotate: false - xy: 399, 113 + xy: 582, 212 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 waterextractor rotate: false - xy: 903, 461 + xy: 680, 371 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 waterextractor-liquid rotate: false - xy: 921, 461 + xy: 698, 373 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 waterextractor-rotator rotate: false - xy: 680, 371 + xy: 716, 368 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 waterextractor-top rotate: false - xy: 698, 373 + xy: 225, 121 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 block-1 rotate: false - xy: 637, 306 + xy: 802, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1427,21 +1441,21 @@ block-3-top index: -1 chainturret rotate: false - xy: 187, 112 + xy: 543, 225 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 doubleturret rotate: false - xy: 674, 361 + xy: 790, 369 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 flakturret rotate: false - xy: 152, 94 + xy: 152, 76 size: 16, 16 orig: 16, 16 offset: 0, 0 @@ -1469,56 +1483,56 @@ gatlingturret index: -1 laserturret rotate: false - xy: 441, 146 + xy: 604, 244 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 magmaturret rotate: false - xy: 572, 272 + xy: 572, 254 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 megarepairturret rotate: false - xy: 572, 254 + xy: 590, 274 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 missileturret rotate: false - xy: 590, 274 + xy: 590, 256 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 railgunturret rotate: false - xy: 453, 146 + xy: 603, 232 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 repairturret rotate: false - xy: 465, 148 + xy: 616, 244 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 shotgunturret rotate: false - xy: 245, 111 + xy: 750, 392 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 teslaturret rotate: false - xy: 257, 111 + xy: 750, 380 size: 10, 10 orig: 10, 10 offset: 0, 0 @@ -1532,140 +1546,140 @@ titancannon index: -1 flierfactory rotate: false - xy: 152, 76 + xy: 170, 94 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 walkerfactory rotate: false - xy: 152, 76 + xy: 170, 94 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 flierfactory-top rotate: false - xy: 170, 94 + xy: 170, 76 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 walkerfactory-top rotate: false - xy: 170, 94 + xy: 170, 76 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 flierfactory-top-open rotate: false - xy: 170, 76 + xy: 188, 94 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 walkerfactory-top-open rotate: false - xy: 170, 76 + xy: 188, 94 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 compositewall rotate: false - xy: 477, 140 + xy: 852, 389 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 door rotate: false - xy: 669, 341 + xy: 770, 369 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 door-large rotate: false - xy: 546, 207 + xy: 134, 92 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 door-large-open rotate: false - xy: 134, 92 + xy: 134, 74 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 door-open rotate: false - xy: 669, 331 + xy: 780, 369 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 duriumwall rotate: false - xy: 684, 361 + xy: 800, 369 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 duriumwall-large rotate: false - xy: 134, 74 + xy: 152, 94 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 ironwall rotate: false - xy: 646, 286 + xy: 627, 306 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 steelwall rotate: false - xy: 870, 377 + xy: 712, 301 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 steelwall-large rotate: false - xy: 853, 409 + xy: 903, 461 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 stonewall rotate: false - xy: 218, 54 + xy: 168, 54 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titaniumshieldwall rotate: false - xy: 409, 113 + xy: 592, 222 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titaniumwall rotate: false - xy: 379, 103 + xy: 592, 212 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titaniumwall-large rotate: false - xy: 885, 461 + xy: 921, 461 size: 16, 16 orig: 16, 16 offset: 0, 0 @@ -1679,7 +1693,7 @@ blank index: -1 bullet rotate: false - xy: 897, 403 + xy: 812, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -1721,119 +1735,126 @@ laserfull index: -1 shell rotate: false - xy: 800, 379 + xy: 648, 246 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shot rotate: false - xy: 810, 379 + xy: 656, 256 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shot-long rotate: false - xy: 820, 389 + xy: 658, 246 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 titanshell rotate: false - xy: 389, 103 + xy: 602, 222 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-biomatter rotate: false - xy: 646, 276 + xy: 637, 306 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-coal rotate: false - xy: 646, 266 + xy: 413, 137 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-densealloy rotate: false - xy: 646, 256 + xy: 415, 127 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-iron rotate: false - xy: 642, 246 + xy: 415, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-lead rotate: false - xy: 656, 286 + xy: 423, 137 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-plastic rotate: false - xy: 656, 276 + xy: 427, 147 + size: 8, 8 + orig: 8, 8 + offset: 0, 0 + index: -1 +item-sand + rotate: false + xy: 437, 148 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-silicon rotate: false - xy: 656, 266 + xy: 447, 148 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-steel rotate: false - xy: 656, 256 + xy: 425, 127 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-stone rotate: false - xy: 652, 246 + xy: 425, 117 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-thorium rotate: false - xy: 689, 351 + xy: 457, 148 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 item-titanium rotate: false - xy: 689, 341 + xy: 433, 137 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 standard-mech rotate: false - xy: 989, 445 + xy: 401, 121 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 standard-ship rotate: false - xy: 1003, 446 + xy: 971, 429 size: 12, 12 orig: 12, 12 offset: 0, 0 @@ -2002,7 +2023,7 @@ discord-banner-over index: -1 controller-cursor rotate: false - xy: 543, 225 + xy: 205, 112 size: 16, 16 orig: 16, 16 offset: 0, 0 @@ -2030,7 +2051,7 @@ icon-admin index: -1 icon-admin-small rotate: false - xy: 1017, 452 + xy: 373, 135 size: 6, 6 orig: 6, 6 offset: 0, 0 @@ -2044,7 +2065,7 @@ icon-areaDelete index: -1 icon-arrow rotate: false - xy: 225, 123 + xy: 261, 123 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2065,49 +2086,49 @@ icon-arrow-left index: -1 icon-arrow-right rotate: false - xy: 1005, 434 + xy: 935, 433 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-arrow-up rotate: false - xy: 502, 195 + xy: 1013, 434 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-back rotate: false - xy: 188, 94 + xy: 188, 76 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 icon-ban rotate: false - xy: 241, 123 + xy: 277, 123 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-cancel rotate: false - xy: 257, 123 + xy: 293, 123 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-chat rotate: false - xy: 514, 195 + xy: 1013, 422 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-check rotate: false - xy: 273, 123 + xy: 309, 127 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2135,154 +2156,154 @@ icon-close-over index: -1 icon-crafting rotate: false - xy: 526, 195 + xy: 502, 195 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-cursor rotate: false - xy: 538, 195 + xy: 514, 195 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-defense rotate: false - xy: 550, 195 + xy: 526, 195 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-dev-builds rotate: false - xy: 289, 123 + xy: 325, 127 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-discord rotate: false - xy: 305, 127 + xy: 341, 127 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-distribution rotate: false - xy: 562, 195 + xy: 538, 195 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-donate rotate: false - xy: 321, 127 + xy: 357, 127 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-dots rotate: false - xy: 337, 127 + xy: 651, 309 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-editor rotate: false - xy: 353, 127 + xy: 939, 459 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-exit rotate: false - xy: 369, 127 + xy: 955, 459 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-file-text rotate: false - xy: 651, 309 + xy: 971, 459 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-fill rotate: false - xy: 188, 76 + xy: 206, 94 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 icon-floppy rotate: false - xy: 939, 459 + xy: 987, 459 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-folder rotate: false - xy: 955, 459 + xy: 1003, 460 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-folder-parent rotate: false - xy: 971, 459 + xy: 734, 394 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-github rotate: false - xy: 987, 459 + xy: 734, 378 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-google-play rotate: false - xy: 1003, 460 + xy: 734, 362 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-grid rotate: false - xy: 206, 94 + xy: 206, 76 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 icon-hold rotate: false - xy: 385, 123 + xy: 550, 195 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-holdDelete rotate: false - xy: 397, 123 + xy: 562, 195 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-home rotate: false - xy: 734, 394 + xy: 381, 135 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-host rotate: false - xy: 734, 378 + xy: 397, 135 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2296,21 +2317,21 @@ icon-info index: -1 icon-itch.io rotate: false - xy: 734, 362 + xy: 476, 162 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-line rotate: false - xy: 206, 76 + xy: 867, 453 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 icon-link rotate: false - xy: 476, 162 + xy: 118, 31 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2324,28 +2345,28 @@ icon-liquid index: -1 icon-load rotate: false - xy: 118, 31 + xy: 113, 15 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-load-image rotate: false - xy: 867, 453 + xy: 561, 225 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 icon-load-map rotate: false - xy: 561, 225 + xy: 564, 207 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 icon-loading rotate: false - xy: 564, 207 + xy: 651, 343 size: 16, 16 orig: 16, 16 offset: 0, 0 @@ -2366,7 +2387,7 @@ icon-menu index: -1 icon-menu-large rotate: false - xy: 651, 343 + xy: 651, 325 size: 16, 16 orig: 16, 16 offset: 0, 0 @@ -2387,21 +2408,21 @@ icon-pause index: -1 icon-pencil rotate: false - xy: 651, 325 + xy: 763, 427 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 icon-pencil-small rotate: false - xy: 113, 15 + xy: 129, 15 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-pick rotate: false - xy: 763, 427 + xy: 781, 427 size: 16, 16 orig: 16, 16 offset: 0, 0 @@ -2415,7 +2436,7 @@ icon-play index: -1 icon-play-2 rotate: false - xy: 129, 15 + xy: 134, 31 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2429,203 +2450,203 @@ icon-players index: -1 icon-power rotate: false - xy: 409, 123 + xy: 417, 157 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-production rotate: false - xy: 417, 157 + xy: 429, 158 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-quit rotate: false - xy: 134, 31 + xy: 145, 15 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-redo rotate: false - xy: 781, 427 + xy: 799, 427 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 icon-refresh rotate: false - xy: 145, 15 + xy: 885, 445 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-rename rotate: false - xy: 385, 135 + xy: 901, 445 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-resize rotate: false - xy: 799, 427 + xy: 817, 427 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 icon-rotate rotate: false - xy: 401, 135 + xy: 917, 445 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-rotate-arrow rotate: false - xy: 885, 445 + xy: 871, 423 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-rotate-left rotate: false - xy: 901, 445 + xy: 871, 407 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-rotate-right rotate: false - xy: 917, 445 + xy: 887, 429 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-save rotate: false - xy: 871, 423 + xy: 887, 413 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-save-image rotate: false - xy: 817, 427 + xy: 835, 427 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 icon-save-map rotate: false - xy: 835, 427 + xy: 853, 427 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 icon-settings rotate: false - xy: 417, 145 + xy: 441, 158 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-terrain rotate: false - xy: 853, 427 + xy: 680, 407 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 icon-tools rotate: false - xy: 871, 407 + xy: 903, 429 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-touch rotate: false - xy: 429, 158 + xy: 453, 158 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-touchDelete rotate: false - xy: 441, 158 + xy: 579, 232 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-trash rotate: false - xy: 887, 429 + xy: 903, 413 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-trash-16 rotate: false - xy: 680, 407 + xy: 680, 389 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 icon-trello rotate: false - xy: 887, 413 + xy: 919, 429 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-tutorial rotate: false - xy: 903, 429 + xy: 919, 413 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-undo rotate: false - xy: 680, 389 + xy: 698, 409 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 icon-units rotate: false - xy: 429, 146 + xy: 592, 244 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-weapon rotate: false - xy: 453, 158 + xy: 591, 232 size: 10, 10 orig: 10, 10 offset: 0, 0 index: -1 icon-wiki rotate: false - xy: 903, 413 + xy: 947, 443 size: 14, 14 orig: 14, 14 offset: 0, 0 index: -1 icon-zoom rotate: false - xy: 698, 409 + xy: 698, 391 size: 16, 16 orig: 16, 16 offset: 0, 0 index: -1 icon-zoom-small rotate: false - xy: 919, 429 + xy: 963, 443 size: 14, 14 orig: 14, 14 offset: 0, 0 @@ -2805,42 +2826,42 @@ flier index: -1 scout rotate: false - xy: 961, 445 + xy: 1007, 446 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 scout-base rotate: false - xy: 949, 431 + xy: 957, 429 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 standard-mech-base rotate: false - xy: 949, 431 + xy: 957, 429 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 scout-leg rotate: false - xy: 975, 445 + xy: 373, 121 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 standard-mech-leg rotate: false - xy: 975, 445 + xy: 373, 121 size: 12, 12 orig: 12, 12 offset: 0, 0 index: -1 beam rotate: false - xy: 417, 135 + xy: 572, 244 size: 8, 8 orig: 8, 8 offset: 0, 0 @@ -2854,70 +2875,70 @@ beam-equip index: -1 blaster rotate: false - xy: 612, 246 + xy: 792, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 blaster-equip rotate: false - xy: 627, 306 + xy: 792, 389 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 clustergun rotate: false - xy: 907, 403 + xy: 812, 389 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 clustergun-equip rotate: false - xy: 421, 125 + xy: 822, 399 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shockgun rotate: false - xy: 830, 399 + xy: 656, 276 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 shockgun-equip rotate: false - xy: 800, 369 + xy: 656, 266 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 triblaster rotate: false - xy: 399, 103 + xy: 602, 212 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 triblaster-equip rotate: false - xy: 409, 103 + xy: 612, 222 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 vulcan rotate: false - xy: 750, 356 + xy: 596, 202 size: 8, 8 orig: 8, 8 offset: 0, 0 index: -1 vulcan-equip rotate: false - xy: 760, 359 + xy: 606, 202 size: 8, 8 orig: 8, 8 offset: 0, 0 diff --git a/core/assets/sprites/sprites.png b/core/assets/sprites/sprites.png index 74c87bb2c7..4414ff56a7 100644 Binary files a/core/assets/sprites/sprites.png and b/core/assets/sprites/sprites.png differ diff --git a/core/assets/version.properties b/core/assets/version.properties index 27bde985b0..566c8dd3f5 100644 --- a/core/assets/version.properties +++ b/core/assets/version.properties @@ -1,7 +1,7 @@ #Autogenerated file. Do not modify. -#Thu Mar 29 23:33:54 EDT 2018 +#Fri Mar 30 23:22:00 EDT 2018 version=release -androidBuildCode=729 +androidBuildCode=748 name=Mindustry code=3.4 build=custom build diff --git a/core/src/io/anuke/mindustry/content/Items.java b/core/src/io/anuke/mindustry/content/Items.java index 0f9f4bfcc6..f124d06d00 100644 --- a/core/src/io/anuke/mindustry/content/Items.java +++ b/core/src/io/anuke/mindustry/content/Items.java @@ -26,7 +26,7 @@ public class Items { { explosiveness = 0.2f; flammability = 0.5f; - fluxiness = 0.5f; + fluxiness = 0.3f; material = false; hardness = 2; } @@ -50,6 +50,13 @@ public class Items { { material = false; flammability = 0.4f; + fluxiness = 0.2f; + } + }, + sand = new Item("sand", Color.valueOf("e3d39e")){ + { + material = false; + fluxiness = 0.5f; } }; } diff --git a/core/src/io/anuke/mindustry/content/Recipes.java b/core/src/io/anuke/mindustry/content/Recipes.java index 3ec28ef42c..4d0bb1accb 100644 --- a/core/src/io/anuke/mindustry/content/Recipes.java +++ b/core/src/io/anuke/mindustry/content/Recipes.java @@ -57,13 +57,14 @@ public class Recipes { new Recipe(crafting, CraftingBlocks.alloysmelter, stack(Items.titanium, 50), stack(Items.steel, 50)), new Recipe(crafting, CraftingBlocks.powersmelter, stack(Items.steel, 30), stack(Items.iron, 30)), new Recipe(crafting, CraftingBlocks.poweralloysmelter, stack(Items.steel, 30), stack(Items.iron, 30)), + new Recipe(crafting, CraftingBlocks.siliconsmelter, stack(Items.steel, 30), stack(Items.iron, 30)), new Recipe(crafting, CraftingBlocks.separator, stack(Items.steel, 30), stack(Items.iron, 30)), new Recipe(crafting, CraftingBlocks.centrifuge, stack(Items.steel, 30), stack(Items.iron, 30)), new Recipe(crafting, CraftingBlocks.oilRefinery, stack(Items.steel, 15), stack(Items.iron, 15)), new Recipe(crafting, CraftingBlocks.biomatterCompressor, stack(Items.steel, 15), stack(Items.iron, 15)), - new Recipe(crafting, CraftingBlocks.stoneFormer, stack(Items.steel, 10), stack(Items.iron, 10)), new Recipe(crafting, CraftingBlocks.plasticFormer, stack(Items.steel, 30), stack(Items.titanium, 15)), new Recipe(crafting, CraftingBlocks.cryofluidmixer, stack(Items.steel, 30), stack(Items.titanium, 15)), + new Recipe(crafting, CraftingBlocks.stoneFormer, stack(Items.steel, 10), stack(Items.iron, 10)), new Recipe(crafting, CraftingBlocks.melter, stack(Items.steel, 30), stack(Items.titanium, 15)), new Recipe(crafting, CraftingBlocks.weaponFactory, stack(Items.steel, 60), stack(Items.iron, 60)).setDesktop(), diff --git a/core/src/io/anuke/mindustry/content/blocks/Blocks.java b/core/src/io/anuke/mindustry/content/blocks/Blocks.java index feb6885eac..e912e7d646 100644 --- a/core/src/io/anuke/mindustry/content/blocks/Blocks.java +++ b/core/src/io/anuke/mindustry/content/blocks/Blocks.java @@ -86,7 +86,7 @@ public class Blocks { }, sand = new Floor("sand") {{ - drops = new ItemStack(Items.silicon, 1); + drops = new ItemStack(Items.sand, 1); }}, ice = new Floor("ice") { diff --git a/core/src/io/anuke/mindustry/content/blocks/CraftingBlocks.java b/core/src/io/anuke/mindustry/content/blocks/CraftingBlocks.java index b96f3d05d4..3a2be82c68 100644 --- a/core/src/io/anuke/mindustry/content/blocks/CraftingBlocks.java +++ b/core/src/io/anuke/mindustry/content/blocks/CraftingBlocks.java @@ -1,5 +1,6 @@ package io.anuke.mindustry.content.blocks; +import com.badlogic.gdx.graphics.Color; import io.anuke.mindustry.content.Items; import io.anuke.mindustry.content.Liquids; import io.anuke.mindustry.graphics.Fx; @@ -26,6 +27,19 @@ public class CraftingBlocks { result = Items.densealloy; burnDuration = 45f; craftTime = 25f; + flameColor = Color.valueOf("fd896e"); + }}, + + siliconsmelter = new PowerSmelter("siliconsmelter") {{ + health = 90; + craftEffect = Fx.smeltsmoke; + inputs = new ItemStack[]{new ItemStack(Items.coal, 1), new ItemStack(Items.sand, 2)}; + result = Items.silicon; + powerUse = 0.05f; + craftTime = 35f; + size = 2; + hasLiquids = false; + flameColor = Color.valueOf("ffef99"); }}, poweralloysmelter = new PowerSmelter("poweralloysmelter") {{ @@ -74,29 +88,44 @@ public class CraftingBlocks { liquid = Liquids.water; item = Items.stone; results = new Item[]{ - null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, + null, null, null, null, null, null, null, null, null, null, + Items.sand, Items.sand, Items.sand, Items.sand, Items.sand, Items.sand, Items.sand, Items.sand, Items.sand, Items.sand, Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, Items.iron, Items.iron, Items.iron, Items.iron, Items.lead, Items.lead, Items.coal, Items.coal, Items.titanium }; - liquidUse = 0.2f; filterTime = 40f; itemCapacity = 40; - health = 50; }}, - centrifuge = new GenericCrafter("centrifuge") {{ - inputItem = new ItemStack(Items.stone, 6); - inputLiquid = Liquids.water; - liquidUse = 0.1f; - output = Items.coal; - health = 50; - craftTime = 50; - hasInventory = hasLiquids = true; + centrifuge = new Separator("centrifuge") {{ + liquid = Liquids.water; + item = Items.stone; + results = new Item[]{ + null, null, null, null, null, null, null, null, null, null, null, null, null, + Items.sand, Items.sand, Items.sand, Items.sand, Items.sand, Items.sand, Items.sand, Items.sand, Items.sand, Items.sand, Items.sand, Items.sand, + Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, + Items.iron, Items.iron, Items.iron, Items.iron, Items.iron, + Items.lead, Items.lead, Items.lead, + Items.coal, Items.coal, Items.coal, + Items.titanium, Items.titanium, + Items.thorium, + }; + + liquidUse = 0.3f; + hasPower = true; + powerUse = 0.2f; + filterTime = 15f; + itemCapacity = 60; + health = 50*4; + spinnerLength = 1.5f; + spinnerRadius = 3.5f; + spinnerThickness = 1.5f; + spinnerSpeed = 3f; size = 2; }}, diff --git a/core/src/io/anuke/mindustry/graphics/Fx.java b/core/src/io/anuke/mindustry/graphics/Fx.java index 3ebe05570a..37484c3bb9 100644 --- a/core/src/io/anuke/mindustry/graphics/Fx.java +++ b/core/src/io/anuke/mindustry/graphics/Fx.java @@ -241,7 +241,7 @@ public class Fx{ smeltsmoke = new Effect(15, e -> { Angles.randLenVectors(e.id, 6, 4f + e.ifract()*5f, (x, y)->{ - Draw.color(Color.WHITE, Color.valueOf("ffc999"), e.ifract()); + Draw.color(Color.WHITE, e.color, e.ifract()); Fill.poly(e.x + x, e.y + y, 4, 0.5f+e.fract()*2f, 45); Draw.reset(); }); @@ -391,11 +391,12 @@ public class Fx{ Draw.reset(); }), - smelt = new Effect(10, e -> { - Lines.stroke(1f); - Draw.color(Color.YELLOW, Color.RED, e.ifract()); - Lines.spikes(e.x, e.y, e.ifract() * 5f, 1f, 8); - Draw.reset(); + smelt = new Effect(20, e -> { + Angles.randLenVectors(e.id, 6, 2f + e.ifract()*5f, (x, y)->{ + Draw.color(Color.WHITE, e.color, e.ifract()); + Fill.poly(e.x + x, e.y + y, 4, 0.5f+e.fract()*2f, 45); + Draw.reset(); + }); }), breakBlock = new Effect(12, e -> { diff --git a/core/src/io/anuke/mindustry/world/blocks/types/production/Centrifuge.java b/core/src/io/anuke/mindustry/world/blocks/types/production/Centrifuge.java deleted file mode 100644 index b99c81cf06..0000000000 --- a/core/src/io/anuke/mindustry/world/blocks/types/production/Centrifuge.java +++ /dev/null @@ -1,17 +0,0 @@ -package io.anuke.mindustry.world.blocks.types.production; - -import io.anuke.mindustry.world.Tile; - -public class Centrifuge extends GenericCrafter { - protected float powerUsed = 0.1f; - protected float timeUsed = 360f; - - public Centrifuge(String name) { - super(name); - } - - @Override - public void update(Tile tile){ - - } -} diff --git a/core/src/io/anuke/mindustry/world/blocks/types/production/GenericCrafter.java b/core/src/io/anuke/mindustry/world/blocks/types/production/GenericCrafter.java index 7f07c21594..5d30347c04 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/production/GenericCrafter.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/production/GenericCrafter.java @@ -88,11 +88,14 @@ public class GenericCrafter extends Block{ entity.progress += 1f / craftTime * Timers.delta(); entity.totalProgress += Timers.delta(); + entity.warmup = Mathf.lerp(entity.warmup, 1f, 0.02f); if(hasPower) entity.power.amount -= powerUsed; if(hasLiquids) entity.liquid.amount -= liquidUsed; if(Mathf.chance(Timers.delta() * updateEffectChance)) Effects.effect(updateEffect, entity.x + Mathf.range(size*4f), entity.y + Mathf.range(size*4)); + }else{ + entity.warmup = Mathf.lerp(entity.warmup, 0f, 0.02f); } if(entity.progress >= 1f){ @@ -127,5 +130,7 @@ public class GenericCrafter extends Block{ public static class GenericCrafterEntity extends TileEntity{ public float progress; public float totalProgress; + public float warmup; + public float craftTime; } } diff --git a/core/src/io/anuke/mindustry/world/blocks/types/production/PlasticFormer.java b/core/src/io/anuke/mindustry/world/blocks/types/production/PlasticFormer.java index 1e3cd473b3..4919c8a131 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/production/PlasticFormer.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/production/PlasticFormer.java @@ -16,7 +16,7 @@ public class PlasticFormer extends GenericCrafter { GenericCrafterEntity entity = tile.entity(); - Draw.alpha(Mathf.absin(entity.totalProgress, 3f, 0.9f)); + Draw.alpha(Mathf.absin(entity.totalProgress, 3f, 0.9f) * entity.warmup); Draw.rect(name + "-top", tile.drawx(), tile.drawy()); Draw.reset(); } diff --git a/core/src/io/anuke/mindustry/world/blocks/types/production/PowerSmelter.java b/core/src/io/anuke/mindustry/world/blocks/types/production/PowerSmelter.java index 407ff34386..fcbf19c460 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/production/PowerSmelter.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/production/PowerSmelter.java @@ -112,7 +112,7 @@ public class PowerSmelter extends PowerBlock { } offloadNear(tile, result); - Effects.effect(craftEffect, entity); + Effects.effect(craftEffect, flameColor, entity); } @Override diff --git a/core/src/io/anuke/mindustry/world/blocks/types/production/Separator.java b/core/src/io/anuke/mindustry/world/blocks/types/production/Separator.java index fc3ae799c1..7426eaeeff 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/production/Separator.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/production/Separator.java @@ -1,5 +1,6 @@ package io.anuke.mindustry.world.blocks.types.production; +import com.badlogic.gdx.graphics.Color; import io.anuke.mindustry.entities.TileEntity; import io.anuke.mindustry.resource.Item; import io.anuke.mindustry.resource.Liquid; @@ -7,6 +8,8 @@ import io.anuke.mindustry.world.Block; import io.anuke.mindustry.world.Tile; import io.anuke.mindustry.world.blocks.types.production.GenericCrafter.GenericCrafterEntity; import io.anuke.ucore.core.Timers; +import io.anuke.ucore.graphics.Draw; +import io.anuke.ucore.graphics.Lines; import io.anuke.ucore.util.Mathf; /**Extracts a random list of items from an input item and an input liquid.*/ @@ -17,7 +20,12 @@ public class Separator extends Block { protected Item item; protected Item[] results; protected float liquidUse; + protected float powerUse; protected float filterTime; + protected float spinnerRadius = 2.5f; + protected float spinnerLength = 1f; + protected float spinnerThickness = 1f; + protected float spinnerSpeed = 2f; protected boolean offloading = false; @@ -29,6 +37,22 @@ public class Separator extends Block { hasLiquids = true; } + @Override + public void draw(Tile tile) { + super.draw(tile); + + GenericCrafterEntity entity = tile.entity(); + + Draw.color(tile.entity.liquid.liquid.color); + Draw.alpha(tile.entity.liquid.amount / liquidCapacity); + Draw.rect(name + "-liquid", tile.drawx(), tile.drawy()); + + Draw.color(Color.valueOf("858585")); + Lines.stroke(spinnerThickness); + Lines.spikes(tile.drawx(), tile.drawy(), spinnerRadius, spinnerLength, 3, entity.craftTime*spinnerSpeed); + Draw.reset(); + } + //TODO draw with effects such as spinning @Override @@ -36,10 +60,19 @@ public class Separator extends Block { GenericCrafterEntity entity = tile.entity(); float liquidUsed = Math.min(liquidCapacity, liquidUse * Timers.delta()); + float powerUsed = Math.min(powerCapacity, powerUse * Timers.delta()); - if(entity.liquid.amount >= liquidUsed && entity.inventory.hasItem(item)){ + entity.craftTime += entity.warmup*Timers.delta(); + + if(entity.liquid.amount >= liquidUsed && entity.inventory.hasItem(item) && + (!hasPower || entity.power.amount >= powerUsed)){ entity.progress += 1f/filterTime; entity.liquid.amount -= liquidUsed; + if(hasPower) entity.power.amount -= powerUsed; + + entity.warmup = Mathf.lerpDelta(entity.warmup, 1f, 0.02f); + }else{ + entity.warmup = Mathf.lerpDelta(entity.warmup, 0f, 0.02f); } if(entity.progress >= 1f){ diff --git a/core/src/io/anuke/mindustry/world/blocks/types/production/Smelter.java b/core/src/io/anuke/mindustry/world/blocks/types/production/Smelter.java index f476c123f4..018ae463fe 100644 --- a/core/src/io/anuke/mindustry/world/blocks/types/production/Smelter.java +++ b/core/src/io/anuke/mindustry/world/blocks/types/production/Smelter.java @@ -1,5 +1,6 @@ package io.anuke.mindustry.world.blocks.types.production; +import com.badlogic.gdx.graphics.Color; import io.anuke.mindustry.entities.TileEntity; import io.anuke.mindustry.graphics.Fx; import io.anuke.mindustry.resource.Item; @@ -11,6 +12,7 @@ import io.anuke.ucore.core.Effects; import io.anuke.ucore.core.Effects.Effect; import io.anuke.ucore.core.Timers; import io.anuke.ucore.graphics.Draw; +import io.anuke.ucore.graphics.Fill; import io.anuke.ucore.util.Mathf; import io.anuke.ucore.util.Strings; @@ -27,6 +29,7 @@ public class Smelter extends Block{ protected float craftTime = 20f; //time to craft one item, so max 3 items per second by default protected float burnDuration = 50f; //by default, the fuel will burn 45 frames, so that's 2.5 items/fuel at most protected Effect craftEffect = Fx.smelt, burnEffect = Fx.fuelburn; + protected Color flameColor = Color.valueOf("ffb879"); protected int capacity = 20; @@ -57,7 +60,7 @@ public class Smelter extends Block{ @Override public void update(Tile tile){ - CrafterEntity entity = tile.entity(); + SmelterEntity entity = tile.entity(); if(entity.timer.get(timerDump, 5) && entity.inventory.hasItem(result)){ tryDump(tile, result); @@ -73,6 +76,9 @@ public class Smelter extends Block{ //decrement burntime if(entity.burnTime > 0){ entity.burnTime -= Timers.delta(); + entity.heat = Mathf.lerp(entity.heat, 1f, 0.02f); + }else{ + entity.heat = Mathf.lerp(entity.heat, 0f, 0.02f); } //make sure it has all the items @@ -93,7 +99,7 @@ public class Smelter extends Block{ } offloadNear(tile, result); - Effects.effect(craftEffect, entity); + Effects.effect(craftEffect, flameColor, entity); } @Override @@ -114,22 +120,30 @@ public class Smelter extends Block{ public void draw(Tile tile){ super.draw(tile); - CrafterEntity entity = tile.entity(); + SmelterEntity entity = tile.entity(); //draw glowing center - if(entity.burnTime > 0){ - Draw.color(1f, 1f, 1f, Mathf.absin(Timers.time(), 9f, 0.4f) + Mathf.random(0.05f)); - Draw.rect("smelter-middle", tile.worldx(), tile.worldy()); - Draw.color(); - } + if(entity.heat > 0f){ + float g = 0.1f; + + Draw.alpha(((1f-g) + Mathf.absin(Timers.time(), 8f, g)) * entity.heat); + + Draw.tint(flameColor); + Fill.circle(tile.drawx(), tile.drawy(), 2f + Mathf.absin(Timers.time(), 5f, 0.8f)); + Draw.color(1f, 1f, 1f, entity.heat); + Fill.circle(tile.drawx(), tile.drawy(), 1f + Mathf.absin(Timers.time(), 5f, 0.7f)); + + Draw.color(); + } } @Override public TileEntity getEntity() { - return new CrafterEntity(); + return new SmelterEntity(); } - public class CrafterEntity extends TileEntity{ + public class SmelterEntity extends TileEntity{ public float burnTime; + public float heat; } }