Fix buildings not working at their advertised speed, closes #440, closes #442, closes #437, closes #449

pull/609/head
tobspr 4 years ago
parent 12892dcf54
commit 78fe34840a

@ -10,7 +10,7 @@
},
"sprites/belt/built/forward_1.png":
{
"frame": {"x":1814,"y":1070,"w":116,"h":144},
"frame": {"x":1815,"y":1070,"w":116,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
@ -18,7 +18,7 @@
},
"sprites/belt/built/forward_2.png":
{
"frame": {"x":430,"y":1334,"w":116,"h":144},
"frame": {"x":1802,"y":1366,"w":116,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
@ -26,7 +26,7 @@
},
"sprites/belt/built/forward_3.png":
{
"frame": {"x":426,"y":1482,"w":116,"h":144},
"frame": {"x":1922,"y":1405,"w":116,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
@ -34,7 +34,7 @@
},
"sprites/belt/built/forward_4.png":
{
"frame": {"x":3,"y":1884,"w":116,"h":144},
"frame": {"x":1796,"y":1514,"w":116,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
@ -42,7 +42,7 @@
},
"sprites/belt/built/forward_5.png":
{
"frame": {"x":123,"y":1884,"w":116,"h":144},
"frame": {"x":1796,"y":1662,"w":116,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
@ -50,7 +50,7 @@
},
"sprites/belt/built/forward_6.png":
{
"frame": {"x":424,"y":1630,"w":116,"h":144},
"frame": {"x":1916,"y":1693,"w":116,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
@ -58,7 +58,7 @@
},
"sprites/belt/built/forward_7.png":
{
"frame": {"x":243,"y":1881,"w":116,"h":144},
"frame": {"x":1795,"y":1810,"w":116,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
@ -66,7 +66,7 @@
},
"sprites/belt/built/forward_8.png":
{
"frame": {"x":363,"y":1881,"w":116,"h":144},
"frame": {"x":145,"y":1887,"w":116,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
@ -74,7 +74,7 @@
},
"sprites/belt/built/forward_9.png":
{
"frame": {"x":483,"y":1778,"w":116,"h":144},
"frame": {"x":265,"y":1887,"w":116,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
@ -82,7 +82,7 @@
},
"sprites/belt/built/forward_10.png":
{
"frame": {"x":1545,"y":1139,"w":116,"h":144},
"frame": {"x":1537,"y":1139,"w":116,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
@ -90,7 +90,7 @@
},
"sprites/belt/built/forward_11.png":
{
"frame": {"x":1812,"y":1218,"w":116,"h":144},
"frame": {"x":1804,"y":1218,"w":116,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
@ -98,7 +98,7 @@
},
"sprites/belt/built/forward_12.png":
{
"frame": {"x":433,"y":1038,"w":116,"h":144},
"frame": {"x":1924,"y":1257,"w":116,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
@ -106,7 +106,7 @@
},
"sprites/belt/built/forward_13.png":
{
"frame": {"x":431,"y":1186,"w":116,"h":144},
"frame": {"x":439,"y":1038,"w":116,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
@ -114,7 +114,7 @@
},
"sprites/belt/built/left_0.png":
{
"frame": {"x":151,"y":1035,"w":130,"h":130},
"frame": {"x":961,"y":1033,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -122,7 +122,7 @@
},
"sprites/belt/built/left_1.png":
{
"frame": {"x":151,"y":1169,"w":130,"h":130},
"frame": {"x":1523,"y":1287,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -130,7 +130,7 @@
},
"sprites/belt/built/left_2.png":
{
"frame": {"x":148,"y":1571,"w":130,"h":130},
"frame": {"x":137,"y":1700,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -138,7 +138,7 @@
},
"sprites/belt/built/left_3.png":
{
"frame": {"x":146,"y":1705,"w":130,"h":130},
"frame": {"x":271,"y":1700,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -146,7 +146,7 @@
},
"sprites/belt/built/left_4.png":
{
"frame": {"x":687,"y":1584,"w":130,"h":130},
"frame": {"x":545,"y":1736,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -154,7 +154,7 @@
},
"sprites/belt/built/left_5.png":
{
"frame": {"x":821,"y":1584,"w":130,"h":130},
"frame": {"x":927,"y":1578,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -162,7 +162,7 @@
},
"sprites/belt/built/left_6.png":
{
"frame": {"x":904,"y":1864,"w":130,"h":130},
"frame": {"x":786,"y":1649,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -170,7 +170,7 @@
},
"sprites/belt/built/left_7.png":
{
"frame": {"x":1003,"y":1704,"w":130,"h":130},
"frame": {"x":645,"y":1887,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -178,7 +178,7 @@
},
"sprites/belt/built/left_8.png":
{
"frame": {"x":1087,"y":1508,"w":130,"h":130},
"frame": {"x":779,"y":1887,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -186,7 +186,7 @@
},
"sprites/belt/built/left_9.png":
{
"frame": {"x":1038,"y":1838,"w":130,"h":130},
"frame": {"x":913,"y":1887,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -194,7 +194,7 @@
},
"sprites/belt/built/left_10.png":
{
"frame": {"x":960,"y":1033,"w":130,"h":130},
"frame": {"x":1519,"y":1421,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -202,7 +202,7 @@
},
"sprites/belt/built/left_11.png":
{
"frame": {"x":960,"y":1167,"w":130,"h":130},
"frame": {"x":1519,"y":1555,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -210,7 +210,7 @@
},
"sprites/belt/built/left_12.png":
{
"frame": {"x":151,"y":1303,"w":130,"h":130},
"frame": {"x":1915,"y":1841,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -218,7 +218,7 @@
},
"sprites/belt/built/left_13.png":
{
"frame": {"x":149,"y":1437,"w":130,"h":130},
"frame": {"x":3,"y":1700,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -226,7 +226,7 @@
},
"sprites/belt/built/right_0.png":
{
"frame": {"x":1137,"y":1642,"w":130,"h":130},
"frame": {"x":1047,"y":1887,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -234,7 +234,7 @@
},
"sprites/belt/built/right_1.png":
{
"frame": {"x":1221,"y":1508,"w":130,"h":130},
"frame": {"x":1181,"y":1887,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -242,7 +242,7 @@
},
"sprites/belt/built/right_2.png":
{
"frame": {"x":1803,"y":1428,"w":130,"h":130},
"frame": {"x":920,"y":1712,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -250,7 +250,7 @@
},
"sprites/belt/built/right_3.png":
{
"frame": {"x":1623,"y":1461,"w":130,"h":130},
"frame": {"x":1054,"y":1735,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -258,7 +258,7 @@
},
"sprites/belt/built/right_4.png":
{
"frame": {"x":1489,"y":1555,"w":130,"h":130},
"frame": {"x":1188,"y":1735,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -266,7 +266,7 @@
},
"sprites/belt/built/right_5.png":
{
"frame": {"x":1271,"y":1670,"w":130,"h":130},
"frame": {"x":1322,"y":1703,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -274,7 +274,7 @@
},
"sprites/belt/built/right_6.png":
{
"frame": {"x":1172,"y":1804,"w":130,"h":130},
"frame": {"x":405,"y":1315,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -282,7 +282,7 @@
},
"sprites/belt/built/right_7.png":
{
"frame": {"x":1306,"y":1804,"w":130,"h":130},
"frame": {"x":405,"y":1449,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -290,7 +290,7 @@
},
"sprites/belt/built/right_8.png":
{
"frame": {"x":1757,"y":1562,"w":130,"h":130},
"frame": {"x":405,"y":1583,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -298,7 +298,7 @@
},
"sprites/belt/built/right_9.png":
{
"frame": {"x":1623,"y":1595,"w":130,"h":130},
"frame": {"x":3,"y":1182,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -306,7 +306,7 @@
},
"sprites/belt/built/right_10.png":
{
"frame": {"x":1528,"y":1287,"w":130,"h":130},
"frame": {"x":1315,"y":1887,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -314,7 +314,7 @@
},
"sprites/belt/built/right_11.png":
{
"frame": {"x":1355,"y":1402,"w":130,"h":130},
"frame": {"x":1449,"y":1887,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -322,7 +322,7 @@
},
"sprites/belt/built/right_12.png":
{
"frame": {"x":1489,"y":1421,"w":130,"h":130},
"frame": {"x":1583,"y":1887,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -330,7 +330,7 @@
},
"sprites/belt/built/right_13.png":
{
"frame": {"x":1355,"y":1536,"w":130,"h":130},
"frame": {"x":1061,"y":1601,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -338,7 +338,7 @@
},
"sprites/blueprints/belt_left.png":
{
"frame": {"x":1891,"y":1562,"w":130,"h":130},
"frame": {"x":137,"y":1182,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -346,7 +346,7 @@
},
"sprites/blueprints/belt_right.png":
{
"frame": {"x":1440,"y":1689,"w":130,"h":130},
"frame": {"x":271,"y":1182,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -354,7 +354,7 @@
},
"sprites/blueprints/belt_top.png":
{
"frame": {"x":603,"y":1720,"w":116,"h":144},
"frame": {"x":385,"y":1887,"w":116,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":116,"h":144},
@ -386,7 +386,7 @@
},
"sprites/blueprints/display.png":
{
"frame": {"x":955,"y":1564,"w":128,"h":136},
"frame": {"x":1916,"y":1553,"w":128,"h":136},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":8,"y":8,"w":128,"h":136},
@ -418,7 +418,7 @@
},
"sprites/blueprints/logic_gate-or.png":
{
"frame": {"x":1249,"y":989,"w":144,"h":123},
"frame": {"x":1249,"y":996,"w":144,"h":123},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":144,"h":123},
@ -434,7 +434,7 @@
},
"sprites/blueprints/logic_gate-xor.png":
{
"frame": {"x":290,"y":890,"w":144,"h":143},
"frame": {"x":291,"y":890,"w":144,"h":143},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":144,"h":143},
@ -442,7 +442,7 @@
},
"sprites/blueprints/logic_gate.png":
{
"frame": {"x":1249,"y":852,"w":144,"h":133},
"frame": {"x":1397,"y":852,"w":144,"h":133},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":144,"h":133},
@ -450,7 +450,7 @@
},
"sprites/blueprints/miner-chainable.png":
{
"frame": {"x":624,"y":1868,"w":136,"h":143},
"frame": {"x":151,"y":1035,"w":136,"h":143},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":136,"h":143},
@ -458,7 +458,7 @@
},
"sprites/blueprints/miner.png":
{
"frame": {"x":723,"y":1718,"w":136,"h":143},
"frame": {"x":1513,"y":1689,"w":136,"h":143},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":136,"h":143},
@ -506,15 +506,15 @@
},
"sprites/blueprints/reader.png":
{
"frame": {"x":1241,"y":1253,"w":142,"h":144},
"frame": {"x":1086,"y":1313,"w":141,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":142,"h":144},
"spriteSourceSize": {"x":2,"y":0,"w":141,"h":144},
"sourceSize": {"w":144,"h":144}
},
"sprites/blueprints/rotater-ccw.png":
{
"frame": {"x":1665,"y":1198,"w":143,"h":144},
"frame": {"x":1243,"y":1123,"w":143,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":143,"h":144},
@ -522,7 +522,7 @@
},
"sprites/blueprints/rotater-fl.png":
{
"frame": {"x":560,"y":1036,"w":142,"h":144},
"frame": {"x":940,"y":1167,"w":142,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":142,"h":144},
@ -530,7 +530,7 @@
},
"sprites/blueprints/rotater.png":
{
"frame": {"x":813,"y":1033,"w":143,"h":144},
"frame": {"x":1390,"y":1126,"w":143,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":143,"h":144},
@ -538,7 +538,7 @@
},
"sprites/blueprints/splitter-compact-inverse.png":
{
"frame": {"x":285,"y":1182,"w":142,"h":138},
"frame": {"x":791,"y":1254,"w":142,"h":138},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":2,"w":142,"h":138},
@ -546,7 +546,7 @@
},
"sprites/blueprints/splitter-compact-merge-inverse.png":
{
"frame": {"x":3,"y":1326,"w":142,"h":138},
"frame": {"x":1086,"y":1171,"w":142,"h":138},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":2,"w":142,"h":138},
@ -554,7 +554,7 @@
},
"sprites/blueprints/splitter-compact-merge.png":
{
"frame": {"x":551,"y":1324,"w":139,"h":138},
"frame": {"x":1376,"y":1421,"w":139,"h":138},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":2,"w":139,"h":138},
@ -562,7 +562,7 @@
},
"sprites/blueprints/splitter-compact.png":
{
"frame": {"x":283,"y":1472,"w":139,"h":138},
"frame": {"x":1227,"y":1558,"w":139,"h":138},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":2,"w":139,"h":138},
@ -602,7 +602,7 @@
},
"sprites/blueprints/underground_belt_entry-tier2.png":
{
"frame": {"x":3,"y":1755,"w":138,"h":125},
"frame": {"x":405,"y":1186,"w":138,"h":125},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":19,"w":138,"h":125},
@ -610,7 +610,7 @@
},
"sprites/blueprints/underground_belt_entry.png":
{
"frame": {"x":893,"y":1448,"w":138,"h":112},
"frame": {"x":3,"y":1836,"w":138,"h":112},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":32,"w":138,"h":112},
@ -618,7 +618,7 @@
},
"sprites/blueprints/underground_belt_exit-tier2.png":
{
"frame": {"x":550,"y":1466,"w":139,"h":112},
"frame": {"x":1653,"y":1632,"w":139,"h":112},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":139,"h":112},
@ -626,7 +626,7 @@
},
"sprites/blueprints/underground_belt_exit.png":
{
"frame": {"x":739,"y":1468,"w":138,"h":112},
"frame": {"x":645,"y":1377,"w":138,"h":112},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":138,"h":112},
@ -642,7 +642,7 @@
},
"sprites/blueprints/virtual_processor-rotater.png":
{
"frame": {"x":438,"y":890,"w":118,"h":144},
"frame": {"x":1545,"y":991,"w":118,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":118,"h":144},
@ -650,7 +650,7 @@
},
"sprites/blueprints/virtual_processor-shapecompare.png":
{
"frame": {"x":1397,"y":852,"w":144,"h":133},
"frame": {"x":1397,"y":989,"w":144,"h":133},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":144,"h":133},
@ -666,7 +666,7 @@
},
"sprites/blueprints/virtual_processor.png":
{
"frame": {"x":285,"y":1037,"w":144,"h":141},
"frame": {"x":291,"y":1037,"w":144,"h":141},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":3,"w":144,"h":141},
@ -682,7 +682,7 @@
},
"sprites/blueprints/wire-split.png":
{
"frame": {"x":1397,"y":989,"w":144,"h":82},
"frame": {"x":1098,"y":1000,"w":144,"h":82},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":62,"w":144,"h":82},
@ -690,7 +690,7 @@
},
"sprites/blueprints/wire-turn.png":
{
"frame": {"x":1932,"y":1257,"w":82,"h":82},
"frame": {"x":707,"y":1036,"w":82,"h":82},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":62,"y":62,"w":82,"h":82},
@ -706,15 +706,15 @@
},
"sprites/blueprints/wire_tunnel-coating.png":
{
"frame": {"x":255,"y":677,"w":33,"h":135},
"frame": {"x":255,"y":677,"w":33,"h":134},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":55,"y":4,"w":33,"h":135},
"spriteSourceSize": {"x":56,"y":5,"w":33,"h":134},
"sourceSize": {"w":144,"h":144}
},
"sprites/blueprints/wire_tunnel.png":
{
"frame": {"x":282,"y":1614,"w":138,"h":135},
"frame": {"x":1653,"y":1748,"w":138,"h":135},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":138,"h":135},
@ -722,7 +722,7 @@
},
"sprites/buildings/belt_left.png":
{
"frame": {"x":151,"y":1035,"w":130,"h":130},
"frame": {"x":961,"y":1033,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":14,"w":130,"h":130},
@ -730,7 +730,7 @@
},
"sprites/buildings/belt_right.png":
{
"frame": {"x":1137,"y":1642,"w":130,"h":130},
"frame": {"x":1047,"y":1887,"w":130,"h":130},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":14,"w":130,"h":130},
@ -810,7 +810,7 @@
},
"sprites/buildings/logic_gate-or.png":
{
"frame": {"x":1388,"y":1160,"w":143,"h":123},
"frame": {"x":559,"y":1173,"w":143,"h":123},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":143,"h":123},
@ -826,7 +826,7 @@
},
"sprites/buildings/logic_gate-xor.png":
{
"frame": {"x":1094,"y":1085,"w":143,"h":143},
"frame": {"x":1657,"y":1198,"w":143,"h":143},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":143,"h":143},
@ -834,7 +834,7 @@
},
"sprites/buildings/logic_gate.png":
{
"frame": {"x":1094,"y":1232,"w":143,"h":132},
"frame": {"x":793,"y":1118,"w":143,"h":132},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":143,"h":132},
@ -842,7 +842,7 @@
},
"sprites/buildings/miner-chainable.png":
{
"frame": {"x":764,"y":1865,"w":136,"h":142},
"frame": {"x":505,"y":1887,"w":136,"h":142},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":136,"h":142},
@ -850,7 +850,7 @@
},
"sprites/buildings/miner.png":
{
"frame": {"x":863,"y":1718,"w":136,"h":142},
"frame": {"x":405,"y":1736,"w":136,"h":142},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":136,"h":142},
@ -898,7 +898,7 @@
},
"sprites/buildings/reader.png":
{
"frame": {"x":285,"y":1324,"w":141,"h":144},
"frame": {"x":937,"y":1315,"w":141,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":141,"h":144},
@ -906,7 +906,7 @@
},
"sprites/buildings/rotater-ccw.png":
{
"frame": {"x":3,"y":1468,"w":141,"h":143},
"frame": {"x":1378,"y":1274,"w":141,"h":143},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":141,"h":143},
@ -914,7 +914,7 @@
},
"sprites/buildings/rotater-fl.png":
{
"frame": {"x":791,"y":1181,"w":141,"h":143},
"frame": {"x":1231,"y":1411,"w":141,"h":143},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":141,"h":143},
@ -922,7 +922,7 @@
},
"sprites/buildings/rotater.png":
{
"frame": {"x":936,"y":1301,"w":141,"h":143},
"frame": {"x":1657,"y":1345,"w":141,"h":143},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":0,"w":141,"h":143},
@ -930,7 +930,7 @@
},
"sprites/buildings/splitter-compact-inverse.png":
{
"frame": {"x":1081,"y":1368,"w":141,"h":136},
"frame": {"x":1082,"y":1461,"w":141,"h":136},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":3,"w":141,"h":136},
@ -938,7 +938,7 @@
},
"sprites/buildings/splitter-compact-merge-inverse.png":
{
"frame": {"x":553,"y":1184,"w":142,"h":136},
"frame": {"x":1232,"y":1271,"w":142,"h":136},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":3,"w":142,"h":136},
@ -946,7 +946,7 @@
},
"sprites/buildings/splitter-compact-merge.png":
{
"frame": {"x":3,"y":1615,"w":139,"h":136},
"frame": {"x":1653,"y":1492,"w":139,"h":136},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":3,"w":139,"h":136},
@ -954,7 +954,7 @@
},
"sprites/buildings/splitter-compact.png":
{
"frame": {"x":750,"y":1328,"w":139,"h":136},
"frame": {"x":1370,"y":1563,"w":139,"h":136},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":3,"w":139,"h":136},
@ -994,7 +994,7 @@
},
"sprites/buildings/underground_belt_entry-tier2.png":
{
"frame": {"x":280,"y":1753,"w":137,"h":124},
"frame": {"x":645,"y":1493,"w":137,"h":124},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":20,"w":137,"h":124},
@ -1002,7 +1002,7 @@
},
"sprites/buildings/underground_belt_entry.png":
{
"frame": {"x":483,"y":1926,"w":137,"h":111},
"frame": {"x":928,"y":1463,"w":137,"h":111},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":33,"w":137,"h":111},
@ -1010,7 +1010,7 @@
},
"sprites/buildings/underground_belt_exit-tier2.png":
{
"frame": {"x":1387,"y":1287,"w":137,"h":111},
"frame": {"x":786,"y":1534,"w":137,"h":111},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":137,"h":111},
@ -1018,7 +1018,7 @@
},
"sprites/buildings/underground_belt_exit.png":
{
"frame": {"x":1662,"y":1346,"w":137,"h":111},
"frame": {"x":645,"y":1621,"w":137,"h":111},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":137,"h":111},
@ -1034,7 +1034,7 @@
},
"sprites/buildings/virtual_processor-rotater.png":
{
"frame": {"x":1545,"y":991,"w":117,"h":144},
"frame": {"x":439,"y":890,"w":117,"h":144},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":14,"y":0,"w":117,"h":144},
@ -1042,7 +1042,7 @@
},
"sprites/buildings/virtual_processor-shapecompare.png":
{
"frame": {"x":1241,"y":1116,"w":143,"h":133},
"frame": {"x":560,"y":1036,"w":143,"h":133},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":143,"h":133},
@ -1058,7 +1058,7 @@
},
"sprites/buildings/virtual_processor.png":
{
"frame": {"x":3,"y":1182,"w":144,"h":140},
"frame": {"x":1249,"y":852,"w":144,"h":140},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":4,"w":144,"h":140},
@ -1074,7 +1074,7 @@
},
"sprites/buildings/wire-split.png":
{
"frame": {"x":1098,"y":1000,"w":144,"h":81},
"frame": {"x":1667,"y":1028,"w":144,"h":81},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":63,"w":144,"h":81},
@ -1098,15 +1098,15 @@
},
"sprites/buildings/wire_tunnel-coating.png":
{
"frame": {"x":255,"y":816,"w":31,"h":134},
"frame": {"x":255,"y":815,"w":32,"h":134},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":56,"y":5,"w":31,"h":134},
"spriteSourceSize": {"x":56,"y":5,"w":32,"h":134},
"sourceSize": {"w":144,"h":144}
},
"sprites/buildings/wire_tunnel.png":
{
"frame": {"x":546,"y":1582,"w":137,"h":134},
"frame": {"x":787,"y":1396,"w":137,"h":134},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":5,"w":137,"h":134},
@ -1138,7 +1138,7 @@
},
"sprites/misc/processor_disabled.png":
{
"frame": {"x":699,"y":1206,"w":78,"h":81},
"frame": {"x":3,"y":1958,"w":78,"h":81},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":10,"y":10,"w":78,"h":81},
@ -1178,7 +1178,7 @@
},
"sprites/misc/storage_overlay.png":
{
"frame": {"x":1934,"y":1209,"w":89,"h":44},
"frame": {"x":1935,"y":1209,"w":89,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":1,"w":89,"h":44},
@ -1186,7 +1186,7 @@
},
"sprites/misc/waypoint.png":
{
"frame": {"x":893,"y":1328,"w":38,"h":48},
"frame": {"x":292,"y":1834,"w":38,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":38,"h":48},
@ -1194,7 +1194,7 @@
},
"sprites/wires/boolean_false.png":
{
"frame": {"x":255,"y":954,"w":31,"h":41},
"frame": {"x":255,"y":953,"w":31,"h":41},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":9,"y":5,"w":31,"h":41},
@ -1250,7 +1250,7 @@
},
"sprites/wires/display/white.png":
{
"frame": {"x":699,"y":1291,"w":47,"h":47},
"frame": {"x":145,"y":1836,"w":47,"h":47},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":1,"w":47,"h":47},
@ -1258,7 +1258,7 @@
},
"sprites/wires/display/yellow.png":
{
"frame": {"x":694,"y":1342,"w":47,"h":47},
"frame": {"x":196,"y":1836,"w":47,"h":47},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":1,"w":47,"h":47},
@ -1290,7 +1290,7 @@
},
"sprites/wires/network_conflict.png":
{
"frame": {"x":694,"y":1393,"w":47,"h":44},
"frame": {"x":85,"y":1952,"w":47,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":2,"w":47,"h":44},
@ -1298,7 +1298,7 @@
},
"sprites/wires/network_empty.png":
{
"frame": {"x":694,"y":1441,"w":41,"h":48},
"frame": {"x":247,"y":1834,"w":41,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":5,"y":0,"w":41,"h":48},
@ -1306,7 +1306,7 @@
},
"sprites/wires/overlay_tile.png":
{
"frame": {"x":1934,"y":1109,"w":96,"h":96},
"frame": {"x":1935,"y":1109,"w":96,"h":96},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":96,"h":96},
@ -1330,7 +1330,7 @@
},
"sprites/wires/sets/color_split.png":
{
"frame": {"x":1397,"y":1075,"w":144,"h":81},
"frame": {"x":1667,"y":1113,"w":144,"h":81},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":63,"w":144,"h":81},
@ -1338,7 +1338,7 @@
},
"sprites/wires/sets/color_turn.png":
{
"frame": {"x":1932,"y":1343,"w":81,"h":81},
"frame": {"x":707,"y":1122,"w":81,"h":81},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":63,"y":63,"w":81,"h":81},
@ -1362,7 +1362,7 @@
},
"sprites/wires/sets/conflict_split.png":
{
"frame": {"x":1666,"y":1028,"w":144,"h":81},
"frame": {"x":813,"y":1033,"w":144,"h":81},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":63,"w":144,"h":81},
@ -1370,7 +1370,7 @@
},
"sprites/wires/sets/conflict_turn.png":
{
"frame": {"x":706,"y":1036,"w":81,"h":81},
"frame": {"x":706,"y":1207,"w":81,"h":81},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":63,"y":63,"w":81,"h":81},
@ -1394,7 +1394,7 @@
},
"sprites/wires/sets/regular_split.png":
{
"frame": {"x":1098,"y":1000,"w":144,"h":81},
"frame": {"x":1667,"y":1028,"w":144,"h":81},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":63,"w":144,"h":81},
@ -1426,7 +1426,7 @@
},
"sprites/wires/sets/shape_split.png":
{
"frame": {"x":1666,"y":1113,"w":144,"h":81},
"frame": {"x":1095,"y":1086,"w":144,"h":81},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":63,"w":144,"h":81},
@ -1434,7 +1434,7 @@
},
"sprites/wires/sets/shape_turn.png":
{
"frame": {"x":706,"y":1121,"w":81,"h":81},
"frame": {"x":706,"y":1292,"w":81,"h":81},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":63,"y":63,"w":81,"h":81},
@ -1455,6 +1455,6 @@
"format": "RGBA8888",
"size": {"w":2048,"h":2048},
"scale": "0.75",
"smartupdate": "$TexturePacker:SmartUpdate:276f2044dea94b0977ef8f929d93d3db:fe07471c4d8352b4586f9103e9e8f916:908b89f5ca8ff73e331a35a3b14d0604$"
"smartupdate": "$TexturePacker:SmartUpdate:26af492934beffa75e19b73e6d9eba56:d408ec7454e52a9384f80985bf14db9c:908b89f5ca8ff73e331a35a3b14d0604$"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 MiB

After

Width:  |  Height:  |  Size: 1.3 MiB

@ -10,7 +10,7 @@
},
"sprites/belt/built/forward_1.png":
{
"frame": {"x":405,"y":817,"w":40,"h":48},
"frame": {"x":3,"y":939,"w":40,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
@ -18,7 +18,7 @@
},
"sprites/belt/built/forward_2.png":
{
"frame": {"x":3,"y":930,"w":40,"h":48},
"frame": {"x":179,"y":969,"w":40,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
@ -26,7 +26,7 @@
},
"sprites/belt/built/forward_3.png":
{
"frame": {"x":95,"y":960,"w":40,"h":48},
"frame": {"x":407,"y":864,"w":40,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
@ -34,7 +34,7 @@
},
"sprites/belt/built/forward_4.png":
{
"frame": {"x":139,"y":960,"w":40,"h":48},
"frame": {"x":352,"y":869,"w":40,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
@ -42,7 +42,7 @@
},
"sprites/belt/built/forward_5.png":
{
"frame": {"x":183,"y":954,"w":40,"h":48},
"frame": {"x":300,"y":883,"w":40,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
@ -50,7 +50,7 @@
},
"sprites/belt/built/forward_6.png":
{
"frame": {"x":449,"y":823,"w":40,"h":48},
"frame": {"x":249,"y":893,"w":40,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
@ -58,7 +58,7 @@
},
"sprites/belt/built/forward_7.png":
{
"frame": {"x":400,"y":869,"w":40,"h":48},
"frame": {"x":451,"y":864,"w":40,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
@ -66,7 +66,7 @@
},
"sprites/belt/built/forward_8.png":
{
"frame": {"x":352,"y":913,"w":40,"h":48},
"frame": {"x":223,"y":945,"w":40,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
@ -74,7 +74,7 @@
},
"sprites/belt/built/forward_9.png":
{
"frame": {"x":300,"y":925,"w":40,"h":48},
"frame": {"x":267,"y":945,"w":40,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
@ -82,7 +82,7 @@
},
"sprites/belt/built/forward_10.png":
{
"frame": {"x":201,"y":901,"w":40,"h":48},
"frame": {"x":47,"y":961,"w":40,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
@ -90,7 +90,7 @@
},
"sprites/belt/built/forward_11.png":
{
"frame": {"x":150,"y":902,"w":40,"h":48},
"frame": {"x":91,"y":961,"w":40,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
@ -98,7 +98,7 @@
},
"sprites/belt/built/forward_12.png":
{
"frame": {"x":99,"y":908,"w":40,"h":48},
"frame": {"x":135,"y":941,"w":40,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
@ -106,7 +106,7 @@
},
"sprites/belt/built/forward_13.png":
{
"frame": {"x":51,"y":927,"w":40,"h":48},
"frame": {"x":179,"y":917,"w":40,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
@ -154,7 +154,7 @@
},
"sprites/belt/built/left_5.png":
{
"frame": {"x":261,"y":749,"w":44,"h":44},
"frame": {"x":275,"y":707,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
@ -162,7 +162,7 @@
},
"sprites/belt/built/left_6.png":
{
"frame": {"x":208,"y":757,"w":44,"h":44},
"frame": {"x":323,"y":739,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
@ -170,7 +170,7 @@
},
"sprites/belt/built/left_7.png":
{
"frame": {"x":363,"y":769,"w":44,"h":44},
"frame": {"x":208,"y":759,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
@ -178,7 +178,7 @@
},
"sprites/belt/built/left_8.png":
{
"frame": {"x":309,"y":781,"w":44,"h":44},
"frame": {"x":156,"y":773,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
@ -186,7 +186,7 @@
},
"sprites/belt/built/left_9.png":
{
"frame": {"x":256,"y":797,"w":44,"h":44},
"frame": {"x":105,"y":797,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
@ -226,7 +226,7 @@
},
"sprites/belt/built/right_0.png":
{
"frame": {"x":208,"y":805,"w":44,"h":44},
"frame": {"x":54,"y":817,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -234,7 +234,7 @@
},
"sprites/belt/built/right_1.png":
{
"frame": {"x":156,"y":806,"w":44,"h":44},
"frame": {"x":3,"y":843,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -242,7 +242,7 @@
},
"sprites/belt/built/right_2.png":
{
"frame": {"x":304,"y":829,"w":44,"h":44},
"frame": {"x":102,"y":845,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -250,7 +250,7 @@
},
"sprites/belt/built/right_3.png":
{
"frame": {"x":256,"y":845,"w":44,"h":44},
"frame": {"x":51,"y":865,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -258,7 +258,7 @@
},
"sprites/belt/built/right_4.png":
{
"frame": {"x":204,"y":853,"w":44,"h":44},
"frame": {"x":3,"y":891,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -266,7 +266,7 @@
},
"sprites/belt/built/right_5.png":
{
"frame": {"x":153,"y":854,"w":44,"h":44},
"frame": {"x":359,"y":821,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -274,7 +274,7 @@
},
"sprites/belt/built/right_6.png":
{
"frame": {"x":102,"y":860,"w":44,"h":44},
"frame": {"x":304,"y":835,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -282,7 +282,7 @@
},
"sprites/belt/built/right_7.png":
{
"frame": {"x":51,"y":879,"w":44,"h":44},
"frame": {"x":252,"y":845,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -290,7 +290,7 @@
},
"sprites/belt/built/right_8.png":
{
"frame": {"x":3,"y":882,"w":44,"h":44},
"frame": {"x":201,"y":855,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -298,7 +298,7 @@
},
"sprites/belt/built/right_9.png":
{
"frame": {"x":352,"y":865,"w":44,"h":44},
"frame": {"x":150,"y":869,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -306,7 +306,7 @@
},
"sprites/belt/built/right_10.png":
{
"frame": {"x":105,"y":812,"w":44,"h":44},
"frame": {"x":311,"y":787,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -314,7 +314,7 @@
},
"sprites/belt/built/right_11.png":
{
"frame": {"x":54,"y":831,"w":44,"h":44},
"frame": {"x":256,"y":797,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -322,7 +322,7 @@
},
"sprites/belt/built/right_12.png":
{
"frame": {"x":3,"y":834,"w":44,"h":44},
"frame": {"x":204,"y":807,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -330,7 +330,7 @@
},
"sprites/belt/built/right_13.png":
{
"frame": {"x":357,"y":817,"w":44,"h":44},
"frame": {"x":153,"y":821,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -338,7 +338,7 @@
},
"sprites/blueprints/belt_left.png":
{
"frame": {"x":304,"y":877,"w":44,"h":44},
"frame": {"x":99,"y":893,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":4,"w":44,"h":44},
@ -346,7 +346,7 @@
},
"sprites/blueprints/belt_right.png":
{
"frame": {"x":252,"y":893,"w":44,"h":44},
"frame": {"x":51,"y":913,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -354,7 +354,7 @@
},
"sprites/blueprints/belt_top.png":
{
"frame": {"x":344,"y":965,"w":40,"h":48},
"frame": {"x":311,"y":935,"w":40,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":0,"w":40,"h":48},
@ -418,7 +418,7 @@
},
"sprites/blueprints/logic_gate-or.png":
{
"frame": {"x":371,"y":723,"w":48,"h":42},
"frame": {"x":423,"y":818,"w":48,"h":42},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":42},
@ -442,7 +442,7 @@
},
"sprites/blueprints/logic_gate.png":
{
"frame": {"x":55,"y":555,"w":48,"h":45},
"frame": {"x":171,"y":622,"w":48,"h":45},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":45},
@ -450,7 +450,7 @@
},
"sprites/blueprints/miner-chainable.png":
{
"frame": {"x":55,"y":682,"w":47,"h":48},
"frame": {"x":107,"y":648,"w":47,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
@ -458,7 +458,7 @@
},
"sprites/blueprints/miner.png":
{
"frame": {"x":3,"y":689,"w":47,"h":48},
"frame": {"x":55,"y":672,"w":47,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
@ -554,7 +554,7 @@
},
"sprites/blueprints/splitter-compact-merge.png":
{
"frame": {"x":54,"y":734,"w":47,"h":47},
"frame": {"x":106,"y":700,"w":47,"h":47},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":47},
@ -562,7 +562,7 @@
},
"sprites/blueprints/splitter-compact.png":
{
"frame": {"x":3,"y":741,"w":47,"h":47},
"frame": {"x":54,"y":724,"w":47,"h":47},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":47},
@ -602,7 +602,7 @@
},
"sprites/blueprints/underground_belt_entry-tier2.png":
{
"frame": {"x":223,"y":659,"w":48,"h":43},
"frame": {"x":447,"y":771,"w":48,"h":43},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":5,"w":48,"h":43},
@ -610,7 +610,7 @@
},
"sprites/blueprints/underground_belt_entry.png":
{
"frame": {"x":3,"y":605,"w":48,"h":38},
"frame": {"x":55,"y":556,"w":48,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":10,"w":48,"h":38},
@ -618,7 +618,7 @@
},
"sprites/blueprints/underground_belt_exit-tier2.png":
{
"frame": {"x":3,"y":647,"w":48,"h":38},
"frame": {"x":55,"y":598,"w":48,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":38},
@ -626,7 +626,7 @@
},
"sprites/blueprints/underground_belt_exit.png":
{
"frame": {"x":107,"y":604,"w":48,"h":38},
"frame": {"x":107,"y":606,"w":48,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":38},
@ -650,7 +650,7 @@
},
"sprites/blueprints/virtual_processor-shapecompare.png":
{
"frame": {"x":3,"y":556,"w":48,"h":45},
"frame": {"x":223,"y":659,"w":48,"h":45},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":45},
@ -698,7 +698,7 @@
},
"sprites/blueprints/wire.png":
{
"frame": {"x":437,"y":722,"w":8,"h":48},
"frame": {"x":159,"y":520,"w":8,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":20,"y":0,"w":8,"h":48},
@ -706,15 +706,15 @@
},
"sprites/blueprints/wire_tunnel-coating.png":
{
"frame": {"x":425,"y":638,"w":13,"h":47},
"frame": {"x":425,"y":655,"w":12,"h":46},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":17,"y":0,"w":13,"h":47},
"spriteSourceSize": {"x":18,"y":1,"w":12,"h":46},
"sourceSize": {"w":48,"h":48}
},
"sprites/blueprints/wire_tunnel.png":
{
"frame": {"x":55,"y":504,"w":48,"h":47},
"frame": {"x":107,"y":504,"w":48,"h":47},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":47},
@ -730,7 +730,7 @@
},
"sprites/buildings/belt_right.png":
{
"frame": {"x":208,"y":805,"w":44,"h":44},
"frame": {"x":54,"y":817,"w":44,"h":44},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":4,"y":4,"w":44,"h":44},
@ -810,7 +810,7 @@
},
"sprites/buildings/logic_gate-or.png":
{
"frame": {"x":55,"y":604,"w":48,"h":42},
"frame": {"x":3,"y":556,"w":48,"h":42},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":42},
@ -834,7 +834,7 @@
},
"sprites/buildings/logic_gate.png":
{
"frame": {"x":107,"y":555,"w":48,"h":45},
"frame": {"x":371,"y":723,"w":48,"h":45},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":45},
@ -842,7 +842,7 @@
},
"sprites/buildings/miner-chainable.png":
{
"frame": {"x":159,"y":703,"w":47,"h":48},
"frame": {"x":3,"y":698,"w":47,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
@ -850,7 +850,7 @@
},
"sprites/buildings/miner.png":
{
"frame": {"x":106,"y":710,"w":47,"h":48},
"frame": {"x":158,"y":671,"w":47,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":48},
@ -930,7 +930,7 @@
},
"sprites/buildings/splitter-compact-inverse.png":
{
"frame": {"x":107,"y":504,"w":48,"h":47},
"frame": {"x":107,"y":555,"w":48,"h":47},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":47},
@ -946,7 +946,7 @@
},
"sprites/buildings/splitter-compact-merge.png":
{
"frame": {"x":210,"y":706,"w":47,"h":47},
"frame": {"x":3,"y":750,"w":47,"h":47},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":47},
@ -954,7 +954,7 @@
},
"sprites/buildings/splitter-compact.png":
{
"frame": {"x":157,"y":755,"w":47,"h":47},
"frame": {"x":209,"y":708,"w":47,"h":47},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":47},
@ -994,7 +994,7 @@
},
"sprites/buildings/underground_belt_entry-tier2.png":
{
"frame": {"x":54,"y":785,"w":47,"h":42},
"frame": {"x":105,"y":751,"w":47,"h":42},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":6,"w":47,"h":42},
@ -1002,7 +1002,7 @@
},
"sprites/buildings/underground_belt_entry.png":
{
"frame": {"x":3,"y":792,"w":47,"h":38},
"frame": {"x":54,"y":775,"w":47,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":10,"w":47,"h":38},
@ -1010,7 +1010,7 @@
},
"sprites/buildings/underground_belt_exit-tier2.png":
{
"frame": {"x":261,"y":707,"w":47,"h":38},
"frame": {"x":3,"y":801,"w":47,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":38},
@ -1018,7 +1018,7 @@
},
"sprites/buildings/underground_belt_exit.png":
{
"frame": {"x":312,"y":739,"w":47,"h":38},
"frame": {"x":260,"y":755,"w":47,"h":38},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":0,"w":47,"h":38},
@ -1042,7 +1042,7 @@
},
"sprites/buildings/virtual_processor-shapecompare.png":
{
"frame": {"x":171,"y":622,"w":48,"h":45},
"frame": {"x":371,"y":772,"w":48,"h":45},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":45},
@ -1066,7 +1066,7 @@
},
"sprites/buildings/wire-cross.png":
{
"frame": {"x":459,"y":667,"w":48,"h":48},
"frame": {"x":457,"y":667,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -1074,7 +1074,7 @@
},
"sprites/buildings/wire-split.png":
{
"frame": {"x":107,"y":646,"w":48,"h":28},
"frame": {"x":3,"y":602,"w":48,"h":28},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":20,"w":48,"h":28},
@ -1090,7 +1090,7 @@
},
"sprites/buildings/wire.png":
{
"frame": {"x":501,"y":771,"w":8,"h":48},
"frame": {"x":159,"y":572,"w":8,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":20,"y":0,"w":8,"h":48},
@ -1098,7 +1098,7 @@
},
"sprites/buildings/wire_tunnel-coating.png":
{
"frame": {"x":442,"y":672,"w":12,"h":46},
"frame": {"x":441,"y":655,"w":12,"h":46},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":18,"y":1,"w":12,"h":46},
@ -1106,7 +1106,7 @@
},
"sprites/buildings/wire_tunnel.png":
{
"frame": {"x":105,"y":762,"w":47,"h":46},
"frame": {"x":157,"y":723,"w":47,"h":46},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":1,"y":1,"w":47,"h":46},
@ -1162,7 +1162,7 @@
},
"sprites/misc/slot_bad_arrow.png":
{
"frame": {"x":442,"y":638,"w":13,"h":13},
"frame": {"x":425,"y":638,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -1170,7 +1170,7 @@
},
"sprites/misc/slot_good_arrow.png":
{
"frame": {"x":442,"y":655,"w":13,"h":13},
"frame": {"x":442,"y":638,"w":13,"h":13},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":13,"h":13},
@ -1194,7 +1194,7 @@
},
"sprites/wires/boolean_false.png":
{
"frame": {"x":424,"y":689,"w":12,"h":15},
"frame": {"x":424,"y":705,"w":12,"h":15},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":2,"y":1,"w":12,"h":15},
@ -1202,7 +1202,7 @@
},
"sprites/wires/boolean_true.png":
{
"frame": {"x":424,"y":708,"w":9,"h":15},
"frame": {"x":440,"y":705,"w":9,"h":15},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":3,"y":1,"w":9,"h":15},
@ -1314,7 +1314,7 @@
},
"sprites/wires/sets/color_cross.png":
{
"frame": {"x":458,"y":719,"w":48,"h":48},
"frame": {"x":453,"y":719,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -1322,7 +1322,7 @@
},
"sprites/wires/sets/color_forward.png":
{
"frame": {"x":159,"y":520,"w":8,"h":48},
"frame": {"x":423,"y":724,"w":8,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":20,"y":0,"w":8,"h":48},
@ -1330,7 +1330,7 @@
},
"sprites/wires/sets/color_split.png":
{
"frame": {"x":55,"y":650,"w":48,"h":28},
"frame": {"x":3,"y":634,"w":48,"h":28},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":20,"w":48,"h":28},
@ -1346,7 +1346,7 @@
},
"sprites/wires/sets/conflict_cross.png":
{
"frame": {"x":449,"y":771,"w":48,"h":48},
"frame": {"x":3,"y":504,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -1354,7 +1354,7 @@
},
"sprites/wires/sets/conflict_forward.png":
{
"frame": {"x":159,"y":572,"w":8,"h":48},
"frame": {"x":435,"y":724,"w":8,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":20,"y":0,"w":8,"h":48},
@ -1362,7 +1362,7 @@
},
"sprites/wires/sets/conflict_split.png":
{
"frame": {"x":159,"y":671,"w":48,"h":28},
"frame": {"x":55,"y":640,"w":48,"h":28},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":20,"w":48,"h":28},
@ -1378,7 +1378,7 @@
},
"sprites/wires/sets/regular_cross.png":
{
"frame": {"x":459,"y":667,"w":48,"h":48},
"frame": {"x":457,"y":667,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -1386,7 +1386,7 @@
},
"sprites/wires/sets/regular_forward.png":
{
"frame": {"x":501,"y":771,"w":8,"h":48},
"frame": {"x":159,"y":572,"w":8,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":20,"y":0,"w":8,"h":48},
@ -1394,7 +1394,7 @@
},
"sprites/wires/sets/regular_split.png":
{
"frame": {"x":107,"y":646,"w":48,"h":28},
"frame": {"x":3,"y":602,"w":48,"h":28},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":20,"w":48,"h":28},
@ -1410,7 +1410,7 @@
},
"sprites/wires/sets/shape_cross.png":
{
"frame": {"x":3,"y":504,"w":48,"h":48},
"frame": {"x":55,"y":504,"w":48,"h":48},
"rotated": false,
"trimmed": false,
"spriteSourceSize": {"x":0,"y":0,"w":48,"h":48},
@ -1418,7 +1418,7 @@
},
"sprites/wires/sets/shape_forward.png":
{
"frame": {"x":423,"y":727,"w":8,"h":48},
"frame": {"x":499,"y":771,"w":8,"h":48},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":20,"y":0,"w":8,"h":48},
@ -1426,7 +1426,7 @@
},
"sprites/wires/sets/shape_split.png":
{
"frame": {"x":107,"y":678,"w":48,"h":28},
"frame": {"x":3,"y":666,"w":48,"h":28},
"rotated": false,
"trimmed": true,
"spriteSourceSize": {"x":0,"y":20,"w":48,"h":28},
@ -1455,6 +1455,6 @@
"format": "RGBA8888",
"size": {"w":512,"h":1024},
"scale": "0.25",
"smartupdate": "$TexturePacker:SmartUpdate:276f2044dea94b0977ef8f929d93d3db:fe07471c4d8352b4586f9103e9e8f916:908b89f5ca8ff73e331a35a3b14d0604$"
"smartupdate": "$TexturePacker:SmartUpdate:26af492934beffa75e19b73e6d9eba56:d408ec7454e52a9384f80985bf14db9c:908b89f5ca8ff73e331a35a3b14d0604$"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 272 KiB

After

Width:  |  Height:  |  Size: 277 KiB

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 660 KiB

After

Width:  |  Height:  |  Size: 658 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

After

Width:  |  Height:  |  Size: 4.5 KiB

@ -61,7 +61,7 @@ export const globalConfig = {
undergroundBeltMaxTilesByTier: [5, 8],
readerAnalyzeIntervalSeconds: 10,
readerAnalyzeIntervalSeconds: G_IS_DEV ? 3 : 10,
buildingSpeeds: {
cutter: 1 / 4,

@ -459,67 +459,6 @@ export function removeAllChildren(elem) {
}
}
/**
* Fixes lockstep simulation by converting times like 34.0000000003 to 34.00.
* We use 3 digits of precision, this allows us to store precision of 1 ms without
* the risking simulation errors due to resync issues
* @param {number} value
*/
export function quantizeFloat(value) {
return Math.round(value * 1000.0) / 1000.0;
}
/**
* Safe check to check if a timer is expired. quantizes numbers
* @param {number} now Current time
* @param {number} lastTick Last tick of the timer
* @param {number} tickRate Interval of the timer
*/
export function checkTimerExpired(now, lastTick, tickRate) {
if (G_IS_DEV) {
if (quantizeFloat(now) !== now) {
console.error("Got non-quantizied time:" + now + " vs " + quantizeFloat(now));
now = quantizeFloat(now);
}
if (quantizeFloat(lastTick) !== lastTick) {
// FIXME: REENABLE
// console.error("Got non-quantizied timer:" + lastTick + " vs " + quantizeFloat(lastTick));
lastTick = quantizeFloat(lastTick);
}
} else {
// just to be safe
now = quantizeFloat(now);
lastTick = quantizeFloat(lastTick);
}
/*
Ok, so heres the issue (Died a bit while debugging it):
In multiplayer lockstep simulation, client A will simulate everything at T, but client B
will simulate it at T + 3. So we are running into the following precision issue:
Lets say on client A the time is T = 30. Then on clientB the time is T = 33.
Now, our timer takes 0.1 seconds and ticked at 29.90 - What does happen now?
Client A computes the timer and checks T > lastTick + interval. He computes
30 >= 29.90 + 0.1 <=> 30 >= 30.0000 <=> True <=> Tick performed
However, this is what it looks on client B:
33 >= 32.90 + 0.1 <=> 33 >= 32.999999999999998 <=> False <=> No tick performed!
This means that Client B will only tick at the *next* frame, which means it from now is out
of sync by one tick, which means the game will resync further or later and be not able to recover,
since it will run into the same issue over and over.
*/
// The next tick, in our example it would be 30.0000 / 32.99999999998. In order to fix it, we quantize
// it, so its now 30.0000 / 33.0000
const nextTick = quantizeFloat(lastTick + tickRate);
// This check is safe, but its the only check where you may compare times. You always need to use
// this method!
return now >= nextTick;
}
/**
* Returns if the game supports this browser
*/

@ -109,6 +109,11 @@ export class ItemProcessorComponent extends Component {
* How long it takes until we are done with the current items
*/
this.secondsUntilEject = 0;
/**
* How much processing time we have lest from the last tick
*/
this.bonusFromLastTick = 0;
}
/**

@ -3,7 +3,7 @@ import { BaseItem } from "../base_item";
import { Component } from "../component";
import { typeItemSingleton } from "../item_resolver";
const chainBufferSize = 3;
const chainBufferSize = 6;
export class MinerComponent extends Component {
static getId() {

@ -25,10 +25,14 @@ export class ItemProcessorSystem extends GameSystemWithFilter {
const ejectorComp = entity.components.ItemEjector;
// First of all, process the current recipe
processorComp.secondsUntilEject = Math.max(
0,
processorComp.secondsUntilEject - this.root.dynamicTickrate.deltaSeconds
);
const newSecondsUntilEject =
processorComp.secondsUntilEject - this.root.dynamicTickrate.deltaSeconds;
processorComp.secondsUntilEject = Math.max(0, newSecondsUntilEject);
if (newSecondsUntilEject < 0) {
processorComp.bonusFromLastTick -= newSecondsUntilEject;
}
if (G_IS_DEV && globalConfig.debug.instantProcessors) {
processorComp.secondsUntilEject = 0;
@ -233,7 +237,10 @@ export class ItemProcessorSystem extends GameSystemWithFilter {
}
const baseSpeed = this.root.hubGoals.getProcessorBaseSpeed(processorComp.type);
processorComp.secondsUntilEject = 1 / baseSpeed;
// Substract one tick because we already process it this frame
processorComp.secondsUntilEject = Math.max(0, 1 / baseSpeed - processorComp.bonusFromLastTick);
processorComp.bonusFromLastTick = 0;
/** @type {Array<{item: BaseItem, requiredSlot?: number, preferredSlot?: number}>} */
const outItems = [];

@ -45,13 +45,17 @@ export class MinerSystem extends GameSystemWithFilter {
}
}
if (this.root.time.isIngameTimerExpired(minerComp.lastMiningTime, 1 / miningSpeed)) {
const mineDuration = 1 / miningSpeed;
const timeSinceMine = this.root.time.now() - minerComp.lastMiningTime;
if (timeSinceMine > mineDuration) {
// Store how much we overflowed
const buffer = Math.min(timeSinceMine - mineDuration, this.root.dynamicTickrate.deltaSeconds);
if (this.tryPerformMinerEject(entity, minerComp.cachedMinedItem)) {
// Analytics hook
this.root.signals.itemProduced.dispatch(minerComp.cachedMinedItem);
// Actually mine
minerComp.lastMiningTime = this.root.time.now();
// Store mining time
minerComp.lastMiningTime = this.root.time.now() - buffer;
}
}
}

@ -6,10 +6,8 @@ import { types, BasicSerializableObject } from "../../savegame/serialization";
import { RegularGameSpeed } from "./regular_game_speed";
import { BaseGameSpeed } from "./base_game_speed";
import { PausedGameSpeed } from "./paused_game_speed";
import { FastForwardGameSpeed } from "./fast_forward_game_speed";
import { gGameSpeedRegistry } from "../../core/global_registries";
import { globalConfig } from "../../core/config";
import { checkTimerExpired, quantizeFloat } from "../../core/utils";
import { createLogger } from "../../core/logging";
const logger = createLogger("game_time");
@ -64,15 +62,6 @@ export class GameTime extends BasicSerializableObject {
return this.timeSeconds * 1000.0;
}
/**
* Safe check to check if a timer is expired. quantizes numbers
* @param {number} lastTick Last tick of the timer
* @param {number} tickRateSeconds Interval of the timer in seconds
*/
isIngameTimerExpired(lastTick, tickRateSeconds) {
return checkTimerExpired(this.timeSeconds, lastTick, tickRateSeconds);
}
/**
* Returns how many seconds we are in the grace period
* @returns {number}
@ -141,7 +130,7 @@ export class GameTime extends BasicSerializableObject {
}
// Step game time
this.timeSeconds = quantizeFloat(this.timeSeconds + this.root.dynamicTickrate.deltaSeconds);
this.timeSeconds += this.root.dynamicTickrate.deltaSeconds;
// Game time speed changed, need to abort since our logic steps are no longer valid
if (speedAtStart.getId() !== this.speed.getId()) {
@ -206,9 +195,6 @@ export class GameTime extends BasicSerializableObject {
this.realtimeAdjust = this.realtimeSeconds - performance.now() / 1000.0;
this.updateRealtimeNow();
// Make sure we have a quantizied time
this.timeSeconds = quantizeFloat(this.timeSeconds);
this.speed.initializeAfterDeserialize(this.root);
}
}

@ -126,6 +126,9 @@ export const autosaveIntervals = [
const refreshRateOptions = ["60", "75", "100", "120", "144", "165", "250", "500"];
if (G_IS_DEV) {
refreshRateOptions.unshift("30");
refreshRateOptions.unshift("10");
refreshRateOptions.unshift("5");
refreshRateOptions.push("1000");
refreshRateOptions.push("2000");
refreshRateOptions.push("5000");

Loading…
Cancel
Save