Renderer/src/main/java/electrosphere/menu/mainmenu/MenuGeneratorsMultiplayer.java
austin 47d60f46ee
Some checks failed
studiorailgun/Renderer/pipeline/head There was a failure building this commit
ui work
2024-09-17 19:00:28 -04:00

63 lines
2.5 KiB
Java

package electrosphere.menu.mainmenu;
import electrosphere.engine.Globals;
import electrosphere.menu.MenuGenerators;
import electrosphere.menu.WindowUtils;
import electrosphere.renderer.ui.components.CharacterCustomizer;
import electrosphere.renderer.ui.elements.Button;
import electrosphere.renderer.ui.elements.FormElement;
import electrosphere.renderer.ui.elements.Label;
import electrosphere.renderer.ui.elements.StringCarousel;
import electrosphere.renderer.ui.elementtypes.ClickableElement;
import electrosphere.renderer.ui.elementtypes.Element;
import electrosphere.renderer.ui.elementtypes.ValueElement.ValueChangeEventCallback;
import electrosphere.renderer.ui.events.ClickEvent;
import electrosphere.renderer.ui.events.ValueChangeEvent;
public class MenuGeneratorsMultiplayer {
public static Element createMultiplayerCharacterSelectionWindow(){
FormElement rVal = new FormElement();
//button (create)
Button createButton = new Button();
Label createLabel = Label.createLabel("Create Character");
createButton.addChild(createLabel);
rVal.addChild(createButton);
createButton.setOnClick(new ClickableElement.ClickEventCallback(){public boolean execute(ClickEvent event){
WindowUtils.replaceMainMenuContents(MenuGenerators.createWorldCreationMenu());
return false;
}});
return rVal;
}
static String selectedRace = "";
public static Element createMultiplayerCharacterCreationWindow(){
FormElement rVal = new FormElement();
//select race
StringCarousel raceCarousel = new StringCarousel(100, 125, 1.0f);
raceCarousel.setOnValueChangeCallback(new ValueChangeEventCallback() {public void execute(ValueChangeEvent event){
selectedRace = event.getAsString();
}});
for(String raceName : Globals.gameConfigCurrent.getCreatureTypeLoader().getPlayableRaces()){
raceCarousel.addOption(raceName);
}
rVal.addChild(raceCarousel);
//button (create)
Button createButton = new Button();
Label createLabel = Label.createLabel("Select Race");
createButton.addChild(createLabel);
rVal.addChild(createButton);
createButton.setOnClick(new ClickableElement.ClickEventCallback(){public boolean execute(ClickEvent event){
WindowUtils.replaceMainMenuContents(CharacterCustomizer.createCharacterCustomizerPanel(selectedRace));
return false;
}});
return rVal;
}
}