package graphics;
import javax.swing.*;
import route.Route;
import java.awt.*;
import _main.Game;
import cross.*;
public class GraphicsBank extends AbstractGraphicsObject {
int xp;
int yp;
Icon image;
Icon table1;
int rotation;
Draw draw;
Bank cr;
/**
* Bank konstruktora, beolvassuk a felhasznalt kepeket a megfelelo attributumokba a kesobbi felhasznalas celjabol
*/
public GraphicsBank(){
image = new ImageIcon("images/bank.gif","bank"); //egy ilyen imageIcont kell letrehozni
table1 = new ImageIcon("images/stop.gif","stoptabla"); //egy ilyen imageIcont kell letrehozni
}
/**
* Pozicio beallitasa
* @param xpos x koordinata
* @param ypos y koordinata
*/
public void setPosition(int xpos,int ypos){
xp = xpos;
yp = ypos;
}
/**
* Pozicio elkerese
* @return Point : bank koordinata
*/
public Point getPosition(){
return new Point(xp,yp);
}
/**
* Beallitja az adott Graphics osztalyhoz tartozo draw-t.
* @param d Draw
*/
public void setDraw(Draw d){
draw = d;
}
/**
* Visszadja a bank kepet rajzolashoz
* @return Icon: bank kepe
*/
public Icon getImage(){
return image;
}
/**
* Beallitja a Graphics osztalyhoz tartozo kereszezodest.
* @param c Cross
*/
public void setCross(Bank c){
cr = c;
}
/**
* Kiszamolja a megjeleniteshez szukseges valtozok ertekeit
*/
public void calcGraphics(){
MainGraphics gr = Game.getInstance().getMap().getGraphics();
draw.drawing(this,gr.getGraphic());
}
/**
* Visszadja a keresztezodeshez tartozo adott tablat
* @return Icon: tabla kepe
*/
public Icon getTable(){
return table1;
}
/**
* Visszaadja a tabla koordinatajat
* @return Point : tabla koordinataja
*/
public Point getTablePosition()
{
// MainGraphics-hoz hozzaferes
MainGraphics gr = Game.getInstance().getMap().getGraphics();
// stoptabla helye megnezzuk az elso bemeno utat:
Route r = cr.getInRoutes().get(1);
//megnezzuk a ket csomopontjat a kijelolt utnak
Cross cr1 = r.getStartCross();
Point cr1p = gr.getGraphicsFromObject(cr1).getPosition();
Cross cr2 = r.getEndCross();
Point cr2p = gr.getGraphicsFromObject(cr2).getPosition();
// a tavolsag tizedenel helyezzuk el a tablat
Point pos = new Point(cr2p.x+(cr1p.x-cr2p.x)/10,cr2p.y+(cr1p.y-cr2p.y)/10);
return pos;
}
}