From 5e1f69a9d0ccbc432597329f54a5f72fc52a6ca0 Mon Sep 17 00:00:00 2001 From: sigonasr2 Date: Wed, 1 Jun 2022 16:37:01 -0500 Subject: [PATCH] Change maptileinfo to be an indexed image. Move tile-specific code into editor renderer. Co-authored-by: r3cp3ct <45179536+r3cp3ct@users.noreply.github.com> Co-authored-by: sigonasr2 --- sprites/maptileinfo.gif | Bin 5126 -> 425 bytes src/sig/engine/Sprite.java | 5 ++--- src/sig/objects/EditorRenderer.java | 8 ++++++++ src/sig/objects/LevelRenderer.java | 12 ++++-------- 4 files changed, 14 insertions(+), 11 deletions(-) diff --git a/sprites/maptileinfo.gif b/sprites/maptileinfo.gif index 3d77e92e841f83dc93854b71d5e810e7183b476d..1ce2626a786d9db0cfde2f7f0312073ca7437ff9 100644 GIT binary patch literal 425 zcmZ?wbhEHbRA5kGSSrB~y{t6*WX|flDSzJg{@+pgDkwc6x=<10~i#4vM_Qn*fZ!b00GFO z3~U=6CKPz+a50`(B9xG0HuIcvA=9EL^=l7Vtj>t+yjl?Eq1rq@xNvI>pZ@)$Zz6ns zVU9s7|cP-gBs=s_0nmsp{}!hfkc#I$c|HsJJ=e n)a~mRj@-F;|9H;9gO8uQeDUhc^Vjb`eEjtJ%hzv#jttfSHp%+U literal 5126 zcmZ?wbhEHbRA5kG_|51x(tIj1{A#lN8gl%a*pYyy9C1iqKog4i zwd4sQB|behJ|it2GktCwV=f0XP8SPKH>}8#(+wZuadT3mSr9e9D0*>8^pcY3 zrR1T~=w*1(($Z+sQOwfP_{C+(iz+h~ROipFFPq(5JF~rQde4NZlcr9cI&Ipt>C>mr zm@#AK%$c)h&6+)X_MAC$=FXivZ{EE5^XD&EuwdcBg^Ly~TD*Aik|j%)E?v58*|O!! zm#aNyvkt0Wr9zA;O z*sC-XE?v5O`SO)3SFT>Y zdimOob2smwy8Yz%ofk*%zCL{K?a_O0PhNa~b;9=t@qb=f|NE%+?-%dCe+*dAe}?}Q zBE|pQey$+Z!14!$DG6yJ|FmPOCc+4r|v0=dh8xCQuGszng zo!j{Mh5iWiFFMLE#$MN8Q4sCeC+eIg;xSR>M7ywSm`lq$m6er~larU1S5Qz;R8&+_ zQc_k{R#8z=RaI3}Q&U%0*U-?=)YR0{($dz}*3r??)z#J0)6>`2H!v_TG&D3aGBP$c zHZd_VH8nLeGcz|gx3I9Vw6wIcva+_ewz09XwY9agv$MCicW`iUbaZrba&mTdc5!iW zb#--fb8~lh_wexW^z`)d^78if_VMxY_4W1h^Yi!j4+sbd3=9kk3JMMm4habf4Gj$o z3kweqkBEqfjEszmii(boj){qhjg5_qi;ItsPe@2eOiWBlN=i;nPDx2gO-)TpOG{5r z&&bHg%*@Qn%F52p&dJHi&CSir%gfKtFDNJ|EG#T4Dk?56E-5J~EiEl8D=RNAuc)Y~ ztgNi6s;aK8uBoZ1t*x!AtE;cCZ)j*}Y;0_5YHDt7ZfR+0ZEbC9Yingw+9?&<02?d|RB>+A3DpD&}Ud zi;wp!ICsf-Zd!73vPST#n3F*%4h+`7j57*GLtr!nMnhmU1V%$(Gz3ONU^E0qLtr!n KMnhomh5!JYGJo>` diff --git a/src/sig/engine/Sprite.java b/src/sig/engine/Sprite.java index 1974e5b..cf32be9 100644 --- a/src/sig/engine/Sprite.java +++ b/src/sig/engine/Sprite.java @@ -3,17 +3,16 @@ package sig.engine; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; -import java.util.Arrays; import java.awt.image.DataBufferByte; import javax.imageio.ImageIO; public enum Sprite{ - NANA(new File(new File("..","sprites"),"3x.png")), + //NANA(new File(new File("..","sprites"),"3x.png")), NANA_SMALL(new File(new File("..","sprites"),"1x.gif")), TILE_SHEET(new File(new File("..","sprites"),"tiles.gif")), - MAP_TILE_INFO(new File(new File("..","sprites"),"maptileinfo-1.png.png")), + MAP_TILE_INFO(new File(new File("..","sprites"),"maptileinfo.gif")), ; diff --git a/src/sig/objects/EditorRenderer.java b/src/sig/objects/EditorRenderer.java index 7de6205..32b8d27 100644 --- a/src/sig/objects/EditorRenderer.java +++ b/src/sig/objects/EditorRenderer.java @@ -4,6 +4,7 @@ import java.awt.event.KeyEvent; import java.awt.event.MouseEvent; import sig.RabiClone; +import sig.engine.Alpha; import sig.engine.MouseScrollValue; import sig.engine.Panel; import sig.engine.Sprite; @@ -58,5 +59,12 @@ public class EditorRenderer extends LevelRenderer{ public void draw(byte[] p) { super.draw(p); Draw_Sprite(16, 16, Sprite.MAP_TILE_INFO); + } + + @Override + protected void drawMapTileForEditorMode(int x, int y) { + if (x==RabiClone.p.highlightedSquare.getX()&&y==RabiClone.p.highlightedSquare.getY()) { + DrawTransparentTile(x*Tile.TILE_WIDTH-this.getX(),y*Tile.TILE_HEIGHT-this.getY(),selectedTile,Alpha.ALPHA160); + } } } diff --git a/src/sig/objects/LevelRenderer.java b/src/sig/objects/LevelRenderer.java index 226e16d..f4294bf 100644 --- a/src/sig/objects/LevelRenderer.java +++ b/src/sig/objects/LevelRenderer.java @@ -10,8 +10,6 @@ import sig.map.Tile; public class LevelRenderer extends Object{ - Tile selectedTile = Tile.WALL; - public LevelRenderer(Panel panel) { super(panel); this.setSprite(Sprite.TILE_SHEET); @@ -35,17 +33,15 @@ public class LevelRenderer extends Object{ DrawTile(x*Tile.TILE_WIDTH-this.getX(),y*Tile.TILE_HEIGHT-this.getY(),RabiClone.CURRENT_MAP.getTile(x,y)); //System.out.println((x*Tile.TILE_WIDTH+(this.getX()%Tile.TILE_WIDTH) )+","+(y*Tile.TILE_HEIGHT+(this.getY()%Tile.TILE_HEIGHT))); } - if (this instanceof EditorRenderer) { - if (x==RabiClone.p.highlightedSquare.getX()&&y==RabiClone.p.highlightedSquare.getY()) { - DrawTransparentTile(x*Tile.TILE_WIDTH-this.getX(),y*Tile.TILE_HEIGHT-this.getY(),selectedTile,Alpha.ALPHA160); - } - } + drawMapTileForEditorMode(x,y); } } Draw_Object(RabiClone.player); Draw_Object(RabiClone.player2); } + protected void drawMapTileForEditorMode(int x, int y) {} + /** * Draws an object where its sprite is centered among its position and drawn relative to the camera position. * @param object @@ -58,7 +54,7 @@ public class LevelRenderer extends Object{ Draw_Sprite_Partial(x,y, tile.getSpriteSheetX()*tile.getTileWidth(), tile.getSpriteSheetY()*tile.getTileHeight(), tile.getTileWidth(), tile.getTileHeight(), getSprite()); } - private void DrawTransparentTile(double x, double y, Tile tile, Alpha alpha) { + protected void DrawTransparentTile(double x, double y, Tile tile, Alpha alpha) { Draw_Sprite_Partial_Ext(x,y, tile.getSpriteSheetX()*tile.getTileWidth(), tile.getSpriteSheetY()*tile.getTileHeight(), tile.getTileWidth(), tile.getTileHeight(), getSprite(), alpha); }