Initial waypoint support

This commit is contained in:
tobspr 2020-05-28 19:40:48 +02:00
parent 37685d64bd
commit ec021780d8
30 changed files with 598 additions and 314 deletions

View File

@ -2,7 +2,7 @@
"sprites/belt/forward_0.png":
{
"frame": {"x":160,"y":26,"w":13,"h":13},
"frame": {"x":204,"y":26,"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":177,"y":26,"w":13,"h":13},
"frame": {"x":221,"y":26,"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":194,"y":26,"w":13,"h":13},
"frame": {"x":238,"y":26,"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":211,"y":26,"w":13,"h":13},
"frame": {"x":255,"y":26,"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":228,"y":26,"w":13,"h":13},
"frame": {"x":272,"y":26,"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":26,"w":13,"h":13},
"frame": {"x":245,"y":112,"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":167,"y":112,"w":13,"h":13},
"frame": {"x":262,"y":112,"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":184,"y":112,"w":13,"h":13},
"frame": {"x":279,"y":112,"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":201,"y":112,"w":13,"h":13},
"frame": {"x":296,"y":112,"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":262,"y":26,"w":13,"h":13},
"frame": {"x":313,"y":112,"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":279,"y":26,"w":13,"h":13},
"frame": {"x":289,"y":26,"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":218,"y":112,"w":13,"h":13},
"frame": {"x":306,"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":235,"y":112,"w":13,"h":13},
"frame": {"x":330,"y":112,"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":296,"y":26,"w":13,"h":13},
"frame": {"x":347,"y":112,"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":252,"y":112,"w":13,"h":13},
"frame": {"x":323,"y":26,"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":269,"y":112,"w":13,"h":13},
"frame": {"x":364,"y":111,"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":313,"y":26,"w":13,"h":13},
"frame": {"x":381,"y":111,"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":330,"y":26,"w":13,"h":13},
"frame": {"x":340,"y":25,"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":286,"y":112,"w":13,"h":13},
"frame": {"x":357,"y":23,"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":347,"y":26,"w":13,"h":13},
"frame": {"x":374,"y":23,"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":303,"y":112,"w":13,"h":13},
"frame": {"x":391,"y":23,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -170,7 +170,7 @@
},
"sprites/blueprints/cutter-quad.png":
{
"frame": {"x":87,"y":82,"w":76,"h":19},
"frame": {"x":82,"y":3,"w":76,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":76,"h":19},
@ -178,7 +178,7 @@
},
"sprites/blueprints/cutter.png":
{
"frame": {"x":209,"y":66,"w":36,"h":19},
"frame": {"x":207,"y":43,"w":36,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":36,"h":19},
@ -186,7 +186,7 @@
},
"sprites/blueprints/miner-chainable.png":
{
"frame": {"x":286,"y":43,"w":19,"h":19},
"frame": {"x":285,"y":3,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -194,7 +194,7 @@
},
"sprites/blueprints/miner.png":
{
"frame": {"x":249,"y":89,"w":19,"h":19},
"frame": {"x":245,"y":89,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -202,7 +202,7 @@
},
"sprites/blueprints/mixer.png":
{
"frame": {"x":205,"y":43,"w":37,"h":19},
"frame": {"x":166,"y":45,"w":37,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":37,"h":19},
@ -210,7 +210,7 @@
},
"sprites/blueprints/painter-double.png":
{
"frame": {"x":3,"y":83,"w":38,"h":38},
"frame": {"x":84,"y":82,"w":38,"h":38},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":38,"h":38},
@ -218,7 +218,7 @@
},
"sprites/blueprints/painter-quad.png":
{
"frame": {"x":82,"y":45,"w":77,"h":19},
"frame": {"x":3,"y":83,"w":77,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":77,"h":19},
@ -226,7 +226,7 @@
},
"sprites/blueprints/painter.png":
{
"frame": {"x":163,"y":43,"w":38,"h":19},
"frame": {"x":82,"y":49,"w":38,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":38,"h":19},
@ -234,7 +234,7 @@
},
"sprites/blueprints/rotater-ccw.png":
{
"frame": {"x":272,"y":89,"w":19,"h":19},
"frame": {"x":268,"y":89,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -242,7 +242,7 @@
},
"sprites/blueprints/rotater.png":
{
"frame": {"x":289,"y":66,"w":19,"h":19},
"frame": {"x":285,"y":66,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -250,7 +250,7 @@
},
"sprites/blueprints/splitter-compact-inverse.png":
{
"frame": {"x":309,"y":43,"w":19,"h":19},
"frame": {"x":291,"y":89,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -258,7 +258,7 @@
},
"sprites/blueprints/splitter-compact.png":
{
"frame": {"x":322,"y":3,"w":19,"h":19},
"frame": {"x":287,"y":43,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -266,7 +266,7 @@
},
"sprites/blueprints/splitter.png":
{
"frame": {"x":246,"y":43,"w":36,"h":19},
"frame": {"x":245,"y":3,"w":36,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":36,"h":19},
@ -274,7 +274,7 @@
},
"sprites/blueprints/stacker.png":
{
"frame": {"x":241,"y":3,"w":37,"h":19},
"frame": {"x":204,"y":3,"w":37,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":37,"h":19},
@ -282,7 +282,7 @@
},
"sprites/blueprints/trash-storage.png":
{
"frame": {"x":82,"y":3,"w":35,"h":38},
"frame": {"x":126,"y":79,"w":35,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":35,"h":38},
@ -290,7 +290,7 @@
},
"sprites/blueprints/trash.png":
{
"frame": {"x":345,"y":3,"w":19,"h":19},
"frame": {"x":308,"y":66,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -298,7 +298,7 @@
},
"sprites/blueprints/underground_belt_entry-tier2.png":
{
"frame": {"x":378,"y":26,"w":19,"h":18},
"frame": {"x":360,"y":89,"w":19,"h":18},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":1,"w":19,"h":18},
@ -306,7 +306,7 @@
},
"sprites/blueprints/underground_belt_entry.png":
{
"frame": {"x":341,"y":89,"w":19,"h":16},
"frame": {"x":354,"y":3,"w":19,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":3,"w":19,"h":16},
@ -314,7 +314,7 @@
},
"sprites/blueprints/underground_belt_exit-tier2.png":
{
"frame": {"x":341,"y":109,"w":19,"h":16},
"frame": {"x":356,"y":42,"w":19,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":16},
@ -322,7 +322,7 @@
},
"sprites/blueprints/underground_belt_exit.png":
{
"frame": {"x":364,"y":70,"w":19,"h":16},
"frame": {"x":377,"y":62,"w":19,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":16},
@ -330,7 +330,7 @@
},
"sprites/buildings/belt_left.png":
{
"frame": {"x":167,"y":112,"w":13,"h":13},
"frame": {"x":262,"y":112,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -338,7 +338,7 @@
},
"sprites/buildings/belt_right.png":
{
"frame": {"x":235,"y":112,"w":13,"h":13},
"frame": {"x":330,"y":112,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -346,7 +346,7 @@
},
"sprites/buildings/belt_top.png":
{
"frame": {"x":160,"y":26,"w":13,"h":13},
"frame": {"x":204,"y":26,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -354,7 +354,7 @@
},
"sprites/buildings/cutter-quad.png":
{
"frame": {"x":87,"y":105,"w":76,"h":19},
"frame": {"x":82,"y":26,"w":76,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":76,"h":19},
@ -362,7 +362,7 @@
},
"sprites/buildings/cutter.png":
{
"frame": {"x":282,"y":3,"w":36,"h":19},
"frame": {"x":245,"y":66,"w":36,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":36,"h":19},
@ -378,7 +378,7 @@
},
"sprites/buildings/miner-chainable.png":
{
"frame": {"x":295,"y":89,"w":19,"h":19},
"frame": {"x":314,"y":89,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -386,7 +386,7 @@
},
"sprites/buildings/miner.png":
{
"frame": {"x":312,"y":66,"w":19,"h":19},
"frame": {"x":310,"y":43,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -394,7 +394,7 @@
},
"sprites/buildings/mixer.png":
{
"frame": {"x":167,"y":89,"w":37,"h":19},
"frame": {"x":204,"y":68,"w":37,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":37,"h":19},
@ -402,7 +402,7 @@
},
"sprites/buildings/painter-double.png":
{
"frame": {"x":45,"y":83,"w":38,"h":38},
"frame": {"x":162,"y":3,"w":38,"h":38},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":38,"h":38},
@ -410,7 +410,7 @@
},
"sprites/buildings/painter-quad.png":
{
"frame": {"x":160,"y":3,"w":77,"h":19},
"frame": {"x":3,"y":106,"w":77,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":77,"h":19},
@ -418,7 +418,7 @@
},
"sprites/buildings/painter.png":
{
"frame": {"x":167,"y":66,"w":38,"h":19},
"frame": {"x":124,"y":49,"w":38,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":38,"h":19},
@ -426,7 +426,7 @@
},
"sprites/buildings/rotater-ccw.png":
{
"frame": {"x":332,"y":43,"w":19,"h":19},
"frame": {"x":331,"y":66,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -434,7 +434,7 @@
},
"sprites/buildings/rotater.png":
{
"frame": {"x":318,"y":89,"w":19,"h":19},
"frame": {"x":337,"y":89,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -442,7 +442,7 @@
},
"sprites/buildings/splitter-compact-inverse.png":
{
"frame": {"x":335,"y":66,"w":19,"h":19},
"frame": {"x":308,"y":3,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -450,7 +450,7 @@
},
"sprites/buildings/splitter-compact.png":
{
"frame": {"x":355,"y":43,"w":19,"h":19},
"frame": {"x":333,"y":43,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -458,7 +458,7 @@
},
"sprites/buildings/splitter.png":
{
"frame": {"x":249,"y":66,"w":36,"h":19},
"frame": {"x":247,"y":43,"w":36,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":36,"h":19},
@ -466,7 +466,7 @@
},
"sprites/buildings/stacker.png":
{
"frame": {"x":208,"y":89,"w":37,"h":19},
"frame": {"x":204,"y":91,"w":37,"h":19},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":37,"h":19},
@ -474,7 +474,7 @@
},
"sprites/buildings/trash-storage.png":
{
"frame": {"x":121,"y":3,"w":35,"h":38},
"frame": {"x":165,"y":72,"w":35,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":35,"h":38},
@ -482,7 +482,7 @@
},
"sprites/buildings/trash.png":
{
"frame": {"x":378,"y":3,"w":19,"h":19},
"frame": {"x":354,"y":66,"w":19,"h":19},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":19},
@ -490,7 +490,7 @@
},
"sprites/buildings/underground_belt_entry-tier2.png":
{
"frame": {"x":378,"y":48,"w":19,"h":18},
"frame": {"x":331,"y":3,"w":19,"h":18},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":1,"w":19,"h":18},
@ -498,7 +498,7 @@
},
"sprites/buildings/underground_belt_entry.png":
{
"frame": {"x":387,"y":70,"w":19,"h":16},
"frame": {"x":383,"y":82,"w":19,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":3,"w":19,"h":16},
@ -506,7 +506,7 @@
},
"sprites/buildings/underground_belt_exit-tier2.png":
{
"frame": {"x":364,"y":90,"w":19,"h":16},
"frame": {"x":377,"y":3,"w":19,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":16},
@ -514,7 +514,7 @@
},
"sprites/buildings/underground_belt_exit.png":
{
"frame": {"x":387,"y":90,"w":19,"h":16},
"frame": {"x":379,"y":40,"w":19,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":19,"h":16},
@ -522,7 +522,7 @@
},
"sprites/debug/acceptor_slot.png":
{
"frame": {"x":132,"y":68,"w":6,"h":6},
"frame": {"x":82,"y":72,"w":6,"h":6},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":6,"h":6},
@ -530,7 +530,7 @@
},
"sprites/debug/ejector_slot.png":
{
"frame": {"x":142,"y":68,"w":6,"h":6},
"frame": {"x":92,"y":72,"w":6,"h":6},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":6,"h":6},
@ -538,7 +538,7 @@
},
"sprites/map_overview/belt_forward.png":
{
"frame": {"x":152,"y":68,"w":3,"h":3},
"frame": {"x":102,"y":72,"w":3,"h":3},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":3,"h":3},
@ -546,7 +546,7 @@
},
"sprites/map_overview/belt_left.png":
{
"frame": {"x":152,"y":75,"w":3,"h":3},
"frame": {"x":109,"y":72,"w":3,"h":3},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":3,"h":3},
@ -554,7 +554,7 @@
},
"sprites/map_overview/belt_right.png":
{
"frame": {"x":159,"y":68,"w":3,"h":3},
"frame": {"x":116,"y":72,"w":3,"h":3},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":3,"h":3},
@ -562,7 +562,7 @@
},
"sprites/misc/deletion_marker.png":
{
"frame": {"x":82,"y":68,"w":10,"h":10},
"frame": {"x":187,"y":114,"w":10,"h":10},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":10,"h":10},
@ -570,7 +570,7 @@
},
"sprites/misc/slot_bad_arrow.png":
{
"frame": {"x":82,"y":68,"w":10,"h":10},
"frame": {"x":187,"y":114,"w":10,"h":10},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":10,"h":10},
@ -578,7 +578,7 @@
},
"sprites/misc/slot_good_arrow.png":
{
"frame": {"x":96,"y":68,"w":10,"h":10},
"frame": {"x":201,"y":114,"w":10,"h":10},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":10,"h":10},
@ -586,19 +586,27 @@
},
"sprites/misc/storage_overlay.png":
{
"frame": {"x":110,"y":68,"w":18,"h":9},
"frame": {"x":165,"y":114,"w":18,"h":9},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":18,"h":9},
"sourceSize": {"w":18,"h":9}
},
"sprites/misc/waypoint.png":
{
"frame": {"x":123,"y":72,"w":3,"h":3},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":3,"h":3},
"sourceSize": {"w":3,"h":3}
}},
"meta": {
"app": "https://www.codeandweb.com/texturepacker",
"version": "1.0",
"image": "atlas0_10.png",
"format": "RGBA8888",
"size": {"w":409,"h":128},
"size": {"w":407,"h":128},
"scale": "0.1",
"smartupdate": "$TexturePacker:SmartUpdate:c2a63b817240ea11b013f390be5c690a:0c1b9b304a864f030526d8b9e8ae3352:f159918d23e5952766c6d23ab52278c6$"
"smartupdate": "$TexturePacker:SmartUpdate:feeaacb789d7182e6aef553861c19982:774c2c10210542582abaa8efc495510d:f159918d23e5952766c6d23ab52278c6$"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 51 KiB

View File

@ -538,7 +538,7 @@
},
"sprites/map_overview/belt_forward.png":
{
"frame": {"x":354,"y":1702,"w":24,"h":32},
"frame": {"x":353,"y":1702,"w":24,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":24,"h":32},
@ -546,7 +546,7 @@
},
"sprites/map_overview/belt_left.png":
{
"frame": {"x":1844,"y":524,"w":28,"h":28},
"frame": {"x":1433,"y":915,"w":28,"h":28},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":4,"w":28,"h":28},
@ -554,7 +554,7 @@
},
"sprites/map_overview/belt_right.png":
{
"frame": {"x":1433,"y":915,"w":28,"h":28},
"frame": {"x":1433,"y":947,"w":28,"h":28},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":28,"h":28},
@ -562,7 +562,7 @@
},
"sprites/misc/deletion_marker.png":
{
"frame": {"x":268,"y":1702,"w":82,"h":82},
"frame": {"x":267,"y":1702,"w":82,"h":82},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":7,"y":7,"w":82,"h":82},
@ -570,7 +570,7 @@
},
"sprites/misc/slot_bad_arrow.png":
{
"frame": {"x":268,"y":1702,"w":82,"h":82},
"frame": {"x":267,"y":1702,"w":82,"h":82},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":7,"y":7,"w":82,"h":82},
@ -578,7 +578,7 @@
},
"sprites/misc/slot_good_arrow.png":
{
"frame": {"x":184,"y":1702,"w":80,"h":96},
"frame": {"x":183,"y":1702,"w":80,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":8,"y":0,"w":80,"h":96},
@ -586,11 +586,19 @@
},
"sprites/misc/storage_overlay.png":
{
"frame": {"x":3,"y":1702,"w":177,"h":86},
"frame": {"x":3,"y":1702,"w":176,"h":86},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":177,"h":86},
"sourceSize": {"w":177,"h":86}
"trimmed": true,
"spriteSourceSize": {"x":3,"y":4,"w":176,"h":86},
"sourceSize": {"w":180,"h":90}
},
"sprites/misc/waypoint.png":
{
"frame": {"x":1844,"y":524,"w":24,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":24,"h":32},
"sourceSize": {"w":32,"h":32}
}},
"meta": {
"app": "https://www.codeandweb.com/texturepacker",
@ -599,6 +607,6 @@
"format": "RGBA8888",
"size": {"w":1997,"h":1801},
"scale": "1",
"smartupdate": "$TexturePacker:SmartUpdate:c2a63b817240ea11b013f390be5c690a:0c1b9b304a864f030526d8b9e8ae3352:f159918d23e5952766c6d23ab52278c6$"
"smartupdate": "$TexturePacker:SmartUpdate:feeaacb789d7182e6aef553861c19982:774c2c10210542582abaa8efc495510d:f159918d23e5952766c6d23ab52278c6$"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 752 KiB

After

Width:  |  Height:  |  Size: 752 KiB

View File

@ -2,7 +2,7 @@
"sprites/belt/forward_0.png":
{
"frame": {"x":493,"y":55,"w":28,"h":32},
"frame": {"x":479,"y":103,"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":525,"y":55,"w":28,"h":32},
"frame": {"x":479,"y":139,"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":557,"y":55,"w":28,"h":32},
"frame": {"x":479,"y":175,"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":589,"y":55,"w":28,"h":32},
"frame": {"x":262,"y":331,"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":621,"y":55,"w":28,"h":32},
"frame": {"x":285,"y":383,"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":653,"y":55,"w":28,"h":32},
"frame": {"x":317,"y":383,"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":717,"y":55,"w":30,"h":30},
"frame": {"x":343,"y":159,"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":751,"y":55,"w":30,"h":30},
"frame": {"x":343,"y":193,"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":785,"y":55,"w":30,"h":30},
"frame": {"x":477,"y":211,"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":819,"y":55,"w":30,"h":30},
"frame": {"x":477,"y":245,"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":853,"y":55,"w":30,"h":30},
"frame": {"x":469,"y":279,"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":887,"y":55,"w":30,"h":30},
"frame": {"x":3,"y":331,"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":921,"y":55,"w":30,"h":30},
"frame": {"x":37,"y":331,"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":955,"y":55,"w":30,"h":30},
"frame": {"x":71,"y":331,"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":989,"y":54,"w":30,"h":30},
"frame": {"x":3,"y":296,"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":989,"y":88,"w":30,"h":30},
"frame": {"x":37,"y":296,"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":986,"y":122,"w":30,"h":30},
"frame": {"x":71,"y":296,"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":976,"y":182,"w":30,"h":30},
"frame": {"x":105,"y":331,"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":929,"y":216,"w":30,"h":30},
"frame": {"x":139,"y":331,"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":963,"y":216,"w":30,"h":30},
"frame": {"x":173,"y":331,"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":685,"y":55,"w":28,"h":32},
"frame": {"x":467,"y":416,"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":373,"y":155,"w":184,"h":48},
"frame": {"x":191,"y":55,"w":184,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":184,"h":48},
@ -178,7 +178,7 @@
},
"sprites/blueprints/cutter.png":
{
"frame": {"x":661,"y":143,"w":87,"h":48},
"frame": {"x":95,"y":244,"w":87,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":87,"h":48},
@ -186,7 +186,7 @@
},
"sprites/blueprints/miner-chainable.png":
{
"frame": {"x":856,"y":141,"w":47,"h":48},
"frame": {"x":262,"y":419,"w":47,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
@ -194,7 +194,7 @@
},
"sprites/blueprints/miner.png":
{
"frame": {"x":858,"y":89,"w":47,"h":48},
"frame": {"x":313,"y":419,"w":47,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
@ -202,7 +202,7 @@
},
"sprites/blueprints/mixer.png":
{
"frame": {"x":491,"y":3,"w":89,"h":48},
"frame": {"x":191,"y":211,"w":89,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":89,"h":48},
@ -210,7 +210,7 @@
},
"sprites/blueprints/painter-double.png":
{
"frame": {"x":191,"y":3,"w":96,"h":96},
"frame": {"x":387,"y":3,"w":96,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
@ -218,7 +218,7 @@
},
"sprites/blueprints/painter-quad.png":
{
"frame": {"x":3,"y":192,"w":188,"h":48},
"frame": {"x":3,"y":3,"w":188,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":188,"h":48},
@ -226,7 +226,7 @@
},
"sprites/blueprints/painter.png":
{
"frame": {"x":561,"y":155,"w":96,"h":48},
"frame": {"x":191,"y":159,"w":96,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":48},
@ -234,7 +234,7 @@
},
"sprites/blueprints/rotater-ccw.png":
{
"frame": {"x":752,"y":143,"w":48,"h":48},
"frame": {"x":291,"y":159,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -242,7 +242,7 @@
},
"sprites/blueprints/rotater.png":
{
"frame": {"x":754,"y":89,"w":48,"h":48},
"frame": {"x":459,"y":313,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -250,7 +250,7 @@
},
"sprites/blueprints/splitter-compact-inverse.png":
{
"frame": {"x":774,"y":195,"w":48,"h":48},
"frame": {"x":210,"y":315,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -258,7 +258,7 @@
},
"sprites/blueprints/splitter-compact.png":
{
"frame": {"x":907,"y":141,"w":47,"h":47},
"frame": {"x":415,"y":416,"w":47,"h":47},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":47},
@ -266,7 +266,7 @@
},
"sprites/blueprints/splitter.png":
{
"frame": {"x":663,"y":91,"w":87,"h":48},
"frame": {"x":186,"y":263,"w":87,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":87,"h":48},
@ -274,7 +274,7 @@
},
"sprites/blueprints/stacker.png":
{
"frame": {"x":584,"y":3,"w":89,"h":48},
"frame": {"x":284,"y":227,"w":89,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":89,"h":48},
@ -282,7 +282,7 @@
},
"sprites/blueprints/trash-storage.png":
{
"frame": {"x":195,"y":155,"w":85,"h":96},
"frame": {"x":3,"y":365,"w":85,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":0,"w":85,"h":96},
@ -290,7 +290,7 @@
},
"sprites/blueprints/trash.png":
{
"frame": {"x":804,"y":141,"w":48,"h":48},
"frame": {"x":181,"y":391,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -298,7 +298,7 @@
},
"sprites/blueprints/underground_belt_entry-tier2.png":
{
"frame": {"x":373,"y":207,"w":48,"h":43},
"frame": {"x":3,"y":465,"w":48,"h":43},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":5,"w":48,"h":43},
@ -306,7 +306,7 @@
},
"sprites/blueprints/underground_belt_entry.png":
{
"frame": {"x":476,"y":207,"w":48,"h":38},
"frame": {"x":106,"y":465,"w":48,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":10,"w":48,"h":38},
@ -314,7 +314,7 @@
},
"sprites/blueprints/underground_belt_exit-tier2.png":
{
"frame": {"x":528,"y":207,"w":48,"h":38},
"frame": {"x":158,"y":465,"w":48,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":38},
@ -322,7 +322,7 @@
},
"sprites/blueprints/underground_belt_exit.png":
{
"frame": {"x":580,"y":207,"w":48,"h":38},
"frame": {"x":262,"y":471,"w":48,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":38},
@ -330,7 +330,7 @@
},
"sprites/buildings/belt_left.png":
{
"frame": {"x":717,"y":55,"w":30,"h":30},
"frame": {"x":343,"y":159,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":2,"w":30,"h":30},
@ -338,7 +338,7 @@
},
"sprites/buildings/belt_right.png":
{
"frame": {"x":921,"y":55,"w":30,"h":30},
"frame": {"x":37,"y":331,"w":30,"h":30},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":2,"w":30,"h":30},
@ -346,7 +346,7 @@
},
"sprites/buildings/belt_top.png":
{
"frame": {"x":493,"y":55,"w":28,"h":32},
"frame": {"x":479,"y":103,"w":28,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":28,"h":32},
@ -354,7 +354,7 @@
},
"sprites/buildings/cutter-quad.png":
{
"frame": {"x":383,"y":103,"w":184,"h":48},
"frame": {"x":191,"y":107,"w":184,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":184,"h":48},
@ -362,7 +362,7 @@
},
"sprites/buildings/cutter.png":
{
"frame": {"x":769,"y":3,"w":87,"h":48},
"frame": {"x":277,"y":279,"w":87,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":87,"h":48},
@ -370,7 +370,7 @@
},
"sprites/buildings/hub.png":
{
"frame": {"x":3,"y":3,"w":184,"h":185},
"frame": {"x":3,"y":55,"w":184,"h":185},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":184,"h":185},
@ -378,7 +378,7 @@
},
"sprites/buildings/miner-chainable.png":
{
"frame": {"x":912,"y":3,"w":47,"h":48},
"frame": {"x":349,"y":365,"w":47,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
@ -386,7 +386,7 @@
},
"sprites/buildings/miner.png":
{
"frame": {"x":878,"y":193,"w":47,"h":48},
"frame": {"x":364,"y":417,"w":47,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
@ -394,7 +394,7 @@
},
"sprites/buildings/mixer.png":
{
"frame": {"x":571,"y":91,"w":88,"h":48},
"frame": {"x":377,"y":255,"w":88,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":88,"h":48},
@ -402,7 +402,7 @@
},
"sprites/buildings/painter-double.png":
{
"frame": {"x":291,"y":3,"w":96,"h":96},
"frame": {"x":379,"y":103,"w":96,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
@ -410,7 +410,7 @@
},
"sprites/buildings/painter-quad.png":
{
"frame": {"x":191,"y":103,"w":188,"h":48},
"frame": {"x":195,"y":3,"w":188,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":188,"h":48},
@ -418,7 +418,7 @@
},
"sprites/buildings/painter.png":
{
"frame": {"x":391,"y":3,"w":96,"h":48},
"frame": {"x":377,"y":203,"w":96,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":48},
@ -426,7 +426,7 @@
},
"sprites/buildings/rotater-ccw.png":
{
"frame": {"x":806,"y":89,"w":48,"h":48},
"frame": {"x":210,"y":443,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -434,7 +434,7 @@
},
"sprites/buildings/rotater.png":
{
"frame": {"x":860,"y":3,"w":48,"h":48},
"frame": {"x":233,"y":367,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -442,7 +442,7 @@
},
"sprites/buildings/splitter-compact-inverse.png":
{
"frame": {"x":963,"y":3,"w":48,"h":47},
"frame": {"x":400,"y":365,"w":48,"h":47},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":47},
@ -450,7 +450,7 @@
},
"sprites/buildings/splitter-compact.png":
{
"frame": {"x":909,"y":89,"w":47,"h":47},
"frame": {"x":452,"y":365,"w":47,"h":47},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":47},
@ -458,7 +458,7 @@
},
"sprites/buildings/splitter.png":
{
"frame": {"x":683,"y":195,"w":87,"h":48},
"frame": {"x":368,"y":307,"w":87,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":87,"h":48},
@ -466,7 +466,7 @@
},
"sprites/buildings/stacker.png":
{
"frame": {"x":677,"y":3,"w":88,"h":48},
"frame": {"x":3,"y":244,"w":88,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":88,"h":48},
@ -474,7 +474,7 @@
},
"sprites/buildings/trash-storage.png":
{
"frame": {"x":284,"y":155,"w":85,"h":96},
"frame": {"x":92,"y":365,"w":85,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":0,"w":85,"h":96},
@ -482,7 +482,7 @@
},
"sprites/buildings/trash.png":
{
"frame": {"x":826,"y":193,"w":48,"h":48},
"frame": {"x":294,"y":331,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -490,7 +490,7 @@
},
"sprites/buildings/underground_belt_entry-tier2.png":
{
"frame": {"x":425,"y":207,"w":47,"h":42},
"frame": {"x":55,"y":465,"w":47,"h":42},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":6,"w":47,"h":42},
@ -498,7 +498,7 @@
},
"sprites/buildings/underground_belt_entry.png":
{
"frame": {"x":632,"y":207,"w":47,"h":38},
"frame": {"x":314,"y":471,"w":47,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":10,"w":47,"h":38},
@ -506,7 +506,7 @@
},
"sprites/buildings/underground_belt_exit-tier2.png":
{
"frame": {"x":391,"y":55,"w":47,"h":38},
"frame": {"x":365,"y":469,"w":47,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":38},
@ -514,7 +514,7 @@
},
"sprites/buildings/underground_belt_exit.png":
{
"frame": {"x":442,"y":55,"w":47,"h":38},
"frame": {"x":416,"y":467,"w":47,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":38},
@ -522,7 +522,7 @@
},
"sprites/debug/acceptor_slot.png":
{
"frame": {"x":958,"y":143,"w":14,"h":16},
"frame": {"x":487,"y":3,"w":14,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":14,"h":16},
@ -530,7 +530,7 @@
},
"sprites/debug/ejector_slot.png":
{
"frame": {"x":958,"y":163,"w":14,"h":16},
"frame": {"x":487,"y":23,"w":14,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":14,"h":16},
@ -538,7 +538,7 @@
},
"sprites/map_overview/belt_forward.png":
{
"frame": {"x":493,"y":91,"w":8,"h":8},
"frame": {"x":487,"y":43,"w":8,"h":8},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":8,"h":8},
@ -546,7 +546,7 @@
},
"sprites/map_overview/belt_left.png":
{
"frame": {"x":505,"y":91,"w":8,"h":8},
"frame": {"x":499,"y":43,"w":8,"h":8},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":8,"h":8},
@ -554,7 +554,7 @@
},
"sprites/map_overview/belt_right.png":
{
"frame": {"x":517,"y":91,"w":8,"h":8},
"frame": {"x":487,"y":55,"w":8,"h":8},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":8,"h":8},
@ -562,7 +562,7 @@
},
"sprites/misc/deletion_marker.png":
{
"frame": {"x":960,"y":117,"w":22,"h":22},
"frame": {"x":181,"y":365,"w":22,"h":22},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":1,"w":22,"h":22},
@ -570,7 +570,7 @@
},
"sprites/misc/slot_bad_arrow.png":
{
"frame": {"x":960,"y":117,"w":22,"h":22},
"frame": {"x":181,"y":365,"w":22,"h":22},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":1,"w":22,"h":22},
@ -578,7 +578,7 @@
},
"sprites/misc/slot_good_arrow.png":
{
"frame": {"x":960,"y":89,"w":22,"h":24},
"frame": {"x":105,"y":296,"w":22,"h":24},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":22,"h":24},
@ -586,19 +586,27 @@
},
"sprites/misc/storage_overlay.png":
{
"frame": {"x":976,"y":156,"w":44,"h":22},
"frame": {"x":131,"y":296,"w":45,"h":23},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":44,"h":22},
"sourceSize": {"w":44,"h":22}
"spriteSourceSize": {"x":0,"y":0,"w":45,"h":23},
"sourceSize": {"w":45,"h":23}
},
"sprites/misc/waypoint.png":
{
"frame": {"x":499,"y":55,"w":8,"h":8},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":8,"h":8},
"sourceSize": {"w":8,"h":8}
}},
"meta": {
"app": "https://www.codeandweb.com/texturepacker",
"version": "1.0",
"image": "atlas0_25.png",
"format": "RGBA8888",
"size": {"w":1023,"h":254},
"size": {"w":510,"h":512},
"scale": "0.25",
"smartupdate": "$TexturePacker:SmartUpdate:c2a63b817240ea11b013f390be5c690a:0c1b9b304a864f030526d8b9e8ae3352:f159918d23e5952766c6d23ab52278c6$"
"smartupdate": "$TexturePacker:SmartUpdate:feeaacb789d7182e6aef553861c19982:774c2c10210542582abaa8efc495510d:f159918d23e5952766c6d23ab52278c6$"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 157 KiB

After

Width:  |  Height:  |  Size: 163 KiB

View File

@ -2,7 +2,7 @@
"sprites/belt/forward_0.png":
{
"frame": {"x":1854,"y":231,"w":51,"h":63},
"frame": {"x":49,"y":1765,"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":1909,"y":231,"w":51,"h":63},
"frame": {"x":3,"y":1902,"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":1842,"y":300,"w":51,"h":63},
"frame": {"x":58,"y":1902,"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":1897,"y":298,"w":51,"h":63},
"frame": {"x":113,"y":1887,"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":1902,"y":365,"w":51,"h":63},
"frame": {"x":168,"y":1830,"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":1648,"y":391,"w":51,"h":63},
"frame": {"x":168,"y":1897,"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":953,"y":399,"w":57,"h":57},
"frame": {"x":104,"y":1765,"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":1014,"y":399,"w":57,"h":57},
"frame": {"x":165,"y":1769,"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":1874,"y":170,"w":57,"h":57},
"frame": {"x":104,"y":1826,"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":1780,"y":362,"w":57,"h":57},
"frame": {"x":226,"y":1782,"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":1265,"y":403,"w":57,"h":57},
"frame": {"x":287,"y":1782,"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":1326,"y":403,"w":57,"h":57},
"frame": {"x":348,"y":1835,"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":1841,"y":367,"w":57,"h":57},
"frame": {"x":409,"y":1835,"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":1587,"y":391,"w":57,"h":57},
"frame": {"x":223,"y":1896,"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":1703,"y":387,"w":57,"h":57},
"frame": {"x":284,"y":1843,"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":1387,"y":403,"w":57,"h":57},
"frame": {"x":284,"y":1904,"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":1448,"y":402,"w":57,"h":57},
"frame": {"x":345,"y":1896,"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":1509,"y":402,"w":57,"h":57},
"frame": {"x":406,"y":1896,"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":1203,"y":398,"w":58,"h":58},
"frame": {"x":178,"y":1707,"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":1780,"y":300,"w":58,"h":58},
"frame": {"x":370,"y":1773,"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":1874,"y":103,"w":53,"h":63},
"frame": {"x":3,"y":1835,"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":3,"y":574,"w":366,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":11,"y":0,"w":366,"h":96},
@ -178,7 +178,7 @@
},
"sprites/blueprints/cutter.png":
{
"frame": {"x":1496,"y":3,"w":172,"h":96},
"frame": {"x":3,"y":1465,"w":172,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":11,"y":0,"w":172,"h":96},
@ -186,7 +186,7 @@
},
"sprites/blueprints/miner-chainable.png":
{
"frame": {"x":1778,"y":103,"w":92,"h":96},
"frame": {"x":179,"y":1507,"w":92,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":92,"h":96},
@ -194,7 +194,7 @@
},
"sprites/blueprints/miner.png":
{
"frame": {"x":1301,"y":303,"w":92,"h":96},
"frame": {"x":178,"y":1607,"w":92,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":92,"h":96},
@ -202,7 +202,7 @@
},
"sprites/blueprints/mixer.png":
{
"frame": {"x":947,"y":103,"w":175,"h":96},
"frame": {"x":296,"y":1217,"w":175,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":8,"y":0,"w":175,"h":96},
@ -210,7 +210,7 @@
},
"sprites/blueprints/painter-double.png":
{
"frame": {"x":373,"y":203,"w":192,"h":192},
"frame": {"x":3,"y":774,"w":192,"h":192},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":192,"h":192},
@ -218,7 +218,7 @@
},
"sprites/blueprints/painter-quad.png":
{
"frame": {"x":373,"y":3,"w":374,"h":96},
"frame": {"x":3,"y":3,"w":374,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":374,"h":96},
@ -226,7 +226,7 @@
},
"sprites/blueprints/painter.png":
{
"frame": {"x":751,"y":103,"w":192,"h":96},
"frame": {"x":3,"y":1165,"w":192,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":192,"h":96},
@ -234,7 +234,7 @@
},
"sprites/blueprints/rotater-ccw.png":
{
"frame": {"x":1479,"y":103,"w":96,"h":96},
"frame": {"x":373,"y":249,"w":96,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
@ -242,7 +242,7 @@
},
"sprites/blueprints/rotater.png":
{
"frame": {"x":1459,"y":203,"w":96,"h":96},
"frame": {"x":373,"y":349,"w":96,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
@ -250,7 +250,7 @@
},
"sprites/blueprints/splitter-compact-inverse.png":
{
"frame": {"x":1658,"y":203,"w":95,"h":93},
"frame": {"x":370,"y":849,"w":95,"h":93},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":1,"w":95,"h":93},
@ -258,7 +258,7 @@
},
"sprites/blueprints/splitter-compact.png":
{
"frame": {"x":1757,"y":203,"w":93,"h":93},
"frame": {"x":369,"y":1120,"w":93,"h":93},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":1,"w":93,"h":93},
@ -266,7 +266,7 @@
},
"sprites/blueprints/splitter.png":
{
"frame": {"x":1304,"y":103,"w":171,"h":96},
"frame": {"x":3,"y":1565,"w":171,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":11,"y":0,"w":171,"h":96},
@ -274,7 +274,7 @@
},
"sprites/blueprints/stacker.png":
{
"frame": {"x":1317,"y":3,"w":175,"h":96},
"frame": {"x":296,"y":1317,"w":175,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":8,"y":0,"w":175,"h":96},
@ -282,7 +282,7 @@
},
"sprites/blueprints/trash-storage.png":
{
"frame": {"x":765,"y":203,"w":167,"h":192},
"frame": {"x":199,"y":774,"w":167,"h":192},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":167,"h":192},
@ -290,7 +290,7 @@
},
"sprites/blueprints/trash.png":
{
"frame": {"x":1847,"y":3,"w":96,"h":96},
"frame": {"x":373,"y":449,"w":96,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
@ -298,7 +298,7 @@
},
"sprites/blueprints/underground_belt_entry-tier2.png":
{
"frame": {"x":1587,"y":303,"w":93,"h":84},
"frame": {"x":199,"y":1261,"w":93,"h":84},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":12,"w":93,"h":84},
@ -306,7 +306,7 @@
},
"sprites/blueprints/underground_belt_entry.png":
{
"frame": {"x":667,"y":398,"w":93,"h":75},
"frame": {"x":199,"y":1349,"w":93,"h":75},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":21,"w":93,"h":75},
@ -314,7 +314,7 @@
},
"sprites/blueprints/underground_belt_exit-tier2.png":
{
"frame": {"x":569,"y":398,"w":94,"h":75},
"frame": {"x":369,"y":1041,"w":94,"h":75},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":94,"h":75},
@ -322,7 +322,7 @@
},
"sprites/blueprints/underground_belt_exit.png":
{
"frame": {"x":1106,"y":398,"w":93,"h":75},
"frame": {"x":181,"y":1428,"w":93,"h":75},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":93,"h":75},
@ -330,7 +330,7 @@
},
"sprites/buildings/belt_left.png":
{
"frame": {"x":953,"y":399,"w":57,"h":57},
"frame": {"x":104,"y":1765,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":6,"w":57,"h":57},
@ -338,7 +338,7 @@
},
"sprites/buildings/belt_right.png":
{
"frame": {"x":1841,"y":367,"w":57,"h":57},
"frame": {"x":409,"y":1835,"w":57,"h":57},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":6,"w":57,"h":57},
@ -346,7 +346,7 @@
},
"sprites/buildings/belt_top.png":
{
"frame": {"x":1854,"y":231,"w":51,"h":63},
"frame": {"x":49,"y":1765,"w":51,"h":63},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":6,"y":0,"w":51,"h":63},
@ -354,7 +354,7 @@
},
"sprites/buildings/cutter-quad.png":
{
"frame": {"x":751,"y":3,"w":366,"h":96},
"frame": {"x":3,"y":674,"w":366,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":11,"y":0,"w":366,"h":96},
@ -362,7 +362,7 @@
},
"sprites/buildings/cutter.png":
{
"frame": {"x":1284,"y":203,"w":171,"h":96},
"frame": {"x":275,"y":1517,"w":171,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":11,"y":0,"w":171,"h":96},
@ -370,7 +370,7 @@
},
"sprites/buildings/hub.png":
{
"frame": {"x":3,"y":3,"w":366,"h":367},
"frame": {"x":3,"y":203,"w":366,"h":367},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":10,"w":366,"h":367},
@ -378,7 +378,7 @@
},
"sprites/buildings/miner-chainable.png":
{
"frame": {"x":1397,"y":303,"w":91,"h":95},
"frame": {"x":381,"y":3,"w":91,"h":95},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":91,"h":95},
@ -386,7 +386,7 @@
},
"sprites/buildings/miner.png":
{
"frame": {"x":1492,"y":303,"w":91,"h":95},
"frame": {"x":381,"y":102,"w":91,"h":95},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":91,"h":95},
@ -394,7 +394,7 @@
},
"sprites/buildings/mixer.png":
{
"frame": {"x":1126,"y":103,"w":174,"h":96},
"frame": {"x":296,"y":1417,"w":174,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":0,"w":174,"h":96},
@ -402,7 +402,7 @@
},
"sprites/buildings/painter-double.png":
{
"frame": {"x":569,"y":203,"w":192,"h":191},
"frame": {"x":3,"y":970,"w":192,"h":191},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":192,"h":191},
@ -410,7 +410,7 @@
},
"sprites/buildings/painter-quad.png":
{
"frame": {"x":373,"y":103,"w":374,"h":96},
"frame": {"x":3,"y":103,"w":374,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":374,"h":96},
@ -418,7 +418,7 @@
},
"sprites/buildings/painter.png":
{
"frame": {"x":1121,"y":3,"w":192,"h":96},
"frame": {"x":3,"y":1265,"w":192,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":192,"h":96},
@ -426,7 +426,7 @@
},
"sprites/buildings/rotater-ccw.png":
{
"frame": {"x":1559,"y":203,"w":95,"h":96},
"frame": {"x":373,"y":649,"w":95,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":95,"h":96},
@ -434,7 +434,7 @@
},
"sprites/buildings/rotater.png":
{
"frame": {"x":1679,"y":103,"w":95,"h":96},
"frame": {"x":373,"y":749,"w":95,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":95,"h":96},
@ -442,7 +442,7 @@
},
"sprites/buildings/splitter-compact-inverse.png":
{
"frame": {"x":1106,"y":303,"w":94,"h":91},
"frame": {"x":370,"y":946,"w":94,"h":91},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":2,"w":94,"h":91},
@ -450,7 +450,7 @@
},
"sprites/buildings/splitter-compact.png":
{
"frame": {"x":1204,"y":303,"w":93,"h":91},
"frame": {"x":199,"y":1166,"w":93,"h":91},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":2,"w":93,"h":91},
@ -458,7 +458,7 @@
},
"sprites/buildings/splitter.png":
{
"frame": {"x":1672,"y":3,"w":171,"h":96},
"frame": {"x":3,"y":1665,"w":171,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":11,"y":0,"w":171,"h":96},
@ -466,7 +466,7 @@
},
"sprites/buildings/stacker.png":
{
"frame": {"x":1106,"y":203,"w":174,"h":96},
"frame": {"x":3,"y":1365,"w":174,"h":96},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":0,"w":174,"h":96},
@ -474,7 +474,7 @@
},
"sprites/buildings/trash-storage.png":
{
"frame": {"x":936,"y":203,"w":166,"h":192},
"frame": {"x":199,"y":970,"w":166,"h":192},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":166,"h":192},
@ -482,7 +482,7 @@
},
"sprites/buildings/trash.png":
{
"frame": {"x":1579,"y":103,"w":96,"h":96},
"frame": {"x":373,"y":549,"w":96,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
@ -490,7 +490,7 @@
},
"sprites/buildings/underground_belt_entry-tier2.png":
{
"frame": {"x":1684,"y":300,"w":92,"h":83},
"frame": {"x":274,"y":1617,"w":92,"h":83},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":13,"w":92,"h":83},
@ -498,7 +498,7 @@
},
"sprites/buildings/underground_belt_entry.png":
{
"frame": {"x":373,"y":399,"w":92,"h":74},
"frame": {"x":370,"y":1617,"w":92,"h":74},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":22,"w":92,"h":74},
@ -506,7 +506,7 @@
},
"sprites/buildings/underground_belt_exit-tier2.png":
{
"frame": {"x":469,"y":399,"w":92,"h":74},
"frame": {"x":370,"y":1695,"w":92,"h":74},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":92,"h":74},
@ -514,7 +514,7 @@
},
"sprites/buildings/underground_belt_exit.png":
{
"frame": {"x":764,"y":399,"w":92,"h":74},
"frame": {"x":274,"y":1704,"w":92,"h":74},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":92,"h":74},
@ -522,7 +522,7 @@
},
"sprites/debug/acceptor_slot.png":
{
"frame": {"x":1075,"y":399,"w":26,"h":32},
"frame": {"x":240,"y":1707,"w":26,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":26,"h":32},
@ -530,7 +530,7 @@
},
"sprites/debug/ejector_slot.png":
{
"frame": {"x":1810,"y":423,"w":26,"h":32},
"frame": {"x":240,"y":1743,"w":26,"h":32},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":26,"h":32},
@ -538,7 +538,7 @@
},
"sprites/map_overview/belt_forward.png":
{
"frame": {"x":1854,"y":203,"w":14,"h":16},
"frame": {"x":181,"y":1365,"w":14,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":14,"h":16},
@ -546,7 +546,7 @@
},
"sprites/map_overview/belt_left.png":
{
"frame": {"x":860,"y":446,"w":15,"h":15},
"frame": {"x":342,"y":1166,"w":15,"h":15},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":1,"w":15,"h":15},
@ -554,7 +554,7 @@
},
"sprites/map_overview/belt_right.png":
{
"frame": {"x":1075,"y":435,"w":15,"h":15},
"frame": {"x":342,"y":1185,"w":15,"h":15},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":1,"w":15,"h":15},
@ -562,7 +562,7 @@
},
"sprites/misc/deletion_marker.png":
{
"frame": {"x":1840,"y":428,"w":42,"h":42},
"frame": {"x":296,"y":1166,"w":42,"h":42},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":3,"w":42,"h":42},
@ -570,7 +570,7 @@
},
"sprites/misc/slot_bad_arrow.png":
{
"frame": {"x":1840,"y":428,"w":42,"h":42},
"frame": {"x":296,"y":1166,"w":42,"h":42},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":3,"w":42,"h":42},
@ -578,7 +578,7 @@
},
"sprites/misc/slot_good_arrow.png":
{
"frame": {"x":1764,"y":423,"w":42,"h":48},
"frame": {"x":3,"y":1782,"w":42,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":0,"w":42,"h":48},
@ -586,19 +586,27 @@
},
"sprites/misc/storage_overlay.png":
{
"frame": {"x":860,"y":399,"w":89,"h":43},
"frame": {"x":381,"y":201,"w":89,"h":44},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":89,"h":43},
"sourceSize": {"w":89,"h":43}
"trimmed": true,
"spriteSourceSize": {"x":1,"y":1,"w":89,"h":44},
"sourceSize": {"w":90,"h":45}
},
"sprites/misc/waypoint.png":
{
"frame": {"x":181,"y":1385,"w":14,"h":16},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":14,"h":16},
"sourceSize": {"w":16,"h":16}
}},
"meta": {
"app": "https://www.codeandweb.com/texturepacker",
"version": "1.0",
"image": "atlas0_50.png",
"format": "RGBA8888",
"size": {"w":1963,"h":476},
"size": {"w":475,"h":1968},
"scale": "0.5",
"smartupdate": "$TexturePacker:SmartUpdate:c2a63b817240ea11b013f390be5c690a:0c1b9b304a864f030526d8b9e8ae3352:f159918d23e5952766c6d23ab52278c6$"
"smartupdate": "$TexturePacker:SmartUpdate:feeaacb789d7182e6aef553861c19982:774c2c10210542582abaa8efc495510d:f159918d23e5952766c6d23ab52278c6$"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 381 KiB

After

Width:  |  Height:  |  Size: 380 KiB

View File

@ -586,11 +586,19 @@
},
"sprites/misc/storage_overlay.png":
{
"frame": {"x":1403,"y":939,"w":133,"h":65},
"frame": {"x":1403,"y":939,"w":133,"h":66},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":133,"h":65},
"sourceSize": {"w":133,"h":65}
"trimmed": true,
"spriteSourceSize": {"x":2,"y":2,"w":133,"h":66},
"sourceSize": {"w":135,"h":68}
},
"sprites/misc/waypoint.png":
{
"frame": {"x":1649,"y":997,"w":20,"h":24},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":20,"h":24},
"sourceSize": {"w":24,"h":24}
}},
"meta": {
"app": "https://www.codeandweb.com/texturepacker",
@ -599,6 +607,6 @@
"format": "RGBA8888",
"size": {"w":2016,"h":1024},
"scale": "0.75",
"smartupdate": "$TexturePacker:SmartUpdate:c2a63b817240ea11b013f390be5c690a:0c1b9b304a864f030526d8b9e8ae3352:f159918d23e5952766c6d23ab52278c6$"
"smartupdate": "$TexturePacker:SmartUpdate:feeaacb789d7182e6aef553861c19982:774c2c10210542582abaa8efc495510d:f159918d23e5952766c6d23ab52278c6$"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 746 KiB

After

Width:  |  Height:  |  Size: 746 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 691 B

View File

@ -250,7 +250,7 @@ input[type="email"] {
opacity: 0.4;
}
transition: background-color 0.4s ease-in-out !important;
transition: background-color 0.1s ease-in-out !important;
@include TextShadow3D(#fff);
@include BoxShadow3D(lighten($mainBgColor, 30));

View File

@ -129,6 +129,16 @@
height: unset;
margin: 1px 0;
}
input {
background: #eee;
color: #333438;
width: 100%;
&.errored {
background-color: rgb(250, 206, 206);
}
}
}
> .buttons {

View File

@ -6,6 +6,8 @@
display: flex;
flex-direction: column;
align-items: flex-start;
color: #fff;
text-shadow: #{D(1px)} #{D(1px)} 0 rgba(0, 10, 20, 0.1);
> .binding {
display: inline-grid;
@ -20,7 +22,7 @@
@include S(height, 10px);
width: 1px;
@include S(margin, 0, 3px);
background-color: #888;
background-color: #fff;
transform: rotate(10deg);
// @include S(margin, 0, 3px);
}
@ -43,9 +45,7 @@
color: $accentColorDark;
@include SuperSmallText;
text-transform: uppercase;
// font-weight: bold;
color: #fff;
text-shadow: #{D(1px)} #{D(1px)} 0 rgba(0, 10, 20, 0.1);
@include S(margin-left, 5px);
}

View File

@ -0,0 +1,27 @@
#ingame_HUD_Waypoints {
position: absolute;
@include S(right, 10px);
@include S(bottom, 100px);
display: flex;
flex-direction: column;
@include PlainText;
@include S(width, 150px);
background: rgba(0, 10, 20, 0.5);
@include S(padding, 5px);
color: #eee;
.desc {
@include SuperSmallText;
color: #babcbf;
.keybinding {
position: relative;
}
strong {
color: #fff;
}
}
}

View File

@ -48,6 +48,7 @@
@import "ingame_hud/tutorial_hints";
@import "ingame_hud/watermark";
@import "ingame_hud/blueprint_placer";
@import "ingame_hud/waypoints";
// prettier-ignore
$elements:
@ -70,6 +71,7 @@ ingame_HUD_EntityDebugger,
ingame_HUD_TutorialHints,
ingame_HUD_buildings_toolbar,
ingame_HUD_BlueprintPlacer,
ingame_HUD_Waypoints,
ingame_HUD_Watermark,
// Overlays

View File

@ -3,7 +3,7 @@ export const CHANGELOG = [
version: "1.1.0",
date: "unreleased",
entries: [
"BLUEPRINTS! They are unlocked at level 12",
"BLUEPRINTS! They are unlocked at level 12 and cost a special shape to build.",
"Savegame levels are now shown in the main menu. For existing games, save them again to make the level show up.",
"Allow holding SHIFT to rotate counter clockwise",
"Added confirmation when deleting more than 500 buildings at a time",

View File

@ -83,7 +83,7 @@ export const globalConfig = {
debug: {
/* dev:start */
fastGameEnter: true,
// fastGameEnter: true,
// noArtificialDelays: true,
// disableSavegameWrite: true,
// showEntityBounds: true,

View File

@ -385,6 +385,8 @@ export class DialogWithForm extends Dialog {
});
this.confirmButtonId = confirmButton.split(":")[0];
this.formElements = formElements;
this.enterHandler = "ok";
}
internalButtonHandler(id, ...payload) {

View File

@ -86,7 +86,6 @@ export class AtlasSprite extends BaseSprite {
if (G_IS_DEV) {
assert(context instanceof CanvasRenderingContext2D, "Not a valid context");
}
console.warn("drawing sprite regulary");
const link = this.linksByResolution[ORIGINAL_SCALE];

View File

@ -147,6 +147,14 @@ export class Camera extends BasicSerializableObject {
this.currentlyMoving = false;
}
/**
* Sets a desired zoom level
* @param {number} zoom
*/
setDesiredZoom(zoom) {
this.desiredZoom = zoom;
}
/**
* Returns if this camera is currently moving by a non-user interaction
*/
@ -337,15 +345,15 @@ export class Camera extends BasicSerializableObject {
*/
bindKeys() {
const mapper = this.root.keyMapper;
mapper.getBinding(KEYMAPPINGS.ingame.mapMoveUp).add(() => (this.keyboardForce.y = -1));
mapper
.getBinding(KEYMAPPINGS.ingame.mapMoveUp)
.add(() => console.log("move up") || (this.keyboardForce.y = -1));
mapper.getBinding(KEYMAPPINGS.ingame.mapMoveDown).add(() => (this.keyboardForce.y = 1));
mapper.getBinding(KEYMAPPINGS.ingame.mapMoveRight).add(() => (this.keyboardForce.x = 1));
mapper.getBinding(KEYMAPPINGS.ingame.mapMoveLeft).add(() => (this.keyboardForce.x = -1));
mapper.getBinding(KEYMAPPINGS.ingame.mapZoomIn).add(() => (this.desiredZoom = this.zoomLevel * 1.2));
mapper.getBinding(KEYMAPPINGS.ingame.mapZoomOut).add(() => (this.desiredZoom = this.zoomLevel * 0.8));
mapper.getBinding(KEYMAPPINGS.ingame.centerMap).add(() => this.centerOnMap());
}
centerOnMap() {

View File

@ -7,7 +7,6 @@ import { DrawParameters } from "../../core/draw_parameters";
import { HUDProcessingOverlay } from "./parts/processing_overlay";
import { HUDBuildingsToolbar } from "./parts/buildings_toolbar";
import { HUDBuildingPlacer } from "./parts/building_placer";
import { HUDBetaOverlay } from "./parts/beta_overlay";
import { HUDBlueprintPlacer } from "./parts/blueprint_placer";
import { HUDKeybindingOverlay } from "./parts/keybinding_overlay";
import { HUDUnlockNotification } from "./parts/unlock_notification";
@ -28,6 +27,7 @@ import { KEYMAPPINGS } from "../key_action_mapper";
import { HUDWatermark } from "./parts/watermark";
import { HUDModalDialogs } from "./parts/modal_dialogs";
import { HUDPartTutorialHints } from "./parts/tutorial_hints";
import { HUDWaypoints } from "./parts/waypoints";
export class GameHUD {
/**
@ -43,31 +43,23 @@ export class GameHUD {
initialize() {
this.parts = {
processingOverlay: new HUDProcessingOverlay(this.root),
buildingsToolbar: new HUDBuildingsToolbar(this.root),
buildingPlacer: new HUDBuildingPlacer(this.root),
blueprintPlacer: new HUDBlueprintPlacer(this.root),
unlockNotification: new HUDUnlockNotification(this.root),
gameMenu: new HUDGameMenu(this.root),
massSelector: new HUDMassSelector(this.root),
shop: new HUDShop(this.root),
statistics: new HUDStatistics(this.root),
waypoints: new HUDWaypoints(this.root),
vignetteOverlay: new HUDVignetteOverlay(this.root),
// Must always exist
pinnedShapes: new HUDPinnedShapes(this.root),
notifications: new HUDNotifications(this.root),
settingsMenu: new HUDSettingsMenu(this.root),
// betaOverlay: new HUDBetaOverlay(this.root),
debugInfo: new HUDDebugInfo(this.root),
dialogs: new HUDModalDialogs(this.root),
};
@ -189,7 +181,7 @@ export class GameHUD {
* @param {DrawParameters} parameters
*/
draw(parameters) {
const partsOrder = ["massSelector", "buildingPlacer", "blueprintPlacer"];
const partsOrder = ["waypoints", "massSelector", "buildingPlacer", "blueprintPlacer"];
for (let i = 0; i < partsOrder.length; ++i) {
if (this.parts[partsOrder[i]]) {

View File

@ -81,8 +81,10 @@ export class HUDBlueprintPlacer extends BaseHUDPart {
*/
onMouseDown(pos, button) {
if (button === enumMouseButton.right) {
this.abortPlacement();
return STOP_PROPAGATION;
if (this.currentBlueprint.get()) {
this.abortPlacement();
return STOP_PROPAGATION;
}
}
const blueprint = this.currentBlueprint.get();

View File

@ -24,8 +24,8 @@ export class HUDKeybindingOverlay extends BaseHUDPart {
[],
`
<div class="binding">
<code class="keybinding">${getKeycode(KEYMAPPINGS.ingame.centerMap)}</code>
<label>${T.ingame.keybindingsOverlay.centerMap}</label>
<code class="keybinding">${getKeycode(KEYMAPPINGS.ingame.createMarker)}</code>
<label>${T.ingame.keybindingsOverlay.createMarker}</label>
</div>
<div class="binding">

View File

@ -107,6 +107,11 @@ export class HUDUnlockNotification extends BaseHUDPart {
requestClose() {
this.root.app.adProvider.showVideoAd().then(() => {
this.close();
if (!this.root.app.settings.getAllSettings().offerHints) {
return;
}
if (this.root.hubGoals.level === 3) {
const { showUpgrades } = this.root.hud.parts.dialogs.showInfo(
T.dialogs.upgradesIntroduction.title,

View File

@ -0,0 +1,208 @@
import { BaseHUDPart } from "../base_hud_part";
import { makeDiv, arrayDelete, arrayDeleteValue, lerp } from "../../../core/utils";
import { Vector } from "../../../core/vector";
import { DrawParameters } from "../../../core/draw_parameters";
import { Loader } from "../../../core/loader";
import { T } from "../../../translations";
import { Rectangle } from "../../../core/rectangle";
import { makeOffscreenBuffer } from "../../../core/buffer_utils";
import { enumMouseButton } from "../../camera";
import { STOP_PROPAGATION } from "../../../core/signal";
import { KEYMAPPINGS } from "../../key_action_mapper";
import { DynamicDomAttach } from "../dynamic_dom_attach";
import { IS_DEMO, globalConfig } from "../../../core/config";
import { DialogWithForm } from "../../../core/modal_dialog_elements";
import { FormElementInput } from "../../../core/modal_dialog_forms";
import { Math_max } from "../../../core/builtins";
import { enumNotificationType } from "./notifications";
export class HUDWaypoints extends BaseHUDPart {
createElements(parent) {
if (this.root.app.settings.getAllSettings().offerHints) {
this.element = makeDiv(
parent,
"ingame_HUD_Waypoints",
[],
`
<strong class='title'>${T.ingame.waypoints.waypoints}</strong>
<span class='desc'>${T.ingame.waypoints.description.replace(
"<keybinding>",
`<code class='keybinding'>${this.root.keyMapper
.getBinding(KEYMAPPINGS.ingame.createMarker)
.getKeyCodeString()}</code>`
)}</span>
`
);
}
this.waypointSprite = Loader.getSprite("sprites/misc/waypoint.png");
}
initialize() {
this.waypoints = [
{
label: T.ingame.waypoints.hub,
center: new Vector(0, 0),
zoomLevel: 3,
deletable: false,
},
];
this.dummyBuffer = makeOffscreenBuffer(1, 1, {
reusable: false,
label: "waypoints-measure-canvas",
})[1];
this.root.camera.downPreHandler.add(this.onMouseDown, this);
this.domAttach = new DynamicDomAttach(this.root, this.element);
this.root.keyMapper.getBinding(KEYMAPPINGS.ingame.createMarker).add(this.requestCreateMarker, this);
this.currentMarkerOpacity = 1;
}
/**
*
* @param {Vector=} worldPos Override the world pos, otherwise it is the camera position
*/
requestCreateMarker(worldPos = null) {
if (IS_DEMO) {
this.root.hud.parts.dialogs.showFeatureRestrictionInfo(T.demo.features.creatingMarkers);
return;
}
const markerNameInput = new FormElementInput({
id: "markerName",
label: null,
placeholder: "",
validator: val => val.length > 0 && val.length < 15,
});
const dialog = new DialogWithForm({
app: this.root.app,
title: T.dialogs.createMarker.title,
desc: T.dialogs.createMarker.desc,
formElements: [markerNameInput],
});
this.root.hud.parts.dialogs.internalShowDialog(dialog);
dialog.buttonSignals.ok.add(() => {
this.waypoints.push({
label: markerNameInput.getValue(),
center: (worldPos || this.root.camera.center).copy(),
zoomLevel: Math_max(this.root.camera.zoomLevel, globalConfig.mapChunkOverviewMinZoom + 0.05),
deletable: true,
});
this.root.hud.signals.notification.dispatch(
T.ingame.waypoints.creationSuccessNotification,
enumNotificationType.success
);
});
}
update() {
this.domAttach.update(this.root.camera.getIsMapOverlayActive());
}
findCurrentIntersectedWaypoint() {
const mousePos = this.root.app.mousePosition;
if (!mousePos) {
return;
}
if (!this.root.camera.getIsMapOverlayActive()) {
return;
}
const scale = this.root.app.getEffectiveUiScale();
this.dummyBuffer.font = "bold " + 12 * scale + "px GameFont";
for (let i = 0; i < this.waypoints.length; ++i) {
const waypoint = this.waypoints[i];
const screenPos = this.root.camera.worldToScreen(waypoint.center);
const intersectionRect = new Rectangle(
screenPos.x - 7 * scale,
screenPos.y - 12 * scale,
15 * scale + this.dummyBuffer.measureText(waypoint.label).width,
15 * scale
);
if (intersectionRect.containsPoint(mousePos.x, mousePos.y)) {
return waypoint;
}
}
}
/**
*
* @param {Vector} pos
* @param {enumMouseButton} button
*/
onMouseDown(pos, button) {
const waypoint = this.findCurrentIntersectedWaypoint();
if (waypoint) {
if (button === enumMouseButton.left) {
this.root.soundProxy.playUiClick();
this.root.camera.setDesiredCenter(waypoint.center);
this.root.camera.setDesiredZoom(waypoint.zoomLevel);
} else if (button === enumMouseButton.right) {
if (waypoint.deletable) {
this.root.soundProxy.playUiClick();
arrayDeleteValue(this.waypoints, waypoint);
} else {
this.root.soundProxy.playUiError();
}
}
return STOP_PROPAGATION;
} else {
// Allow right click to create a marker
if (button === enumMouseButton.right) {
const worldPos = this.root.camera.screenToWorld(pos);
this.requestCreateMarker(worldPos);
return STOP_PROPAGATION;
}
}
}
/**
*
* @param {DrawParameters} parameters
*/
draw(parameters) {
const desiredOpacity = this.root.camera.getIsMapOverlayActive() ? 1 : 0;
this.currentMarkerOpacity = lerp(this.currentMarkerOpacity, desiredOpacity, 0.08);
if (this.currentMarkerOpacity < 0.01) {
return;
}
const selected = this.findCurrentIntersectedWaypoint();
const scale = (1 / this.root.camera.zoomLevel) * this.root.app.getEffectiveUiScale();
for (let i = 0; i < this.waypoints.length; ++i) {
const waypoint = this.waypoints[i];
const pos = waypoint.center;
parameters.context.globalAlpha = this.currentMarkerOpacity * (selected === waypoint ? 1 : 0.7);
parameters.context.fillStyle = "#000";
parameters.context.textAlign = "left";
parameters.context.textBaseline = "middle";
const yOffset = -5 * scale;
parameters.context.font = "bold " + 12 * scale + "px GameFont";
parameters.context.fillText(waypoint.label, pos.x + 6 * scale, pos.y + 0.5 * scale + yOffset);
parameters.context.textBaseline = "alphabetic";
parameters.context.textAlign = "left";
this.waypointSprite.drawCentered(parameters.context, pos.x, pos.y + yOffset, 10 * scale);
}
parameters.context.globalAlpha = 1;
}
}

View File

@ -25,8 +25,6 @@ export const KEYMAPPINGS = {
mapMoveDown: { keyCode: key("S") },
mapMoveLeft: { keyCode: key("A") },
centerMap: { keyCode: 32 },
menuOpenShop: { keyCode: key("F") },
menuOpenStats: { keyCode: key("G") },
@ -35,6 +33,8 @@ export const KEYMAPPINGS = {
mapZoomIn: { keyCode: 187, repeated: true }, // "+"
mapZoomOut: { keyCode: 189, repeated: true }, // "-"
createMarker: { keyCode: key("M") },
},
buildings: {
@ -222,14 +222,16 @@ export function getStringForKeyCode(code) {
export class Keybinding {
/**
*
* @param {KeyActionMapper} keyMapper
* @param {Application} app
* @param {object} param0
* @param {number} param0.keyCode
* @param {boolean=} param0.builtin
* @param {boolean=} param0.repeated
*/
constructor(app, { keyCode, builtin = false, repeated = false }) {
constructor(keyMapper, app, { keyCode, builtin = false, repeated = false }) {
assert(keyCode && Number.isInteger(keyCode), "Invalid key code: " + keyCode);
this.keyMapper = keyMapper;
this.app = app;
this.keyCode = keyCode;
this.builtin = builtin;
@ -243,7 +245,12 @@ export class Keybinding {
* Returns whether this binding is currently pressed
*/
isCurrentlyPressed() {
return this.app.inputMgr.keysDown.has(this.keyCode);
// Check if the key is down
if (this.app.inputMgr.keysDown.has(this.keyCode)) {
// Check if it is the top reciever
const reciever = this.keyMapper.inputReceiver;
return this.app.inputMgr.getTopReciever() === reciever;
}
}
/**
@ -293,6 +300,8 @@ export class KeyActionMapper {
*/
constructor(root, inputReciever) {
this.root = root;
this.inputReceiver = inputReciever;
inputReciever.keydown.add(this.handleKeydown, this);
inputReciever.keyup.add(this.handleKeyup, this);
@ -308,7 +317,7 @@ export class KeyActionMapper {
payload.keyCode = overrides[key];
}
this.keybindings[key] = new Keybinding(this.root.app, payload);
this.keybindings[key] = new Keybinding(this, this.root.app, payload);
}
}

View File

@ -37,14 +37,6 @@ export class GameTime extends BasicSerializableObject {
// Store how much time we have in bucket
this.logicTimeBudget = 0;
if (G_IS_DEV) {
window.addEventListener("keydown", ev => {
if (ev.key === "p") {
this.requestSpeedToggle();
}
});
}
}
static getId() {
@ -199,23 +191,6 @@ export class GameTime extends BasicSerializableObject {
return this.speed.getId() === PausedGameSpeed.getId();
}
requestSpeedToggle() {
logger.warn("Request speed toggle");
switch (this.speed.getId()) {
case PausedGameSpeed.getId():
this.setSpeed(new RegularGameSpeed(this.root));
break;
case RegularGameSpeed.getId():
this.setSpeed(new PausedGameSpeed(this.root));
break;
case FastForwardGameSpeed.getId():
this.setSpeed(new RegularGameSpeed(this.root));
break;
}
}
getSpeed() {
return this.speed;
}

View File

@ -195,11 +195,14 @@ dialogs:
<code class='keybinding'>SHIFT</code>: Hold to place multiple of one building.<br>
<code class='keybinding'>ALT</code>: Invert orientation of placed belts.<br>
createMarker:
title: New Marker
desc: Give it a meaningful name
ingame:
# This is shown in the top left corner and displays useful keybindings in
# every situation
keybindingsOverlay:
centerMap: Center
moveMap: Move
removeBuildings: Delete
stopPlacement: Stop placement
@ -209,6 +212,7 @@ ingame:
disableAutoOrientation: Disable auto orientation
toggleHud: Toggle HUD
placeBuilding: Place building
createMarker: Create Marker
# Everything related to placing buildings (I.e. as soon as you selected a building
# from the toolbar)
@ -302,6 +306,12 @@ ingame:
blueprintPlacer:
cost: Cost
waypoints:
waypoints: Markers
hub: HUB
description: Left-click a marker to jump to it, right-click to delete it.<br><br>Press <keybinding> to create a marker from the current view, or <strong>right-click</strong> to create a marker at the selected location.
creationSuccessNotification: Marker has been created.
# All shop upgrades
shopUpgrades:
belt:
@ -533,9 +543,9 @@ settings:
If enabled, all buildings will stay selected after placement until you cancel it. This is equivalent to holding SHIFT permanently.
offerHints:
title: Hints
title: Hints & Tutorials
description: >-
Whether to show the 'Show hints' button in the lower left.
Whether to offer hints and tutorials while playing.
keybindings:
title: Keybindings
@ -560,8 +570,6 @@ keybindings:
mapMoveDown: Move Down
mapMoveLeft: Move Left
centerMap: Center Map
mapZoomIn: Zoom in
mapZoomOut: Zoom out
@ -609,5 +617,6 @@ demo:
importingGames: Importing savegames
oneGameLimit: Limited to one savegame
customizeKeybindings: Customizing Keybindings
creatingMarkers: Create custom markers
settingNotAvailable: Not available in the demo.

View File

@ -176,7 +176,6 @@ ingame:
# This is shown in the top left corner and displays useful keybindings in
# every situation
keybindingsOverlay:
centerMap: Centrer
moveMap: Déplacer
removeBuildings: Effacer
stopPlacement: Arrêter le placement
@ -437,7 +436,7 @@ storyRewards:
reward_storage:
title: Tampon de stockage
desc: Vous avez débloqué une variante de <strong>la poubelle</strong> - Elle permet de stocker des formes jusqu'à une certaine limite!
reward_freeplay:
title: Mode libre
desc: Vous l'avez fait! Vous avez débloqué le <strong>mode libre</strong>! Cela veut dire que dorénavant, les formes sont générées aléatoirement! (Ne vous en faites pas, plus de contenu est prévu pour la version complète!)
@ -529,8 +528,6 @@ keybindings:
mapMoveDown: Aller en bas
mapMoveLeft: Aller à gauche
centerMap: Centrer la carte
mapZoomIn: Zoom avant
mapZoomOut: Zoom arrière
@ -577,6 +574,5 @@ demo:
customizeKeybindings: Personalisation des contrôles
settingNotAvailable: Indisponible dans la démo.
#
# French translation version v0.1 based on english v1.0.4 by Didier WEERTS 'The Corsaire'
# French translation version v0.1 based on english v1.0.4 by Didier WEERTS 'The Corsaire'