From a2d0a12c1abd196c4d7ef57c2eb2e9d21bbe575c Mon Sep 17 00:00:00 2001 From: Dominic Masters Date: Wed, 1 Jul 2026 15:58:59 -0500 Subject: [PATCH] more editor stuff --- assets/chunks/0_0_0.dcf | Bin 4194 -> 4194 bytes assets/chunks/2_0_0.dcf | Bin 0 -> 4150 bytes assets/meshes/chunks/chunk_0_0_0_0.dmf | Bin 28932 -> 28932 bytes assets/meshes/chunks/chunk_2_0_0_0.dmf | Bin 0 -> 30252 bytes assets/models/chunks/chunk_2_0_0_0.json | 10 + assetsraw/chunks/chunk_0_0_0.json | 1556 ++++++++-------- assetsraw/chunks/chunk_2_0_0.json | 2273 +++++++++++++++++++++++ editor/client/public/map/index.html | 5 +- editor/client/public/map/map.js | 77 +- src/dusk/ui/frame/uisettings.c | 18 +- 10 files changed, 3152 insertions(+), 787 deletions(-) create mode 100644 assets/chunks/2_0_0.dcf create mode 100644 assets/meshes/chunks/chunk_2_0_0_0.dmf create mode 100644 assets/models/chunks/chunk_2_0_0_0.json create mode 100644 assetsraw/chunks/chunk_2_0_0.json diff --git a/assets/chunks/0_0_0.dcf b/assets/chunks/0_0_0.dcf index aa2959c7afb6cc79a8c149bc1461245be6ad02c6..8c91ef16e2178de87b46214d67e4b89abfa1f919 100644 GIT binary patch delta 181 zcmaE)@JL}p4CCYtOdPyS3=9l#Jb5FN_T&#t9FrwjL?-`WQo+eKVCLXu0qO){4j^Wj z{E^8TtojR+1)K(|+HAs{!!$8LVxo`8WCa!xEG(6Y2^H1fl@= CAuzK5 delta 59 zcmaE)@JL}p4CCYg<{dyhXL1Z9$K(n|m5B->ljne#OePZ*SSH6Xacs6=&S2WCz!JhZ MF@a_C54J2$0AKtP;{X5v diff --git a/assets/chunks/2_0_0.dcf b/assets/chunks/2_0_0.dcf new file mode 100644 index 0000000000000000000000000000000000000000..51ef0e9ce0cb0e99d982f7d0312227a1307e7340 GIT binary patch literal 4150 zcmZ>9c4J^>U|?Vz#RD1!z~Bc1a^rzg{p8v^s&9DY9a#DqrAI?xGz3ONU^E0qLtr!n tMnhmU1V%$(Gz5l!2r%a6r=;c->nCTF=4C^vc%yg&5Y)>m&d);$0sxYh4SN6p literal 0 HcmV?d00001 diff --git a/assets/meshes/chunks/chunk_0_0_0_0.dmf b/assets/meshes/chunks/chunk_0_0_0_0.dmf index 1271d94d07ec2d13fde5c2a167fb278f0cc67f30..0454d8ab68f41118bd98b533a89a0e5de835103f 100644 GIT binary patch delta 3355 zcma)8ziS*v6kf;Jh2oeAh|OgsnY|wh!WLnP1ac(f8_6K+j8V>wt}%ykk;2tgDYILc z6b=M)uL~g&DN>{|9Jnwpu2QK|7+1zc3jYBqT$sG??ac1n-YiZr+|GC3uX#Hs^!V+$ z$8XO)3!9&0U7CIw(L(bQ9(D5&A5WWKg;_TUrZ>&f{K<>IdKN|W^^&50n+i;9-#0G_ z`;B40DcM;oqG2lrGi&9Zf$gBr(fBO7 z8PSt9nb>qKG#TU7kWR04#A7|Ag>?jvS0nmyRZaHS9XA;PJ7EOuHeKWSC;9x7kdCfN z+0lC~dm)mgcWJYX<8KGRl<+k#2TU_oN>A@bS+j+SiF1M3|TyB%g z?YumX+N1rDqVC<|Wx^OIHpYn#>8CB}fyWo!jxcc=FmW2gd~lm1v@r4bZhw(}xUPf^ zrmT`3?}qpq4eVwhQH$Jx+TaYTav07Vf+%#oCBeJsd34aHuBF2d^4*v8mFG9p`@;IR+d9&aV~!9_D^;^}N|D zne(8B*OV7>gKm(DDc+3(N+Do2Sj^_dULLs6SuKamW#A2?jM`1hV1N+gl6*|;;{kI^ zmmy_FY=UEZ;FJM?5CgQqbz&c{T4pYU{Sy<6TQ@c12bMw%&<59ueY|QJUx+rr+6e{* zEn{gBTqicf8D6!_l+A$QWcDD~%c@`j!Wj#=P}WUZR3n}x<~(2s$;BoBdd6(9=okaX z#ef5w(WV};k0_=bV#U4?g_E(Ldx3$03(TiYZNoZZwTv$$Ho>uTVqnk$v%wy1D!1Q9 z1m?DeAx`IpBnERYFfeF=+2A^DfcIY|LhQEog=prWjCM{83|e3|xK3N}QYL3C^0mgr z1aYcMLxcjuYqKH1l)*4D_|<8vyc9%$2(e;c2ts8!r^6mv6#1Ce$73x2{adjwM1%-( zf`Q3$g6p(Co_LBj&BrA`B_!rOOk*b)7`VV}={l{C2Mju^jq&%t8j=_+ae{$C46G2> zXnj0jZfW=-H+4g_0ksnh3}Rq5*ov!K9}gIKRvQ~XQzk8Lf0c+3kRb*+GkfrixX}7| zz`(Ow_*FA>_fzL|^hfWD&k-|21^TT;|8G#iqn~?ApJ68pb%0RRQ}lgrk^bcM`=~*W hc#qF9@A2I)y#@{Y^8aw3|B3sxujpj7On;4r{{djTg=YW& delta 2506 zcmaJ@L1-IC6y4awhmx47S*(quG?Kh=EfXo54M?j(EahMdt(q1Gawycah4$D8A95(c zf)ISjp#eY0A%qrs=phBSRM10XQqx1OfgVhoL*we;Ln&>^A;+};eU0Q@v+BSwvv1yi z|Nr@aSGw6hab1>f&$FkaShUSPi2Za-tdu)M_Mj zal4e^^{7U{Y7|sMPE;d-T8)G*o{ENCrD_CLBTx-FQH=y@H4?h$&SkLSySP!2DP@s0 zMenh&)_f`6f{(4T6s~NrQO;xiwCPfbPz-enk(zS5Dxk z=-^XnajDLaQD)R>1MfH!%9l_&Y&G;Tecr=eX{h}$kKd}Mw;M{QtzGbNzt$dAm3HhX zg9r5-_G<+;K5_wjRGer1qaeUrIY#M>nO()Y(?_9jw0NR^7t%@ zy1W6h4rfLzep3NC7So%SS~zd$puHszgN_U1K;lt|QK6y0Vgi%%o@ zf70;}xj)s&p}*|m$yNC`BkN*E?)wv?p{zH3R9jx}hvqLwvDS9+ofPKbvca7d9}JF{5o_!H72|A@*vohht$j`jM>ttmXaEJbR!hiCWN^SJbu*L%|b)03cFJi6-Q I`_85R04Al#;{X5v diff --git a/assets/meshes/chunks/chunk_2_0_0_0.dmf b/assets/meshes/chunks/chunk_2_0_0_0.dmf new file mode 100644 index 0000000000000000000000000000000000000000..53ea64dd73537d83ec8dd989ef3e8b153544e7f4 GIT binary patch literal 30252 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 K%f-z9@BSZW;m7F! literal 0 HcmV?d00001 diff --git a/assets/models/chunks/chunk_2_0_0_0.json b/assets/models/chunks/chunk_2_0_0_0.json new file mode 100644 index 00000000..8b720701 --- /dev/null +++ b/assets/models/chunks/chunk_2_0_0_0.json @@ -0,0 +1,10 @@ +{ + "mesh": "meshes/chunks/chunk_2_0_0_0.dmf", + "color": [ + 255, + 255, + 255, + 255 + ], + "texture": "tiles.png" +} \ No newline at end of file diff --git a/assetsraw/chunks/chunk_0_0_0.json b/assetsraw/chunks/chunk_0_0_0.json index 78d4c53e..c84b7cdd 100644 --- a/assetsraw/chunks/chunk_0_0_0.json +++ b/assetsraw/chunks/chunk_0_0_0.json @@ -636,778 +636,58 @@ 5, 0 ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 6, - 5, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 7, - 5, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 8, - 5, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 9, - 5, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 10, - 5, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 11, - 5, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 12, - 5, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 13, - 5, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 14, - 5, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 15, - 5, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 0, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 1, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 2, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 3, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 4, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 5, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 6, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 7, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 8, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 9, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 10, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 11, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 12, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 13, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 14, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 15, - 6, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 0, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 1, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 2, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 3, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 4, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 5, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 6, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 7, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 8, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 9, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 10, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 11, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 12, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 13, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 14, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 15, - 7, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 0, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 1, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 2, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 3, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 4, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 5, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 6, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 7, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 8, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 9, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 10, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 11, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 12, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 13, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 14, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 15, - 8, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 0, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 1, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 2, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 3, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 4, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 5, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 6, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 7, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 8, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 9, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 10, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 11, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 12, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 13, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 14, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 15, - 9, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 0, - 10, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 1, - 10, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 2, - 10, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 3, - 10, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 4, - 10, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 5, - 10, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 6, - 10, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 7, - 10, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 8, - 10, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 9, - 10, - 0 - ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 10, - 10, - 0 - ], "type": 6, "tile": 0 }, { "pos": [ - 11, + 6, + 5, + 0 + ], + "type": 2, + "tile": 0 + }, + { + "pos": [ + 7, + 5, + 0 + ], + "type": 2, + "tile": 0 + }, + { + "pos": [ + 8, + 5, + 0 + ], + "type": 2, + "tile": 0 + }, + { + "pos": [ + 9, + 5, + 0 + ], + "type": 2, + "tile": 0 + }, + { + "pos": [ 10, + 5, + 0 + ], + "type": 2, + "tile": 0 + }, + { + "pos": [ + 11, + 5, 0 ], "type": 2, @@ -1416,12 +696,534 @@ { "pos": [ 12, - 10, + 5, 0 ], "type": 7, "tile": 0 }, + { + "pos": [ + 13, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 6, + 0 + ], + "type": 3, + "tile": 0 + }, + { + "pos": [ + 12, + 6, + 0 + ], + "type": 5, + "tile": 0 + }, + { + "pos": [ + 13, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 7, + 0 + ], + "type": 3, + "tile": 0 + }, + { + "pos": [ + 12, + 7, + 0 + ], + "type": 5, + "tile": 0 + }, + { + "pos": [ + 13, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 8, + 0 + ], + "type": 3, + "tile": 0 + }, + { + "pos": [ + 12, + 8, + 0 + ], + "type": 5, + "tile": 0 + }, + { + "pos": [ + 13, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 9, + 0 + ], + "type": 8, + "tile": 0 + }, + { + "pos": [ + 6, + 9, + 0 + ], + "type": 4, + "tile": 0 + }, + { + "pos": [ + 7, + 9, + 0 + ], + "type": 4, + "tile": 0 + }, + { + "pos": [ + 8, + 9, + 0 + ], + "type": 4, + "tile": 0 + }, + { + "pos": [ + 9, + 9, + 0 + ], + "type": 8, + "tile": 0 + }, + { + "pos": [ + 12, + 9, + 0 + ], + "type": 5, + "tile": 0 + }, + { + "pos": [ + 13, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 10, + 0 + ], + "type": 3, + "tile": 0 + }, + { + "pos": [ + 12, + 10, + 0 + ], + "type": 5, + "tile": 0 + }, { "pos": [ 13, @@ -1536,15 +1338,6 @@ 11, 0 ], - "type": 1, - "tile": 0 - }, - { - "pos": [ - 10, - 11, - 0 - ], "type": 3, "tile": 0 }, @@ -1671,7 +1464,7 @@ 12, 0 ], - "type": 1, + "type": 8, "tile": 0 }, { @@ -1680,7 +1473,7 @@ 12, 0 ], - "type": 8, + "type": 4, "tile": 0 }, { @@ -2160,6 +1953,213 @@ "type": 1, "tile": 0 }, + { + "pos": [ + 6, + 6, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 6, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 6, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 6, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 6, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 6, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 7, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 7, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 7, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 7, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 7, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 7, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 8, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 8, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 8, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 8, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 8, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 8, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 9, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 9, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 10, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 10, + 1 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 11, + 1 + ], + "type": 1, + "tile": 0 + }, { "pos": [ 11, diff --git a/assetsraw/chunks/chunk_2_0_0.json b/assetsraw/chunks/chunk_2_0_0.json new file mode 100644 index 00000000..558b76ca --- /dev/null +++ b/assetsraw/chunks/chunk_2_0_0.json @@ -0,0 +1,2273 @@ +{ + "tiles": [ + { + "pos": [ + 0, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 0, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 1, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 2, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 3, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 4, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 5, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 6, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 7, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 8, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 9, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 10, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 11, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 12, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 13, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 14, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 0, + 15, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 1, + 15, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 2, + 15, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 3, + 15, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 4, + 15, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 5, + 15, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 6, + 15, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 7, + 15, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 8, + 15, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 9, + 15, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 10, + 15, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 11, + 15, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 12, + 15, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 13, + 15, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 14, + 15, + 0 + ], + "type": 1, + "tile": 0 + }, + { + "pos": [ + 15, + 15, + 0 + ], + "type": 1, + "tile": 0 + } + ], + "meshes": [] +} \ No newline at end of file diff --git a/editor/client/public/map/index.html b/editor/client/public/map/index.html index 093d8e86..29761658 100644 --- a/editor/client/public/map/index.html +++ b/editor/client/public/map/index.html @@ -52,7 +52,10 @@ 0
-
+
+ +
+
diff --git a/editor/client/public/map/map.js b/editor/client/public/map/map.js index 52adedb8..43cce2da 100644 --- a/editor/client/public/map/map.js +++ b/editor/client/public/map/map.js @@ -74,6 +74,7 @@ let zoomWorldH = 20; let dirty = false; let hoverTile = null; + let fillMode = false; let mapRenderer = null; let terrainMesh = null; @@ -462,13 +463,63 @@ renderPreview(); } + // 4-connected flood fill of same-type tiles at the current Z-level, + // starting from (startX, startY), replacing them with selectedShape. + function floodFill(startX, startY) { + const targetType = tiles[ChunkTerrain.tileIndex(startX, startY, currentZLevel)]; + if(targetType === selectedShape) return; + + const stack = [[startX, startY]]; + const visited = new Set(); + while(stack.length) { + const [x, y] = stack.pop(); + const key = `${x},${y}`; + if(visited.has(key)) continue; + if(x < 0 || x >= ChunkTerrain.CHUNK_WIDTH || y < 0 || y >= ChunkTerrain.CHUNK_HEIGHT) continue; + visited.add(key); + + const idx = ChunkTerrain.tileIndex(x, y, currentZLevel); + if(tiles[idx] !== targetType) continue; + tiles[idx] = selectedShape; + stack.push([x + 1, y], [x - 1, y], [x, y + 1], [x, y - 1]); + } + } + + function fillAt(e) { + const canvas = document.getElementById("gridCanvas"); + const t = canvasToTile(e, canvas); + if(!t) return; + pushUndo(); + floodFill(t.x, t.y); + markDirty(); + renderGrid(); + renderPreview(); + } + function rebuildTerrainMesh() { const floats = ChunkTerrain.buildTerrainVerts(tiles); terrainMesh = floats.length ? mapRenderer.createMesh(floats) : null; } + // Keeps the preview canvas's backing-store resolution matched to its + // actual displayed CSS size (times devicePixelRatio) - the canvas + // otherwise stays at its fixed width/height attributes (512x512) while + // CSS stretches it to fill the column, which upscales and blurs the + // WebGL output on wider or high-DPI screens. + function resizePreviewCanvas() { + const canvas = document.getElementById("previewCanvas"); + const dpr = window.devicePixelRatio || 1; + const displayWidth = Math.max(1, Math.round(canvas.clientWidth * dpr)); + const displayHeight = Math.max(1, Math.round(canvas.clientHeight * dpr)); + if(canvas.width !== displayWidth || canvas.height !== displayHeight) { + canvas.width = displayWidth; + canvas.height = displayHeight; + } + } + async function renderPreview() { if(!mapRenderer) return; + resizePreviewCanvas(); rebuildTerrainMesh(); const models = []; @@ -604,6 +655,11 @@ let draggingMeshIndex = -1; gridCanvas.addEventListener("mousedown", (e) => { + if(fillMode) { + fillAt(e); + return; + } + const hit = hitTestMesh(e, gridCanvas); pushUndo(); if(hit !== -1) { @@ -657,8 +713,18 @@ document.getElementById("navUp").addEventListener("click", () => goToChunk(coord.x, coord.y, coord.z + 1)); document.getElementById("navDown").addEventListener("click", () => goToChunk(coord.x, coord.y, coord.z - 1)); - document.getElementById("btnSave").addEventListener("click", () => { + function runSave() { saveChunk().catch((e) => updateStatus(`Save failed: ${e.message}`, true)); + } + + document.getElementById("btnSave").addEventListener("click", runSave); + + document.getElementById("fillToggle").addEventListener("click", () => { + fillMode = !fillMode; + const btn = document.getElementById("fillToggle"); + btn.textContent = fillMode ? "Fill: On" : "Fill: Off"; + btn.classList.toggle("btn-secondary", fillMode); + btn.classList.toggle("btn-outline-secondary", !fillMode); }); document.getElementById("btnAddMesh").addEventListener("click", () => { @@ -683,10 +749,17 @@ renderPreview(); }, { passive: false }); + window.addEventListener("resize", () => renderPreview()); + window.addEventListener("keydown", (e) => { - if((e.ctrlKey || e.metaKey) && e.key.toLowerCase() === "z") { + if(!(e.ctrlKey || e.metaKey)) return; + const key = e.key.toLowerCase(); + if(key === "z") { e.preventDefault(); undo(); + } else if(key === "s") { + e.preventDefault(); + runSave(); } }); } diff --git a/src/dusk/ui/frame/uisettings.c b/src/dusk/ui/frame/uisettings.c index 110408ae..e95073e2 100644 --- a/src/dusk/ui/frame/uisettings.c +++ b/src/dusk/ui/frame/uisettings.c @@ -10,6 +10,7 @@ #include "util/memory.h" #include "display/spritebatch/spritebatch.h" #include "display/text/text.h" +#include "display/screen/screen.h" #include "assert/assert.h" uisettings_t UI_SETTINGS; @@ -75,15 +76,20 @@ errorret_t uiSettingsInit(void) { errorret_t uiSettingsDraw(void) { if(!uiMenuIsActive(&UI_SETTINGS.menu)) errorOk(); - uint8_t rows = UI_SETTINGS_ITEM_COUNT; + const float_t width = 300.0f; + const float_t height = 300.0f; + const float_t x = (float_t)SCREEN.scanX + + ((float_t)SCREEN.scanWidth - width) * 0.5f; + const float_t y = (float_t)SCREEN.scanY + + ((float_t)SCREEN.scanHeight - height) * 0.5f; - errorChain(uiFrameDraw(0.0f, 0.0f, 300.0f, 300)); + errorChain(uiFrameDraw(x, y, width, height)); errorChain(uiMenuDraw( &UI_SETTINGS.menu, - UI_FRAME_BORDER_WIDTH, - UI_FRAME_BORDER_HEIGHT, - 300.0f - (UI_FRAME_BORDER_WIDTH * 2), - 300.0f - (UI_FRAME_BORDER_HEIGHT * 2) + x + UI_FRAME_BORDER_WIDTH, + y + UI_FRAME_BORDER_HEIGHT, + width - (UI_FRAME_BORDER_WIDTH * 2), + height - (UI_FRAME_BORDER_HEIGHT * 2) )); errorChain(spriteBatchFlush());