package mightypork.rogue;


import mightypork.gamecore.gui.screens.impl.CrossfadeRequest;
import mightypork.utils.logging.Log;


public class RogueStateManager extends AppModule {
	
	public RogueStateManager(AppAccess app) {
		super(app);
	}
	
	public static enum RogueState
	{
		MAIN_MENU, SELECT_WORLD, PLAY_WORLD, EXIT, STORY
	}
	
	
	public void triggerAction(RogueState state, boolean fromDark)
	{
		switch (state) {
			case MAIN_MENU:
				getEventBus().send(new CrossfadeRequest("main_menu", fromDark));
				break;
			
			case SELECT_WORLD:
				getEventBus().send(new CrossfadeRequest("select_world", fromDark));
				break;
			
			case PLAY_WORLD:
				getEventBus().send(new CrossfadeRequest("game", fromDark));
				break;
			
			case STORY:
				getEventBus().send(new CrossfadeRequest("story", fromDark));
				break;
			
			case EXIT:
				getEventBus().send(new CrossfadeRequest(null));
				break;
			
			default:
				Log.w("Unknown action: " + state);
				break;
		}
	}
	
}