You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
47 lines
778 B
47 lines
778 B
package mightypork.gamecore.control.events;
|
|
|
|
|
|
import mightypork.util.control.eventbus.events.Event;
|
|
import mightypork.util.control.eventbus.events.flags.SingleReceiverEvent;
|
|
|
|
|
|
/**
|
|
* Request to change screen
|
|
*
|
|
* @author MightyPork
|
|
*/
|
|
@SingleReceiverEvent
|
|
public class ScreenRequestEvent implements Event<ScreenRequestEvent.Listener> {
|
|
|
|
private final String scrName;
|
|
|
|
|
|
/**
|
|
* @param screenKey screen name
|
|
*/
|
|
public ScreenRequestEvent(String screenKey)
|
|
{
|
|
scrName = screenKey;
|
|
}
|
|
|
|
|
|
@Override
|
|
public void handleBy(Listener handler)
|
|
{
|
|
handler.showScreen(scrName);
|
|
}
|
|
|
|
/**
|
|
* {@link ScreenRequestEvent} listener
|
|
*
|
|
* @author MightyPork
|
|
*/
|
|
public interface Listener {
|
|
|
|
/**
|
|
* @param key screen to show
|
|
*/
|
|
void showScreen(String key);
|
|
}
|
|
|
|
}
|
|
|