package uk.co.flyingsquirrels.menuoptions;
import org.newdawn.slick.Color;
import org.newdawn.slick.state.StateBasedGame;
import org.newdawn.slick.state.transition.FadeInTransition;
import org.newdawn.slick.state.transition.FadeOutTransition;
public class EnterStateMenuOption implements MenuOption {
private final String text;
private final int stateId;
private final StateBasedGame game;
private final FadeOutTransition leavingTransition;
private final FadeInTransition enteringTransition;
public EnterStateMenuOption(StateBasedGame game, String text, int stateId) {
this(game, text, stateId, true);
}
public EnterStateMenuOption(StateBasedGame game, String text, int stateId, boolean transition) {
this.game = game;
this.text = text;
this.stateId = stateId;
if (transition) {
leavingTransition = new FadeOutTransition(
Color.black);
enteringTransition = new FadeInTransition(
Color.black);
} else {
leavingTransition = null;
enteringTransition = null;
}
}
public String getText() {
return text;
}
public void select() {
game.enterState(stateId, leavingTransition, enteringTransition);
}
}