Some checks reported errors
studiorailgun/Renderer/pipeline/head Something is wrong with the build of this commit
112 lines
4.6 KiB
Java
112 lines
4.6 KiB
Java
package electrosphere.menu.mainmenu;
|
|
|
|
import electrosphere.engine.Globals;
|
|
import electrosphere.engine.loadingthreads.LoadingThread;
|
|
import electrosphere.engine.loadingthreads.LoadingThread.LoadingThreadType;
|
|
import electrosphere.menu.MenuGenerators;
|
|
import electrosphere.menu.WindowUtils;
|
|
import electrosphere.renderer.ui.elements.Button;
|
|
import electrosphere.renderer.ui.elements.Div;
|
|
import electrosphere.renderer.ui.elements.Label;
|
|
import electrosphere.renderer.ui.elementtypes.ClickableElement;
|
|
import electrosphere.renderer.ui.elementtypes.ContainerElement.YogaAlignment;
|
|
import electrosphere.renderer.ui.elementtypes.ContainerElement.YogaJustification;
|
|
import electrosphere.renderer.ui.elementtypes.Element;
|
|
import electrosphere.renderer.ui.events.ClickEvent;
|
|
|
|
/**
|
|
* Menu generators for the title menu
|
|
*/
|
|
public class MenuGeneratorsTitleMenu {
|
|
|
|
/**
|
|
* Creates the main title menu
|
|
* @return The menu element
|
|
*/
|
|
public static Element createTitleMenu(){
|
|
Div rVal = Div.createDiv();
|
|
//top-bottom
|
|
rVal.setJustifyContent(YogaJustification.Center);
|
|
//left-right
|
|
rVal.setAlignItems(YogaAlignment.Center);
|
|
rVal.setAlignContent(YogaAlignment.Center);
|
|
rVal.setFlexGrow(1.0f);
|
|
|
|
//label (title)
|
|
Label titleLabel = new Label(1.0f);
|
|
titleLabel.setText("ORPG");
|
|
rVal.addChild(titleLabel);
|
|
|
|
//button (multiplayer)
|
|
Button singleplayerButton = new Button();
|
|
Label singleplayerLabel = new Label(1.0f);
|
|
singleplayerLabel.setText("Singleplayer");
|
|
singleplayerButton.addChild(singleplayerLabel);
|
|
rVal.addChild(singleplayerButton);
|
|
singleplayerButton.setOnClick(new ClickableElement.ClickEventCallback(){public boolean execute(ClickEvent event){
|
|
WindowUtils.replaceMainMenuContents(MenuGenerators.createWorldSelectMenu());
|
|
return false;
|
|
}});
|
|
|
|
//button (multiplayer)
|
|
Button multiplayerButton = new Button();
|
|
Label multiplayerLabel = new Label(1.0f);
|
|
multiplayerLabel.setText("Multiplayer");
|
|
multiplayerButton.addChild(multiplayerLabel);
|
|
rVal.addChild(multiplayerButton);
|
|
multiplayerButton.setOnClick(new ClickableElement.ClickEventCallback(){public boolean execute(ClickEvent event){
|
|
WindowUtils.replaceMainMenuContents(MenuGenerators.createMultiplayerMenu());
|
|
return false;
|
|
}});
|
|
|
|
//button (static level)
|
|
Button staticLevelButton = new Button();
|
|
Label staticLevelLabel = new Label(1.0f);
|
|
staticLevelLabel.setText("Level Editor");
|
|
staticLevelButton.addChild(staticLevelLabel);
|
|
rVal.addChild(staticLevelButton);
|
|
staticLevelButton.setOnClick(new ClickableElement.ClickEventCallback(){public boolean execute(ClickEvent event){
|
|
WindowUtils.replaceMainMenuContents(MenuGeneratorsLevelEditor.createLevelEditorTopMenu());
|
|
return false;
|
|
}});
|
|
|
|
//button (options)
|
|
Button optionsButton = new Button();
|
|
Label optionsLabel = new Label(1.0f);
|
|
optionsLabel.setText("Options");
|
|
optionsButton.addChild(optionsLabel);
|
|
rVal.addChild(optionsButton);
|
|
optionsButton.setOnClick(new ClickableElement.ClickEventCallback(){public boolean execute(ClickEvent event){
|
|
WindowUtils.replaceMainMenuContents(MenuGenerators.createOptionsMainMenu());
|
|
return false;
|
|
}});
|
|
|
|
//button (sp debug)
|
|
Button uiDebugSPQuickstartButton = new Button();
|
|
Label uiDebugSPQuickstartLabel = new Label(1.0f);
|
|
uiDebugSPQuickstartLabel.setText("Debug SP Quickstart");
|
|
uiDebugSPQuickstartButton.addChild(uiDebugSPQuickstartLabel);
|
|
rVal.addChild(uiDebugSPQuickstartButton);
|
|
uiDebugSPQuickstartButton.setOnClick(new ClickableElement.ClickEventCallback(){public boolean execute(ClickEvent event){
|
|
LoadingThread loadingThread = new LoadingThread(LoadingThreadType.DEBUG_RANDOM_SP_WORLD);
|
|
Globals.RUN_CLIENT = true;
|
|
Globals.RUN_SERVER = true;
|
|
Globals.threadManager.start(loadingThread);
|
|
return false;
|
|
}});
|
|
|
|
//button (ui testing)
|
|
Button uiTestingButton = new Button();
|
|
Label uiTestingLabel = new Label(1.0f);
|
|
uiTestingLabel.setText("UI Testing");
|
|
uiTestingButton.addChild(uiTestingLabel);
|
|
rVal.addChild(uiTestingButton);
|
|
uiTestingButton.setOnClick(new ClickableElement.ClickEventCallback(){public boolean execute(ClickEvent event){
|
|
WindowUtils.replaceMainMenuContents(MenuGeneratorsUITesting.createUITestMenu());
|
|
return false;
|
|
}});
|
|
|
|
return rVal;
|
|
}
|
|
}
|