cicaprojekt/cicaprojekt/Gap.java

71 lines
1.7 KiB
Java

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 <code>Tile</code> 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 <code>PlayerBase</code> 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 <code>Box</code> példány, amely a szakadékba került
*/
@Override
public void putABox(Box box) {
box.destroy();
}
}