From e2ae2e4f71e192446a373336ef8a90b00283eb1d Mon Sep 17 00:00:00 2001 From: Anuken Date: Mon, 14 Apr 2025 23:20:29 -0400 Subject: [PATCH] Tiled background for tiled logic display --- .../blocks/logic/tile-logic-display-back.png | Bin 0 -> 121 bytes .../blocks/logic/tile-logic-display.png | Bin 121 -> 241 bytes .../tiled-display/tile-logic-display-0.png | Bin 0 -> 394 bytes .../tiled-display/tile-logic-display-1.png | Bin 0 -> 331 bytes .../tiled-display/tile-logic-display-10.png | Bin 0 -> 446 bytes .../tiled-display/tile-logic-display-11.png | Bin 0 -> 402 bytes .../tiled-display/tile-logic-display-12.png | Bin 0 -> 339 bytes .../tiled-display/tile-logic-display-13.png | Bin 0 -> 322 bytes .../tiled-display/tile-logic-display-14.png | Bin 0 -> 335 bytes .../tiled-display/tile-logic-display-15.png | Bin 0 -> 352 bytes .../tiled-display/tile-logic-display-16.png | Bin 0 -> 378 bytes .../tiled-display/tile-logic-display-17.png | Bin 0 -> 452 bytes .../tiled-display/tile-logic-display-18.png | Bin 0 -> 341 bytes .../tiled-display/tile-logic-display-19.png | Bin 0 -> 366 bytes .../tiled-display/tile-logic-display-2.png | Bin 0 -> 350 bytes .../tiled-display/tile-logic-display-20.png | Bin 0 -> 376 bytes .../tiled-display/tile-logic-display-21.png | Bin 0 -> 350 bytes .../tiled-display/tile-logic-display-22.png | Bin 0 -> 415 bytes .../tiled-display/tile-logic-display-23.png | Bin 0 -> 427 bytes .../tiled-display/tile-logic-display-24.png | Bin 0 -> 352 bytes .../tiled-display/tile-logic-display-25.png | Bin 0 -> 331 bytes .../tiled-display/tile-logic-display-26.png | Bin 0 -> 390 bytes .../tiled-display/tile-logic-display-27.png | Bin 0 -> 411 bytes .../tiled-display/tile-logic-display-28.png | Bin 0 -> 392 bytes .../tiled-display/tile-logic-display-29.png | Bin 0 -> 419 bytes .../tiled-display/tile-logic-display-3.png | Bin 0 -> 407 bytes .../tiled-display/tile-logic-display-30.png | Bin 0 -> 370 bytes .../tiled-display/tile-logic-display-31.png | Bin 0 -> 357 bytes .../tiled-display/tile-logic-display-32.png | Bin 0 -> 383 bytes .../tiled-display/tile-logic-display-33.png | Bin 0 -> 401 bytes .../tiled-display/tile-logic-display-34.png | Bin 0 -> 363 bytes .../tiled-display/tile-logic-display-35.png | Bin 0 -> 407 bytes .../tiled-display/tile-logic-display-36.png | Bin 0 -> 407 bytes .../tiled-display/tile-logic-display-37.png | Bin 0 -> 340 bytes .../tiled-display/tile-logic-display-38.png | Bin 0 -> 405 bytes .../tiled-display/tile-logic-display-39.png | Bin 0 -> 466 bytes .../tiled-display/tile-logic-display-4.png | Bin 0 -> 431 bytes .../tiled-display/tile-logic-display-40.png | Bin 0 -> 402 bytes .../tiled-display/tile-logic-display-41.png | Bin 0 -> 394 bytes .../tiled-display/tile-logic-display-42.png | Bin 0 -> 365 bytes .../tiled-display/tile-logic-display-43.png | Bin 0 -> 375 bytes .../tiled-display/tile-logic-display-44.png | Bin 0 -> 378 bytes .../tiled-display/tile-logic-display-45.png | Bin 0 -> 385 bytes .../tiled-display/tile-logic-display-46.png | Bin 0 -> 424 bytes .../tiled-display/tile-logic-display-5.png | Bin 0 -> 372 bytes .../tiled-display/tile-logic-display-6.png | Bin 0 -> 361 bytes .../tiled-display/tile-logic-display-7.png | Bin 0 -> 344 bytes .../tiled-display/tile-logic-display-8.png | Bin 0 -> 353 bytes .../tiled-display/tile-logic-display-9.png | Bin 0 -> 396 bytes core/assets/bundles/bundle.properties | 2 + core/assets/icons/icons.properties | 1 + core/assets/logicids.dat | Bin 4728 -> 4748 bytes .../blocks/logic/TileableLogicDisplay.java | 62 +++++++++++++++++- 53 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 core/assets-raw/sprites/blocks/logic/tile-logic-display-back.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-0.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-1.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-10.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-11.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-12.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-13.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-14.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-15.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-16.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-17.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-18.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-19.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-2.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-20.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-21.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-22.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-23.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-24.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-25.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-26.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-27.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-28.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-29.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-3.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-30.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-31.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-32.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-33.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-34.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-35.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-36.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-37.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-38.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-39.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-4.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-40.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-41.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-42.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-43.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-44.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-45.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-46.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-5.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-6.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-7.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-8.png create mode 100644 core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-9.png diff --git a/core/assets-raw/sprites/blocks/logic/tile-logic-display-back.png b/core/assets-raw/sprites/blocks/logic/tile-logic-display-back.png new file mode 100644 index 0000000000000000000000000000000000000000..d3747e323c27189b89f8d71a2491dfc42054447b GIT binary patch literal 121 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdz#^NA%Cx&(BWL^R}#-1*YArY-_ z&p9$O7;qffkgPPZp`P7`ZT=O9;JceG-^89{1gb&;lb$dq$ub3gTWJ^z67_WTb6Mw< G&;$U!XddwZ literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tile-logic-display.png b/core/assets-raw/sprites/blocks/logic/tile-logic-display.png index d3747e323c27189b89f8d71a2491dfc42054447b..2f971b9f4930331fade3a80a737115d7fbed33e7 100644 GIT binary patch delta 199 zcmV;&06717@d1!Af2&DEK~z|UW1KN-$$tq28HRxZOxLd6VR-T2$-p^)fq{WxARWO1 zV_ds-2Zg33aPo41vzd@3Bot&Aw6s)c?f_)Kgf2jDN3dWMlu(di*th2pRV|W`lENyE z5d!oEqYfB#z^DU89Wd&EQ3s4VVAKJl4#3(bWME)mh)Ri~L8?VB9z4O?0CDc$TFQzQTY002ovPDHLkV1kLQ BQ#t?u delta 78 zcmey!SUJJa!`RcsF(jh(?KwwA1_O>G8aP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`z-%&UHtb4vw!3})!unLkLf@u|Gv)uY#|NDZQp4!#DHY<-JZ^r`@Um2!-pNmZCn34 zg~&bF#eSdVz+<`ZBLBJrD)p}0{!n88srV4zaO!j6-RAs9&GsMe9<8_2`oDL@pYMx4 i-S0kCuTKrm5BG;RL{~1qbTAJX#tfdWelF{r5}E*j%ixOu literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-1.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-1.png new file mode 100644 index 0000000000000000000000000000000000000000..d63b889db8dd0073f7873d2fec0a40059ae4b2bc GIT binary patch literal 331 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFba9PIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`!fD-?&tgMr|R{!{_kC}|7Z99v-Qd#=AZ9Qf4(pJbiW%aMI}x>i$N;uZJW~;`+$MO N;OXk;vd$@?2>?9qzDNK7 literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-10.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-10.png new file mode 100644 index 0000000000000000000000000000000000000000..80eae1ce667fb684e4fd3ab995a562c2d36d7e8c GIT binary patch literal 446 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFt&QSIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0?7xu2j0M3`^~y{SO7DN!`ZM3@@7ef2x&K!GeWw4< z?7YhdhW$Ug_n)mdYkeNR z``>8yX|ernup^2Uf9QV!Sz;sJ^gjt~FLOZsXYu;kzxTeIz0d4_XdRFv-SA-l$=CZ{ lW-|x;%>S}0|JSWQ%1aNc#O1f9%m&5_gQu&X%Q~loCIGi{24MgI literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-11.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-11.png new file mode 100644 index 0000000000000000000000000000000000000000..cd69557ac2613f2dd4639fb9a0b681133683e2d7 GIT binary patch literal 402 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFh+X1IEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^8G zy8ncG-Iw&)=~Z{lYjfvyo~qZ^`oDL@AM+n)K$e~FVdQ&MBb@06O#Q AlK=n! literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-12.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-12.png new file mode 100644 index 0000000000000000000000000000000000000000..f097352063753ca07abbbcca12895c1fd7c3ef18 GIT binary patch literal 339 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFiLs4IEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0&li8X-+iiHU+e$g6@R`jq7mnZ`;;XtjSub{IsgNU N!PC{xWt~$(69DyM#P9$B literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-13.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-13.png new file mode 100644 index 0000000000000000000000000000000000000000..0bd9356b6a346adec13cdee340427e263ecb1d27 GIT binary patch literal 322 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFmigjIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^8G rx?gsVZ-3*>gTe~DWM4fEVHo7 literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-14.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-14.png new file mode 100644 index 0000000000000000000000000000000000000000..1abc387ec8d5047a8c212bee9fdbbffaf38ff7e7 GIT binary patch literal 335 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFp7D)IEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^8G zy8ncG-Iw&)=~Z{lYjfvyo~qZ^`oDL@pYMx4-S4Im=aD?)HD=~jvrV`JfC0te>FVdQ I&MBb@08)UxvH$=8 literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-15.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-15.png new file mode 100644 index 0000000000000000000000000000000000000000..f695521423ed45061804a046d4a48f96494ce4b5 GIT binary patch literal 352 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFsggHIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0?7xu2j01nZcYV5FeCq$Wkbl**;`~uIl44(#B%;F& P3^@i*S3j3^P66 literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-16.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-16.png new file mode 100644 index 0000000000000000000000000000000000000000..586b51c6e92b918789c4ab9962dae8100dd47c0a GIT binary patch literal 378 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFgkj=IEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0?7xu2j01nZcYV5FeCmI;{Xe_+pGEMM;(uSAuR9MY z6BqKY8m^2~4(pGX@qcqa&+k7~udnrg?+Tj(`Tri}e~#~g@PD{ZPZ78mpPl^{7^V!K Lu6{1-oD!MaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`!fD-?*C`{|I8TH|6aEK?B9F8c;lo0u>U&I|1amW4_M4t5F%GEtabj&uKZuO{+KWL z2hze1;fX6%=Nrn8IZS$_spYee_W6gGrLqZx!BEZ;T@O1TaS?83{1OTwi{IdW6 literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-18.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-18.png new file mode 100644 index 0000000000000000000000000000000000000000..2e23c1d3e4dff53aa6488d463fb01a8bb774d91b GIT binary patch literal 341 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFv@tkIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^8G zy8ncG-Iw&)=~Z{lYjfvyo~qZ^`oDL@AM+n)aP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0&z0l8`^L}y@5XZA^}d(cpYON)n!W$W?LX#96%F_Q z9KHW+zr?}fpJ(I$aP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`!fD-?&tgMr|R{!{_kC}|7Z99v-MlA*IvH4*dDvl^UG?9PM137s{+x{RM^_gQu&X%Q~loCIH-+#Pk3F literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-20.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-20.png new file mode 100644 index 0000000000000000000000000000000000000000..e6c30aca834df119cf612d7cb84564a10bba4694 GIT binary patch literal 376 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFxq>%IEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0&li8X-+iiHU+e$g6@R`jq7G-`{C`*Po1O1|u>VB< zzeo9>YXts?|2iB0CwCtA)c;BQe|GOb%PjE6yyC8TZSK6z2m4RH-uE(_`9uG9MgD6N TUDcJq5M}Um^>bP0l+XkK8Zp}- literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-21.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-21.png new file mode 100644 index 0000000000000000000000000000000000000000..601d11fa5a79762465699564f39686ef994642c4 GIT binary patch literal 350 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFsgdGIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^8G zy8ncG-Iw&)=~Z{lYjfvyo~qZ^`oDL@AM+n)aP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`!fD-?*C`{|I8TH|6aEK?B9F8c;lo0JXdCj`|cY*`@dSqyqBf-zij=P@9_6*{GVL8 z7hs;g%ZHe{&*Js7|2u`u>%af!=>2E=IUem7pZY&8N;w|Nkm~_H)+{ z@lVX_KW?wIaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0&z0l8`^L}y@5XZA^}d(cpYON)n!W$W?LX#96%F_Q z9KHW+zr?}fpJ(I$VhdB$fvOVogoz~JfX=d#Wzp$PzWBKH3P literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-24.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-24.png new file mode 100644 index 0000000000000000000000000000000000000000..31bd464c7cc04cf159d28e5118daddbca5c719c6 GIT binary patch literal 352 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFsggHIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0&li8X-+iiHU+e$g6@R`jq6&xm!{z}Pq-dGA4H$r515F?hQAxvXaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^8G zx?g}zh>|Mar=)shaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^8G zy8ncG-Iw&)=~Z{lYjfvyo~qZ^`oDL@pYMx4-S4Ib=av8eSNXI5Gkw2P#ok|iC%8f{ zFVdQ&MBb@09IYv&;S4c literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-27.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-27.png new file mode 100644 index 0000000000000000000000000000000000000000..7b2e16d1fe8258c890de8d0ea624ff3c860d3267 GIT binary patch literal 411 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFeZ7rIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0?7xu2j01nZcYV5FeCq$Wkbl+G;jsRA8UHu;v;2#B z(eED=_E&SAZ#`8%@wHryFhhU!o!|-vt^cj-sz3PJh->kGn7#kU?LXl=-yJk(4EUM< oVaIV>)&`K$ssGhLiWz>m&+L&_&Z(cV4;bhSp00i_>zopr07f(8t^fc4 literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-28.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-28.png new file mode 100644 index 0000000000000000000000000000000000000000..2f2a7427a7157d483b6d7ad0706b866ae472432b GIT binary patch literal 392 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVF#3DCIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`!fD-?&tgMr|R{!{_kC}|7Z99v-Qd#=AZ9Qf4(pJbiW%aMGnXQ@9O=z^ZK{f9lkF1 zztQf~V*A_ce=l2qwpj6p{+HSNf84eaZ~C7Ewv;)b{ literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-29.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-29.png new file mode 100644 index 0000000000000000000000000000000000000000..32605255aba8435ace46655dce170fa998047ac3 GIT binary patch literal 419 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFlKqWIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`!fD-?*C`{|I8TH|6aEK?B9F8c;lo0u>U&I|1amW4_M4t5F%GEtabj&uKZuO{+KWL z2hze1;fX6%=}n+Obi22WQ% Jmvv4FO#l~R@Vfv2 literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-3.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-3.png new file mode 100644 index 0000000000000000000000000000000000000000..bd1b9b80321a7e294d2cba2f785867df9de4a111 GIT binary patch literal 407 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFvfYhIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`z-%&UHtb4vw!3})!unLkLf@u|Gv)uY#|NDZQp4!#DHY<-JZ^r`@Um2!-pNmZCn56 ztpB}i{aNF{%7)i+HNp)2)pvq_=sP{#2~x{Y0W{-KJ)_q7;~;bR{~ah7|KDi$X|ern s8-1<+dsqDVzUb5a?o;(t;rwt{b&aP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`!fD-?&tgMr|R{!{_kC}|7Z99v-Qd#=AZ9Qf4(pJbiW%aMHWZ==ZXG*Is4zu-e-2c z^}+rN`Tri}e~#h!*ZudI{y#H*ho}2bf`pg_{+L(ZHLuNO(E8sS_uV&sc0G%_h@jD* TCF-`ouw?Lb^>bP0l+XkKsfp3h literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-31.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-31.png new file mode 100644 index 0000000000000000000000000000000000000000..e9e5dec3069afa3be27915ae62d43217adcc290e GIT binary patch literal 357 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFzR@^IEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^8G zy8ncG-Iw&)=~Z{lYjfvyo~qZ^`oDL@pYMx4-S4Ib=av8eSNXG_KVEzP!`7qqc2L9r tJ=6bZ_PrWp=fCd2pYL6t?ic^h;pN4(>d!JGJ7DlJc)I$ztaD0e0suiV&4mB} literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-32.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-32.png new file mode 100644 index 0000000000000000000000000000000000000000..06a003dc2bbf08a1d62e42145fb714acdd6709fd GIT binary patch literal 383 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFuHlVIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^8G zx?gaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`!fD-?*C`{|I8TH|6aEK?B9F8c;lo0JXdCj`|cY*`@dSqyqBf-zij=P@9_6*{GVL8 z7hs;g%ZHe{&*Js7|2u`u>%af!=>2E=IUem7pZY&84w;^SNfvSLuD* wew=rQ7;yz`dL7tx^@dvi_pbQ!{gFK5yYu2z+fGj{0tPjMr>mdKI;Vst0Nys{nE(I) literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-34.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-34.png new file mode 100644 index 0000000000000000000000000000000000000000..6e4e7d8bc648e196b8f9e20e683058cb4823cc65 GIT binary patch literal 363 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFdBKfIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^8G zy8ncG-Iw&)=~Z{lYjfvyo~qZ^`oDL@AM+n)+|7Z5S8f5do?!ce#U7zk3|IZP$o#*y~l*4hrKxFWA^>bP0 Hl+XkKsp8QH literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-35.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-35.png new file mode 100644 index 0000000000000000000000000000000000000000..d405a66941c74cb89dc1b4267906620df7de9ead GIT binary patch literal 407 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFvfYhIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0?7xu2j0M3`^~y{SO7DN!`ZM3@@7ef2x&K!GeWw4< z?7YhdhW$Ug_n)mdYkeNR v`~MSa#4nKPciw{?q3`x|zxdSuaetK8i%7Bu?p`t*7~l+^u6{1-oD!M<1Lp9{ literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-36.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-36.png new file mode 100644 index 0000000000000000000000000000000000000000..b5dcd96de167185da07f026043802034906a4b20 GIT binary patch literal 407 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFvfYhIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`z-%&UHtb4vw!3})!unLkLf@u|Gv)uY#|NDZQp4!#DHY<-JZ^r`@Um2!-pNmZCn34 zg~&bF#eSdVz+<`ZBLBJrD)p}0{!n88srV4zaO!j6-RAs9&GsMe9<8_2`oDL@pYMx4 z-S0kCuTMIM`@`k^zivOXm!JASF63WzU}eMoKS%FB+b;p(f9wyEmSz(+kl73ja0X9T KKbLh*2~7YundNx^ literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-37.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-37.png new file mode 100644 index 0000000000000000000000000000000000000000..b0ad272c232fdf0d50b7cb0cff653bf56c20c3f9 GIT binary patch literal 340 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFiLy6IEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`!fD-?&tgMr|R{!{_kC}|7Z99v-Qd#=AZ9Qf4(pJbiW%aMGnXQ@9O=z|9%JjeDC^n qzxY@4`j6Xx=DPryQ~$^PQD*zVZEaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`!fD-?&tgMr|R{!{_kC}|7Z99v-MlA*IvH4*dDvm1Iu+ukiZYf5dk@zh+%==kdHl#S1^hKiS28pXI<~x$h!! z4X5fCzLu*IKHvIl_WmEY|CH}|chHm;0XwS?QDX z_gVhmy7=!8X8*`{s=f1g9@BwR{(YVQ*+LqQ+rHCehylsyyFHyL_kG85h7UWA+qVAC zS^s<4`m@G?l?|`uYJ?g3tM3H=(06*e6Qq`*0%*pedPc4D$3f=s|2t4F{=d=g(_;JE zHu_rs_pbQ!ebJ};-KXlw;BbGqy#LqjXZ9Ctx8FPXSnj*XJnpIgm9E?VP-6hO?gK-} zKkitd8!GfdFVdQ&MBb@048Guu>b%7 literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-4.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-4.png new file mode 100644 index 0000000000000000000000000000000000000000..73bc47f6c20b427f754ee4d3e672e7ab7202cf89 GIT binary patch literal 431 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFqV0`IEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`z-%&UHtb4vw!3})!unLkLf@u|Gv)uY#|NDZQp4!#DHY<-JZ^r`@Um2!-pNmZCn34 zg~&bF#eSdVz+<`ZBLBJrD)p}0{!n88srV4zaO!j6-RAs9&GsMe9<8_2`oDL@pYMx4 z-S0kCuTKVN;{1PC@0*?Pez5;U{=Y~0pKApEi2php|0j1I_tgJM`+s)tKg%re$GqaM od2Q~z&IkKXzTWpToB2aOONzq3f^8OyfDysq>FVdQ&MBb@0BoT3yZ`_I literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-40.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-40.png new file mode 100644 index 0000000000000000000000000000000000000000..d8e5ebf9ebda0347791b03801c020b9a56c4fd0a GIT binary patch literal 402 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFh+X1IEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0?7xu2j01nZcYV5FeCmI;{Xe_+pGEMM;(uSAuR9MY z6BqKY8m^3F&I$kjukvRHjl3-+HQk}SY_$R&R p-Rym4=UqPBe^Pq?%T~r8?w)JKuAS=@bO(ktgQu&X%Q~loCII_zaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0?7xu2j0M3`^~y{SO7DN!`ZM3@@7ef2x&K!GeWw4< z?7YhdhW$Ug_n)mdYEj&WT^p$F@vY8pUXO@geCwz<>eFr literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-42.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-42.png new file mode 100644 index 0000000000000000000000000000000000000000..766f4d9c4245212b4f3aa1c61354c8e802883be4 GIT binary patch literal 365 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFq(L}IEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0?7xu2j01nZcYV5FeCmI;{Xe_+pGEMM;(uSAuR9MY j6BqKY8m^3T&L3rU1MbGJmRf6o!N}n0>gTe~DWM4fUee4J literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-43.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-43.png new file mode 100644 index 0000000000000000000000000000000000000000..147fe54c61b076e87f72bd22eaeb4faf068dd9df GIT binary patch literal 375 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFxq*#IEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0&z0l8`^L}y@5XZA^}d(cpYON)n!W$W?LX#96%F_Q z9KHW+zr?}fpJ(I$aP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^8G zy8ncG-Iw&)=~Z{lYjfvyo~qZ^`oDL@AM+n)aP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0?7xu2j0M3`^~y{SO7DN!`ZM3@@7ef2x&K!GeWw4< z?7YhdhW$Ug_n)mdYaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x zd!qke&S#(Xzn85)`}f{2-uUQ0?7xu2j0M3`^~y{SO7DN!`ZM3@@7ef2x&K!GeWw4< z?7YhdhW$Ug_n)mdYaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`!fD-?&tgMr|R{!{_kC}|7Z99v-MlA*IvH4*dDvm1Iu+ukiZYHuCv@+t%y;`wTVWt9kv$?K|(k-uE*5b9@iP bEkE3UI|*D^-t2b)7@7>8u6{1-oD!M<4KvfG literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-6.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-6.png new file mode 100644 index 0000000000000000000000000000000000000000..613aaae734fb8eef0dd4a25207897d9da260ef54 GIT binary patch literal 361 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFdBHeIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^8G zx?gaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^8G zx?gaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`!fD-?&tgMr|R{!{_kC}|7Z99v-Qd#=AZ9Qf4(pJbiW%aMGnXQ@9O=z^ZK{f9lkF1 z|0mE$ka@pm@BeZ8&im5)U$*|#cYC^DeCq$WKgvty^4!j;dw&iXbPS%ZelF{r5}E)e CgwHPk literal 0 HcmV?d00001 diff --git a/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-9.png b/core/assets-raw/sprites/blocks/logic/tiled-display/tile-logic-display-9.png new file mode 100644 index 0000000000000000000000000000000000000000..88bcd3b55c7a0c1d2b58b44b3169174c5e051f26 GIT binary patch literal 396 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=hEVFa~?NIEGX(zJ0(rLB(^DilaP0T~@04zeXJ&CSiFW%ulvT<3k#!plp`%l*%Ttn^9x z`!fD-?*C`{|I8TH|6aEK?B9F8c;lo0u>U&I|1amW4_M4t5F%GEtabj&uKZuO{+KWL z2hze1;fX6%=T% b{83)_PSo==&&Nx^P-gIS^>bP0l+XkKFZ$s$ literal 0 HcmV?d00001 diff --git a/core/assets/bundles/bundle.properties b/core/assets/bundles/bundle.properties index 61dc42b9a6..b361651c4f 100644 --- a/core/assets/bundles/bundle.properties +++ b/core/assets/bundles/bundle.properties @@ -1983,6 +1983,7 @@ block.logic-processor.name = Logic Processor block.hyper-processor.name = Hyper Processor block.logic-display.name = Logic Display block.large-logic-display.name = Large Logic Display +block.tile-logic-display.name = Tiled Logic Display block.memory-cell.name = Memory Cell block.memory-bank.name = Memory Bank @@ -2282,6 +2283,7 @@ block.memory-cell.description = Stores information for a logic processor. block.memory-bank.description = Stores information for a logic processor. High capacity. block.logic-display.description = Displays arbitrary graphics from a logic processor. block.large-logic-display.description = Displays arbitrary graphics from a logic processor. +block.tile-logic-display.description = Displays arbitrary graphics from a logic processor.\nSeamlessly connects to nearby tiled display blocks. block.interplanetary-accelerator.description = A massive electromagnetic railgun tower. Accelerates cores to escape velocity for interplanetary deployment. block.repair-turret.description = Continuously repairs the closest damaged unit in its vicinity. Optionally accepts coolant. diff --git a/core/assets/icons/icons.properties b/core/assets/icons/icons.properties index bf5c4dd164..8034be5937 100755 --- a/core/assets/icons/icons.properties +++ b/core/assets/icons/icons.properties @@ -599,3 +599,4 @@ 63083=landing-pad|block-landing-pad-ui 63082=stone-vent|block-stone-vent-ui 63081=basalt-vent|block-basalt-vent-ui +63080=tile-logic-display|block-tile-logic-display-ui diff --git a/core/assets/logicids.dat b/core/assets/logicids.dat index e690bd925b0a1118cbe7a2d1594f971da990e457..6e88d612e3c1b59d8746e13cb7fae4bf8a763da5 100644 GIT binary patch delta 36 rcmeyN(xb}6$g+`XKEJR~NoG!}ZccuBX0mQdW^qAIV&&!q{5O~Y*JTW& delta 16 XcmeBC{h`9d$h?thKL6&e{MVTPEzAXl diff --git a/core/src/mindustry/world/blocks/logic/TileableLogicDisplay.java b/core/src/mindustry/world/blocks/logic/TileableLogicDisplay.java index cb6d12a2e2..b511c8224a 100644 --- a/core/src/mindustry/world/blocks/logic/TileableLogicDisplay.java +++ b/core/src/mindustry/world/blocks/logic/TileableLogicDisplay.java @@ -4,11 +4,14 @@ import arc.*; import arc.graphics.*; import arc.graphics.g2d.*; import arc.graphics.gl.*; +import arc.math.geom.*; import arc.scene.ui.layout.*; import arc.struct.*; import arc.util.*; import mindustry.*; +import mindustry.annotations.Annotations.*; import mindustry.graphics.*; +import mindustry.world.*; import static mindustry.Vars.*; @@ -19,6 +22,27 @@ public class TileableLogicDisplay extends LogicDisplay{ //in tiles public int maxDisplayDimensions = 12; + public @Load(value = "@-#", length = 47) TextureRegion[] tileRegion; + public @Load("@-back") TextureRegion backRegion; + + static final int[] bitmasks = { + 39, 36, 39, 36, 27, 16, 27, 24, 39, 36, 39, 36, 27, 16, 27, 24, + 38, 37, 38, 37, 17, 41, 17, 43, 38, 37, 38, 37, 26, 21, 26, 25, + 39, 36, 39, 36, 27, 16, 27, 24, 39, 36, 39, 36, 27, 16, 27, 24, + 38, 37, 38, 37, 17, 41, 17, 43, 38, 37, 38, 37, 26, 21, 26, 25, + 3, 4, 3, 4, 15, 40, 15, 20, 3, 4, 3, 4, 15, 40, 15, 20, + 5, 28, 5, 28, 29, 10, 29, 23, 5, 28, 5, 28, 31, 11, 31, 32, + 3, 4, 3, 4, 15, 40, 15, 20, 3, 4, 3, 4, 15, 40, 15, 20, + 2, 30, 2, 30, 9, 46, 9, 22, 2, 30, 2, 30, 14, 44, 14, 6, + 39, 36, 39, 36, 27, 16, 27, 24, 39, 36, 39, 36, 27, 16, 27, 24, + 38, 37, 38, 37, 17, 41, 17, 43, 38, 37, 38, 37, 26, 21, 26, 25, + 39, 36, 39, 36, 27, 16, 27, 24, 39, 36, 39, 36, 27, 16, 27, 24, + 38, 37, 38, 37, 17, 41, 17, 43, 38, 37, 38, 37, 26, 21, 26, 25, + 3, 0, 3, 0, 15, 42, 15, 12, 3, 0, 3, 0, 15, 42, 15, 12, + 5, 8, 5, 8, 29, 35, 29, 33, 5, 8, 5, 8, 31, 34, 31, 7, + 3, 0, 3, 0, 15, 42, 15, 12, 3, 0, 3, 0, 15, 42, 15, 12, + 2, 1, 2, 1, 9, 45, 9, 19, 2, 1, 2, 1, 14, 18, 14, 13, + }; public TileableLogicDisplay(String name){ super(name); @@ -84,6 +108,8 @@ public class TileableLogicDisplay extends LogicDisplay{ //size of display area public int tilesWidth = 1, tilesHeight = 1, originX, originY; + public int bits = 0; + @Override public void display(Table table){ super.display(table); @@ -93,9 +119,23 @@ public class TileableLogicDisplay extends LogicDisplay{ } } + @Override + public void onProximityUpdate(){ + super.onProximityUpdate(); + + bits = 0; + + for(int i = 0; i < 8; i++){ + Tile other = tile.nearby(Geometry.d8(i)); + if(other != null && other.block() == block && other.team() == team){ + bits |= (1 << i); + } + } + } + @Override public void draw(){ - Draw.rect(block.region, x, y); + Draw.rect(backRegion, x, y); //don't even bother processing anything when displays are off. if(!Vars.renderer.drawDisplays) return; @@ -113,6 +153,9 @@ public class TileableLogicDisplay extends LogicDisplay{ processCommands(); } + Draw.z(Layer.block + 0.001f); + + //TODO this is slow, many texture switches Draw.blend(Blending.disabled); Draw.draw(Draw.z(), () -> { if(rootDisplay.buffer != null){ @@ -124,6 +167,10 @@ public class TileableLogicDisplay extends LogicDisplay{ } }); Draw.blend(); + + Draw.z(Layer.block + 0.002f); + + Draw.rect(tileRegion[bitmasks[bits]], x, y); } @Override @@ -135,11 +182,22 @@ public class TileableLogicDisplay extends LogicDisplay{ } } + public void updateOthers(){ + for(int i = 0; i < 4; i++){ + Tile other = tile.nearby(Geometry.d8edge(i)); + if(other != null && other.block() == block && other.team() == team){ + other.build.onProximityUpdate(); + } + } + } + @Override public void onProximityAdded(){ super.onProximityAdded(); linkDisplays(this); + + updateOthers(); } @Override @@ -153,6 +211,8 @@ public class TileableLogicDisplay extends LogicDisplay{ linkDisplays(tl); } } + + updateOthers(); } public boolean isRoot(){