package org.test.rtsgame;
import loon.LSystem;
import loon.action.sprite.painting.DrawableEvent;
import loon.geom.Vector2f;
//主菜单用类
public class MainMenuEntity extends MenuEntity
{
private void ContGameMenuEntrySelected()
{
LoadingEntity.Load(super.getScreenManager(), false, new GameEntity[] {new GameplayEntity(), new PauseMenuEntity()});
}
@Override
public void LoadContent()
{
super.titleTexture = super.getScreenManager().getGameContent().mainMenu;
MenuEntry item = new MenuEntry(this, "Continue", new Vector2f(306f, 192f));
MenuEntry entry2 = new MenuEntry(this, "New Game", new Vector2f(282f, 234f));
MenuEntry entry3 = new MenuEntry(this, "Options", new Vector2f(312f, 276f));
MenuEntry entry4 = new MenuEntry(this, "Exit", new Vector2f(342f, 318f));
item.Selected = new DrawableEvent() {
@Override
public void invoke() {
ContGameMenuEntrySelected();
}
};
entry2.Selected =new DrawableEvent() {
@Override
public void invoke() {
PlayGameMenuEntrySelected();
}
};
entry3.Selected =new DrawableEvent() {
@Override
public void invoke() {
OptionsMenuEntrySelected();
}
};
entry4.Selected =new DrawableEvent() {
@Override
public void invoke() {
QuitGameMenuEntrySelected();
}
};
if (MainGame.ScoreData.Level != 0)
{
super.getMenuEntries().add(item);
}
super.getMenuEntries().add(entry2);
super.getMenuEntries().add(entry3);
super.getMenuEntries().add(entry4);
}
@Override
protected void OnCancel()
{
LSystem.exit();
}
private void OptionsMenuEntrySelected()
{
super.getScreenManager().AddScreen(new OptionsMenuEntity());
}
private void PlayGameMenuEntrySelected()
{
MainGame.ScoreData.Level = 0;
MainGame.ScoreData.Score = 0;
LoadingEntity.Load(super.getScreenManager(), false, new GameEntity[] {new GameplayEntity(), new PauseMenuEntity()});
}
private void QuitGameMenuEntrySelected()
{
LSystem.exit();
}
}