cicaprojekt/cicaprojekt/WallDrawer.java

77 lines
1.8 KiB
Java

package cicaprojekt;
import java.io.IOException;
/**
* Egy fal kirajzolásáért felelős osztály.
*/
public class WallDrawer extends AbstractDrawer implements Drawer {
/**
* Egy falpéldány, amelyet kirajzolunk.
*/
private Wall wall;
/**
* Az osztály konstruktora. A kapott falpéldányhoz kirajzol
* egy falat.
*
* @param w a kapott falpéldány
* @throws IOException Ha nem található a kép.
*/
public WallDrawer(Wall w) throws IOException {
super("Wall.png");
wall = w;
}
/**
* A fal képét megváltoztatja annak megfelelően, hogy van-e rajta csillagkapu.
*
* @throws IOException Ha nem találhatóak a képek.
*/
@Override
public void draw() throws IOException {
if(wall.getStargate() == null)
changeImage("Wall.png");
else{
switch(wall.getStargate().getName()){
case "Blue Stargate":
changeImage("BlueStargate.png");
break;
case "Yellow Stargate":
changeImage("YellowStargate.png");
break;
case "Red Stargate":
changeImage("RedStargate.png");
break;
case "Green Stargate":
changeImage("GreenStargate.png");
break;
default:
changeImage("Wall.png");
break;
}
}
}
/**
* A fal x-koordinátájával tér vissza.
*
* @return x-koordináta
*/
@Override
public int getTileX() {
return wall.getX();
}
/**
* A fal y-koordinátájával tér vissza.
*
* @return y-koordináta
*/
@Override
public int getTileY() {
return wall.getY();
}
}