package com.lucasdnd.ags.map.terrain; import org.newdawn.slick.GameContainer; import org.newdawn.slick.Graphics; import org.newdawn.slick.SlickException; import org.newdawn.slick.state.StateBasedGame; import com.lucasdnd.ags.map.OffsetUtil; import com.lucasdnd.ags.system.ResourceLoader; public class Wall extends Terrain { public Wall(int tileX, int tileY, int facingDirection) throws SlickException { super(tileX, tileY); this.facingDirection = facingDirection; spriteSheet = ResourceLoader.getInstance().wallSpriteSheet; } @Override public void render(GameContainer container, StateBasedGame game, Graphics g) throws SlickException { if (facingDirection == DOWN_RIGHT) { spriteSheet.getSubImage(0, 0).draw(xPos + OffsetUtil.getPreciseOffset(xOffset), yPos + OffsetUtil.getPreciseOffset(yOffset)); } else if (facingDirection == DOWN_LEFT) { spriteSheet.getSubImage(1, 0).draw(xPos + OffsetUtil.getPreciseOffset(xOffset), yPos + OffsetUtil.getPreciseOffset(yOffset)); } else if (facingDirection == UP_RIGHT) { spriteSheet.getSubImage(2, 0).draw(xPos + OffsetUtil.getPreciseOffset(xOffset), yPos + OffsetUtil.getPreciseOffset(yOffset)); } else { spriteSheet.getSubImage(3, 0).draw(xPos + OffsetUtil.getPreciseOffset(xOffset), yPos + OffsetUtil.getPreciseOffset(yOffset)); } } }