Skip to content
Snippets Groups Projects
Commit c348a653 authored by Tran Peter's avatar Tran Peter
Browse files

feat(map selection): add selection for texture pack

parent bc90610e
No related branches found
No related tags found
5 merge requests!74V1,!73Initial commit,!71Merge DataBase into Development,!54Update: coreMaps.json (added new maps),!42feat(map selection): add selection for texture pack
......@@ -4,13 +4,14 @@ import de.hdm_stuttgart.battlearena.Controller.Utilities.SceneLoader;
import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.MapData;
import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.Persistence;
import de.hdm_stuttgart.battlearena.Model.DataStorage.Classes.RuntimeInfo;
import de.hdm_stuttgart.battlearena.Model.Map.Biom;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.fxml.Initializable;
import javafx.scene.control.TitledPane;
import javafx.scene.control.ToggleButton;
import javafx.scene.control.ToggleGroup;
import javafx.scene.layout.VBox;
import javafx.scene.text.Text;
import java.io.IOException;
import java.net.URL;
......@@ -25,7 +26,9 @@ public class MapSelectionController implements Initializable {
@FXML
private VBox boxBox, parent;
@FXML
private Text selectedMapText;
private TitledPane maps, textures;
@FXML
private ToggleGroup textureToggle;
private int selectedMap;
......@@ -33,10 +36,43 @@ public class MapSelectionController implements Initializable {
private final ArrayList<MapData> coreMaps = Persistence.getInstance().getCoreMaps();
private static Logger log = LogManager.getLogger(MapSelectionController.class);
private static final Logger log = LogManager.getLogger(MapSelectionController.class);
RuntimeInfo runtimeInfo = RuntimeInfo.getInstance();
@Override
public void initialize(URL url, ResourceBundle resourceBundle) {
setTexture();
setMap();
}
private void setTexture() {
textureToggle.selectedToggleProperty().addListener(((observableValue, oldToggle, newToggle) -> {
if (textureToggle != null) {
ToggleButton selected = (ToggleButton) textureToggle.getSelectedToggle();
String value = selected.getText();
switch (value) {
case "Bomberman":
runtimeInfo.setMapBiom(Biom.BOMBERMAN);
textures.setText(value);
break;
case "Dark Lands":
runtimeInfo.setMapBiom(Biom.DARK_LANDS);
textures.setText(value);
break;
case "Forrest":
runtimeInfo.setMapBiom(Biom.FORREST);
textures.setText(value);
break;
case "Grass":
runtimeInfo.setMapBiom(Biom.GRASS);
textures.setText(value);
}
}
}));
}
private void setMap() {
ToggleGroup group = new ToggleGroup();
for (MapData coreMap : coreMaps) {
......@@ -51,7 +87,7 @@ public class MapSelectionController implements Initializable {
selectedMap = boxBox.getChildren().indexOf(selected);
System.out.println(selectedMap);
String value = selected.getText();
selectedMapText.setText(value);
maps.setText(value);
System.out.println(value);
}
});
......
......@@ -5,6 +5,8 @@
<?import javafx.scene.control.Button?>
<?import javafx.scene.control.ScrollPane?>
<?import javafx.scene.control.TitledPane?>
<?import javafx.scene.control.ToggleButton?>
<?import javafx.scene.control.ToggleGroup?>
<?import javafx.scene.layout.HBox?>
<?import javafx.scene.layout.Pane?>
<?import javafx.scene.layout.VBox?>
......@@ -18,9 +20,9 @@
<Text strokeType="OUTSIDE" strokeWidth="0.0" text="Maps:" />
<Accordion>
<panes>
<TitledPane fx:id="roundsTitledPane" text="Select">
<TitledPane fx:id="maps" text="Select">
<content>
<ScrollPane minViewportHeight="150.0">
<ScrollPane minViewportHeight="150.0" minViewportWidth="300.0">
<content>
<VBox fx:id="boxBox" />
</content>
......@@ -34,6 +36,35 @@
<Insets />
</VBox.margin>
</HBox>
<HBox alignment="TOP_CENTER" spacing="20.0">
<children>
<Text strokeType="OUTSIDE" strokeWidth="0.0" text="Texture pack:" />
<Accordion>
<panes>
<TitledPane fx:id="textures" text="Select">
<content>
<ScrollPane minViewportHeight="150.0">
<content>
<VBox fx:id="boxBox1" alignment="CENTER_LEFT">
<children>
<ToggleButton mnemonicParsing="false" text="Bomberman">
<toggleGroup>
<ToggleGroup fx:id="textureToggle" />
</toggleGroup>
</ToggleButton>
<ToggleButton mnemonicParsing="false" text="Dark Lands" toggleGroup="$textureToggle" />
<ToggleButton mnemonicParsing="false" text="Forrest" toggleGroup="$textureToggle" />
<ToggleButton mnemonicParsing="false" text="Grass" toggleGroup="$textureToggle" />
</children>
</VBox>
</content>
</ScrollPane>
</content>
</TitledPane>
</panes>
</Accordion>
</children>
</HBox>
<HBox alignment="TOP_CENTER" maxWidth="-Infinity" minWidth="-Infinity" prefHeight="25.0" prefWidth="213.0" spacing="20.0">
<children>
<Text fx:id="selectedMapText" strokeType="OUTSIDE" strokeWidth="0.0" />
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment