package cicaprojekt; /** * A játékban megjelenő szakadékokat reprezentáló osztály. */ public class Gap extends cicaprojekt.Tile { /** * Az osztály konstruktora. */ public Gap() { super(); } /** * A függvény igazzal tér vissza, ha a rá lehet lépni az adott szakadékra, * hamissal, ha nem. * * @return true */ @Override public boolean isSteppable() { return true; } /** * A függvény igazzal tér vissza, ha a Tile típusa szakadék. * * @return true */ @Override public boolean isGap() { return true; } /** * A függvény akkor hívódik meg, ha egy személy rálép a szakadékra, * ekkor az megsemmisül. * * @param playerBase az a PlayerBase példány, amely rálépett * a szakadékra */ @Override public void onEntry(PlayerBase playerBase) { super.onEntry(playerBase); playerBase.destroy(); } /** * A szakadékból való kilépéskor hívódik meg, ez hibát eredményez. * * @throws IllegalStateException Ha valami kijut a szakadékból. */ @Override public void onExit(PlayerBase playerBase) throws IllegalStateException { throw new IllegalStateException("Hiba! A szakadékból nem jut ki semmi!"); } /** * A függvény akkor hívódik meg, ha egy doboz kerül a szakadékba. * Ekkor a doboz megsemmisül. * * @param box az a Box példány, amely a szakadékba került */ @Override public void putABox(Box box) { box.destroy(); } }