Initial take on wires

pull/292/head
tobspr 4 years ago
parent 97ef46bd52
commit 6677ff0a44

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a7931a4ba2104bbf7de3a1332617d5a056e34c55bab751821a168a83e0b91793
size 683910
oid sha256:9d8a4254944d83882513a062e77406419d94c3058a7ad657a5a318d45cc5443f
size 902131

@ -1,3 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:037d27409bf78b828470e553ee0f29304eda24c46598151bb4b9c69c66a6c6c1
size 146363
oid sha256:27c8d1eaa48beb7187e37244bd6ef7f43429be84ac88fffa96a4d72eb0e6565b
size 158809

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.7 KiB

@ -2,7 +2,7 @@
"sprites/belt/forward_0.png":
{
"frame": {"x":204,"y":26,"w":13,"h":13},
"frame": {"x":205,"y":110,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -10,7 +10,7 @@
},
"sprites/belt/forward_1.png":
{
"frame": {"x":221,"y":26,"w":13,"h":13},
"frame": {"x":222,"y":110,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -18,7 +18,7 @@
},
"sprites/belt/forward_2.png":
{
"frame": {"x":238,"y":26,"w":13,"h":13},
"frame": {"x":239,"y":110,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -26,7 +26,7 @@
},
"sprites/belt/forward_3.png":
{
"frame": {"x":255,"y":26,"w":13,"h":13},
"frame": {"x":206,"y":68,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -34,7 +34,7 @@
},
"sprites/belt/forward_4.png":
{
"frame": {"x":272,"y":26,"w":13,"h":13},
"frame": {"x":223,"y":68,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -42,7 +42,7 @@
},
"sprites/belt/forward_5.png":
{
"frame": {"x":245,"y":112,"w":13,"h":13},
"frame": {"x":240,"y":68,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -50,7 +50,7 @@
},
"sprites/belt/left_0.png":
{
"frame": {"x":262,"y":112,"w":13,"h":13},
"frame": {"x":243,"y":26,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -58,7 +58,7 @@
},
"sprites/belt/left_1.png":
{
"frame": {"x":279,"y":112,"w":13,"h":13},
"frame": {"x":260,"y":26,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -66,7 +66,7 @@
},
"sprites/belt/left_2.png":
{
"frame": {"x":296,"y":112,"w":13,"h":13},
"frame": {"x":277,"y":26,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -74,7 +74,7 @@
},
"sprites/belt/left_3.png":
{
"frame": {"x":289,"y":49,"w":13,"h":13},
"frame": {"x":257,"y":66,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -82,7 +82,7 @@
},
"sprites/belt/left_4.png":
{
"frame": {"x":306,"y":49,"w":13,"h":13},
"frame": {"x":274,"y":66,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -90,7 +90,7 @@
},
"sprites/belt/left_5.png":
{
"frame": {"x":323,"y":49,"w":13,"h":13},
"frame": {"x":294,"y":26,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -98,7 +98,7 @@
},
"sprites/belt/right_0.png":
{
"frame": {"x":313,"y":112,"w":13,"h":13},
"frame": {"x":311,"y":26,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -106,7 +106,7 @@
},
"sprites/belt/right_1.png":
{
"frame": {"x":330,"y":112,"w":13,"h":13},
"frame": {"x":328,"y":26,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -114,7 +114,7 @@
},
"sprites/belt/right_2.png":
{
"frame": {"x":340,"y":49,"w":13,"h":13},
"frame": {"x":291,"y":66,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -122,7 +122,7 @@
},
"sprites/belt/right_3.png":
{
"frame": {"x":347,"y":112,"w":13,"h":13},
"frame": {"x":308,"y":66,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -130,7 +130,7 @@
},
"sprites/belt/right_4.png":
{
"frame": {"x":357,"y":49,"w":13,"h":13},
"frame": {"x":325,"y":66,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -138,7 +138,7 @@
},
"sprites/belt/right_5.png":
{
"frame": {"x":374,"y":49,"w":13,"h":13},
"frame": {"x":345,"y":26,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -146,7 +146,7 @@
},
"sprites/blueprints/belt_left.png":
{
"frame": {"x":391,"y":48,"w":13,"h":13},
"frame": {"x":362,"y":26,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -154,7 +154,7 @@
},
"sprites/blueprints/belt_right.png":
{
"frame": {"x":404,"y":25,"w":13,"h":13},
"frame": {"x":342,"y":66,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -162,7 +162,7 @@
},
"sprites/blueprints/belt_top.png":
{
"frame": {"x":400,"y":85,"w":13,"h":13},
"frame": {"x":359,"y":66,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -178,15 +178,23 @@
},
"sprites/blueprints/cutter.png":
{
"frame": {"x":245,"y":66,"w":36,"h":19},
"frame": {"x":289,"y":43,"w":36,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":36,"h":19},
"sourceSize": {"w":38,"h":19}
},
"sprites/blueprints/energy_generator.png":
{
"frame": {"x":126,"y":79,"w":36,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":36,"h":38},
"sourceSize": {"w":38,"h":38}
},
"sprites/blueprints/miner-chainable.png":
{
"frame": {"x":285,"y":66,"w":19,"h":19},
"frame": {"x":365,"y":3,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -194,7 +202,7 @@
},
"sprites/blueprints/miner.png":
{
"frame": {"x":285,"y":89,"w":19,"h":19},
"frame": {"x":302,"y":106,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -202,7 +210,7 @@
},
"sprites/blueprints/mixer.png":
{
"frame": {"x":204,"y":68,"w":37,"h":19},
"frame": {"x":247,"y":85,"w":37,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":37,"h":19},
@ -242,7 +250,7 @@
},
"sprites/blueprints/rotater-ccw.png":
{
"frame": {"x":289,"y":26,"w":19,"h":19},
"frame": {"x":325,"y":106,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -250,7 +258,7 @@
},
"sprites/blueprints/rotater.png":
{
"frame": {"x":312,"y":26,"w":19,"h":19},
"frame": {"x":328,"y":83,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -258,7 +266,7 @@
},
"sprites/blueprints/splitter-compact-inverse.png":
{
"frame": {"x":327,"y":3,"w":19,"h":19},
"frame": {"x":348,"y":106,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -266,7 +274,7 @@
},
"sprites/blueprints/splitter-compact.png":
{
"frame": {"x":308,"y":66,"w":19,"h":19},
"frame": {"x":351,"y":83,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -274,7 +282,7 @@
},
"sprites/blueprints/splitter.png":
{
"frame": {"x":249,"y":43,"w":36,"h":19},
"frame": {"x":325,"y":3,"w":36,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":36,"h":19},
@ -282,7 +290,7 @@
},
"sprites/blueprints/stacker.png":
{
"frame": {"x":204,"y":91,"w":37,"h":19},
"frame": {"x":243,"y":3,"w":37,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":37,"h":19},
@ -290,7 +298,7 @@
},
"sprites/blueprints/trash-storage.png":
{
"frame": {"x":126,"y":79,"w":35,"h":38},
"frame": {"x":204,"y":3,"w":35,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":35,"h":38},
@ -298,7 +306,7 @@
},
"sprites/blueprints/trash.png":
{
"frame": {"x":335,"y":26,"w":19,"h":19},
"frame": {"x":371,"y":106,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -306,7 +314,7 @@
},
"sprites/blueprints/underground_belt_entry-tier2.png":
{
"frame": {"x":381,"y":26,"w":19,"h":18},
"frame": {"x":411,"y":3,"w":19,"h":18},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":1,"w":19,"h":18},
@ -314,7 +322,7 @@
},
"sprites/blueprints/underground_belt_entry.png":
{
"frame": {"x":354,"y":89,"w":19,"h":16},
"frame": {"x":256,"y":108,"w":19,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":3,"w":19,"h":16},
@ -322,7 +330,7 @@
},
"sprites/blueprints/underground_belt_exit-tier2.png":
{
"frame": {"x":364,"y":109,"w":19,"h":16},
"frame": {"x":279,"y":108,"w":19,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":16},
@ -330,7 +338,7 @@
},
"sprites/blueprints/underground_belt_exit.png":
{
"frame": {"x":377,"y":66,"w":19,"h":16},
"frame": {"x":434,"y":3,"w":19,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":16},
@ -338,7 +346,7 @@
},
"sprites/buildings/belt_left.png":
{
"frame": {"x":262,"y":112,"w":13,"h":13},
"frame": {"x":243,"y":26,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -346,7 +354,7 @@
},
"sprites/buildings/belt_right.png":
{
"frame": {"x":313,"y":112,"w":13,"h":13},
"frame": {"x":311,"y":26,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -354,7 +362,7 @@
},
"sprites/buildings/belt_top.png":
{
"frame": {"x":204,"y":26,"w":13,"h":13},
"frame": {"x":205,"y":110,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -370,12 +378,20 @@
},
"sprites/buildings/cutter.png":
{
"frame": {"x":287,"y":3,"w":36,"h":19},
"frame": {"x":288,"y":83,"w":36,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":36,"h":19},
"sourceSize": {"w":38,"h":19}
},
"sprites/buildings/energy_generator.png":
{
"frame": {"x":166,"y":45,"w":36,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":36,"h":38},
"sourceSize": {"w":38,"h":38}
},
"sprites/buildings/hub.png":
{
"frame": {"x":3,"y":3,"w":75,"h":76},
@ -386,7 +402,7 @@
},
"sprites/buildings/miner-chainable.png":
{
"frame": {"x":350,"y":3,"w":19,"h":19},
"frame": {"x":374,"y":83,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -394,7 +410,7 @@
},
"sprites/buildings/miner.png":
{
"frame": {"x":308,"y":89,"w":19,"h":19},
"frame": {"x":394,"y":106,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -402,7 +418,7 @@
},
"sprites/buildings/mixer.png":
{
"frame": {"x":208,"y":43,"w":37,"h":19},
"frame": {"x":248,"y":43,"w":37,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":37,"h":19},
@ -418,7 +434,7 @@
},
"sprites/buildings/painter-mirrored.png":
{
"frame": {"x":166,"y":45,"w":38,"h":19},
"frame": {"x":205,"y":87,"w":38,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":38,"h":19},
@ -434,7 +450,7 @@
},
"sprites/buildings/painter.png":
{
"frame": {"x":204,"y":3,"w":38,"h":19},
"frame": {"x":206,"y":45,"w":38,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":38,"h":19},
@ -442,7 +458,7 @@
},
"sprites/buildings/rotater-ccw.png":
{
"frame": {"x":331,"y":66,"w":19,"h":19},
"frame": {"x":369,"y":43,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -450,7 +466,7 @@
},
"sprites/buildings/rotater.png":
{
"frame": {"x":331,"y":89,"w":19,"h":19},
"frame": {"x":388,"y":3,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -458,7 +474,7 @@
},
"sprites/buildings/splitter-compact-inverse.png":
{
"frame": {"x":354,"y":66,"w":19,"h":19},
"frame": {"x":397,"y":80,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -466,7 +482,7 @@
},
"sprites/buildings/splitter-compact.png":
{
"frame": {"x":358,"y":26,"w":19,"h":19},
"frame": {"x":417,"y":103,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -474,7 +490,7 @@
},
"sprites/buildings/splitter.png":
{
"frame": {"x":245,"y":89,"w":36,"h":19},
"frame": {"x":329,"y":43,"w":36,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":36,"h":19},
@ -482,7 +498,7 @@
},
"sprites/buildings/stacker.png":
{
"frame": {"x":246,"y":3,"w":37,"h":19},
"frame": {"x":284,"y":3,"w":37,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":37,"h":19},
@ -490,7 +506,7 @@
},
"sprites/buildings/trash-storage.png":
{
"frame": {"x":165,"y":72,"w":35,"h":38},
"frame": {"x":166,"y":87,"w":35,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":35,"h":38},
@ -498,7 +514,7 @@
},
"sprites/buildings/trash.png":
{
"frame": {"x":373,"y":3,"w":19,"h":19},
"frame": {"x":392,"y":39,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -506,7 +522,7 @@
},
"sprites/buildings/underground_belt_entry-tier2.png":
{
"frame": {"x":396,"y":3,"w":19,"h":18},
"frame": {"x":415,"y":25,"w":19,"h":18},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":1,"w":19,"h":18},
@ -514,7 +530,7 @@
},
"sprites/buildings/underground_belt_entry.png":
{
"frame": {"x":377,"y":86,"w":19,"h":16},
"frame": {"x":415,"y":47,"w":19,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":3,"w":19,"h":16},
@ -522,7 +538,7 @@
},
"sprites/buildings/underground_belt_exit-tier2.png":
{
"frame": {"x":387,"y":106,"w":19,"h":16},
"frame": {"x":420,"y":67,"w":19,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":16},
@ -530,7 +546,7 @@
},
"sprites/buildings/underground_belt_exit.png":
{
"frame": {"x":400,"y":65,"w":19,"h":16},
"frame": {"x":438,"y":23,"w":19,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":16},
@ -578,7 +594,7 @@
},
"sprites/misc/deletion_marker.png":
{
"frame": {"x":187,"y":114,"w":10,"h":10},
"frame": {"x":376,"y":66,"w":10,"h":10},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":10,"h":10},
@ -602,7 +618,7 @@
},
"sprites/misc/slot_bad_arrow.png":
{
"frame": {"x":187,"y":114,"w":10,"h":10},
"frame": {"x":376,"y":66,"w":10,"h":10},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":10,"h":10},
@ -610,7 +626,7 @@
},
"sprites/misc/slot_good_arrow.png":
{
"frame": {"x":201,"y":114,"w":10,"h":10},
"frame": {"x":390,"y":66,"w":10,"h":10},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":10,"h":10},
@ -618,7 +634,7 @@
},
"sprites/misc/storage_overlay.png":
{
"frame": {"x":165,"y":114,"w":18,"h":9},
"frame": {"x":379,"y":26,"w":18,"h":9},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":18,"h":9},
@ -637,8 +653,8 @@
"version": "1.0",
"image": "atlas0_10.png",
"format": "RGBA8888",
"size": {"w":422,"h":128},
"size": {"w":460,"h":128},
"scale": "0.1",
"smartupdate": "$TexturePacker:SmartUpdate:8985524bba1a3f16cecab3c03b6aaa06:d614d20bfce033d8a8ab0990af085d16:f159918d23e5952766c6d23ab52278c6$"
"smartupdate": "$TexturePacker:SmartUpdate:edd9ed958611fe83da11c1bd0e07a460:9470e3f106da3baf56901b0e2f906cb8:f159918d23e5952766c6d23ab52278c6$"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 52 KiB

After

Width:  |  Height:  |  Size: 54 KiB

@ -2,7 +2,7 @@
"sprites/belt/forward_0.png":
{
"frame": {"x":1876,"y":1166,"w":100,"h":126},
"frame": {"x":1457,"y":1455,"w":100,"h":126},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":0,"w":100,"h":126},
@ -10,7 +10,7 @@
},
"sprites/belt/forward_1.png":
{
"frame": {"x":1876,"y":1296,"w":100,"h":126},
"frame": {"x":1457,"y":1585,"w":100,"h":126},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":0,"w":100,"h":126},
@ -18,7 +18,7 @@
},
"sprites/belt/forward_2.png":
{
"frame": {"x":1869,"y":1543,"w":100,"h":126},
"frame": {"x":1467,"y":1715,"w":100,"h":126},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":0,"w":100,"h":126},
@ -26,7 +26,7 @@
},
"sprites/belt/forward_3.png":
{
"frame": {"x":1857,"y":395,"w":100,"h":126},
"frame": {"x":1467,"y":1845,"w":100,"h":126},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":0,"w":100,"h":126},
@ -34,7 +34,7 @@
},
"sprites/belt/forward_4.png":
{
"frame": {"x":1865,"y":1690,"w":100,"h":126},
"frame": {"x":1561,"y":1465,"w":100,"h":126},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":0,"w":100,"h":126},
@ -42,7 +42,7 @@
},
"sprites/belt/forward_5.png":
{
"frame": {"x":920,"y":1370,"w":100,"h":126},
"frame": {"x":1665,"y":1465,"w":100,"h":126},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":0,"w":100,"h":126},
@ -50,7 +50,7 @@
},
"sprites/belt/left_0.png":
{
"frame": {"x":1870,"y":1426,"w":113,"h":113},
"frame": {"x":1561,"y":1595,"w":113,"h":113},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":13,"w":113,"h":113},
@ -58,7 +58,7 @@
},
"sprites/belt/left_1.png":
{
"frame": {"x":920,"y":1500,"w":113,"h":113},
"frame": {"x":1571,"y":1712,"w":113,"h":113},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":13,"w":113,"h":113},
@ -66,7 +66,7 @@
},
"sprites/belt/left_2.png":
{
"frame": {"x":935,"y":1617,"w":113,"h":113},
"frame": {"x":1571,"y":1829,"w":113,"h":113},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":13,"w":113,"h":113},
@ -74,7 +74,7 @@
},
"sprites/belt/left_3.png":
{
"frame": {"x":935,"y":1734,"w":113,"h":113},
"frame": {"x":1678,"y":1595,"w":113,"h":113},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":13,"w":113,"h":113},
@ -82,7 +82,7 @@
},
"sprites/belt/left_4.png":
{
"frame": {"x":1052,"y":1721,"w":113,"h":113},
"frame": {"x":1688,"y":1712,"w":113,"h":113},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":13,"w":113,"h":113},
@ -90,7 +90,7 @@
},
"sprites/belt/left_5.png":
{
"frame": {"x":1169,"y":1721,"w":113,"h":113},
"frame": {"x":1688,"y":1829,"w":113,"h":113},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":13,"w":113,"h":113},
@ -98,7 +98,7 @@
},
"sprites/belt/right_0.png":
{
"frame": {"x":1286,"y":1721,"w":113,"h":113},
"frame": {"x":1769,"y":1466,"w":113,"h":113},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":13,"w":113,"h":113},
@ -106,7 +106,7 @@
},
"sprites/belt/right_1.png":
{
"frame": {"x":1403,"y":1721,"w":113,"h":113},
"frame": {"x":1886,"y":1466,"w":113,"h":113},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":13,"w":113,"h":113},
@ -114,7 +114,7 @@
},
"sprites/belt/right_2.png":
{
"frame": {"x":1520,"y":1721,"w":113,"h":113},
"frame": {"x":1795,"y":1583,"w":113,"h":113},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":13,"w":113,"h":113},
@ -122,7 +122,7 @@
},
"sprites/belt/right_3.png":
{
"frame": {"x":1052,"y":1552,"w":113,"h":113},
"frame": {"x":1805,"y":1700,"w":113,"h":113},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":13,"w":113,"h":113},
@ -130,7 +130,7 @@
},
"sprites/belt/right_4.png":
{
"frame": {"x":1169,"y":1552,"w":113,"h":113},
"frame": {"x":1805,"y":1817,"w":113,"h":113},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":13,"w":113,"h":113},
@ -138,7 +138,7 @@
},
"sprites/belt/right_5.png":
{
"frame": {"x":1286,"y":1554,"w":113,"h":113},
"frame": {"x":1912,"y":1583,"w":113,"h":113},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":13,"w":113,"h":113},
@ -178,15 +178,23 @@
},
"sprites/blueprints/cutter.png":
{
"frame": {"x":1433,"y":785,"w":341,"h":191},
"frame": {"x":1114,"y":966,"w":341,"h":191},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":23,"y":0,"w":341,"h":191},
"sourceSize": {"w":384,"h":192}
},
"sprites/blueprints/energy_generator.png":
{
"frame": {"x":735,"y":590,"w":339,"h":373},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":25,"y":11,"w":339,"h":373},
"sourceSize": {"w":384,"h":384}
},
"sprites/blueprints/miner-chainable.png":
{
"frame": {"x":749,"y":1655,"w":182,"h":190},
"frame": {"x":1843,"y":783,"w":182,"h":190},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":0,"w":182,"h":190},
@ -194,7 +202,7 @@
},
"sprites/blueprints/miner.png":
{
"frame": {"x":1690,"y":1174,"w":182,"h":190},
"frame": {"x":1073,"y":1357,"w":182,"h":190},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":0,"w":182,"h":190},
@ -202,7 +210,7 @@
},
"sprites/blueprints/mixer.png":
{
"frame": {"x":1123,"y":590,"w":347,"h":191},
"frame": {"x":391,"y":1707,"w":347,"h":191},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":18,"y":0,"w":347,"h":191},
@ -218,7 +226,7 @@
},
"sprites/blueprints/painter-mirrored.png":
{
"frame": {"x":1485,"y":3,"w":384,"h":192},
"frame": {"x":3,"y":1702,"w":384,"h":192},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":384,"h":192},
@ -234,7 +242,7 @@
},
"sprites/blueprints/painter.png":
{
"frame": {"x":1483,"y":199,"w":384,"h":192},
"frame": {"x":1485,"y":3,"w":384,"h":192},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":384,"h":192},
@ -242,7 +250,7 @@
},
"sprites/blueprints/rotater-ccw.png":
{
"frame": {"x":922,"y":1174,"w":189,"h":191},
"frame": {"x":1459,"y":956,"w":189,"h":191},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":189,"h":191},
@ -250,7 +258,7 @@
},
"sprites/blueprints/rotater.png":
{
"frame": {"x":1115,"y":1173,"w":189,"h":191},
"frame": {"x":1811,"y":588,"w":189,"h":191},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":189,"h":191},
@ -258,7 +266,7 @@
},
"sprites/blueprints/splitter-compact-inverse.png":
{
"frame": {"x":1756,"y":980,"w":188,"h":182},
"frame": {"x":1652,"y":977,"w":188,"h":182},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":4,"w":188,"h":182},
@ -266,7 +274,7 @@
},
"sprites/blueprints/splitter-compact.png":
{
"frame": {"x":1306,"y":1368,"w":185,"h":182},
"frame": {"x":1844,"y":977,"w":185,"h":182},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":7,"y":4,"w":185,"h":182},
@ -274,7 +282,7 @@
},
"sprites/blueprints/splitter.png":
{
"frame": {"x":726,"y":979,"w":340,"h":191},
"frame": {"x":742,"y":1551,"w":340,"h":191},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":23,"y":0,"w":340,"h":191},
@ -282,7 +290,7 @@
},
"sprites/blueprints/stacker.png":
{
"frame": {"x":1474,"y":590,"w":347,"h":191},
"frame": {"x":726,"y":1162,"w":347,"h":191},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":18,"y":0,"w":347,"h":191},
@ -298,7 +306,7 @@
},
"sprites/blueprints/trash.png":
{
"frame": {"x":726,"y":1174,"w":192,"h":192},
"frame": {"x":1419,"y":590,"w":192,"h":192},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":192,"h":192},
@ -306,7 +314,7 @@
},
"sprites/blueprints/underground_belt_entry-tier2.png":
{
"frame": {"x":1683,"y":1368,"w":183,"h":166},
"frame": {"x":1419,"y":786,"w":183,"h":166},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":26,"w":183,"h":166},
@ -314,7 +322,7 @@
},
"sprites/blueprints/underground_belt_entry.png":
{
"frame": {"x":192,"y":1702,"w":182,"h":148},
"frame": {"x":1834,"y":1163,"w":182,"h":148},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":44,"w":182,"h":148},
@ -322,7 +330,7 @@
},
"sprites/blueprints/underground_belt_exit-tier2.png":
{
"frame": {"x":3,"y":1702,"w":185,"h":148},
"frame": {"x":1459,"y":1151,"w":185,"h":148},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":185,"h":148},
@ -330,7 +338,7 @@
},
"sprites/blueprints/underground_belt_exit.png":
{
"frame": {"x":1683,"y":1538,"w":182,"h":148},
"frame": {"x":1457,"y":1303,"w":182,"h":148},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":0,"w":182,"h":148},
@ -338,7 +346,7 @@
},
"sprites/buildings/belt_left.png":
{
"frame": {"x":1870,"y":1426,"w":113,"h":113},
"frame": {"x":1561,"y":1595,"w":113,"h":113},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":13,"w":113,"h":113},
@ -346,7 +354,7 @@
},
"sprites/buildings/belt_right.png":
{
"frame": {"x":1286,"y":1721,"w":113,"h":113},
"frame": {"x":1769,"y":1466,"w":113,"h":113},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":13,"w":113,"h":113},
@ -354,7 +362,7 @@
},
"sprites/buildings/belt_top.png":
{
"frame": {"x":1876,"y":1166,"w":100,"h":126},
"frame": {"x":1457,"y":1455,"w":100,"h":126},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":0,"w":100,"h":126},
@ -370,12 +378,20 @@
},
"sprites/buildings/cutter.png":
{
"frame": {"x":1070,"y":979,"w":339,"h":190},
"frame": {"x":1483,"y":394,"w":339,"h":190},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":24,"y":0,"w":339,"h":190},
"sourceSize": {"w":384,"h":192}
},
"sprites/buildings/energy_generator.png":
{
"frame": {"x":1078,"y":590,"w":337,"h":372},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":26,"y":12,"w":337,"h":372},
"sourceSize": {"w":384,"h":384}
},
"sprites/buildings/hub.png":
{
"frame": {"x":3,"y":3,"w":728,"h":730},
@ -386,7 +402,7 @@
},
"sprites/buildings/miner-chainable.png":
{
"frame": {"x":1825,"y":590,"w":179,"h":188},
"frame": {"x":1086,"y":1551,"w":179,"h":188},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":8,"y":1,"w":179,"h":188},
@ -394,7 +410,7 @@
},
"sprites/buildings/miner.png":
{
"frame": {"x":1778,"y":785,"w":179,"h":189},
"frame": {"x":1259,"y":1355,"w":179,"h":189},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":8,"y":0,"w":179,"h":189},
@ -402,7 +418,7 @@
},
"sprites/buildings/mixer.png":
{
"frame": {"x":735,"y":785,"w":345,"h":190},
"frame": {"x":724,"y":1357,"w":345,"h":190},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":19,"y":0,"w":345,"h":190},
@ -418,7 +434,7 @@
},
"sprites/buildings/painter-mirrored.png":
{
"frame": {"x":735,"y":590,"w":384,"h":191},
"frame": {"x":1483,"y":199,"w":384,"h":191},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":384,"h":191},
@ -434,7 +450,7 @@
},
"sprites/buildings/painter.png":
{
"frame": {"x":1469,"y":395,"w":384,"h":191},
"frame": {"x":726,"y":967,"w":384,"h":191},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":384,"h":191},
@ -442,7 +458,7 @@
},
"sprites/buildings/rotater-ccw.png":
{
"frame": {"x":1308,"y":1174,"w":187,"h":190},
"frame": {"x":1826,"y":394,"w":187,"h":190},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":187,"h":190},
@ -450,7 +466,7 @@
},
"sprites/buildings/rotater.png":
{
"frame": {"x":1499,"y":1174,"w":187,"h":190},
"frame": {"x":1652,"y":783,"w":187,"h":190},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":187,"h":190},
@ -458,7 +474,7 @@
},
"sprites/buildings/splitter-compact-inverse.png":
{
"frame": {"x":1115,"y":1368,"w":187,"h":180},
"frame": {"x":1091,"y":1743,"w":187,"h":180},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":5,"w":187,"h":180},
@ -466,7 +482,7 @@
},
"sprites/buildings/splitter-compact.png":
{
"frame": {"x":1495,"y":1368,"w":184,"h":180},
"frame": {"x":1269,"y":1548,"w":184,"h":180},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":8,"y":5,"w":184,"h":180},
@ -474,7 +490,7 @@
},
"sprites/buildings/splitter.png":
{
"frame": {"x":1413,"y":980,"w":339,"h":190},
"frame": {"x":1114,"y":1161,"w":339,"h":190},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":24,"y":0,"w":339,"h":190},
@ -482,7 +498,7 @@
},
"sprites/buildings/stacker.png":
{
"frame": {"x":1084,"y":785,"w":345,"h":190},
"frame": {"x":742,"y":1746,"w":345,"h":190},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":19,"y":0,"w":345,"h":190},
@ -498,7 +514,7 @@
},
"sprites/buildings/trash.png":
{
"frame": {"x":724,"y":1370,"w":192,"h":191},
"frame": {"x":1615,"y":588,"w":192,"h":191},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":1,"w":192,"h":191},
@ -506,7 +522,7 @@
},
"sprites/buildings/underground_belt_entry-tier2.png":
{
"frame": {"x":1495,"y":1552,"w":181,"h":165},
"frame": {"x":1282,"y":1732,"w":181,"h":165},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":7,"y":27,"w":181,"h":165},
@ -514,7 +530,7 @@
},
"sprites/buildings/underground_belt_entry.png":
{
"frame": {"x":564,"y":1707,"w":181,"h":147},
"frame": {"x":1643,"y":1314,"w":181,"h":147},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":7,"y":45,"w":181,"h":147},
@ -522,7 +538,7 @@
},
"sprites/buildings/underground_belt_exit-tier2.png":
{
"frame": {"x":378,"y":1707,"w":182,"h":147},
"frame": {"x":1648,"y":1163,"w":182,"h":147},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":7,"y":0,"w":182,"h":147},
@ -530,7 +546,7 @@
},
"sprites/buildings/underground_belt_exit.png":
{
"frame": {"x":1680,"y":1690,"w":181,"h":147},
"frame": {"x":1828,"y":1315,"w":181,"h":147},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":7,"y":0,"w":181,"h":147},
@ -538,7 +554,7 @@
},
"sprites/debug/acceptor_slot.png":
{
"frame": {"x":1961,"y":782,"w":50,"h":64},
"frame": {"x":269,"y":1898,"w":50,"h":64},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":7,"y":0,"w":50,"h":64},
@ -546,7 +562,7 @@
},
"sprites/debug/ejector_slot.png":
{
"frame": {"x":1961,"y":850,"w":50,"h":64},
"frame": {"x":1922,"y":1800,"w":50,"h":64},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":7,"y":0,"w":50,"h":64},
@ -554,7 +570,7 @@
},
"sprites/map_overview/belt_forward.png":
{
"frame": {"x":1637,"y":1721,"w":24,"h":32},
"frame": {"x":1077,"y":1162,"w":24,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":24,"h":32},
@ -562,7 +578,7 @@
},
"sprites/map_overview/belt_left.png":
{
"frame": {"x":1893,"y":525,"w":28,"h":28},
"frame": {"x":323,"y":1932,"w":28,"h":28},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":4,"w":28,"h":28},
@ -570,7 +586,7 @@
},
"sprites/map_overview/belt_right.png":
{
"frame": {"x":1080,"y":1669,"w":28,"h":28},
"frame": {"x":1991,"y":39,"w":28,"h":28},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":28,"h":28},
@ -578,7 +594,7 @@
},
"sprites/misc/deletion_marker.png":
{
"frame": {"x":1403,"y":1554,"w":82,"h":82},
"frame": {"x":183,"y":1898,"w":82,"h":82},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":7,"y":7,"w":82,"h":82},
@ -586,7 +602,7 @@
},
"sprites/misc/hub_direction_indicator.png":
{
"frame": {"x":1857,"y":525,"w":32,"h":32},
"frame": {"x":1991,"y":3,"w":32,"h":32},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":32,"h":32},
@ -594,7 +610,7 @@
},
"sprites/misc/lock_direction_indicator.png":
{
"frame": {"x":1961,"y":918,"w":48,"h":30},
"frame": {"x":323,"y":1898,"w":48,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":9,"w":48,"h":30},
@ -602,7 +618,7 @@
},
"sprites/misc/slot_bad_arrow.png":
{
"frame": {"x":1403,"y":1554,"w":82,"h":82},
"frame": {"x":183,"y":1898,"w":82,"h":82},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":7,"y":7,"w":82,"h":82},
@ -610,7 +626,7 @@
},
"sprites/misc/slot_good_arrow.png":
{
"frame": {"x":1024,"y":1369,"w":80,"h":96},
"frame": {"x":1922,"y":1700,"w":80,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":8,"y":0,"w":80,"h":96},
@ -618,7 +634,7 @@
},
"sprites/misc/storage_overlay.png":
{
"frame": {"x":724,"y":1565,"w":176,"h":86},
"frame": {"x":3,"y":1898,"w":176,"h":86},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":4,"w":176,"h":86},
@ -626,7 +642,7 @@
},
"sprites/misc/waypoint.png":
{
"frame": {"x":1052,"y":1669,"w":24,"h":32},
"frame": {"x":1922,"y":1868,"w":24,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":24,"h":32},
@ -637,8 +653,8 @@
"version": "1.0",
"image": "atlas0_100.png",
"format": "RGBA8888",
"size": {"w":2014,"h":1857},
"size": {"w":2032,"h":1987},
"scale": "1",
"smartupdate": "$TexturePacker:SmartUpdate:8985524bba1a3f16cecab3c03b6aaa06:d614d20bfce033d8a8ab0990af085d16:f159918d23e5952766c6d23ab52278c6$"
"smartupdate": "$TexturePacker:SmartUpdate:edd9ed958611fe83da11c1bd0e07a460:9470e3f106da3baf56901b0e2f906cb8:f159918d23e5952766c6d23ab52278c6$"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 776 KiB

After

Width:  |  Height:  |  Size: 822 KiB

@ -2,7 +2,7 @@
"sprites/belt/forward_0.png":
{
"frame": {"x":3,"y":1010,"w":28,"h":32},
"frame": {"x":737,"y":206,"w":28,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":28,"h":32},
@ -10,7 +10,7 @@
},
"sprites/belt/forward_1.png":
{
"frame": {"x":3,"y":967,"w":28,"h":32},
"frame": {"x":621,"y":55,"w":28,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":28,"h":32},
@ -18,7 +18,7 @@
},
"sprites/belt/forward_2.png":
{
"frame": {"x":3,"y":1046,"w":28,"h":32},
"frame": {"x":653,"y":55,"w":28,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":28,"h":32},
@ -26,7 +26,7 @@
},
"sprites/belt/forward_3.png":
{
"frame": {"x":35,"y":1044,"w":28,"h":32},
"frame": {"x":685,"y":55,"w":28,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":28,"h":32},
@ -34,7 +34,7 @@
},
"sprites/belt/forward_4.png":
{
"frame": {"x":67,"y":1044,"w":28,"h":32},
"frame": {"x":717,"y":55,"w":28,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":28,"h":32},
@ -42,7 +42,7 @@
},
"sprites/belt/forward_5.png":
{
"frame": {"x":133,"y":1053,"w":28,"h":32},
"frame": {"x":749,"y":55,"w":28,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":28,"h":32},
@ -50,7 +50,7 @@
},
"sprites/belt/left_0.png":
{
"frame": {"x":143,"y":883,"w":30,"h":30},
"frame": {"x":813,"y":55,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":2,"w":30,"h":30},
@ -58,7 +58,7 @@
},
"sprites/belt/left_1.png":
{
"frame": {"x":143,"y":917,"w":30,"h":30},
"frame": {"x":847,"y":55,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":2,"w":30,"h":30},
@ -66,7 +66,7 @@
},
"sprites/belt/left_2.png":
{
"frame": {"x":143,"y":951,"w":30,"h":30},
"frame": {"x":881,"y":55,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":2,"w":30,"h":30},
@ -74,7 +74,7 @@
},
"sprites/belt/left_3.png":
{
"frame": {"x":35,"y":960,"w":30,"h":30},
"frame": {"x":915,"y":55,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":2,"w":30,"h":30},
@ -82,7 +82,7 @@
},
"sprites/belt/left_4.png":
{
"frame": {"x":69,"y":967,"w":30,"h":30},
"frame": {"x":949,"y":55,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":2,"w":30,"h":30},
@ -90,7 +90,7 @@
},
"sprites/belt/left_5.png":
{
"frame": {"x":35,"y":994,"w":30,"h":30},
"frame": {"x":983,"y":55,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":2,"w":30,"h":30},
@ -98,7 +98,7 @@
},
"sprites/belt/right_0.png":
{
"frame": {"x":103,"y":967,"w":30,"h":30},
"frame": {"x":1017,"y":55,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":2,"w":30,"h":30},
@ -106,7 +106,7 @@
},
"sprites/belt/right_1.png":
{
"frame": {"x":137,"y":985,"w":30,"h":30},
"frame": {"x":1100,"y":3,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":2,"w":30,"h":30},
@ -114,7 +114,7 @@
},
"sprites/belt/right_2.png":
{
"frame": {"x":171,"y":997,"w":30,"h":30},
"frame": {"x":1100,"y":37,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":2,"w":30,"h":30},
@ -122,7 +122,7 @@
},
"sprites/belt/right_3.png":
{
"frame": {"x":205,"y":1010,"w":30,"h":30},
"frame": {"x":1100,"y":71,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":2,"w":30,"h":30},
@ -130,7 +130,7 @@
},
"sprites/belt/right_4.png":
{
"frame": {"x":99,"y":1001,"w":30,"h":30},
"frame": {"x":1050,"y":105,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":2,"w":30,"h":30},
@ -138,7 +138,7 @@
},
"sprites/belt/right_5.png":
{
"frame": {"x":133,"y":1019,"w":30,"h":30},
"frame": {"x":1089,"y":159,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":2,"w":30,"h":30},
@ -146,7 +146,7 @@
},
"sprites/blueprints/belt_left.png":
{
"frame": {"x":99,"y":1035,"w":30,"h":30},
"frame": {"x":1066,"y":193,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":2,"w":30,"h":30},
@ -154,7 +154,7 @@
},
"sprites/blueprints/belt_right.png":
{
"frame": {"x":167,"y":1031,"w":30,"h":30},
"frame": {"x":1100,"y":195,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":2,"w":30,"h":30},
@ -162,7 +162,7 @@
},
"sprites/blueprints/belt_top.png":
{
"frame": {"x":201,"y":1044,"w":28,"h":32},
"frame": {"x":781,"y":55,"w":28,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":28,"h":32},
@ -170,7 +170,7 @@
},
"sprites/blueprints/cutter-quad.png":
{
"frame": {"x":3,"y":296,"w":184,"h":48},
"frame": {"x":377,"y":155,"w":184,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":184,"h":48},
@ -178,15 +178,23 @@
},
"sprites/blueprints/cutter.png":
{
"frame": {"x":155,"y":419,"w":87,"h":48},
"frame": {"x":854,"y":3,"w":87,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":87,"h":48},
"sourceSize": {"w":96,"h":48}
},
"sprites/blueprints/energy_generator.png":
{
"frame": {"x":195,"y":155,"w":87,"h":94},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":2,"w":87,"h":94},
"sourceSize": {"w":96,"h":96}
},
"sprites/blueprints/miner-chainable.png":
{
"frame": {"x":195,"y":3,"w":47,"h":48},
"frame": {"x":960,"y":141,"w":47,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
@ -194,7 +202,7 @@
},
"sprites/blueprints/miner.png":
{
"frame": {"x":195,"y":55,"w":47,"h":48},
"frame": {"x":999,"y":89,"w":47,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
@ -202,7 +210,7 @@
},
"sprites/blueprints/mixer.png":
{
"frame": {"x":3,"y":808,"w":89,"h":48},
"frame": {"x":669,"y":3,"w":89,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":89,"h":48},
@ -210,7 +218,7 @@
},
"sprites/blueprints/painter-double.png":
{
"frame": {"x":3,"y":400,"w":96,"h":96},
"frame": {"x":191,"y":3,"w":96,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
@ -218,7 +226,7 @@
},
"sprites/blueprints/painter-mirrored.png":
{
"frame": {"x":3,"y":600,"w":96,"h":48},
"frame": {"x":565,"y":155,"w":96,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":48},
@ -226,7 +234,7 @@
},
"sprites/blueprints/painter-quad.png":
{
"frame": {"x":3,"y":3,"w":188,"h":48},
"frame": {"x":3,"y":192,"w":188,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":188,"h":48},
@ -234,7 +242,7 @@
},
"sprites/blueprints/painter.png":
{
"frame": {"x":3,"y":652,"w":96,"h":48},
"frame": {"x":569,"y":3,"w":96,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":48},
@ -242,7 +250,7 @@
},
"sprites/blueprints/rotater-ccw.png":
{
"frame": {"x":191,"y":107,"w":48,"h":48},
"frame": {"x":945,"y":3,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -250,7 +258,7 @@
},
"sprites/blueprints/rotater.png":
{
"frame": {"x":191,"y":159,"w":48,"h":48},
"frame": {"x":856,"y":141,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -258,7 +266,7 @@
},
"sprites/blueprints/splitter-compact-inverse.png":
{
"frame": {"x":191,"y":211,"w":48,"h":48},
"frame": {"x":860,"y":193,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -266,7 +274,7 @@
},
"sprites/blueprints/splitter-compact.png":
{
"frame": {"x":103,"y":780,"w":47,"h":47},
"frame": {"x":1084,"y":108,"w":47,"h":47},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":47},
@ -274,7 +282,7 @@
},
"sprites/blueprints/splitter.png":
{
"frame": {"x":155,"y":471,"w":87,"h":48},
"frame": {"x":765,"y":143,"w":87,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":87,"h":48},
@ -282,7 +290,7 @@
},
"sprites/blueprints/stacker.png":
{
"frame": {"x":96,"y":831,"w":89,"h":48},
"frame": {"x":671,"y":91,"w":89,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":89,"h":48},
@ -290,7 +298,7 @@
},
"sprites/blueprints/trash-storage.png":
{
"frame": {"x":155,"y":627,"w":85,"h":96},
"frame": {"x":391,"y":3,"w":85,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":0,"w":85,"h":96},
@ -298,7 +306,7 @@
},
"sprites/blueprints/trash.png":
{
"frame": {"x":191,"y":263,"w":48,"h":48},
"frame": {"x":908,"y":141,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -306,7 +314,7 @@
},
"sprites/blueprints/underground_belt_entry-tier2.png":
{
"frame": {"x":103,"y":503,"w":48,"h":43},
"frame": {"x":569,"y":55,"w":48,"h":43},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":5,"w":48,"h":43},
@ -314,7 +322,7 @@
},
"sprites/blueprints/underground_belt_entry.png":
{
"frame": {"x":103,"y":550,"w":48,"h":38},
"frame": {"x":428,"y":207,"w":48,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":10,"w":48,"h":38},
@ -322,7 +330,7 @@
},
"sprites/blueprints/underground_belt_exit-tier2.png":
{
"frame": {"x":103,"y":592,"w":48,"h":38},
"frame": {"x":480,"y":207,"w":48,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":38},
@ -330,7 +338,7 @@
},
"sprites/blueprints/underground_belt_exit.png":
{
"frame": {"x":103,"y":634,"w":48,"h":38},
"frame": {"x":532,"y":207,"w":48,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":38},
@ -338,7 +346,7 @@
},
"sprites/buildings/belt_left.png":
{
"frame": {"x":143,"y":883,"w":30,"h":30},
"frame": {"x":813,"y":55,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":2,"w":30,"h":30},
@ -346,7 +354,7 @@
},
"sprites/buildings/belt_right.png":
{
"frame": {"x":103,"y":967,"w":30,"h":30},
"frame": {"x":1017,"y":55,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":2,"w":30,"h":30},
@ -354,7 +362,7 @@
},
"sprites/buildings/belt_top.png":
{
"frame": {"x":3,"y":1010,"w":28,"h":32},
"frame": {"x":737,"y":206,"w":28,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":28,"h":32},
@ -362,7 +370,7 @@
},
"sprites/buildings/cutter-quad.png":
{
"frame": {"x":3,"y":348,"w":184,"h":48},
"frame": {"x":383,"y":103,"w":184,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":184,"h":48},
@ -370,15 +378,23 @@
},
"sprites/buildings/cutter.png":
{
"frame": {"x":155,"y":523,"w":87,"h":48},
"frame": {"x":769,"y":195,"w":87,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":87,"h":48},
"sourceSize": {"w":96,"h":48}
},
"sprites/buildings/energy_generator.png":
{
"frame": {"x":286,"y":155,"w":87,"h":94},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":2,"w":87,"h":94},
"sourceSize": {"w":96,"h":96}
},
"sprites/buildings/hub.png":
{
"frame": {"x":3,"y":107,"w":184,"h":185},
"frame": {"x":3,"y":3,"w":184,"h":185},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":184,"h":185},
@ -386,7 +402,7 @@
},
"sprites/buildings/miner-chainable.png":
{
"frame": {"x":103,"y":676,"w":47,"h":48},
"frame": {"x":1049,"y":3,"w":47,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
@ -394,7 +410,7 @@
},
"sprites/buildings/miner.png":
{
"frame": {"x":103,"y":728,"w":47,"h":48},
"frame": {"x":964,"y":193,"w":47,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
@ -402,7 +418,7 @@
},
"sprites/buildings/mixer.png":
{
"frame": {"x":154,"y":727,"w":88,"h":48},
"frame": {"x":762,"y":3,"w":88,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":88,"h":48},
@ -410,7 +426,7 @@
},
"sprites/buildings/painter-double.png":
{
"frame": {"x":3,"y":500,"w":96,"h":96},
"frame": {"x":291,"y":3,"w":96,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
@ -418,7 +434,7 @@
},
"sprites/buildings/painter-mirrored.png":
{
"frame": {"x":3,"y":704,"w":96,"h":48},
"frame": {"x":571,"y":102,"w":96,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":48},
@ -426,7 +442,7 @@
},
"sprites/buildings/painter-quad.png":
{
"frame": {"x":3,"y":55,"w":188,"h":48},
"frame": {"x":191,"y":103,"w":188,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":188,"h":48},
@ -434,7 +450,7 @@
},
"sprites/buildings/painter.png":
{
"frame": {"x":3,"y":756,"w":96,"h":48},
"frame": {"x":665,"y":154,"w":96,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":48},
@ -442,7 +458,7 @@
},
"sprites/buildings/rotater-ccw.png":
{
"frame": {"x":191,"y":315,"w":48,"h":48},
"frame": {"x":947,"y":89,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -450,7 +466,7 @@
},
"sprites/buildings/rotater.png":
{
"frame": {"x":191,"y":367,"w":48,"h":48},
"frame": {"x":997,"y":3,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -458,7 +474,7 @@
},
"sprites/buildings/splitter-compact-inverse.png":
{
"frame": {"x":103,"y":452,"w":48,"h":47},
"frame": {"x":1011,"y":141,"w":48,"h":47},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":47},
@ -466,7 +482,7 @@
},
"sprites/buildings/splitter-compact.png":
{
"frame": {"x":189,"y":831,"w":47,"h":47},
"frame": {"x":1015,"y":192,"w":47,"h":47},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":47},
@ -474,7 +490,7 @@
},
"sprites/buildings/splitter.png":
{
"frame": {"x":155,"y":575,"w":87,"h":48},
"frame": {"x":856,"y":89,"w":87,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":87,"h":48},
@ -482,7 +498,7 @@
},
"sprites/buildings/stacker.png":
{
"frame": {"x":154,"y":779,"w":88,"h":48},
"frame": {"x":764,"y":91,"w":88,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":88,"h":48},
@ -490,7 +506,7 @@
},
"sprites/buildings/trash-storage.png":
{
"frame": {"x":3,"y":860,"w":85,"h":96},
"frame": {"x":480,"y":3,"w":85,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":0,"w":85,"h":96},
@ -498,7 +514,7 @@
},
"sprites/buildings/trash.png":
{
"frame": {"x":103,"y":400,"w":48,"h":48},
"frame": {"x":912,"y":193,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -506,7 +522,7 @@
},
"sprites/buildings/underground_belt_entry-tier2.png":
{
"frame": {"x":189,"y":882,"w":47,"h":42},
"frame": {"x":377,"y":207,"w":47,"h":42},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":6,"w":47,"h":42},
@ -514,7 +530,7 @@
},
"sprites/buildings/underground_belt_entry.png":
{
"frame": {"x":92,"y":883,"w":47,"h":38},
"frame": {"x":584,"y":207,"w":47,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":10,"w":47,"h":38},
@ -522,7 +538,7 @@
},
"sprites/buildings/underground_belt_exit-tier2.png":
{
"frame": {"x":92,"y":925,"w":47,"h":38},
"frame": {"x":635,"y":207,"w":47,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":38},
@ -530,7 +546,7 @@
},
"sprites/buildings/underground_belt_exit.png":
{
"frame": {"x":189,"y":928,"w":47,"h":38},
"frame": {"x":686,"y":206,"w":47,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":38},
@ -538,7 +554,7 @@
},
"sprites/debug/acceptor_slot.png":
{
"frame": {"x":226,"y":970,"w":14,"h":16},
"frame": {"x":1051,"y":82,"w":14,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":14,"h":16},
@ -546,7 +562,7 @@
},
"sprites/debug/ejector_slot.png":
{
"frame": {"x":226,"y":990,"w":14,"h":16},
"frame": {"x":1063,"y":139,"w":14,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":14,"h":16},
@ -554,7 +570,7 @@
},
"sprites/map_overview/belt_forward.png":
{
"frame": {"x":171,"y":400,"w":8,"h":8},
"frame": {"x":1069,"y":82,"w":8,"h":8},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":8,"h":8},
@ -562,7 +578,7 @@
},
"sprites/map_overview/belt_left.png":
{
"frame": {"x":177,"y":883,"w":8,"h":8},
"frame": {"x":1084,"y":96,"w":8,"h":8},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":8,"h":8},
@ -570,7 +586,7 @@
},
"sprites/map_overview/belt_right.png":
{
"frame": {"x":177,"y":895,"w":8,"h":8},
"frame": {"x":1123,"y":159,"w":8,"h":8},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":8,"h":8},
@ -578,7 +594,7 @@
},
"sprites/misc/deletion_marker.png":
{
"frame": {"x":165,"y":1065,"w":22,"h":22},
"frame": {"x":1066,"y":227,"w":22,"h":22},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":1,"w":22,"h":22},
@ -586,7 +602,7 @@
},
"sprites/misc/hub_direction_indicator.png":
{
"frame": {"x":177,"y":907,"w":8,"h":8},
"frame": {"x":1123,"y":171,"w":8,"h":8},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":8,"h":8},
@ -594,7 +610,7 @@
},
"sprites/misc/lock_direction_indicator.png":
{
"frame": {"x":155,"y":400,"w":12,"h":10},
"frame": {"x":1084,"y":82,"w":12,"h":10},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":1,"w":12,"h":10},
@ -602,7 +618,7 @@
},
"sprites/misc/slot_bad_arrow.png":
{
"frame": {"x":165,"y":1065,"w":22,"h":22},
"frame": {"x":1066,"y":227,"w":22,"h":22},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":1,"w":22,"h":22},
@ -610,7 +626,7 @@
},
"sprites/misc/slot_good_arrow.png":
{
"frame": {"x":69,"y":1001,"w":22,"h":24},
"frame": {"x":1063,"y":159,"w":22,"h":24},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":22,"h":24},
@ -618,7 +634,7 @@
},
"sprites/misc/storage_overlay.png":
{
"frame": {"x":177,"y":970,"w":45,"h":23},
"frame": {"x":1051,"y":55,"w":45,"h":23},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":45,"h":23},
@ -626,7 +642,7 @@
},
"sprites/misc/waypoint.png":
{
"frame": {"x":177,"y":919,"w":8,"h":8},
"frame": {"x":1123,"y":183,"w":8,"h":8},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":8,"h":8},
@ -637,8 +653,8 @@
"version": "1.0",
"image": "atlas0_25.png",
"format": "RGBA8888",
"size": {"w":245,"h":1090},
"size": {"w":1134,"h":252},
"scale": "0.25",
"smartupdate": "$TexturePacker:SmartUpdate:8985524bba1a3f16cecab3c03b6aaa06:d614d20bfce033d8a8ab0990af085d16:f159918d23e5952766c6d23ab52278c6$"
"smartupdate": "$TexturePacker:SmartUpdate:edd9ed958611fe83da11c1bd0e07a460:9470e3f106da3baf56901b0e2f906cb8:f159918d23e5952766c6d23ab52278c6$"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 166 KiB

After

Width:  |  Height:  |  Size: 169 KiB

@ -2,7 +2,7 @@
"sprites/belt/forward_0.png":
{
"frame": {"x":1966,"y":3,"w":51,"h":63},
"frame": {"x":672,"y":952,"w":51,"h":63},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":0,"w":51,"h":63},
@ -10,7 +10,7 @@
},
"sprites/belt/forward_1.png":
{
"frame": {"x":1835,"y":203,"w":51,"h":63},
"frame": {"x":727,"y":952,"w":51,"h":63},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":0,"w":51,"h":63},
@ -18,7 +18,7 @@
},
"sprites/belt/forward_2.png":
{
"frame": {"x":1879,"y":304,"w":51,"h":63},
"frame": {"x":782,"y":950,"w":51,"h":63},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":0,"w":51,"h":63},
@ -26,7 +26,7 @@
},
"sprites/belt/forward_3.png":
{
"frame": {"x":1934,"y":304,"w":51,"h":63},
"frame": {"x":837,"y":950,"w":51,"h":63},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":0,"w":51,"h":63},
@ -34,7 +34,7 @@
},
"sprites/belt/forward_4.png":
{
"frame": {"x":1844,"y":381,"w":51,"h":63},
"frame": {"x":922,"y":481,"w":51,"h":63},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":0,"w":51,"h":63},
@ -42,7 +42,7 @@
},
"sprites/belt/forward_5.png":
{
"frame": {"x":1899,"y":371,"w":51,"h":63},
"frame": {"x":922,"y":548,"w":51,"h":63},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":0,"w":51,"h":63},
@ -50,7 +50,7 @@
},
"sprites/belt/left_0.png":
{
"frame": {"x":1890,"y":243,"w":57,"h":57},
"frame": {"x":127,"y":962,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":6,"w":57,"h":57},
@ -58,7 +58,7 @@
},
"sprites/belt/left_1.png":
{
"frame": {"x":1951,"y":243,"w":57,"h":57},
"frame": {"x":188,"y":961,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":6,"w":57,"h":57},
@ -66,7 +66,7 @@
},
"sprites/belt/left_2.png":
{
"frame": {"x":1783,"y":381,"w":57,"h":57},
"frame": {"x":249,"y":961,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":6,"w":57,"h":57},
@ -74,7 +74,7 @@
},
"sprites/belt/left_3.png":
{
"frame": {"x":1954,"y":371,"w":57,"h":57},
"frame": {"x":310,"y":961,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":6,"w":57,"h":57},
@ -82,7 +82,7 @@
},
"sprites/belt/left_4.png":
{
"frame": {"x":1954,"y":432,"w":57,"h":57},
"frame": {"x":371,"y":960,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":6,"w":57,"h":57},
@ -90,7 +90,7 @@
},
"sprites/belt/left_5.png":
{
"frame": {"x":1363,"y":403,"w":57,"h":57},
"frame": {"x":432,"y":960,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":6,"w":57,"h":57},
@ -98,7 +98,7 @@
},
"sprites/belt/right_0.png":
{
"frame": {"x":1424,"y":403,"w":57,"h":57},
"frame": {"x":493,"y":960,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":6,"w":57,"h":57},
@ -106,7 +106,7 @@
},
"sprites/belt/right_1.png":
{
"frame": {"x":1485,"y":403,"w":57,"h":57},
"frame": {"x":554,"y":960,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":6,"w":57,"h":57},
@ -114,7 +114,7 @@
},
"sprites/belt/right_2.png":
{
"frame": {"x":1546,"y":403,"w":57,"h":57},
"frame": {"x":373,"y":503,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":6,"w":57,"h":57},
@ -122,7 +122,7 @@
},
"sprites/belt/right_3.png":
{
"frame": {"x":1607,"y":402,"w":57,"h":57},
"frame": {"x":434,"y":503,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":6,"w":57,"h":57},
@ -130,7 +130,7 @@
},
"sprites/belt/right_4.png":
{
"frame": {"x":1668,"y":402,"w":57,"h":57},
"frame": {"x":495,"y":503,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":6,"w":57,"h":57},
@ -138,7 +138,7 @@
},
"sprites/belt/right_5.png":
{
"frame": {"x":1952,"y":181,"w":57,"h":57},
"frame": {"x":556,"y":503,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":6,"w":57,"h":57},
@ -146,7 +146,7 @@
},
"sprites/blueprints/belt_left.png":
{
"frame": {"x":1301,"y":400,"w":58,"h":58},
"frame": {"x":3,"y":962,"w":58,"h":58},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":5,"w":58,"h":58},
@ -154,7 +154,7 @@
},
"sprites/blueprints/belt_right.png":
{
"frame": {"x":1890,"y":181,"w":58,"h":58},
"frame": {"x":65,"y":962,"w":58,"h":58},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":5,"w":58,"h":58},
@ -162,7 +162,7 @@
},
"sprites/blueprints/belt_top.png":
{
"frame": {"x":1151,"y":403,"w":53,"h":63},
"frame": {"x":615,"y":953,"w":53,"h":63},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":53,"h":63},
@ -170,7 +170,7 @@
},
"sprites/blueprints/cutter-quad.png":
{
"frame": {"x":3,"y":374,"w":366,"h":96},
"frame": {"x":369,"y":765,"w":366,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":11,"y":0,"w":366,"h":96},
@ -178,15 +178,23 @@
},
"sprites/blueprints/cutter.png":
{
"frame": {"x":1285,"y":203,"w":172,"h":96},
"frame": {"x":569,"y":403,"w":172,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":11,"y":0,"w":172,"h":96},
"sourceSize": {"w":192,"h":96}
},
"sprites/blueprints/energy_generator.png":
{
"frame": {"x":174,"y":570,"w":170,"h":187},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":12,"y":5,"w":170,"h":187},
"sourceSize": {"w":192,"h":192}
},
"sprites/blueprints/miner-chainable.png":
{
"frame": {"x":1401,"y":303,"w":92,"h":96},
"frame": {"x":726,"y":651,"w":92,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":92,"h":96},
@ -194,7 +202,7 @@
},
"sprites/blueprints/miner.png":
{
"frame": {"x":1497,"y":303,"w":92,"h":96},
"frame": {"x":739,"y":751,"w":92,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":92,"h":96},
@ -202,7 +210,7 @@
},
"sprites/blueprints/mixer.png":
{
"frame": {"x":1143,"y":103,"w":175,"h":96},
"frame": {"x":569,"y":103,"w":175,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":8,"y":0,"w":175,"h":96},
@ -210,7 +218,7 @@
},
"sprites/blueprints/painter-double.png":
{
"frame": {"x":373,"y":203,"w":192,"h":192},
"frame": {"x":3,"y":374,"w":192,"h":192},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":192,"h":192},
@ -218,7 +226,7 @@
},
"sprites/blueprints/painter-mirrored.png":
{
"frame": {"x":751,"y":103,"w":192,"h":96},
"frame": {"x":373,"y":103,"w":192,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":192,"h":96},
@ -226,7 +234,7 @@
},
"sprites/blueprints/painter-quad.png":
{
"frame": {"x":373,"y":3,"w":374,"h":96},
"frame": {"x":348,"y":565,"w":374,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":374,"h":96},
@ -234,7 +242,7 @@
},
"sprites/blueprints/painter.png":
{
"frame": {"x":1121,"y":3,"w":192,"h":96},
"frame": {"x":373,"y":203,"w":192,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":192,"h":96},
@ -242,7 +250,7 @@
},
"sprites/blueprints/rotater-ccw.png":
{
"frame": {"x":1866,"y":3,"w":96,"h":96},
"frame": {"x":922,"y":3,"w":96,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
@ -250,7 +258,7 @@
},
"sprites/blueprints/rotater.png":
{
"frame": {"x":1675,"y":103,"w":96,"h":96},
"frame": {"x":747,"y":303,"w":96,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
@ -258,7 +266,7 @@
},
"sprites/blueprints/splitter-compact-inverse.png":
{
"frame": {"x":1205,"y":303,"w":95,"h":93},
"frame": {"x":835,"y":750,"w":95,"h":93},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":1,"w":95,"h":93},
@ -266,7 +274,7 @@
},
"sprites/blueprints/splitter-compact.png":
{
"frame": {"x":1304,"y":303,"w":93,"h":93},
"frame": {"x":852,"y":847,"w":93,"h":93},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":1,"w":93,"h":93},
@ -274,7 +282,7 @@
},
"sprites/blueprints/splitter.png":
{
"frame": {"x":1691,"y":3,"w":171,"h":96},
"frame": {"x":745,"y":403,"w":171,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":11,"y":0,"w":171,"h":96},
@ -282,7 +290,7 @@
},
"sprites/blueprints/stacker.png":
{
"frame": {"x":1106,"y":203,"w":175,"h":96},
"frame": {"x":743,"y":3,"w":175,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":8,"y":0,"w":175,"h":96},
@ -290,7 +298,7 @@
},
"sprites/blueprints/trash-storage.png":
{
"frame": {"x":765,"y":203,"w":167,"h":192},
"frame": {"x":3,"y":570,"w":167,"h":192},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":167,"h":192},
@ -298,7 +306,7 @@
},
"sprites/blueprints/trash.png":
{
"frame": {"x":1636,"y":203,"w":96,"h":96},
"frame": {"x":847,"y":303,"w":96,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
@ -306,7 +314,7 @@
},
"sprites/blueprints/underground_belt_entry-tier2.png":
{
"frame": {"x":764,"y":399,"w":93,"h":84},
"frame": {"x":564,"y":865,"w":93,"h":84},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":12,"w":93,"h":84},
@ -314,7 +322,7 @@
},
"sprites/blueprints/underground_belt_entry.png":
{
"frame": {"x":373,"y":399,"w":93,"h":75},
"frame": {"x":825,"y":539,"w":93,"h":75},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":21,"w":93,"h":75},
@ -322,7 +330,7 @@
},
"sprites/blueprints/underground_belt_exit-tier2.png":
{
"frame": {"x":957,"y":399,"w":94,"h":75},
"frame": {"x":892,"y":944,"w":94,"h":75},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":94,"h":75},
@ -330,7 +338,7 @@
},
"sprites/blueprints/underground_belt_exit.png":
{
"frame": {"x":470,"y":399,"w":93,"h":75},
"frame": {"x":917,"y":637,"w":93,"h":75},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":93,"h":75},
@ -338,7 +346,7 @@
},
"sprites/buildings/belt_left.png":
{
"frame": {"x":1890,"y":243,"w":57,"h":57},
"frame": {"x":127,"y":962,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":6,"w":57,"h":57},
@ -346,7 +354,7 @@
},
"sprites/buildings/belt_right.png":
{
"frame": {"x":1424,"y":403,"w":57,"h":57},
"frame": {"x":493,"y":960,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":6,"w":57,"h":57},
@ -354,7 +362,7 @@
},
"sprites/buildings/belt_top.png":
{
"frame": {"x":1966,"y":3,"w":51,"h":63},
"frame": {"x":672,"y":952,"w":51,"h":63},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":0,"w":51,"h":63},
@ -362,7 +370,7 @@
},
"sprites/buildings/cutter-quad.png":
{
"frame": {"x":751,"y":3,"w":366,"h":96},
"frame": {"x":373,"y":3,"w":366,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":11,"y":0,"w":366,"h":96},
@ -370,12 +378,20 @@
},
"sprites/buildings/cutter.png":
{
"frame": {"x":1500,"y":103,"w":171,"h":96},
"frame": {"x":747,"y":203,"w":171,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":11,"y":0,"w":171,"h":96},
"sourceSize": {"w":192,"h":96}
},
"sprites/buildings/energy_generator.png":
{
"frame": {"x":199,"y":374,"w":170,"h":187},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":12,"y":5,"w":170,"h":187},
"sourceSize": {"w":192,"h":192}
},
"sprites/buildings/hub.png":
{
"frame": {"x":3,"y":3,"w":366,"h":367},
@ -386,7 +402,7 @@
},
"sprites/buildings/miner-chainable.png":
{
"frame": {"x":1593,"y":303,"w":91,"h":95},
"frame": {"x":822,"y":651,"w":91,"h":95},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":91,"h":95},
@ -394,7 +410,7 @@
},
"sprites/buildings/miner.png":
{
"frame": {"x":1688,"y":303,"w":91,"h":95},
"frame": {"x":757,"y":851,"w":91,"h":95},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":91,"h":95},
@ -402,7 +418,7 @@
},
"sprites/buildings/mixer.png":
{
"frame": {"x":1513,"y":3,"w":174,"h":96},
"frame": {"x":569,"y":203,"w":174,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":0,"w":174,"h":96},
@ -410,7 +426,7 @@
},
"sprites/buildings/painter-double.png":
{
"frame": {"x":569,"y":203,"w":192,"h":191},
"frame": {"x":173,"y":766,"w":192,"h":191},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":192,"h":191},
@ -418,7 +434,7 @@
},
"sprites/buildings/painter-mirrored.png":
{
"frame": {"x":947,"y":103,"w":192,"h":96},
"frame": {"x":373,"y":303,"w":192,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":192,"h":96},
@ -426,7 +442,7 @@
},
"sprites/buildings/painter-quad.png":
{
"frame": {"x":373,"y":103,"w":374,"h":96},
"frame": {"x":348,"y":665,"w":374,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":374,"h":96},
@ -434,7 +450,7 @@
},
"sprites/buildings/painter.png":
{
"frame": {"x":1317,"y":3,"w":192,"h":96},
"frame": {"x":373,"y":403,"w":192,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":192,"h":96},
@ -442,7 +458,7 @@
},
"sprites/buildings/rotater-ccw.png":
{
"frame": {"x":1736,"y":203,"w":95,"h":96},
"frame": {"x":923,"y":103,"w":95,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":95,"h":96},
@ -450,7 +466,7 @@
},
"sprites/buildings/rotater.png":
{
"frame": {"x":1106,"y":303,"w":95,"h":96},
"frame": {"x":726,"y":551,"w":95,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":95,"h":96},
@ -458,7 +474,7 @@
},
"sprites/buildings/splitter-compact-inverse.png":
{
"frame": {"x":569,"y":398,"w":94,"h":91},
"frame": {"x":369,"y":865,"w":94,"h":91},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":2,"w":94,"h":91},
@ -466,7 +482,7 @@
},
"sprites/buildings/splitter-compact.png":
{
"frame": {"x":667,"y":398,"w":93,"h":91},
"frame": {"x":467,"y":865,"w":93,"h":91},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":2,"w":93,"h":91},
@ -474,7 +490,7 @@
},
"sprites/buildings/splitter.png":
{
"frame": {"x":1461,"y":203,"w":171,"h":96},
"frame": {"x":748,"y":103,"w":171,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":11,"y":0,"w":171,"h":96},
@ -482,7 +498,7 @@
},
"sprites/buildings/stacker.png":
{
"frame": {"x":1322,"y":103,"w":174,"h":96},
"frame": {"x":569,"y":303,"w":174,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":0,"w":174,"h":96},
@ -490,7 +506,7 @@
},
"sprites/buildings/trash-storage.png":
{
"frame": {"x":936,"y":203,"w":166,"h":192},
"frame": {"x":3,"y":766,"w":166,"h":192},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":166,"h":192},
@ -498,7 +514,7 @@
},
"sprites/buildings/trash.png":
{
"frame": {"x":1775,"y":103,"w":96,"h":96},
"frame": {"x":922,"y":203,"w":96,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
@ -506,7 +522,7 @@
},
"sprites/buildings/underground_belt_entry-tier2.png":
{
"frame": {"x":861,"y":399,"w":92,"h":83},
"frame": {"x":661,"y":865,"w":92,"h":83},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":13,"w":92,"h":83},
@ -514,7 +530,7 @@
},
"sprites/buildings/underground_belt_entry.png":
{
"frame": {"x":1875,"y":103,"w":92,"h":74},
"frame": {"x":934,"y":716,"w":92,"h":74},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":22,"w":92,"h":74},
@ -522,7 +538,7 @@
},
"sprites/buildings/underground_belt_exit-tier2.png":
{
"frame": {"x":1783,"y":303,"w":92,"h":74},
"frame": {"x":920,"y":403,"w":92,"h":74},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":92,"h":74},
@ -530,7 +546,7 @@
},
"sprites/buildings/underground_belt_exit.png":
{
"frame": {"x":1055,"y":403,"w":92,"h":74},
"frame": {"x":947,"y":303,"w":92,"h":74},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":92,"h":74},
@ -538,7 +554,7 @@
},
"sprites/debug/acceptor_slot.png":
{
"frame": {"x":1989,"y":304,"w":26,"h":32},
"frame": {"x":802,"y":503,"w":26,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":26,"h":32},
@ -546,7 +562,7 @@
},
"sprites/debug/ejector_slot.png":
{
"frame": {"x":1971,"y":116,"w":26,"h":32},
"frame": {"x":832,"y":503,"w":26,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":26,"h":32},
@ -554,7 +570,7 @@
},
"sprites/map_overview/belt_forward.png":
{
"frame": {"x":1835,"y":270,"w":14,"h":16},
"frame": {"x":873,"y":618,"w":14,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":14,"h":16},
@ -562,7 +578,7 @@
},
"sprites/map_overview/belt_left.png":
{
"frame": {"x":3,"y":474,"w":15,"h":15},
"frame": {"x":909,"y":618,"w":15,"h":15},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":1,"w":15,"h":15},
@ -570,7 +586,7 @@
},
"sprites/map_overview/belt_right.png":
{
"frame": {"x":22,"y":474,"w":15,"h":15},
"frame": {"x":862,"y":503,"w":15,"h":15},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":1,"w":15,"h":15},
@ -578,7 +594,7 @@
},
"sprites/misc/deletion_marker.png":
{
"frame": {"x":1971,"y":70,"w":42,"h":42},
"frame": {"x":756,"y":503,"w":42,"h":42},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":3,"w":42,"h":42},
@ -586,7 +602,7 @@
},
"sprites/misc/hub_direction_indicator.png":
{
"frame": {"x":2001,"y":116,"w":16,"h":16},
"frame": {"x":853,"y":618,"w":16,"h":16},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":16,"h":16},
@ -594,7 +610,7 @@
},
"sprites/misc/lock_direction_indicator.png":
{
"frame": {"x":1208,"y":448,"w":24,"h":16},
"frame": {"x":825,"y":618,"w":24,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":4,"w":24,"h":16},
@ -602,7 +618,7 @@
},
"sprites/misc/slot_bad_arrow.png":
{
"frame": {"x":1971,"y":70,"w":42,"h":42},
"frame": {"x":756,"y":503,"w":42,"h":42},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":3,"w":42,"h":42},
@ -610,7 +626,7 @@
},
"sprites/misc/slot_good_arrow.png":
{
"frame": {"x":1729,"y":402,"w":42,"h":48},
"frame": {"x":617,"y":503,"w":42,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":42,"h":48},
@ -618,7 +634,7 @@
},
"sprites/misc/storage_overlay.png":
{
"frame": {"x":1208,"y":400,"w":89,"h":44},
"frame": {"x":663,"y":503,"w":89,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":1,"w":89,"h":44},
@ -626,7 +642,7 @@
},
"sprites/misc/waypoint.png":
{
"frame": {"x":1989,"y":340,"w":14,"h":16},
"frame": {"x":891,"y":618,"w":14,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":14,"h":16},
@ -637,8 +653,8 @@
"version": "1.0",
"image": "atlas0_50.png",
"format": "RGBA8888",
"size": {"w":2020,"h":492},
"size": {"w":1042,"h":1023},
"scale": "0.5",
"smartupdate": "$TexturePacker:SmartUpdate:8985524bba1a3f16cecab3c03b6aaa06:d614d20bfce033d8a8ab0990af085d16:f159918d23e5952766c6d23ab52278c6$"
"smartupdate": "$TexturePacker:SmartUpdate:edd9ed958611fe83da11c1bd0e07a460:9470e3f106da3baf56901b0e2f906cb8:f159918d23e5952766c6d23ab52278c6$"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 397 KiB

After

Width:  |  Height:  |  Size: 404 KiB

@ -2,7 +2,7 @@
"sprites/belt/forward_0.png":
{
"frame": {"x":1963,"y":102,"w":77,"h":95},
"frame": {"x":1927,"y":594,"w":77,"h":95},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":0,"w":77,"h":95},
@ -10,7 +10,7 @@
},
"sprites/belt/forward_1.png":
{
"frame": {"x":1963,"y":201,"w":77,"h":95},
"frame": {"x":1945,"y":398,"w":77,"h":95},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":0,"w":77,"h":95},
@ -18,7 +18,7 @@
},
"sprites/belt/forward_2.png":
{
"frame": {"x":1967,"y":300,"w":77,"h":95},
"frame": {"x":1635,"y":1002,"w":77,"h":95},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":0,"w":77,"h":95},
@ -26,7 +26,7 @@
},
"sprites/belt/forward_3.png":
{
"frame": {"x":1967,"y":399,"w":77,"h":95},
"frame": {"x":1920,"y":783,"w":77,"h":95},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":0,"w":77,"h":95},
@ -34,7 +34,7 @@
},
"sprites/belt/forward_4.png":
{
"frame": {"x":1967,"y":498,"w":77,"h":95},
"frame": {"x":1959,"y":887,"w":77,"h":95},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":0,"w":77,"h":95},
@ -42,7 +42,7 @@
},
"sprites/belt/forward_5.png":
{
"frame": {"x":1679,"y":952,"w":77,"h":95},
"frame": {"x":1959,"y":986,"w":77,"h":95},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":0,"w":77,"h":95},
@ -50,7 +50,7 @@
},
"sprites/belt/left_0.png":
{
"frame": {"x":1217,"y":969,"w":86,"h":86},
"frame": {"x":286,"y":1033,"w":86,"h":86},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":9,"w":86,"h":86},
@ -58,7 +58,7 @@
},
"sprites/belt/left_1.png":
{
"frame": {"x":1307,"y":969,"w":86,"h":86},
"frame": {"x":745,"y":1033,"w":86,"h":86},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":9,"w":86,"h":86},
@ -66,7 +66,7 @@
},
"sprites/belt/left_2.png":
{
"frame": {"x":1916,"y":597,"w":86,"h":86},
"frame": {"x":926,"y":1031,"w":86,"h":86},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":9,"w":86,"h":86},
@ -74,7 +74,7 @@
},
"sprites/belt/left_3.png":
{
"frame": {"x":1916,"y":687,"w":86,"h":86},
"frame": {"x":1016,"y":1033,"w":86,"h":86},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":9,"w":86,"h":86},
@ -82,7 +82,7 @@
},
"sprites/belt/left_4.png":
{
"frame": {"x":1916,"y":777,"w":86,"h":86},
"frame": {"x":1106,"y":1033,"w":86,"h":86},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":9,"w":86,"h":86},
@ -90,7 +90,7 @@
},
"sprites/belt/left_5.png":
{
"frame": {"x":1914,"y":867,"w":86,"h":86},
"frame": {"x":1196,"y":1033,"w":86,"h":86},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":9,"w":86,"h":86},
@ -98,7 +98,7 @@
},
"sprites/belt/right_0.png":
{
"frame": {"x":1499,"y":852,"w":86,"h":86},
"frame": {"x":1286,"y":1030,"w":86,"h":86},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":9,"w":86,"h":86},
@ -106,7 +106,7 @@
},
"sprites/belt/right_1.png":
{
"frame": {"x":1397,"y":967,"w":86,"h":86},
"frame": {"x":1376,"y":1026,"w":86,"h":86},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":9,"w":86,"h":86},
@ -114,7 +114,7 @@
},
"sprites/belt/right_2.png":
{
"frame": {"x":1589,"y":862,"w":86,"h":86},
"frame": {"x":1927,"y":693,"w":86,"h":86},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":9,"w":86,"h":86},
@ -122,7 +122,7 @@
},
"sprites/belt/right_3.png":
{
"frame": {"x":1679,"y":862,"w":86,"h":86},
"frame": {"x":1779,"y":973,"w":86,"h":86},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":9,"w":86,"h":86},
@ -130,7 +130,7 @@
},
"sprites/belt/right_4.png":
{
"frame": {"x":1499,"y":942,"w":86,"h":86},
"frame": {"x":1869,"y":973,"w":86,"h":86},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":9,"w":86,"h":86},
@ -138,7 +138,7 @@
},
"sprites/belt/right_5.png":
{
"frame": {"x":1589,"y":952,"w":86,"h":86},
"frame": {"x":1945,"y":497,"w":86,"h":86},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":9,"w":86,"h":86},
@ -146,7 +146,7 @@
},
"sprites/blueprints/belt_left.png":
{
"frame": {"x":1397,"y":593,"w":87,"h":87},
"frame": {"x":654,"y":1022,"w":87,"h":87},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":8,"w":87,"h":87},
@ -154,7 +154,7 @@
},
"sprites/blueprints/belt_right.png":
{
"frame": {"x":1397,"y":684,"w":87,"h":87},
"frame": {"x":835,"y":1031,"w":87,"h":87},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":8,"y":8,"w":87,"h":87},
@ -162,7 +162,7 @@
},
"sprites/blueprints/belt_top.png":
{
"frame": {"x":1963,"y":3,"w":79,"h":95},
"frame": {"x":1912,"y":299,"w":79,"h":95},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":8,"y":0,"w":79,"h":95},
@ -184,9 +184,17 @@
"spriteSourceSize": {"x":17,"y":0,"w":256,"h":144},
"sourceSize": {"w":288,"h":144}
},
"sprites/blueprints/energy_generator.png":
{
"frame": {"x":295,"y":704,"w":255,"h":280},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":18,"y":8,"w":255,"h":280},
"sourceSize": {"w":288,"h":288}
},
"sprites/blueprints/miner-chainable.png":
{
"frame": {"x":1827,"y":447,"w":136,"h":143},
"frame": {"x":1209,"y":736,"w":136,"h":143},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":136,"h":143},
@ -194,7 +202,7 @@
},
"sprites/blueprints/miner.png":
{
"frame": {"x":1076,"y":739,"w":136,"h":143},
"frame": {"x":1209,"y":883,"w":136,"h":143},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":136,"h":143},
@ -202,7 +210,7 @@
},
"sprites/blueprints/mixer.png":
{
"frame": {"x":547,"y":738,"w":261,"h":144},
"frame": {"x":847,"y":591,"w":261,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":0,"w":261,"h":144},
@ -242,7 +250,7 @@
},
"sprites/blueprints/rotater-ccw.png":
{
"frame": {"x":1639,"y":299,"w":143,"h":144},
"frame": {"x":1798,"y":446,"w":143,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":143,"h":144},
@ -250,7 +258,7 @@
},
"sprites/blueprints/rotater.png":
{
"frame": {"x":1786,"y":299,"w":143,"h":144},
"frame": {"x":1780,"y":594,"w":143,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":143,"h":144},
@ -258,7 +266,7 @@
},
"sprites/blueprints/splitter-compact-inverse.png":
{
"frame": {"x":1071,"y":886,"w":142,"h":138},
"frame": {"x":1101,"y":446,"w":142,"h":138},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":2,"w":142,"h":138},
@ -266,7 +274,7 @@
},
"sprites/blueprints/splitter-compact.png":
{
"frame": {"x":1488,"y":594,"w":139,"h":138},
"frame": {"x":1247,"y":446,"w":139,"h":138},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":2,"w":139,"h":138},
@ -274,7 +282,7 @@
},
"sprites/blueprints/splitter.png":
{
"frame": {"x":811,"y":886,"w":256,"h":144},
"frame": {"x":1112,"y":588,"w":256,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":17,"y":0,"w":256,"h":144},
@ -282,7 +290,7 @@
},
"sprites/blueprints/stacker.png":
{
"frame": {"x":847,"y":591,"w":261,"h":144},
"frame": {"x":1119,"y":298,"w":261,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":13,"y":0,"w":261,"h":144},
@ -298,7 +306,7 @@
},
"sprites/blueprints/trash.png":
{
"frame": {"x":1241,"y":445,"w":144,"h":144},
"frame": {"x":1390,"y":445,"w":144,"h":144},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":144,"h":144},
@ -306,7 +314,7 @@
},
"sprites/blueprints/underground_belt_entry-tier2.png":
{
"frame": {"x":1774,"y":594,"w":138,"h":125},
"frame": {"x":3,"y":994,"w":138,"h":125},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":19,"w":138,"h":125},
@ -314,7 +322,7 @@
},
"sprites/blueprints/underground_belt_entry.png":
{
"frame": {"x":1774,"y":723,"w":138,"h":112},
"frame": {"x":1772,"y":742,"w":138,"h":112},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":32,"w":138,"h":112},
@ -322,7 +330,7 @@
},
"sprites/blueprints/underground_belt_exit-tier2.png":
{
"frame": {"x":1488,"y":736,"w":139,"h":112},
"frame": {"x":1494,"y":886,"w":139,"h":112},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":139,"h":112},
@ -330,7 +338,7 @@
},
"sprites/blueprints/underground_belt_exit.png":
{
"frame": {"x":1772,"y":839,"w":138,"h":112},
"frame": {"x":1637,"y":881,"w":138,"h":112},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":138,"h":112},
@ -338,7 +346,7 @@
},
"sprites/buildings/belt_left.png":
{
"frame": {"x":1217,"y":969,"w":86,"h":86},
"frame": {"x":286,"y":1033,"w":86,"h":86},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":9,"w":86,"h":86},
@ -346,7 +354,7 @@
},
"sprites/buildings/belt_right.png":
{
"frame": {"x":1499,"y":852,"w":86,"h":86},
"frame": {"x":1286,"y":1030,"w":86,"h":86},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":9,"w":86,"h":86},
@ -354,7 +362,7 @@
},
"sprites/buildings/belt_top.png":
{
"frame": {"x":1963,"y":102,"w":77,"h":95},
"frame": {"x":1927,"y":594,"w":77,"h":95},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":0,"w":77,"h":95},
@ -370,12 +378,20 @@
},
"sprites/buildings/cutter.png":
{
"frame": {"x":1119,"y":298,"w":256,"h":143},
"frame": {"x":1538,"y":446,"w":256,"h":143},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":17,"y":0,"w":256,"h":143},
"sourceSize": {"w":288,"h":144}
},
"sprites/buildings/energy_generator.png":
{
"frame": {"x":554,"y":738,"w":254,"h":280},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":19,"y":8,"w":254,"h":280},
"sourceSize": {"w":288,"h":288}
},
"sprites/buildings/hub.png":
{
"frame": {"x":3,"y":3,"w":548,"h":549},
@ -386,7 +402,7 @@
},
"sprites/buildings/miner-chainable.png":
{
"frame": {"x":1101,"y":445,"w":136,"h":142},
"frame": {"x":1349,"y":740,"w":136,"h":142},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":136,"h":142},
@ -394,7 +410,7 @@
},
"sprites/buildings/miner.png":
{
"frame": {"x":1112,"y":593,"w":136,"h":142},
"frame": {"x":1489,"y":740,"w":136,"h":142},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":136,"h":142},
@ -402,7 +418,7 @@
},
"sprites/buildings/mixer.png":
{
"frame": {"x":812,"y":739,"w":260,"h":143},
"frame": {"x":1384,"y":298,"w":260,"h":143},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":260,"h":143},
@ -442,7 +458,7 @@
},
"sprites/buildings/rotater-ccw.png":
{
"frame": {"x":1537,"y":447,"w":141,"h":143},
"frame": {"x":1064,"y":739,"w":141,"h":143},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":141,"h":143},
@ -450,7 +466,7 @@
},
"sprites/buildings/rotater.png":
{
"frame": {"x":1682,"y":447,"w":141,"h":143},
"frame": {"x":1064,"y":886,"w":141,"h":143},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":141,"h":143},
@ -458,7 +474,7 @@
},
"sprites/buildings/splitter-compact-inverse.png":
{
"frame": {"x":1252,"y":593,"w":141,"h":136},
"frame": {"x":1349,"y":886,"w":141,"h":136},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":3,"w":141,"h":136},
@ -466,7 +482,7 @@
},
"sprites/buildings/splitter-compact.png":
{
"frame": {"x":1631,"y":594,"w":139,"h":136},
"frame": {"x":1629,"y":741,"w":139,"h":136},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":3,"w":139,"h":136},
@ -474,7 +490,7 @@
},
"sprites/buildings/splitter.png":
{
"frame": {"x":1379,"y":298,"w":256,"h":143},
"frame": {"x":1372,"y":593,"w":256,"h":143},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":17,"y":0,"w":256,"h":143},
@ -482,7 +498,7 @@
},
"sprites/buildings/stacker.png":
{
"frame": {"x":547,"y":886,"w":260,"h":143},
"frame": {"x":1648,"y":299,"w":260,"h":143},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":260,"h":143},
@ -490,7 +506,7 @@
},
"sprites/buildings/trash-storage.png":
{
"frame": {"x":295,"y":704,"w":248,"h":288},
"frame": {"x":812,"y":739,"w":248,"h":288},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":22,"y":0,"w":248,"h":288},
@ -498,7 +514,7 @@
},
"sprites/buildings/trash.png":
{
"frame": {"x":1389,"y":445,"w":144,"h":144},
"frame": {"x":1632,"y":593,"w":144,"h":144},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":144,"h":144},
@ -506,7 +522,7 @@
},
"sprites/buildings/underground_belt_entry-tier2.png":
{
"frame": {"x":1631,"y":734,"w":137,"h":124},
"frame": {"x":145,"y":994,"w":137,"h":124},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":20,"w":137,"h":124},
@ -514,7 +530,7 @@
},
"sprites/buildings/underground_belt_entry.png":
{
"frame": {"x":1216,"y":739,"w":137,"h":111},
"frame": {"x":1779,"y":858,"w":137,"h":111},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":33,"w":137,"h":111},
@ -522,7 +538,7 @@
},
"sprites/buildings/underground_belt_exit-tier2.png":
{
"frame": {"x":1217,"y":854,"w":137,"h":111},
"frame": {"x":376,"y":988,"w":137,"h":111},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":137,"h":111},
@ -530,7 +546,7 @@
},
"sprites/buildings/underground_belt_exit.png":
{
"frame": {"x":1358,"y":852,"w":137,"h":111},
"frame": {"x":1494,"y":1002,"w":137,"h":111},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":137,"h":111},
@ -538,7 +554,7 @@
},
"sprites/debug/acceptor_slot.png":
{
"frame": {"x":2006,"y":597,"w":38,"h":48},
"frame": {"x":2001,"y":783,"w":38,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":38,"h":48},
@ -546,7 +562,7 @@
},
"sprites/debug/ejector_slot.png":
{
"frame": {"x":2006,"y":649,"w":38,"h":48},
"frame": {"x":2001,"y":835,"w":38,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":38,"h":48},
@ -554,7 +570,7 @@
},
"sprites/map_overview/belt_forward.png":
{
"frame": {"x":1826,"y":955,"w":20,"h":24},
"frame": {"x":1920,"y":882,"w":20,"h":24},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":20,"h":24},
@ -562,7 +578,7 @@
},
"sprites/map_overview/belt_left.png":
{
"frame": {"x":206,"y":994,"w":22,"h":22},
"frame": {"x":517,"y":988,"w":22,"h":22},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":2,"w":22,"h":22},
@ -570,7 +586,7 @@
},
"sprites/map_overview/belt_right.png":
{
"frame": {"x":2006,"y":701,"w":22,"h":22},
"frame": {"x":1912,"y":398,"w":22,"h":22},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":2,"w":22,"h":22},
@ -578,7 +594,7 @@
},
"sprites/misc/deletion_marker.png":
{
"frame": {"x":140,"y":994,"w":62,"h":62},
"frame": {"x":1963,"y":79,"w":62,"h":62},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":5,"w":62,"h":62},
@ -586,7 +602,7 @@
},
"sprites/misc/hub_direction_indicator.png":
{
"frame": {"x":1933,"y":299,"w":24,"h":24},
"frame": {"x":1466,"y":1026,"w":24,"h":24},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":24,"h":24},
@ -594,7 +610,7 @@
},
"sprites/misc/lock_direction_indicator.png":
{
"frame": {"x":1357,"y":733,"w":36,"h":24},
"frame": {"x":1963,"y":145,"w":36,"h":24},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":6,"w":36,"h":24},
@ -602,7 +618,7 @@
},
"sprites/misc/slot_bad_arrow.png":
{
"frame": {"x":140,"y":994,"w":62,"h":62},
"frame": {"x":1963,"y":79,"w":62,"h":62},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":5,"w":62,"h":62},
@ -610,7 +626,7 @@
},
"sprites/misc/slot_good_arrow.png":
{
"frame": {"x":1760,"y":955,"w":62,"h":72},
"frame": {"x":1963,"y":3,"w":62,"h":72},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":62,"h":72},
@ -618,7 +634,7 @@
},
"sprites/misc/storage_overlay.png":
{
"frame": {"x":3,"y":994,"w":133,"h":66},
"frame": {"x":517,"y":1022,"w":133,"h":66},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":2,"w":133,"h":66},
@ -626,7 +642,7 @@
},
"sprites/misc/waypoint.png":
{
"frame": {"x":1357,"y":761,"w":20,"h":24},
"frame": {"x":1466,"y":1054,"w":20,"h":24},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":20,"h":24},
@ -637,8 +653,8 @@
"version": "1.0",
"image": "atlas0_75.png",
"format": "RGBA8888",
"size": {"w":2047,"h":1063},
"size": {"w":2042,"h":1122},
"scale": "0.75",
"smartupdate": "$TexturePacker:SmartUpdate:8985524bba1a3f16cecab3c03b6aaa06:d614d20bfce033d8a8ab0990af085d16:f159918d23e5952766c6d23ab52278c6$"
"smartupdate": "$TexturePacker:SmartUpdate:edd9ed958611fe83da11c1bd0e07a460:9470e3f106da3baf56901b0e2f906cb8:f159918d23e5952766c6d23ab52278c6$"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 780 KiB

After

Width:  |  Height:  |  Size: 788 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

@ -1,4 +1,5 @@
$buildings: belt, cutter, miner, mixer, painter, rotater, splitter, stacker, trash, underground_belt;
$buildings: belt, cutter, miner, mixer, painter, rotater, splitter, stacker, trash, underground_belt,
energy_generator;
@each $building in $buildings {
[data-icon="building_icons/#{$building}.png"] {
@ -27,8 +28,8 @@ $icons: notification_saved, notification_success, notification_upgrade;
}
}
$languages: en, de, cs, da, et, es-419, fr, it, pt-BR, sv, tr, el, ru, uk, zh-TW, zh-CN, nb, mt-MT, ar, nl, vi, th,
hu, pl, ja, kor, no, pt-PT;
$languages: en, de, cs, da, et, es-419, fr, it, pt-BR, sv, tr, el, ru, uk, zh-TW, zh-CN, nb, mt-MT, ar, nl, vi,
th, hu, pl, ja, kor, no, pt-PT;
@each $language in $languages {
[data-languageicon="#{$language}"] {

@ -0,0 +1,107 @@
import { enumDirection, Vector } from "../../core/vector";
import { ItemAcceptorComponent, enumItemAcceptorItemFilter } from "../components/item_acceptor";
import { Entity } from "../entity";
import { MetaBuilding } from "../meta_building";
import { GameRoot } from "../root";
import { enumHubGoalRewards } from "../tutorial_goals";
import { EnergyGeneratorComponent } from "../components/energy_generator";
import { WiredPinsComponent, enumPinSlotType } from "../components/wired_pins";
export class MetaEnergyGenerator extends MetaBuilding {
constructor() {
super("energy_generator");
}
isRotateable(variant) {
return false;
}
getSilhouetteColor() {
return "#c425d7";
}
/**
* @param {GameRoot} root
* @param {string} variant
* @returns {Array<[string, string]>}
*/
getAdditionalStatistics(root, variant) {
// TODO
return [];
}
getDimensions(variant) {
return new Vector(2, 2);
}
/**
* @param {GameRoot} root
*/
getIsUnlocked(root) {
return root.hubGoals.isRewardUnlocked(enumHubGoalRewards.reward_cutter_and_trash);
}
/**
* Creates the entity at the given location
* @param {Entity} entity
*/
setupEntityComponents(entity) {
entity.addComponent(
new ItemAcceptorComponent({
slots: [
{
pos: new Vector(0, 0),
directions: [enumDirection.top],
filter: enumItemAcceptorItemFilter.shape,
},
{
pos: new Vector(1, 0),
directions: [enumDirection.top],
filter: enumItemAcceptorItemFilter.shape,
},
{
pos: new Vector(0, 1),
directions: [enumDirection.bottom],
filter: enumItemAcceptorItemFilter.shape,
},
{
pos: new Vector(1, 1),
directions: [enumDirection.bottom],
filter: enumItemAcceptorItemFilter.shape,
},
],
})
);
entity.addComponent(
new EnergyGeneratorComponent({
// Set by the energy generator system later
requiredKey: null,
})
);
entity.addComponent(
new WiredPinsComponent({
slots: [
{
pos: new Vector(0, 0),
type: enumPinSlotType.energyEjector,
},
{
pos: new Vector(1, 0),
type: enumPinSlotType.energyEjector,
},
{
pos: new Vector(0, 1),
type: enumPinSlotType.energyEjector,
},
{
pos: new Vector(1, 1),
type: enumPinSlotType.energyEjector,
},
],
})
);
}
}

@ -10,6 +10,8 @@ import { UndergroundBeltComponent } from "./components/underground_belt";
import { UnremovableComponent } from "./components/unremovable";
import { HubComponent } from "./components/hub";
import { StorageComponent } from "./components/storage";
import { EnergyGeneratorComponent } from "./components/energy_generator";
import { WiredPinsComponent } from "./components/wired_pins";
export function initComponentRegistry() {
gComponentRegistry.register(StaticMapEntityComponent);
@ -23,6 +25,8 @@ export function initComponentRegistry() {
gComponentRegistry.register(UnremovableComponent);
gComponentRegistry.register(HubComponent);
gComponentRegistry.register(StorageComponent);
gComponentRegistry.register(EnergyGeneratorComponent);
gComponentRegistry.register(WiredPinsComponent);
// IMPORTANT ^^^^^ UPDATE ENTITY COMPONENT STORAGE AFTERWARDS

@ -0,0 +1,59 @@
import { types } from "../../savegame/serialization";
import { BaseItem } from "../base_item";
import { Component } from "../component";
import { ShapeItem } from "../items/shape_item";
const maxQueueSize = 10;
export class EnergyGeneratorComponent extends Component {
static getId() {
return "EnergyGenerator";
}
static getSchema() {
return {
requiredKey: types.string,
};
}
/**
*
* @param {object} param0
* @param {string} param0.requiredKey Which shape this generator needs, can be null if not computed yet
*/
constructor({ requiredKey }) {
super();
this.requiredKey = requiredKey;
/**
* Stores how many items are ready to be converted to energy
* @type {number}
*/
this.itemsInQueue = 0;
}
/**
*
* @param {BaseItem} item
*/
tryTakeItem(item) {
if (!(item instanceof ShapeItem)) {
// Not a shape
return false;
}
if (item.definition.getHash() !== this.requiredKey) {
// Not our shape
return false;
}
if (this.itemsInQueue >= maxQueueSize) {
// Queue is full
return false;
}
// Take item and put it into the queue
++this.itemsInQueue;
return true;
}
}

@ -0,0 +1,65 @@
import { Component } from "../component";
import { Vector } from "../../core/vector";
import { types } from "../../savegame/serialization";
/** @enum {string} */
export const enumPinSlotType = {
energyEjector: "energyEjector",
};
/** @typedef {{
* pos: Vector,
* type: enumPinSlotType
* }} WirePinSlotDefinition */
/** @typedef {{
* pos: Vector,
* type: enumPinSlotType,
* value: number
* }} WirePinSlot */
export class WiredPinsComponent extends Component {
static getId() {
return "WiredPins";
}
static getSchema() {
return {
slots: types.array(
types.structured({
pos: types.vector,
type: types.enum(enumPinSlotType),
value: types.float,
})
),
};
}
/**
*
* @param {object} param0
* @param {Array<WirePinSlotDefinition>} param0.slots
*/
constructor({ slots }) {
super();
this.setSlots(slots);
}
/**
* Sets the slots of this building
* @param {Array<WirePinSlotDefinition>} slots
*/
setSlots(slots) {
/** @type {Array<WirePinSlot>} */
this.slots = [];
for (let i = 0; i < slots.length; ++i) {
const slotData = slots[i];
this.slots.push({
pos: slotData.pos,
type: slotData.type,
value: 0.0,
});
}
}
}

@ -24,7 +24,7 @@ import { GameHUD } from "./hud/hud";
import { KeyActionMapper } from "./key_action_mapper";
import { GameLogic } from "./logic";
import { MapView } from "./map_view";
import { GameRoot } from "./root";
import { GameRoot, enumEditMode } from "./root";
import { ShapeDefinitionManager } from "./shape_definition_manager";
import { SoundProxy } from "./sound_proxy";
import { GameTime } from "./time/game_time";
@ -403,9 +403,17 @@ export class GameCore {
root.map.drawForeground(params);
if (!this.root.camera.getIsMapOverlayActive()) {
systems.hub.draw(params);
systems.energyGenerator.draw(params);
systems.storage.draw(params);
}
// WIRES LAYER
root.hud.parts.wiresOverlay.draw(params);
if (this.root.editMode === enumEditMode.wires) {
systems.wiredPins.drawWiresLayer(params);
}
if (G_IS_DEV) {
root.map.drawStaticEntityDebugOverlays(params);
}

@ -10,6 +10,8 @@ import { UndergroundBeltComponent } from "./components/underground_belt";
import { UnremovableComponent } from "./components/unremovable";
import { HubComponent } from "./components/hub";
import { StorageComponent } from "./components/storage";
import { EnergyGeneratorComponent } from "./components/energy_generator";
import { WiredPinsComponent } from "./components/wired_pins";
/* typehints:end */
/**
@ -56,6 +58,12 @@ export class EntityComponentStorage {
/** @type {StorageComponent} */
this.Storage;
/** @type {EnergyGeneratorComponent} */
this.EnergyGenerator;
/** @type {WiredPinsComponent} */
this.WiredPins;
/* typehints:end */
}
}

@ -13,6 +13,8 @@ import { HubSystem } from "./systems/hub";
import { StaticMapEntitySystem } from "./systems/static_map_entity";
import { ItemAcceptorSystem } from "./systems/item_acceptor";
import { StorageSystem } from "./systems/storage";
import { EnergyGeneratorSystem } from "./systems/energy_generator";
import { WiredPinsSystem } from "./systems/wired_pins";
const logger = createLogger("game_system_manager");
@ -56,6 +58,12 @@ export class GameSystemManager {
/** @type {StorageSystem} */
storage: null,
/** @type {EnergyGeneratorSystem} */
energyGenerator: null,
/** @type {WiredPinsSystem} */
wiredPins: null,
/* typehints:end */
};
this.systemUpdateOrder = [];
@ -90,8 +98,12 @@ export class GameSystemManager {
add("hub", HubSystem);
add("energyGenerator", EnergyGeneratorSystem);
add("staticMapEntities", StaticMapEntitySystem);
add("wiredPins", WiredPinsSystem);
// IMPORTANT: Must be after belt system since belt system can change the
// orientation of an entity after it is placed -> the item acceptor cache
// then would be invalid

@ -36,6 +36,7 @@ import { HUDInteractiveTutorial } from "./parts/interactive_tutorial";
import { HUDScreenshotExporter } from "./parts/screenshot_exporter";
import { HUDColorBlindHelper } from "./parts/color_blind_helper";
import { HUDShapeViewer } from "./parts/shape_viewer";
import { HUDWiresOverlay } from "./parts/wires_overlay";
export class GameHUD {
/**
@ -70,6 +71,7 @@ export class GameHUD {
dialogs: new HUDModalDialogs(this.root),
screenshotExporter: new HUDScreenshotExporter(this.root),
shapeViewer: new HUDShapeViewer(this.root),
wiresOverlay: new HUDWiresOverlay(this.root),
};
this.signals = {

@ -0,0 +1,172 @@
import { gMetaBuildingRegistry } from "../../../core/global_registries";
import { Signal } from "../../../core/signal";
import { TrackedState } from "../../../core/tracked_state";
import { makeDiv } from "../../../core/utils";
import { KEYMAPPINGS } from "../../key_action_mapper";
import { MetaBuilding } from "../../meta_building";
import { BaseHUDPart } from "../base_hud_part";
import { GameRoot } from "../../root";
export class HUDBaseToolbar extends BaseHUDPart {
/**
* @param {GameRoot} root
* @param {Array<typeof MetaBuilding>} supportedBuildings
* @param {function} visibilityCondition
*/
constructor(root, supportedBuildings, visibilityCondition) {
super(root);
this.supportedBuildings = supportedBuildings;
this.visibilityCondition = visibilityCondition;
/** @type {Object.<string, {
* metaBuilding: MetaBuilding,
* unlocked: boolean,
* selected: boolean,
* element: HTMLElement,
* index: number
* }>} */
this.buildingHandles = {};
this.sigBuildingSelected = new Signal();
this.trackedIsVisisible = new TrackedState(this.onVisibilityChanged, this);
}
/**
* Called when the visibility of the toolbar changed
* @param {boolean} visible
*/
onVisibilityChanged(visible) {
this.element.classList.toggle("visible", visible);
}
/**
* Should create all require elements
* @param {HTMLElement} parent
*/
createElements(parent) {
this.element = makeDiv(parent, "ingame_HUD_buildings_toolbar", ["ingame_buildingsToolbar"], "");
}
initialize() {
const actionMapper = this.root.keyMapper;
const items = makeDiv(this.element, null, ["buildings"]);
for (let i = 0; i < this.supportedBuildings.length; ++i) {
const metaBuilding = gMetaBuildingRegistry.findByClass(this.supportedBuildings[i]);
const binding = actionMapper.getBinding(KEYMAPPINGS.buildings[metaBuilding.getId()]);
const itemContainer = makeDiv(items, null, ["building"]);
itemContainer.setAttribute("data-icon", "building_icons/" + metaBuilding.getId() + ".png");
binding.add(() => this.selectBuildingForPlacement(metaBuilding));
this.trackClicks(itemContainer, () => this.selectBuildingForPlacement(metaBuilding), {
clickSound: null,
});
this.buildingHandles[metaBuilding.id] = {
metaBuilding,
element: itemContainer,
unlocked: false,
selected: false,
index: i,
};
}
this.root.hud.signals.selectedPlacementBuildingChanged.add(
this.onSelectedPlacementBuildingChanged,
this
);
this.lastSelectedIndex = 0;
actionMapper.getBinding(KEYMAPPINGS.placement.cycleBuildings).add(this.cycleBuildings, this);
}
/**
* Updates the toolbar
*/
update() {
this.trackedIsVisisible.set(this.visibilityCondition());
if (!this.trackedIsVisisible.get()) {
// Currently not active
} else {
for (const buildingId in this.buildingHandles) {
const handle = this.buildingHandles[buildingId];
const newStatus = handle.metaBuilding.getIsUnlocked(this.root);
if (handle.unlocked !== newStatus) {
handle.unlocked = newStatus;
handle.element.classList.toggle("unlocked", newStatus);
}
}
}
}
/**
* Cycles through all buildings
*/
cycleBuildings() {
let newIndex = this.lastSelectedIndex;
for (let i = 0; i < this.supportedBuildings.length; ++i, ++newIndex) {
newIndex %= this.supportedBuildings.length;
const metaBuilding = gMetaBuildingRegistry.findByClass(this.supportedBuildings[newIndex]);
const handle = this.buildingHandles[metaBuilding.id];
if (!handle.selected && handle.unlocked) {
break;
}
}
const metaBuildingClass = this.supportedBuildings[newIndex];
const metaBuilding = gMetaBuildingRegistry.findByClass(metaBuildingClass);
this.selectBuildingForPlacement(metaBuilding);
}
/**
* Called when the selected building got changed
* @param {MetaBuilding} metaBuilding
*/
onSelectedPlacementBuildingChanged(metaBuilding) {
for (const buildingId in this.buildingHandles) {
const handle = this.buildingHandles[buildingId];
const newStatus = handle.metaBuilding === metaBuilding;
if (handle.selected !== newStatus) {
handle.selected = newStatus;
handle.element.classList.toggle("selected", newStatus);
}
if (handle.selected) {
this.lastSelectedIndex = handle.index;
}
}
this.element.classList.toggle("buildingSelected", !!metaBuilding);
}
/**
* @param {MetaBuilding} metaBuilding
*/
selectBuildingForPlacement(metaBuilding) {
if (!this.visibilityCondition()) {
// Not active
return;
}
if (!metaBuilding.getIsUnlocked(this.root)) {
this.root.soundProxy.playUiError();
return STOP_PROPAGATION;
}
// Allow clicking an item again to deselect it
for (const buildingId in this.buildingHandles) {
const handle = this.buildingHandles[buildingId];
if (handle.selected && handle.metaBuilding === metaBuilding) {
metaBuilding = null;
break;
}
}
this.root.soundProxy.playUiClick();
this.sigBuildingSelected.dispatch(metaBuilding);
this.onSelectedPlacementBuildingChanged(metaBuilding);
}
}

@ -13,6 +13,7 @@ import { BaseHUDPart } from "../base_hud_part";
import { SOUNDS } from "../../../platform/sound";
import { MetaMinerBuilding, enumMinerVariants } from "../../buildings/miner";
import { enumHubGoalRewards } from "../../tutorial_goals";
import { enumEditMode } from "../../root";
/**
* Contains all logic for the building placer - this doesn't include the rendering
@ -115,6 +116,7 @@ export class HUDBuildingPlacerLogic extends BaseHUDPart {
this.root.hud.signals.pasteBlueprintRequested.add(this.abortPlacement, this);
this.root.signals.storyGoalCompleted.add(() => this.signals.variantChanged.dispatch());
this.root.signals.upgradePurchased.add(() => this.signals.variantChanged.dispatch());
this.root.signals.editModeChanged.add(this.onEditModeChanged, this);
// MOUSE BINDINGS
this.root.camera.downPreHandler.add(this.onMouseDown, this);
@ -122,6 +124,20 @@ export class HUDBuildingPlacerLogic extends BaseHUDPart {
this.root.camera.upPostHandler.add(this.onMouseUp, this);
}
/**
* Called when the edit mode got changed
* @param {enumEditMode} editMode
*/
onEditModeChanged(editMode) {
const metaBuilding = this.currentMetaBuilding.get();
if (metaBuilding) {
if (metaBuilding.getEditLayer() !== editMode) {
// This layer doesn't fit the edit mode anymore
this.currentMetaBuilding.set(null);
}
}
}
/**
* Returns the current base rotation for the current meta-building.
* @returns {number}

@ -1,9 +1,6 @@
import { gMetaBuildingRegistry } from "../../../core/global_registries";
import { Signal } from "../../../core/signal";
import { TrackedState } from "../../../core/tracked_state";
import { makeDiv } from "../../../core/utils";
import { MetaBeltBaseBuilding } from "../../buildings/belt_base";
import { MetaCutterBuilding } from "../../buildings/cutter";
import { MetaEnergyGenerator } from "../../buildings/energy_generator";
import { MetaMinerBuilding } from "../../buildings/miner";
import { MetaMixerBuilding } from "../../buildings/mixer";
import { MetaPainterBuilding } from "../../buildings/painter";
@ -12,9 +9,8 @@ import { MetaSplitterBuilding } from "../../buildings/splitter";
import { MetaStackerBuilding } from "../../buildings/stacker";
import { MetaTrashBuilding } from "../../buildings/trash";
import { MetaUndergroundBeltBuilding } from "../../buildings/underground_belt";
import { MetaBuilding } from "../../meta_building";
import { BaseHUDPart } from "../base_hud_part";
import { KEYMAPPINGS } from "../../key_action_mapper";
import { enumEditMode } from "../../root";
import { HUDBaseToolbar } from "./base_toolbar";
const toolbarBuildings = [
MetaBeltBaseBuilding,
@ -27,146 +23,15 @@ const toolbarBuildings = [
MetaMixerBuilding,
MetaPainterBuilding,
MetaTrashBuilding,
MetaEnergyGenerator,
];
export class HUDBuildingsToolbar extends BaseHUDPart {
export class HUDBuildingsToolbar extends HUDBaseToolbar {
constructor(root) {
super(root);
/** @type {Object.<string, {
* metaBuilding: MetaBuilding,
* unlocked: boolean,
* selected: boolean,
* element: HTMLElement,
* index: number
* }>} */
this.buildingHandles = {};
this.sigBuildingSelected = new Signal();
this.trackedIsVisisible = new TrackedState(this.onVisibilityChanged, this);
}
onVisibilityChanged(visible) {
this.element.classList.toggle("visible", visible);
}
/**
* Should create all require elements
* @param {HTMLElement} parent
*/
createElements(parent) {
this.element = makeDiv(parent, "ingame_HUD_buildings_toolbar", [], "");
}
initialize() {
const actionMapper = this.root.keyMapper;
const items = makeDiv(this.element, null, ["buildings"]);
for (let i = 0; i < toolbarBuildings.length; ++i) {
const metaBuilding = gMetaBuildingRegistry.findByClass(toolbarBuildings[i]);
const binding = actionMapper.getBinding(KEYMAPPINGS.buildings[metaBuilding.getId()]);
const itemContainer = makeDiv(items, null, ["building"]);
itemContainer.setAttribute("data-icon", "building_icons/" + metaBuilding.getId() + ".png");
binding.add(() => this.selectBuildingForPlacement(metaBuilding));
this.trackClicks(itemContainer, () => this.selectBuildingForPlacement(metaBuilding), {
clickSound: null,
});
this.buildingHandles[metaBuilding.id] = {
metaBuilding,
element: itemContainer,
unlocked: false,
selected: false,
index: i,
};
}
this.root.hud.signals.selectedPlacementBuildingChanged.add(
this.onSelectedPlacementBuildingChanged,
this
super(
root,
toolbarBuildings,
() => !this.root.camera.getIsMapOverlayActive() && this.root.editMode === enumEditMode.regular
);
this.lastSelectedIndex = 0;
actionMapper.getBinding(KEYMAPPINGS.placement.cycleBuildings).add(this.cycleBuildings, this);
}
update() {
this.trackedIsVisisible.set(!this.root.camera.getIsMapOverlayActive());
for (const buildingId in this.buildingHandles) {
const handle = this.buildingHandles[buildingId];
const newStatus = handle.metaBuilding.getIsUnlocked(this.root);
if (handle.unlocked !== newStatus) {
handle.unlocked = newStatus;
handle.element.classList.toggle("unlocked", newStatus);
}
}
}
cycleBuildings() {
let newIndex = this.lastSelectedIndex;
for (let i = 0; i < toolbarBuildings.length; ++i, ++newIndex) {
newIndex %= toolbarBuildings.length;
const metaBuilding = gMetaBuildingRegistry.findByClass(toolbarBuildings[newIndex]);
const handle = this.buildingHandles[metaBuilding.id];
if (!handle.selected && handle.unlocked) {
break;
}
}
const metaBuildingClass = toolbarBuildings[newIndex];
const metaBuilding = gMetaBuildingRegistry.findByClass(metaBuildingClass);
this.selectBuildingForPlacement(metaBuilding);
}
/**
* @param {MetaBuilding} metaBuilding
*/
onSelectedPlacementBuildingChanged(metaBuilding) {
for (const buildingId in this.buildingHandles) {
const handle = this.buildingHandles[buildingId];
const newStatus = handle.metaBuilding === metaBuilding;
if (handle.selected !== newStatus) {
handle.selected = newStatus;
handle.element.classList.toggle("selected", newStatus);
}
if (handle.selected) {
this.lastSelectedIndex = handle.index;
}
}
this.element.classList.toggle("buildingSelected", !!metaBuilding);
}
/**
* @param {MetaBuilding} metaBuilding
*/
selectBuildingForPlacement(metaBuilding) {
if (!metaBuilding.getIsUnlocked(this.root)) {
this.root.soundProxy.playUiError();
return;
}
if (this.root.camera.getIsMapOverlayActive()) {
this.root.soundProxy.playUiError();
return;
}
// Allow clicking an item again to deselect it
for (const buildingId in this.buildingHandles) {
const handle = this.buildingHandles[buildingId];
if (handle.selected && handle.metaBuilding === metaBuilding) {
metaBuilding = null;
break;
}
}
this.root.soundProxy.playUiClick();
this.sigBuildingSelected.dispatch(metaBuilding);
this.onSelectedPlacementBuildingChanged(metaBuilding);
}
}

@ -254,6 +254,13 @@ export class HUDKeybindingOverlay extends BaseHUDPart {
keys: [k.massSelect.massSelectCopy],
condition: () => this.anythingSelectedOnMap,
},
{
// Switch layers
label: T.ingame.keybindingsOverlay.switchLayers,
keys: [k.ingame.switchLayers],
condition: () => true,
},
];
if (!this.root.app.settings.getAllSettings().alwaysMultiplace) {

@ -0,0 +1,83 @@
import { makeOffscreenBuffer } from "../../../core/buffer_utils";
import { globalConfig } from "../../../core/config";
import { DrawParameters } from "../../../core/draw_parameters";
import { KEYMAPPINGS } from "../../key_action_mapper";
import { enumEditMode } from "../../root";
import { THEME } from "../../theme";
import { BaseHUDPart } from "../base_hud_part";
const wiresBackgroundDpi = 3;
export class HUDWiresOverlay extends BaseHUDPart {
createElements(parent) {}
initialize() {
// Probably not the best location, but the one which makes most sense
this.root.keyMapper.getBinding(KEYMAPPINGS.ingame.switchLayers).add(this.switchLayers, this);
this.generateTilePattern();
}
/**
* Switches between layers
*/
switchLayers() {
if (this.root.editMode === enumEditMode.regular) {
this.root.editMode = enumEditMode.wires;
} else {
this.root.editMode = enumEditMode.regular;
}
this.root.signals.editModeChanged.dispatch(this.root.editMode);
}
/**
* Generates the background pattern for the wires overlay
*/
generateTilePattern() {
const dims = globalConfig.tileSize * wiresBackgroundDpi;
const [canvas, context] = makeOffscreenBuffer(dims, dims, {
smooth: false,
reusable: false,
label: "wires-tile-pattern",
});
context.scale(wiresBackgroundDpi, wiresBackgroundDpi);
context.fillStyle = THEME.map.wires.overlay;
context.fillRect(0, 0, globalConfig.tileSize, globalConfig.tileSize);
const lineWidth = 1;
context.fillRect(0, 0, globalConfig.tileSize, lineWidth);
context.fillRect(0, lineWidth, lineWidth, globalConfig.tileSize);
this.tilePatternCanvas = canvas;
}
/**
*
* @param {DrawParameters} parameters
*/
draw(parameters) {
if (this.root.editMode !== enumEditMode.wires) {
return;
}
if (!this.cachedPatternBackground) {
this.cachedPatternBackground = parameters.context.createPattern(this.tilePatternCanvas, "repeat");
}
const bounds = parameters.visibleRect;
const scaleFactor = 1 / wiresBackgroundDpi;
parameters.context.scale(scaleFactor, scaleFactor);
parameters.context.fillStyle = this.cachedPatternBackground;
parameters.context.fillRect(
bounds.x / scaleFactor,
bounds.y / scaleFactor,
bounds.w / scaleFactor,
bounds.h / scaleFactor
);
parameters.context.scale(1 / scaleFactor, 1 / scaleFactor);
}
}

@ -26,6 +26,8 @@ export const KEYMAPPINGS = {
toggleHud: { keyCode: 113 }, // F2
exportScreenshot: { keyCode: 114 }, // F3PS
toggleFPSInfo: { keyCode: 115 }, // F4
switchLayers: { keyCode: key("Y") },
},
navigation: {
@ -53,6 +55,7 @@ export const KEYMAPPINGS = {
mixer: { keyCode: key("8") },
painter: { keyCode: key("9") },
trash: { keyCode: key("0") },
energy_generator: { keyCode: key("O") },
},
placement: {

@ -1,10 +1,10 @@
import { Vector, enumDirection, enumAngleToDirection } from "../core/vector";
import { Loader } from "../core/loader";
import { GameRoot } from "./root";
import { AtlasSprite } from "../core/sprites";
import { Entity } from "./entity";
import { StaticMapEntityComponent } from "./components/static_map_entity";
import { Vector } from "../core/vector";
import { SOUNDS } from "../platform/sound";
import { StaticMapEntityComponent } from "./components/static_map_entity";
import { Entity } from "./entity";
import { enumEditMode, GameRoot } from "./root";
export const defaultBuildingVariant = "default";
@ -24,6 +24,14 @@ export class MetaBuilding {
return this.id;
}
/**
* Returns the edit layer of the building
* @returns {enumEditMode}
*/
getEditLayer() {
return enumEditMode.regular;
}
/**
* Should return the dimensions of the building
*/

@ -10,6 +10,7 @@ import { MetaStackerBuilding } from "./buildings/stacker";
import { MetaTrashBuilding } from "./buildings/trash";
import { MetaUndergroundBeltBuilding } from "./buildings/underground_belt";
import { MetaHubBuilding } from "./buildings/hub";
import { MetaEnergyGenerator } from "./buildings/energy_generator";
export function initMetaBuildingRegistry() {
gMetaBuildingRegistry.register(MetaSplitterBuilding);
@ -23,4 +24,5 @@ export function initMetaBuildingRegistry() {
gMetaBuildingRegistry.register(MetaBeltBaseBuilding);
gMetaBuildingRegistry.register(MetaUndergroundBeltBuilding);
gMetaBuildingRegistry.register(MetaHubBuilding);
gMetaBuildingRegistry.register(MetaEnergyGenerator);
}

@ -31,6 +31,12 @@ import { KeyActionMapper } from "./key_action_mapper";
const logger = createLogger("game/root");
/** @enum {string} */
export const enumEditMode = {
regular: "regular",
wires: "wires",
};
/**
* The game root is basically the whole game state at a given point,
* combining all important classes. We don't have globals, but this
@ -124,6 +130,9 @@ export class GameRoot {
/** @type {DynamicTickrate} */
this.dynamicTickrate = null;
/** @type {enumEditMode} */
this.editMode = enumEditMode.regular;
this.signals = {
// Entities
entityManuallyPlaced: /** @type {TypedSignal<[Entity]>} */ (new Signal()),
@ -155,6 +164,8 @@ export class GameRoot {
itemProduced: /** @type {TypedSignal<[BaseItem]>} */ (new Signal()),
bulkOperationFinished: /** @type {TypedSignal<[]>} */ (new Signal()),
editModeChanged: /** @type {TypedSignal<[enumEditMode]>} */ (new Signal()),
};
// RNG's

@ -0,0 +1,76 @@
import { DrawParameters } from "../../core/draw_parameters";
import { T } from "../../translations";
import { EnergyGeneratorComponent } from "../components/energy_generator";
import { Entity } from "../entity";
import { GameSystemWithFilter } from "../game_system_with_filter";
import { ShapeDefinition } from "../shape_definition";
export class EnergyGeneratorSystem extends GameSystemWithFilter {
constructor(root) {
super(root, [EnergyGeneratorComponent]);
}
draw(parameters) {
this.forEachMatchingEntityOnScreen(parameters, this.drawEntity.bind(this));
}
/**
* Returns which shape is required for a given generator
* @param {Entity} entity
*/
getShapeRequiredForGenerator(entity) {
return "CuCuCuCu";
}
update() {
for (let i = 0; i < this.allEntities.length; ++i) {
const entity = this.allEntities[i];
const energyGenComp = entity.components.EnergyGenerator;
if (!energyGenComp.requiredKey) {
// Compute required key for this generator
energyGenComp.requiredKey = this.getShapeRequiredForGenerator(entity);
}
}
}
/**
* @param {DrawParameters} parameters
* @param {Entity} entity
*/
drawEntity(parameters, entity) {
const context = parameters.context;
const staticComp = entity.components.StaticMapEntity;
if (!staticComp.shouldBeDrawn(parameters)) {
return;
}
const energyGenComp = entity.components.EnergyGenerator;
if (!energyGenComp.requiredKey) {
// Not initialized yet
return;
}
const pos = staticComp.getTileSpaceBounds().getCenter().toWorldSpace();
// TESTING
const definition = ShapeDefinition.fromShortKey(energyGenComp.requiredKey);
definition.draw(pos.x, pos.y, parameters, 30);
const energyGenerated = 5;
// deliver: Deliver
// toGenerateEnergy: For <x> energy
context.font = "bold 7px GameFont";
context.fillStyle = "#64666e";
context.textAlign = "left";
context.fillText(T.buildings.energy_generator.deliver.toUpperCase(), pos.x - 25, pos.y - 18);
context.fillText(
T.buildings.energy_generator.toGenerateEnergy.replace("<x>", "" + energyGenerated).toUpperCase(),
pos.x - 25,
pos.y + 28
);
}
}

@ -261,6 +261,14 @@ export class ItemEjectorSystem extends GameSystemWithFilter {
}
}
const energyGeneratorComp = receiver.components.EnergyGenerator;
if (energyGeneratorComp) {
if (energyGeneratorComp.tryTakeItem(item)) {
// Passed it over
return true;
}
}
return false;
}

@ -0,0 +1,51 @@
import { GameSystemWithFilter } from "../game_system_with_filter";
import { WiredPinsComponent } from "../components/wired_pins";
import { DrawParameters } from "../../core/draw_parameters";
import { Entity } from "../entity";
import { THEME } from "../theme";
export class WiredPinsSystem extends GameSystemWithFilter {
constructor(root) {
super(root, [WiredPinsComponent]);
}
update() {
// TODO
}
drawWiresLayer(parameters) {
this.forEachMatchingEntityOnScreen(parameters, this.drawEntityPins.bind(this));
}
/**
*
* @param {DrawParameters} parameters
* @param {Entity} entity
*/
drawEntityPins(parameters, entity) {
const staticComp = entity.components.StaticMapEntity;
if (!staticComp.shouldBeDrawn(parameters)) {
return;
}
const pinsComp = entity.components.WiredPins;
const slots = pinsComp.slots;
for (let i = 0; i < slots.length; ++i) {
const slot = slots[i];
const tile = staticComp.localTileToWorld(slot.pos);
const worldPos = tile.toWorldSpaceCenterOfTile();
parameters.context.fillStyle = THEME.map.wires.pins[slot.type];
parameters.context.beginCircle(worldPos.x, worldPos.y, 5);
parameters.context.fill();
parameters.context.lineWidth = 2;
parameters.context.fillStyle = "rgba(0, 0, 0, 0.1)";
parameters.context.stroke();
}
}
}

@ -23,6 +23,13 @@
"chunkOverview": {
"empty": "#444856",
"filled": "#646b7d"
},
"wires": {
"overlay": "rgba(52, 150, 128, 0.5)",
"pins": {
"energyEjector": "#c425d7"
}
}
},

@ -24,6 +24,13 @@
"chunkOverview": {
"empty": "#a6afbb",
"filled": "#c5ccd6"
},
"wires": {
"overlay": "rgba(52, 150, 128, 0.8)",
"pins": {
"energyEjector": "#c425d7"
}
}
},

@ -23,6 +23,8 @@ export const enumHubGoalRewards = {
reward_painter_quad: "reward_painter_quad",
reward_storage: "reward_storage",
reward_wires: "reward_wires",
reward_blueprints: "reward_blueprints",
reward_freeplay: "reward_freeplay",
@ -163,6 +165,13 @@ export const tutorialGoals = [
{
shape: finalGameShape,
required: 250000,
reward: enumHubGoalRewards.reward_wires,
},
// 19
{
shape: finalGameShape,
required: 1,
reward: enumHubGoalRewards.reward_freeplay,
},
];

@ -290,6 +290,7 @@ ingame:
copySelection: Copy
clearSelection: Clear Selection
pipette: Pipette
switchLayers: Switch Layers
# Names of the colors, used for the color blind mode
colors:
@ -522,6 +523,14 @@ buildings:
name: Storage
description: Stores excess items, up to a given capacity. Can be used as an overflow gate.
energy_generator:
deliver: Deliver
toGenerateEnergy: For <x> energy
default:
name: &energy_generator Energy Generator
description: Generates energy by consuming shapes. Each energy generator requires a different shapes.
storyRewards:
# Those are the rewards gained from completing the store
reward_cutter_and_trash:
@ -600,6 +609,10 @@ storyRewards:
desc: >-
This level gave you no reward, but the next one will! <br><br> PS: Better don't destroy your existing factory - You need <strong>all</strong> those shapes later again to <strong>unlock upgrades</strong>!
reward_wires:
title: Wires
desc: TODO
no_reward_freeplay:
title: Next level
desc: >-
@ -773,6 +786,7 @@ keybindings:
toggleHud: Toggle HUD
toggleFPSInfo: Toggle FPS and Debug Info
switchLayers: Switch layers
exportScreenshot: Export whole Base as Image
belt: *belt
splitter: *splitter
@ -782,6 +796,7 @@ keybindings:
rotater: *rotater
stacker: *stacker
mixer: *mixer
energy_generator: *energy_generator
painter: *painter
trash: *trash

Loading…
Cancel
Save