From 0f7a168c86c1141d9fa24f0d50333a6cd04b0671 Mon Sep 17 00:00:00 2001 From: Max Kratt Date: Fri, 2 Sep 2022 21:49:26 +0200 Subject: [PATCH 1/4] fix: fix connected tiles requiring flipped sprites This fixes the connected tiles (grass, holes, walls, etc.) from needing flipped sprites in order to be displayed correctly. Also fixes wrongly flipped sprites introduced in 8881490686ad9705b637af87ba6de0afa05f2a46 --- .../java/minicraft/gfx/ConnectorSprite.java | 24 +++++++++--------- .../java/minicraft/level/tile/CloudTile.java | 2 +- .../java/minicraft/level/tile/GrassTile.java | 2 +- .../minicraft/level/tile/HardRockTile.java | 2 +- .../java/minicraft/level/tile/HoleTile.java | 2 +- .../java/minicraft/level/tile/LavaTile.java | 2 +- .../java/minicraft/level/tile/RockTile.java | 2 +- .../java/minicraft/level/tile/SandTile.java | 2 +- .../java/minicraft/level/tile/WallTile.java | 6 ++--- .../java/minicraft/level/tile/WaterTile.java | 2 +- .../resources/resources/textures/tiles.png | Bin 10398 -> 8764 bytes 11 files changed, 23 insertions(+), 23 deletions(-) diff --git a/src/main/java/minicraft/gfx/ConnectorSprite.java b/src/main/java/minicraft/gfx/ConnectorSprite.java index fc819371f..efcc28a9d 100644 --- a/src/main/java/minicraft/gfx/ConnectorSprite.java +++ b/src/main/java/minicraft/gfx/ConnectorSprite.java @@ -58,31 +58,31 @@ public void render(Screen screen, Level level, int x, int y, int whiteTint) { if (u && l) { - if (ul || !checkCorners) full.renderPixel(1, 1, screen, x, y); - else sides.renderPixel(0, 0, screen, x, y); + if (ul || !checkCorners) full.renderPixel(0, 0, screen, x, y); + else sides.renderPixel(1, 1, screen, x, y); } else - sparse.renderPixel(l ? 1 : 2, u ? 1 : 2, screen, x, y); + sparse.renderPixel(l ? 1 : 0, u ? 1 : 0, screen, x, y); if (u && r) { - if (ur || !checkCorners) full.renderPixel(0, 1, screen, x + 8, y); - else sides.renderPixel(1, 0, screen, x + 8, y); + if (ur || !checkCorners) full.renderPixel(1, 0, screen, x + 8, y); + else sides.renderPixel(0, 1, screen, x + 8, y); } else - sparse.renderPixel(r ? 1 : 0, u ? 1 : 2, screen, x + 8, y); + sparse.renderPixel(r ? 1 : 2, u ? 1 : 0, screen, x + 8, y); if (d && l) { - if (dl || !checkCorners) full.renderPixel(1, 0, screen, x, y + 8); - else sides.renderPixel(0, 1, screen, x, y + 8); + if (dl || !checkCorners) full.renderPixel(0, 1, screen, x, y + 8); + else sides.renderPixel(1, 0, screen, x, y + 8); } else - sparse.renderPixel(l ? 1 : 2, d ? 1 : 0, screen, x, y + 8); + sparse.renderPixel(l ? 1 : 0, d ? 1 : 2, screen, x, y + 8); if (d && r) { - if (dr || !checkCorners) full.renderPixel(0, 0, screen, x + 8, y + 8); - else sides.renderPixel(1, 1, screen, x + 8, y + 8); + if (dr || !checkCorners) full.renderPixel(1, 1, screen, x + 8, y + 8); + else sides.renderPixel(0, 0, screen, x + 8, y + 8); } else - sparse.renderPixel(r ? 1 : 0, d ? 1 : 0, screen, x + 8, y + 8); + sparse.renderPixel(r ? 1 : 2, d ? 1 : 2, screen, x + 8, y + 8); } diff --git a/src/main/java/minicraft/level/tile/CloudTile.java b/src/main/java/minicraft/level/tile/CloudTile.java index 741c10750..608f16e9c 100644 --- a/src/main/java/minicraft/level/tile/CloudTile.java +++ b/src/main/java/minicraft/level/tile/CloudTile.java @@ -13,7 +13,7 @@ import minicraft.level.Level; public class CloudTile extends Tile { - private static ConnectorSprite sprite = new ConnectorSprite(CloudTile.class, new Sprite(0, 22, 3, 3, 1, 3), new Sprite(3, 24, 2, 2, 1, 3), new Sprite(3, 22, 2, 2, 1)) + private static ConnectorSprite sprite = new ConnectorSprite(CloudTile.class, new Sprite(0, 22, 3, 3, 1), new Sprite(3, 24, 2, 2, 1), new Sprite(3, 22, 2, 2, 1)) { public boolean connectsTo(Tile tile, boolean isSide) { return tile != Tiles.get("Infinite Fall"); diff --git a/src/main/java/minicraft/level/tile/GrassTile.java b/src/main/java/minicraft/level/tile/GrassTile.java index 9201e1e65..ab8340bc4 100644 --- a/src/main/java/minicraft/level/tile/GrassTile.java +++ b/src/main/java/minicraft/level/tile/GrassTile.java @@ -13,7 +13,7 @@ import minicraft.level.Level; public class GrassTile extends Tile { - private static ConnectorSprite sprite = new ConnectorSprite(GrassTile.class, new Sprite(0, 6, 3, 3, 1, 3), new Sprite(3, 6, 2, 2, 1)) + private static ConnectorSprite sprite = new ConnectorSprite(GrassTile.class, new Sprite(0, 6, 3, 3, 1), new Sprite(3, 6, 2, 2, 1)) { public boolean connectsTo(Tile tile, boolean isSide) { if(!isSide) return true; diff --git a/src/main/java/minicraft/level/tile/HardRockTile.java b/src/main/java/minicraft/level/tile/HardRockTile.java index 0279d25fe..08d68d465 100644 --- a/src/main/java/minicraft/level/tile/HardRockTile.java +++ b/src/main/java/minicraft/level/tile/HardRockTile.java @@ -20,7 +20,7 @@ public class HardRockTile extends Tile { // Theoretically the full sprite should never be used, so we can use a placeholder - private static ConnectorSprite sprite = new ConnectorSprite(HardRockTile.class, new Sprite(18, 9, 3, 3, 1, 3), new Sprite(21, 10, 2, 2, 1, 3), Sprite.missingTexture(2, 2)); + private static ConnectorSprite sprite = new ConnectorSprite(HardRockTile.class, new Sprite(18, 9, 3, 3, 1), new Sprite(21, 10, 2, 2, 1), Sprite.missingTexture(2, 2)); protected HardRockTile(String name) { super(name, sprite); diff --git a/src/main/java/minicraft/level/tile/HoleTile.java b/src/main/java/minicraft/level/tile/HoleTile.java index fe136a13d..dc5ef8dc5 100644 --- a/src/main/java/minicraft/level/tile/HoleTile.java +++ b/src/main/java/minicraft/level/tile/HoleTile.java @@ -7,7 +7,7 @@ import minicraft.level.Level; public class HoleTile extends Tile { - private static ConnectorSprite sprite = new ConnectorSprite(HoleTile.class, new Sprite(24, 6, 3, 3, 1, 3), new Sprite(27, 6, 2, 2, 1)) + private static ConnectorSprite sprite = new ConnectorSprite(HoleTile.class, new Sprite(24, 6, 3, 3, 1), new Sprite(27, 6, 2, 2, 1)) { public boolean connectsTo(Tile tile, boolean isSide) { return tile.connectsToLiquid(); diff --git a/src/main/java/minicraft/level/tile/LavaTile.java b/src/main/java/minicraft/level/tile/LavaTile.java index a58f3d194..a9cdf26c5 100644 --- a/src/main/java/minicraft/level/tile/LavaTile.java +++ b/src/main/java/minicraft/level/tile/LavaTile.java @@ -7,7 +7,7 @@ import minicraft.level.Level; public class LavaTile extends Tile { - private ConnectorSprite sprite = new ConnectorSprite(LavaTile.class, new Sprite(12, 9, 3, 3, 1, 3), Sprite.dots(0)) + private ConnectorSprite sprite = new ConnectorSprite(LavaTile.class, new Sprite(12, 9, 3, 3, 1), Sprite.dots(0)) { public boolean connectsTo(Tile tile, boolean isSide) { return tile.connectsToFluid; diff --git a/src/main/java/minicraft/level/tile/RockTile.java b/src/main/java/minicraft/level/tile/RockTile.java index 0ff7b5420..77f35f013 100644 --- a/src/main/java/minicraft/level/tile/RockTile.java +++ b/src/main/java/minicraft/level/tile/RockTile.java @@ -22,7 +22,7 @@ // This is the normal stone you see underground and on the surface, that drops coal and stone. public class RockTile extends Tile { - private ConnectorSprite sprite = new ConnectorSprite(RockTile.class, new Sprite(18, 6, 3, 3, 1, 3), new Sprite(21, 8, 2, 2, 1, 3), new Sprite(21, 6, 2, 2, 1, 3)); + private ConnectorSprite sprite = new ConnectorSprite(RockTile.class, new Sprite(18, 6, 3, 3, 1), new Sprite(21, 8, 2, 2, 1), new Sprite(21, 6, 2, 2, 1)); private boolean dropCoal = false; private int maxHealth = 50; diff --git a/src/main/java/minicraft/level/tile/SandTile.java b/src/main/java/minicraft/level/tile/SandTile.java index 035b7448b..8d72f5664 100644 --- a/src/main/java/minicraft/level/tile/SandTile.java +++ b/src/main/java/minicraft/level/tile/SandTile.java @@ -25,7 +25,7 @@ public class SandTile extends Tile { steppedOn = new Sprite(pixels); } - private ConnectorSprite sprite = new ConnectorSprite(SandTile.class, new Sprite(6, 6, 3, 3, 1, 3), normal) + private ConnectorSprite sprite = new ConnectorSprite(SandTile.class, new Sprite(6, 6, 3, 3, 1), normal) { public boolean connectsTo(Tile tile, boolean isSide) { if(!isSide) return true; diff --git a/src/main/java/minicraft/level/tile/WallTile.java b/src/main/java/minicraft/level/tile/WallTile.java index cd621232b..c8308fa60 100644 --- a/src/main/java/minicraft/level/tile/WallTile.java +++ b/src/main/java/minicraft/level/tile/WallTile.java @@ -27,9 +27,9 @@ protected WallTile(Material type) { super(type.name() + " Wall", (ConnectorSprite) null); this.type = type; switch (type) { - case Wood: sprite = new ConnectorSprite(WallTile.class, new Sprite(0, 14, 3, 3, 1, 3), new Sprite(3, 14, 2, 2, 1, 3), new Sprite(1, 15, 2, 2, 1, 0, true)); break; - case Stone: sprite = new ConnectorSprite(WallTile.class, new Sprite(10, 14, 3, 3, 1, 3), new Sprite(13, 14, 2, 2, 1, 3), new Sprite(11, 15, 2, 2, 1, 0, true)); break; - case Obsidian: sprite = new ConnectorSprite(WallTile.class, new Sprite(20, 14, 3, 3, 1, 3), new Sprite(23, 14, 2, 2, 1, 3), new Sprite(21, 15, 2, 2, 1, 0, true)); break; + case Wood: sprite = new ConnectorSprite(WallTile.class, new Sprite(0, 14, 3, 3, 1), new Sprite(3, 14, 2, 2, 1), new Sprite(1, 15, 2, 2, 1, 0, true)); break; + case Stone: sprite = new ConnectorSprite(WallTile.class, new Sprite(10, 14, 3, 3, 1), new Sprite(13, 14, 2, 2, 1), new Sprite(11, 15, 2, 2, 1, 0, true)); break; + case Obsidian: sprite = new ConnectorSprite(WallTile.class, new Sprite(20, 14, 3, 3, 1), new Sprite(23, 14, 2, 2, 1), new Sprite(21, 15, 2, 2, 1, 0, true)); break; } csprite = sprite; } diff --git a/src/main/java/minicraft/level/tile/WaterTile.java b/src/main/java/minicraft/level/tile/WaterTile.java index 8d2ada365..793ea1fb3 100644 --- a/src/main/java/minicraft/level/tile/WaterTile.java +++ b/src/main/java/minicraft/level/tile/WaterTile.java @@ -7,7 +7,7 @@ import minicraft.level.Level; public class WaterTile extends Tile { - private ConnectorSprite sprite = new ConnectorSprite(WaterTile.class, new Sprite(12, 6, 3, 3, 1, 3), Sprite.dots(/*Color.get(005, 105, 115, 115)*/ 0)) + private ConnectorSprite sprite = new ConnectorSprite(WaterTile.class, new Sprite(12, 6, 3, 3, 1), Sprite.dots(/*Color.get(005, 105, 115, 115)*/ 0)) { public boolean connectsTo(Tile tile, boolean isSide) { return tile.connectsToFluid; diff --git a/src/main/resources/resources/textures/tiles.png b/src/main/resources/resources/textures/tiles.png index 5a20a45543d70de2ca27e72c8309762961bc90cc..26c0780c5f0eee0a96e7a56881add83d8b0953ca 100644 GIT binary patch literal 8764 zcmc(FXH-*Pv-b%Bg3?8rv``cT1r($NgrGqb1w^V!RS=LSRU;CDi1aQXQvZPTBE1&@ z>C%-ZMIeAw34{P4$vr&JUH86sz3aYT-!J=|J$tV`vuDrD{>_{da$i@A`SiKd001!G zxs7@N01)sM0x-~n4>R|?XD2<62U<6Pk^%ld000N>pfn6$rEI49g&U50bqz)n=o5ub z;cs;`*gA{f>b%5z_rntz3PiimUZU)ghNGn2QPL;sRm)s5dM@gn z_w04zEV_M5nV8}+*kB;S%-F}6yg;ZM_Be0U!s$nGGWe0k)kWPth4a1Am;Pw>4Y{Gz zktCn|{Wekk;IoV-uWq7CU0`r+)2~>OUkGYU!C4LA5J)<|dWoFs}|A zzc)8auWgcvAXO+mr^?aq!RcM9&(4D83c*foHz}jt+{t3sGka%KH|SSu=v+m$7T2|q zz4vgP<;!VWiMr-j_a9Qm@Hq!lHnhRP``dGR>*J;4)qj@yRfK#|VQOTDL^G$+9`VwP z7|S`GG@mmOZ*{)fc2HOa-wYkLM6a0c23*tGsj_EC6Y|McR-=@RnkdkgHXeS@Iq->Q z{yJF^Wmm5xo6K~}YWr(0R(iMYuMnG-Q^k_Z4OCS!*t4Bz*&N# zEaP(%RMNBToLRqHs?Ir#N5sWHcB$yG#U)I8;(Zi<-6guzCaN{qobvVVIU^#nLTKXK z@;aLOV3`m$E>nUo6XS#G4`}P5_D__D18KgEb>5qL+P{{A!nkEdzJ+oB>5dUC*;n>hMjgTWmFThY>A|bb%*0_| zzAXcmAzq07MXz3`2WAhsI^eRI3moh^EP4a|UL@5|Ew7rNGC1u9OZo5|f(l%EjPab) zN7Qdin1B43kwuCeIXLjqogVhpa;_=RG$VW)FHq3`Qx|a^5UCldNcs0eRf^T>`SadG z*hYUWpXrX}Br$aRj*V?q-3lhS9Uh$456e}1VKE(!eO|>XVp6=1K!Ya}NgA95YVzA? zI&?3TnF7|4r(7{U1Y*Dj9j(!UY%jmq@=Cm=4Q1hQ zz|mX{{ypCEow=U{L78^mTck9$Pr6yRM4J-w6!n?=Cd7p!-hzp)R>$!5m9q>_7&6hJD_9+5OG)a4?yh+eA0iTKad8aUG}AGzrIYx3DmpTwcQAB2TzTmBLUZ^YXy~1XSMj~BB83Pb=^G!HqTZ&; z=b4eda}U2Rep2i)QXeG!eb|@Ej};1B;50H3w`v~~4`)B4|Bc`-VYQZQB!KN+U=B;Z zOR+t5dG?D^1n5N0)5It}-P#xGM+*>;vKHMWom;mO z=$P*~xi!@?ujWe1hN||vw4N+<-OL0$azJ`lWj`eI+!K4U>^!J%OK-U_Gp%a;Z( zU)BucwBD;fL(IjRF@?wKNj{)&mL%7oTP() z(#KGGZnaj5z>E$udij^Hzm-tU3f&FpHgdzT)y)msKTZwkwxvsqH&)=$z+KhgJnD^? z@;~aEw}#6ljX_o^Ljm>VtEGNK!pPEJG0*|)7pQk#Eizekedi}3(LI?gSmmm1!#l^h z4O#+-L^YR0%RtLSp(WNR*bA3Evp+4ja{>MJZh+_BL|!}Q)4>yFhzbA zt*na2l;zut70(90=2kQZCfrJbvc;qq8SuVU-S(JTN@k%dvIov}wd_u=tLvZlwue!@qJB-|0BfTaiDGyPR0xE?9 zE$+6Z#?6(E7unfUQ`GVWS}Gm$jc4cP^iU{KQPHU#GMTJhx6Kc1Q@eiWtiTWNm!DsY)(Lx%@7Fl&rW5VQFM5P4X5RcL z>4Yz9XN@*EhzG{G#)S?M$R>;2N5#tyal^cj!`~N-rb9Ra9*Mq~Z-u8SU0HSD;C=0R z+mUvSfMC9kSaLA%#l*8mtE<av@IQ328R_;=PcUi>n#kzvj=^MPj0Q5x@vLX6guil5|wwlKhvTl^dU05-m z26YhCVqB=K?C-Hstz^fY*9fp1Q+9S7#Km81Ogx;b-jrp}zX<_p&eJR^%KmYq;tns| zhw9WP8KbxTR)>YprSN;Y(|`&u8IO$B7Qx1h{_Pfy-t zFGXXvxPhOxOa$TJzf~OhAt? zbtkN_MaTxnZQ`fi-78ZSfnvuyFN5_q#Rx|YSZlDo|7#nz$+R7-5molDLt^HYC(Z~chXus&AE=4VSYUhCKwV0~gg+$%kr#DPVQM+@u zAz=hLh}BwNp=jN@mDkdu{&$7d894ZdGxO)HmdiH;a5x{9x43&uI`sgCLqC4&bwz7kFtfoi*nkjzie!2FJ7n z=6Ve!IUU_gElO3W&#TTENpgy_&adn(fOu&|DC)OrYrPlr=hCb{G+>~GL!91WrXC{B zdOzQ=sOS0)B}h;pQ~UG65~K}7iHTuvfXOPW-iadk`8O*bR~I&!$EQmOokGUnfIY0s zige{v+FvQYY|vP!P2;{H;{u(Et^rI+Hkzv2gcLeS1!C|nNVWn?lQlj z!EKdO2c}f+l=L}1bVD(x`r7Vsfs%UgFWPF#-j}P%`_yj+K}!OF@v~7%%j)@V6`-g; zhfMWaFX{S=X91)t9H^F!erOmrezKA(6Um)^D!7ty$fcWfTwXrCgjZ`R+E76M>S@aS zI*WbYGCf$G?jYVeSS{oOEg)mmr!gDMdHW=?6RAuQG^l!5U=jVikLb8L)!Tw>Th0Le z(yJ8|f&I12tw7_RY&pTu?ToP&h1VPgg2bGxN(aKe*_%KQV^zW;V@#*|-jJ(k#P+90 zTn@+8&VFD^JvQA|2-wdJ$g3jyXKjnBYoOLPh01iq?W9|-1ubKSeWxNOa^haj*w`j)M@(h*UhhQ1#ks;196Bj^CbfK>3?*&a0VJX$K0ta;TNO%}{ zVzq63^rCrfqGtgnCM?#BL(owA-#~?YX3VO)_2vorePufUlmlKs9yC~9uu>rpYX231 zl{3-PIt}gYob?KXpebZzBm!$_ABX^MeLmJWH|LOqFRN&7R`?SaPK0geO}`P~`6qayvZJ>s-$ zHGjT9eD*dKgsm~1tj^?k{gMW1ka4NEdCQB{`*7vmiKkHyw}$$eTUwMyUh$Q1_@h22 z=*7?IxCAQpcy+=rReSvA)z8OqJ~Dn4XJ*ILwm_te``HHRH&bz&{zr#ss?q??Kp2axWHjU(d01 zqpZh*9iRPHQpN3uGwsaX)#sR3h@?fsZf)`apUa^2a4NT%uc5n}^dv*Jf8JQZr~|pz z=zZ%TI!J#2^?~!v*VywV>$@Br%{bO#i_I%E5uI*p8)nvxFm>OBoPh3(x3?)91 zD^Pe?a`g=AE2o-kR~CqQvyi-fPHz9z96XV{I^yIVl+!tiKCo($9j>NAdGP@DR zFZz9`YiC0pPLiXZ66{_{KVG=6^+}Ls4M4gCkG=x@DmxURNzFo(LSptyA?ux8^8Ujn zKYo1U=oV2(Gwm)Ez5?7Mee}zC;qp4RTNx`$T6K$EQp1bNG@Ye%p1Cmq`MBjra>c~8 z3DDgffQY>oY>n$nyLZW2#05%^j)E&=wLdSfucroFRa4uXqG!SjYH94X>MY zA6Fkx&t2w47u9m|EV+tw&prC3sZw9Z7qQsfRb|V9q|hy2yt@t?bwIkYt^72fn#MY0 z9M$hC#nfyqq}?@MgVPJ&xq6qT4Q?hL@;3F7BxF>~As|{FeTAWJlFq)$GUHy%FN*5O zbH?C%#@{sZe?r7|?rK-Cz(dTSG34KAjs5u|0|)?JWCn}wm~)tDI+FER`L@Y@=LfV^ zvNYF-(SJm&$4D*Y20TeM9*|3Ng-)dr#d}{0U^mfznG0i(;HqQ%b7{K+XLpYJX2iB= z9|EhCw&I$Mz}k(Q`*rMxK*w39g3F_lf)H4-wA`q;$~Bd!v&tVZRMqnFbLt(8_)b8#J|2WHlxjd$V@ZDkh2~z`ePswY3DaFCz(_88>Y&1-2syv6ZmTuB9ReHsQJ-4Z}Fx+Ja&_5%B z-u9L?+$oWhaFc58rX<#k9+hsqI6L9FoUW6m$vNNMeS39cSw6zS|;# zOLhB$Lh)?Lu>}y#a$o_-;fXYP<;OYNsA(e2*;JOyH`@l)4Q4i9o|icAVFkEj^~;<$%a1>ugoXZ8A0MYVM%kBJo6X@^CBa@H79Oms^@+zb zfF9r7E7V1#Ik-XtN5}$j<5*D4X#PCfenz(<%AI~&4Kwm$WV=zw4K^8YSh2NOPiPEc z)1MZgHz)>Kw5Zyy52Jrx)v*p>JR7+RVOA=N$RAx}#3jaJUk06#3>LVS7jP$LiA-I6 zRX-i!mJW+1Y^yse-vHP``V!~vZTLWz%&}qvPzjJbT6mzi;X@5XW1R*X4ULtU=*c`I zd-sJPQppNH_C=4O0Zn>(IBY_2tEVqTa-j$s-E~w9ZCw)**)%$$Tv*!yH9yB?`Aa=i~PL^5k#`Q2=!httt!;J%gB2~`#V&hqd8z-cBX0HCAyI_Zu zPatt5y_usB`i}1Lv9oQ9!3UU zcuQmI%r1yz4h-n7ZER$lSo;2OSUfy@?dkcUzM&z%u&~cTXzEC6@mLE(_xJ)jYd9l6|DuS<+S;1? z6bcokam{bI76fVGoj2(CqB9oThBQzmoTG!1#WxMD(r%_a-l%b2XV3g+-8nNCKKQk_ z_<{SRY;f9*Pq&aO&%1s|FAyCoZE|vR|B#7u;v%IBQ%j?xqXVIH_VTL-JBw483cEq? zCCs1A6agPnQsEkLq>kYBj!A>9393J->~#A(z=j65lYz2nDLC4x(o9pLLFn(*xCDGbm{#@_iJ=7kB zv^^RmgjwYYRm3Pbk?(C(he^K~nwT!de`=$NzqishZRTV2OGab`THf|quqaQG?)=pi zz|>#owA8@m3b)17DdnRCuR3EtBQ+$Bm+ku!FmmDE#+F@p@nDI0!w28DV2YrIl6xOX z3KslYSlX;TGc$uiN#j`gXx@d)ki*LeNre35c;Dkrl7iDMVMf(yEP}4;>uIMOX+G0G zMN6*KD|fJAZ>O@(W8Qp6`&XVyu6>Hrc`LiqEFqKFr;Cr8){L_H7Ro7q?HX?9OdFem zTUT$gNykTvs)coLy4ak6+uF^{=s36LQe4@4$6+2O<|elpvJigxOb04MvXguIU}^_& zqC&5*c@;PYgKor+XbBQzs<@SSuTYd|_b@>AZ~$DE6Wjc*M- z0CXqUcKUU)zw!QIWKuC3hd!>LxcW#xOR6I3}&hvRV;9psby7c>foTuj(~x@96O+x5UkcF%Y{ z$=Rqyw0~YUMd^zJ?q|=Vd=_{VDj#ZE_JpqZQI+J7T1%}5@HWQV0=|O)*wqJl@>Kmr zenL8w?Zyyb5ml1X@f>;B+=p|Qz(sj%r>(4Qrlf{}GeKl)g4sb3>>wjZqFBbCQ(uE9 zZXs?1K3iJ~y{vkb-U3LokZ%(12G3f|q#L%9(z(v|l(WDi*IFgKfE=|am{!9JzwllF z7&unb8XEpo%?%v8t(tjniQ4^L`Ti%n+17mEm0S1(5gbe)tPYlao(e1Nn7_Ki^3lt$P?GcZ5P`k^*Cmr$_i>=?3)VEw8?zU zf5(vTSzsR!>_e~?f+Y-cL_Z~1QWh?E-S7UU;`GX95V^l)h6x_)qL)TWp?n*vrA$Mz5T=CKiv?emgDR>@t02 z>z&oUXq4@nhU8bGM`8f+)y3BOo0=VHO`Oqr+C+k{?nCChbER*Y6DL+)oSw!O$l*N& zu?|s|=eeIg*GC&^8%rlfoOX#lyZr(z6I~K>tU2KF1laxtNs@@uj5IBPT4o~BtuA&A4X;;cP<5)@P($g*RhxR%bBoE z1)QDIn_)CBy4?uI7SxuvEc@ditaOr)I7s)m@R*6u-#ZT~d$H6-sO3>H;+wL@hxB1i zVx=S|J`s%Hn~#zLBK0b=l_Uj7`=#QWW%CespkUvZG(O7s>777KO{b*-Z80(yhDPPD zD^`&LyI>KA0X%$l^5fMng;2AS+8@t<)+ww}jC&IRqfor`%yezkxBZ-s&F#XUH!=%) z9QY-|8h)p^t*E~l_@sDWIDK5m`^^~bJfFHxV)@cgkI9WxF0sfEgoTTuusDi?Y5`>0 z5PAI&)!LITK56NzubDMWU!|$~sW<4TnX6^qJD6M}hBTI;?=S7#8H0$Csl=esx%(HG zoeAV8>0hQX)iD3#k&zWh_vwDAmQ6GUto)@C+w{ag2x>|Np24t3&0PIKgr!zU3~q_X ze7w8PL>24ayDd9fM{$eR6u$pxVvV#Y_6Gq(3xx1tK?ln@vA~s2jwJGil9Cst-X=>v z_ugE2i6NLOpmLosANos0KAjG5@?Fe>-i|$i91AXW`?CrO-GVhRWrEh0V_fb7STtQd z0?6c*u>uwIdb7shXOQo`epQvBsXIu4YCBq`5N_LR39RA{V72e0KcJu%&fi{h!!&ww zJYYI)1?KHExC^xs-Q~v~$hq7c8c+t*y#Tiu8v&p@0mQceaCjaJDc!RSWgL5;2M@BSwY{4bdIFE$x0|DN70Ec1n5_yi{Y z&+-38lb^Ha=Kua~k6B}SUrp(inDepM`tYaNtoDWQ$bl<$bL-<4E%xBg(5d~6$wmEN z-;)&+k9!w8Y6p|PK!O8Qx1l#Joa(>;p>1AlY()0$aekj+Ce6V&Yr94(8r{NjrZe=iA_Z6Bcu94s>bx(R<#OeXpf`|D_*|tiB|y4` z()f|Z#vT_HvYyA`Bt?a3a4@)K{}~g%RD6(TyaX+<6lA&%-0OrEsso2vXKTP~<@MO% zeHegrw_gYFv?qE}^63m|n$RDrQmK(ut-6(ElT zfcv@=ce4l_6VXt1AWqJmY7D>x!~@N`q`|0vx$pJ=aQ$#uStRIQ1ks z6wH6LjVoD+zzeBSZjM(;_SqUu3V{CwteyM|;97vH`~m(n&^D@Z);XPoyHfG5Gs?Qb zf|lxg>T~Wdh;cv5nGBke;`?m77^9`wVgOpW`4c%H6F(ge;e(Xz1K_C~bvyxV0*ULV zz_Q=@gd1@6)2u+ZP+dMPEs)K6l5<>e2U%u#g_ywr<)!GFlK;1b<(;H2ph3EKGhPC- zD5U@YA4hO?JDk0#lCmB*om}au)l)ZH`C7&K(QakoX7-omm-cq_KqZs-d9Ae4#4QPB zdX&@RIGAWvLNXuhUKUaP;1n>UMx71NbM&A^{ROi>c`9qE>D$^53Aig@i~;Uw L>Y_?+SiSuZ&6cqK literal 10398 zcmZ8{2|QI@7xy}Ma?Q6gkJqCC$xu?saN>EQ6h%duZb_&_hERq>N>3A|q5)SjB%#4P z+}ngGbI1@C8LoMr?|0PuzTfZr?*9Gm*?X^j&faJ5wf<{5|L!w07UYxS0|3EYCVyK1 zAb1r4Dh0pTdZwOOZh2W48$w2vOdkLpcKyBMfS>(fZ18}?LI1L0E9Vbi#}peiE1AsD z?r?{d=~aJ4>4>|fd=iwAuzK~n>ZpbGWW*aWV$uV*TYH{L$2_e+ld$QYvgXTJ?C1rZR=yEs4dGa_Q{M~vgmUHu)Eha6%L1od7L z*VQ;Zvo2jP!E;b}&@Xi%V~2(isBZJwHTpi#{LbK61QT$u$M^{g*f;O`y&o=#+gs?Oq)79*8iQtEH1^C!M5LpPz7+h?HWoCVQ(j=$p}CPHnKng3Z)>SRBE0U4hcf=Qa5|H z*D}JMNisB6vTC&yg)&GDlAGN{9w`$gdPr`Kezxg+g<^eDM|B2vfKWH=Y=x>IebcYj zvv)Iv;9hNt3IKEN2}K!;sf~Z;Ox5}qdCe<8!R{=1cJ)kMR>ER##dGe$70FrS!6PL_ zS^*o+AA-!nUZ2Fmay9g{0D6(lw^XayFCNV`*9>XeaQMdrS9z_+w_4-q+Z|)vzUBv; zTOYN#^TX*0F;#O*TUyGmz88L#a6Q8Br zt&Z#zCTC@}z9e8~)48mG7t<%YKV=>5DA_NQ_?*tzbHUOPUM^;g&t2C~F3um%n5}z| zAIoBSUFNR4BzkN@W_F$88EMGR^uNuC=e<7{C0@=!wiX0^{cNnm3ewqd1-ai zY02Q!+U#5EuZ4JthfkDEvh;G#{j@UX53yB4Tk$=rL6P3SibQ6HJH{XUs5V%9zI&q{ z^L#8I^ag7qO(-X}LH zV>HkzR<{+Z$B=sLWfU(QUsyOw&8l`s=u>O6c?HB_;sApR$94vl{A%z43#2?~pn~jT zGsbb=L8LeK#s`djY%Y6tJKmo1;8*sNzWAE}Nu@1d>-(Bl!ds;Hxi4aPG_pX5eq4{xshb-Rk?S08=5BD1YT z>FI(I%X&uY?4C>2h0|*^zg~!*F0k|KFz8P9bJ*N{>p(Tv6!yG~$UZymTxse$r_b#R zewC=2=_oW8vwl&~H%Zb%8e+QUedoUX^WsO|&x#8kowdfXIjFyFUzvRH-or!R!_|H7 zrRZi%G!>l)qRlqu26d^L<5Xu=y+l>t>4d`AZsmyefnU-NI^}O4%6oS>Zp^yx4Rk*6 z@s1T?uQoshuw)T8Q>0f}^_kuwISN`o_5{|>E@{HKp|-;r^gBDNcA9fJ-n@bv&jcmx zlG-L+d{-@DM`_^rXPaxeMNWYq%D?tL|4lvjhIMIKRmvhZj z-)q;`pvxe=EjxI=Fjw40zU4@=D?L)PlH*Lxx>d>)=`azVAyLc0`lL2$hldO%3O#GKV2O(_bqm3J4w= z(BM~tOAJJt~C}XmIePunAaL znC&XY=gG=imJpxkL^KC*mNF^djOfl)`as(uUiccMM{b^&yBLZc?~Tql?>hQ%dyqzG zC>ay)3d-8}LDrdEsT0;nA93I@rFiLj*Kx z%!mM!{6^S~cu}Zg0ALlVVWpk)KW_GNaDqebbL4(<7p1UoQNqt5#PAOimWs zi;NM_AwkCC-!qXSnE7R!KD&I#$k~CY4oC*^V3vkA;>S6MLke<9&*vXIlkp~}?iC@S zw7PpT9c{M>U1bo_@!rMh{`xb1s!y+8Q(rn^F`L9wy;~*t%R$zI14|BPVuJ6A#rF+_ ztb{0;59aL_uA_w=4&VIsnw~}E*KKhxVW|esEQyOxGqZ6KU3+gFxZh3rz

j2lxgi}vK&Vl)Ylz?k6k9MBpf?D*c*&wsTd@O>@KTjQ$T0B@PU%~x^3fg)t|W;hwH2P4YG@JQaRJ#eTN=#^|mghAKt`Gq%Djl zd6n?UKMJ+4Y**2&pF|1i!xy6|-N{N7ycs_*^59mygk-e+0|b35W1J`GxZYf0s* z>vI=&=S#a6J|An3uDY*YJW=;#s{ZEQZ3dfGLS3rs1?AcMv9ZqsGEJkiT!`S4`K&HE z^4@-%?S&Qmsek$s23aF}AD$YX-0Sf5Kyvu6#3B;*D09AIDR(NxeQcyc_H+xrW871T zXX?(WC?2h);Ap^F0p&B<`?m~&O73Lr_=TiRK&6+=J=c8#hG*zEdK)j_+?)CR{i@tM z|42ef40LCYMG~m4EbV@t;ioF$tIRWpY`aXIt-Z-u&h_|VaU%?&z3fQ18!m#Ha8La- zIP>9ZMdEmG2=VT4iT7n7c9!4L`|$Xm^{3>G*P9RNNt?oJw}pVaB*YX6V`CgDg0_}c zm+slkwg3f<&Z%%frC8bn*4VCnG*SWJMD=CA1ZPlL1&A!o6x^P}U86)L{N~npU)nNv zwto)KDXL6t_g0LdvGdaS6T-Tw%6fd#8mF)xl^K%N7SK{mq37=z({EgGjMrVyf9X| zUeG6rBR@w1``bQZ&L>uipzXAgM%F^mvs$hUA2VZ7E5d9C`w<`Al{zU>!s)X)DY$*A zjdV3f6t$CHavwTXYy~d@C8Ai-aOGcQVn2erJ6$BS%K!Kv;mOTrH=wVj)EJ91>m^XD zdTg&VAwUz3T&eq@#i;i~U1%N_2)dY=f;==trC9<5?O0yipif=Y5{&78#@Qczg3yHz zypIiNVi~~Pt|USYM6ff#N;E?Roy;YNoHZx@0&Ix8j~+%~eny#bl-H~Mm1q=xY#)6> z6cSJ>0$;wIkim%9f#I!U1RvxNpa`kACvk*S$U541b#mO_;{Rzc;;Nko@ydgOs(oM8TMd*zE5R=wYMv}6 zfJ@~}{*9kUcxnzTc@?(CkX;Cv%nr6TbE6;3e4Cz@Y|m>#mMht~(5LC$!DVThKCOc} zJoLXfyh7sC`4kT16ge%4+RPPkf6d;|4p1y|uYRRw2OP86oqi7Uu2N~Ap)*euVh#Qw zcLCb2bES;~RM^&ZbS6&S;e1Lau?J8q4)nfBmVm&n5@Nj&meGi4$*#qH6MU#=_1hVN zw&-uX&^$7n=lHW%KjVl`;OsO{$2qr^3WWqr0Q86b*I$e02AF?c$^q0TTa-tlM+btU z%+p{|4m-sAD5HbuGN;YhBY+__mswRkcX0s2s-LR^OqT=<5cX_@)WO$M`=m9b!*r|4 zdVL(MbXa_Q`ZAhA0@cOOwkPm0(hyWUzQ8yBo{OhxmaP2O{cAf4=fCaGu_{^;?e1_l z7%KkA$JB~@|9QL9yzA?pK*Xt7Ypg!pn42R4U+NnVFl82>err>V%wESxe`C3Q4K3gT zp<-)@>ZuQMhWL_4GSH{55YLI>$K1e`9ntn*MP6^9W{sZ8>bi>PZojQtxXQ!oVQ9{G zg2y~3hjQ)fs>o^Lzz^gObaJwCs8KryO`|m$`A{C-Np_+FjSqMcQ^EHGyh>Zhp9LB5 zA@gFx$@q=eifa3v>uFh({O=9kXU%f~xcj=h~yHvU>TzP13+&wGo>Pl3I6U zS4k5`+T#;aaGeL}hnei7WkQJr5mJa6)Z~nsQcYlnfZ3WEvc*X<1tIep!qB@4EN;Ya z=#-=ih(boKJXmi%0^q3a(IH3|XFS2#VvP6Km#{91H6D2MYpe;Zj#iiDV|>CS5ax!T z;wnsj@<>1H+0J=KJ+bwyHc`K_o3kA;T@l&o5}Gi*+Y%U`C_{ya5gD~%@iP&$bSM;! zx{H;}Z<_E^j@=?d{IXISxD}^QHaOZChOH zBP-ctiC2aa4+th-`7z^Z?O=&8z*YVk@nw7Awm=vp|3;#SB@xoX`*mk_OJTS_F;7KJZ0<;yKafG1Lv$d7MINSv)(~hlrTtA@H6P5sf6mZfPzs%WFnsIx3Rg>XLm6_JxH8>&H%TPJ&^Omgsw-&`z?^JJRyz~GiDLz27s=- zv#G1}FuC4f;pHRY@8qwe>tzb-4leTJ3oJf&E4dx@axhq4El8&9@{;yAiQoA9H!F7a z$x6QN??lH9!TR%I1nhSyHoUApRKy&0Ueh>#Wu*H^ki{#Nf z6gmyNUYRSw?}7z{y`kP*A*1LQJjl-nzYCKU78;7-rQA7wA1s&pbeIbCdDr%jc=96Q z*{R!O*S6SM4|H(LmHfFSMt9SltuQ}xfR=^D(3kd#=dV6E3rEn z;FDKpnbY)3XL_i;bz;IP|LfPUW88nPiQVOvjNWj+ezW#$TKsrTN9DZ@>+h-A>FAU! zR@j`X4xTTb7H2Jd;I7WDJvg(iI&ha~@l&_$v*Z*J;e~;4r|rG&OEsFau{SFn7pBK7 z%}h!z7x101KRfWkOMY&|{fpFJ(y7|k@rZ*@_aM3H^Nq;TGk1F&A91VPsdb}HP6xMB2-MWX1%IF999Uv3KGain0czn3ovc#HM#j=!o z8*x)Nn<=|)gN{nyR!MgiQmWvbqh#i%M8W&@#}Kr;%HU^FdbK+lyx-~&1rbb(!4G3H z8FR;-Px`RCyZu+oY>kB-8USe#!wE*=yWiR6dnUOqlz6*#PUIep&^6;@R)x#!fGzGi z5h7imfM+SX8_#8Y?7O6uTC;*xg+0AF*gCB2-QK1^;+d`8y(2W#_?+I`ao@wjvh%gV z!AIf5n7Ox8{640Gbzmd^{0(mfN+?KsoMwzp~|vhNMjr*4qZY zzDh|yvR>vePg2LYdjtt#UK-kHe9{!jJ6?Qu%R!_8LA7J-$cK3A$h{@Krv>LMZMAzwSt1)&3R+3Y__|soENWkRgkAakMxzX(H z323&p=hD%&9Db_K! z40g~@wU`<|`;@ArVG_v{E+cO(q5UAZfYxZcUFmv+W|3KC)Zvq5Hg!W?jxGw^LB6F) z0yL(|_OEogC_HNxYnb&tLhT)5AVk`2l(JEP>NX?rubM6JLiB0j{To{R0z01TYyhpv z>5t{gkIm(^{cbN<{IYDHP>AkKO}wdM9PD3W4UsFf1ltamwu*xbtrw#w*_7!B6AB2v z3c^`xHq&-0h}>+SOo6~&VgVs&V3;F`NJ{q_A~mWIY=P{vva%#IKK~t7N;KO(`1i1v(`x4e?fy_foGl+ciEH~tFReZ_grsnH z@VG2y8aki6=zac5S5wbeK6p~Fv8l7Nm_X+x3D;=IsuEo#-kj_1uqL&PLrKpTcxms+ zOC@NkL3Xw~xHyWj#|9mt#+9bwEPzrZo)T5DUi9%Kn6l#Q%8G>;x1sZ4Pg9?m>Tz9c zIO1-^%}aZTr42JHDV*(WHEpM&8$xTUPEa`y!Wc6(5lgc&S!d-sI1YQ8m&@8)W1>A^Js`D(R%7EE>ztt`4(R zN6WUJtNEykR!N}ke5}YMwk|(iaX!$Fr$!V4=(qYbmr6LrkXF69+T8V!E_U~A@V61h zFwp9Q-O`C32+FfyEh-=dFVu-Ez|W4AJ&|k9fjK_xjt?B4SrB7x#^c#&0q@T%$czXY zk1*{nnu+}OE*yADb+8!YoCi&lzmB@-VvR_iJ^3Dj&e^E1eC((Iy&EaC)+jd>IJFn^ zMz%7PBK8IdusxAu?uNUU+8ws8OUlbVjc=Rh(a2m)$&J1L{H>GRX}S&?0zET{ll!rD`|-~~c5%tw&-dF&6{#1m zBGWHoZY+U`LifPKt|JFB159h)y0lASHDjK{TNzWt8uziyhXww2nkfCtHX`m}%F~@3 zqtf21rImVctkRbk3NqGS3u$idF8xaltRF^<_}i&3nZWxy(~^1W#g@=@Ue@~N5O;KV zI^vsD!wxl4ku0e0cKJaFJ57Dunke`#rEtT$?8n2$i_}E-G#-$R&IHy+xxs%M&B%J{FNw?Udl;r!kAN@)1v^v4CbS|RcZ9s z>B9>pUh@^NK1B<&gsBSrAy4=_TPWA7C8IKWM*4J1{1*#!_g0+J$ZxplZF8J^PM^PK z>K;S)ugWb;y@bPQl}&-OZ|yGdhfzc%2?u<|`OpH;SG=}s9i0C9GO4Y=G@`9exGBh> z=WZEiXOP~5v(itC+DLaI%JN7*DIm?1%janKXB{wXFVCEh*m3mfZF?en%if*~+pcU6 z9e=Sp_xSes%FPk#9lL5qMn3M?-Q(peOS-P<5iQ{S^OpqXRHWPetED5N;&gM?n=oS& zZmrKg|DdPFX%}}9abijA`6t_HjtgzM_qL<1#YA+-?Tvd|ka_+VX7+ZE_W1>pppe;= zB!qwSyD;VUW&@Nrc?XW-8AXQzX%XR(T>%aS=19@csNu1SF&g8`Y!_hj;r~?NK19nK zg>HN9l)HL!*Tst2srl#^7_Gx0_fln-JrAvpN7>(u`%e6!sav2=e_vif-run+M?a6x z*9GDd-*oFi6-OYTgk@S&I z;6pQcnP#^OmsWxaQuCsqoW()D%Z7WFfhX5nQd!^>X?l>Ot~jU6hb0*-R(mbEWf05T zgQML8&6Nu`L%{sPF5dVbgkGiKRnYaidcZ(%s&C%vkU-4NrE4889>4TYozyo#*rI5| z&gzq){oUqPxce%cMS+NclF3C)h}17Whg_yWu~EckY~<8?U8#9sc62#@LAw!53K|AE z9TYIxA+Q%un&FdW^MdPY{dk9z`9p+Xl+;52sHp!}QMPaN(zj+u*tX`t5YNmr^^%}; zP0%x(3kZrG;wStXGMMX5I3TZ|6fn>d{9NKC4h6C}Ofk>M!u(2(5Z-^vg($m_$Fkea#zALaH4roHF0a!unBpc09{u$ zi-_Y9LokUw^^gAqoM&vjKrbYe4=N@uJ$qF$5VjT;X&L4VE(TR$Vtpmw+=S(knw5$R~VD*8c{+cvZu^jJ!7RF zV+w44`v;u_HhI}dXPmUdc74;n(5o+%A7a(y5+j+B%x!Cw;xb3|9Xycb zTVu|NgXNQ6WPbPVnDL{A{zcV^-LdaKrao>2NFXU*q(@VSssHWzb5$k1 zHDr?YGzM3$XfpVANhg0kxODTFoo~C3*T%t@m1@trCX>9rwio(Z_5T~|)*jUTJo}#v zmYdhe)c^4hZYHp zcfy;4DtJJkmFM#!mbf(6ld=ikU!S`@wR{TVD)EF*1k8uiDB7Ciw*Co$4q+xi8zz6B zP&pNo8H)#0J`^Gr02};Z_?Y1Flhk&dAL<-(1I}6LNV6!|mX@A!{E&!}DIo%~HT=L7 z+}`N1>z555Jx8u8!Uy(V5bCZWF3H7Efgz<4FT8bPg-}xyLyY;9uO^WdN0}IR(GP#5 z`Nz#dOAz)WvV=IK`w)JwVGjbf9MbP<%u2BSPqmy1dV> z)a5$+4v~3gias3#($yUzI{qO6y&?Z{5U(|itI{>E}E%-2~)IB6FKvX8-k@& zoyNx2n;KZzENmK{-?OHe7c5%BU*dd=74qB;mL74NH>(taPwyP%zD-6>28In@m_I^f ze^lR^@7L)pteR)8My5NjIG)fffp%<{7`*s?cpMs~;K>S82|OOtWzeLc(8*7D%VsbF zwX;eL;-3S1^IX&p8}PWX1Z=~E)@dH<;KS39OTY@~02*KM_Y7#B&a?!YQh^wVpOuc6CD;+rw&+r0R&NC>>rmu0ML3VlgnQ#A)x5T<>br^TUp^MJGf zv2^kI!?nwhGT`_6{CTS*e-0n^s3Quu6mF&XuTl6dnZM=poA#>QME|(o|M!2Vuz(%m``l&OZhSr#>yP~ZVLaTwf9iwWUbkvLavt~Rz-jR3(^$QE{ek0CuSl~Y+7z#C^a@aKxKU%Iv_|uu(PL3(( z-J>OiM=4B(kUs$fS1T}@I@|f~U3l5}pwO5Rg8nXeTBjb1p}g0kCnK7IspmnhAD;J&4oKkFOR7KK6>xH@Z_d1(M`Nf%A*o}SM-Awf$`TmjanC6ZP4?1{y_IyTV$pY@rc}K z#(NA;C6kMZb1=@Y9gnxs%#&K?WWQ6`7Xvklq From 4eae53c500e6664b182962ed74227cc3053ecd68 Mon Sep 17 00:00:00 2001 From: Max Kratt Date: Sat, 3 Sep 2022 21:13:12 +0200 Subject: [PATCH 2/4] fix: corrected stone and obsidian wall tiles --- .../resources/resources/textures/tiles.png | Bin 8764 -> 8755 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/src/main/resources/resources/textures/tiles.png b/src/main/resources/resources/textures/tiles.png index 26c0780c5f0eee0a96e7a56881add83d8b0953ca..7526b1f5a035b372c3b0fc91de5d5e28c98f60fe 100644 GIT binary patch delta 8130 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 delta 8193 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 Jzw+?){{R?$7PbHY From 83915f6adafe22a8b765e57dac2a186ab7aa1ffe Mon Sep 17 00:00:00 2001 From: Max Kratt Date: Sat, 3 Sep 2022 21:24:25 +0200 Subject: [PATCH 3/4] fix: stop incorrectly mirroring explodedtile --- src/main/java/minicraft/level/tile/ExplodedTile.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/minicraft/level/tile/ExplodedTile.java b/src/main/java/minicraft/level/tile/ExplodedTile.java index 6ce20266d..bbf140211 100644 --- a/src/main/java/minicraft/level/tile/ExplodedTile.java +++ b/src/main/java/minicraft/level/tile/ExplodedTile.java @@ -7,7 +7,7 @@ /// This class is for tiles WHILE THEY ARE EXPLODING public class ExplodedTile extends Tile { - private static ConnectorSprite sprite = new ConnectorSprite(ExplodedTile.class, new Sprite(6, 22, 3, 3, 1, 3), new Sprite(9, 22, 2, 2, 1)) + private static ConnectorSprite sprite = new ConnectorSprite(ExplodedTile.class, new Sprite(6, 22, 3, 3, 1), new Sprite(9, 22, 2, 2, 1)) { public boolean connectsTo(Tile tile, boolean isSide) { return !isSide || tile.connectsToLiquid(); From a4199a400cf55d605151e3f019e0886b6e0ff823 Mon Sep 17 00:00:00 2001 From: Max Kratt Date: Sun, 4 Sep 2022 21:15:40 +0200 Subject: [PATCH 4/4] fix: add missing shadow to grass tile --- .../resources/resources/textures/tiles.png | Bin 8755 -> 8774 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/src/main/resources/resources/textures/tiles.png b/src/main/resources/resources/textures/tiles.png index 7526b1f5a035b372c3b0fc91de5d5e28c98f60fe..164e987ff43444c24ebb83a2a5ca667fd5c4a2cd 100644 GIT binary patch literal 8774 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