aboutsummaryrefslogtreecommitdiff
path: root/src/devmenu
diff options
context:
space:
mode:
Diffstat (limited to 'src/devmenu')
-rw-r--r--src/devmenu/DebugMenu.java41
-rw-r--r--src/devmenu/DiffEditor.java79
-rw-r--r--src/devmenu/LevelEditor.java148
-rw-r--r--src/devmenu/LevelList.java71
-rw-r--r--src/devmenu/NotesEditor.java101
5 files changed, 0 insertions, 440 deletions
diff --git a/src/devmenu/DebugMenu.java b/src/devmenu/DebugMenu.java
deleted file mode 100644
index 0d55e69..0000000
--- a/src/devmenu/DebugMenu.java
+++ /dev/null
@@ -1,41 +0,0 @@
-package devmenu;
-
-import gui.Driver;
-import javafx.scene.Scene;
-import javafx.scene.control.Button;
-import javafx.scene.layout.VBox;
-import javafx.stage.Stage;
-
-public class DebugMenu
-{
- public Stage primaryStage = new Stage();
-
- /*
- * this class is a layout class, most of its purpose is to place UI elements like Buttons within Panes like VBoxes.
- * the creation of these UI elements are mostly not commented due to their repetitive and self explanatory nature.
- * style classes are defined in the style.css file.
- */
- VBox primaryPane = new VBox();
- public DebugMenu()
- {
- Button testVol = new Button();
- testVol.setText("print volumes");
- testVol.setOnAction(e -> System.out.println("setc:"+Driver.settingsController.effectsVol+" sndc:"+Driver.soundController.songMediaPlayer.getVolume()));
-
- primaryPane.getChildren().addAll(testVol);
-
- Scene primaryScene = new Scene(primaryPane);
- primaryStage.setScene(primaryScene);
- primaryStage.setTitle("debug");
- }
-
- public void show()
- {
- primaryStage.show();
- }
-
- public void addButton(Button b)
- {
- primaryPane.getChildren().add(b);
- }
-}
diff --git a/src/devmenu/DiffEditor.java b/src/devmenu/DiffEditor.java
deleted file mode 100644
index 0991fb0..0000000
--- a/src/devmenu/DiffEditor.java
+++ /dev/null
@@ -1,79 +0,0 @@
-package devmenu;
-
-import java.io.FileNotFoundException;
-import java.io.UnsupportedEncodingException;
-
-import gui.Driver;
-import gui.LevelSurround;
-import gui.MainMenu;
-import javafx.scene.Scene;
-import javafx.scene.control.Button;
-import javafx.scene.control.TextField;
-import javafx.scene.layout.VBox;
-import javafx.scene.text.Text;
-import javafx.stage.Stage;
-import main.Difficulty;
-
-public class DiffEditor
-{
- /*
- * this class is a layout class, most of its purpose is to place UI elements like Buttons within Panes like VBoxes.
- * the creation of these UI elements are mostly not commented due to their repetitive and self explanatory nature.
- * style classes are defined in the style.css file.
- */
- public DiffEditor(Difficulty diff)
- {
- Stage primaryStage = new Stage();
-
- Text folderNameLabel = new Text("Folder name (ordered alphabetically)");
- TextField folderName = new TextField(diff.thisDir.getName());
- folderName.setDisable(true);
-
- Text titleLabel = new Text("Title");
- TextField title = new TextField(diff.title);
-
- Text bpmLabel = new Text("BPM");
- TextField bpm = new TextField(diff.bpm+"");
-
- Text numBeatsLabel = new Text("Number of beats (set by notes editor)");
- TextField numBeats = new TextField(diff.numBeats+"");
-
- Text priorityLabel = new Text("priority (lower first)");
- TextField priority = new TextField(diff.priority+"");
-
- Button editNotes = new Button("Edit notes");
- editNotes.setOnAction(e -> {
- try {
- new NotesEditor(diff);
- } catch (FileNotFoundException | UnsupportedEncodingException e1) {
- e1.printStackTrace();
- }
- });
-
- Button editScores = new Button("Clear leaderboard");
- editScores.setOnAction(e -> diff.getLeaderboard().clear());
-
- Button playLevel = new Button("Launch level");
- playLevel.setOnAction(e -> Driver.setMenu(new LevelSurround(diff.level, diff, new MainMenu())));
-
- Button refresh = new Button("Refresh");
- refresh.setOnAction( e -> {
- numBeats.setText(diff.numBeats+"");
- });
-
- Button save = new Button("Save");
- save.setOnAction(e -> { //assigns text feilds to values
- diff.title = title.getText();
- diff.bpm = Double.parseDouble(bpm.getText());
- diff.numBeats = Integer.parseInt(numBeats.getText());
- diff.priority = Integer.parseInt(priority.getText());
- diff.writeMetadata();
- });
-
- VBox main = new VBox();
- main.getChildren().addAll(folderNameLabel,folderName,titleLabel,title,bpmLabel,bpm,numBeatsLabel,numBeats,refresh,priorityLabel,priority,editNotes,editScores,playLevel,save);
- Scene scene = new Scene(main);
- primaryStage.setScene(scene);
- primaryStage.show();
- }
-} \ No newline at end of file
diff --git a/src/devmenu/LevelEditor.java b/src/devmenu/LevelEditor.java
deleted file mode 100644
index b8a6532..0000000
--- a/src/devmenu/LevelEditor.java
+++ /dev/null
@@ -1,148 +0,0 @@
-package devmenu;
-
-import java.io.File;
-import javafx.scene.Scene;
-import javafx.scene.control.Button;
-import javafx.scene.control.ColorPicker;
-import javafx.scene.control.TableColumn;
-import javafx.scene.control.TableView;
-import javafx.scene.control.TextField;
-import javafx.scene.control.cell.PropertyValueFactory;
-import javafx.scene.layout.HBox;
-import javafx.scene.layout.VBox;
-import javafx.scene.text.Text;
-import javafx.stage.FileChooser;
-import javafx.stage.Stage;
-import javafx.stage.FileChooser.ExtensionFilter;
-import main.Difficulty;
-import main.Level;
-
-public class LevelEditor
-{
- private File selectedSong = null;
- private File selectedPreview = null;
- private File selectedBackground = null;
-
- /*
- * this class is a layout class, most of its purpose is to place UI elements like Buttons within Panes like VBoxes.
- * the creation of these UI elements are mostly not commented due to their repetitive and self explanatory nature.
- * style classes are defined in the style.css file.
- */
- public LevelEditor(Level level)
- {
- Stage primaryStage = new Stage();
-
- Text folderNameLabel = new Text("Folder name");
- TextField folderName = new TextField(level.thisDir.getName());
- folderName.setDisable(true);
-
- Text titleLabel = new Text("Title");
- TextField title = new TextField(level.getTitle());
-
- Text artistLabel = new Text("Artist");
- TextField artist = new TextField(level.getArtist());
-
- Text descLabel = new Text("Description");
- TextField desc = new TextField(level.desc);
-
- Text colorsLabel = new Text("Colors (Left to right)");
- ColorPicker c1 = new ColorPicker(level.colors[0]);
- ColorPicker c2 = new ColorPicker(level.colors[1]);
- ColorPicker c3 = new ColorPicker(level.colors[2]);
- ColorPicker c4 = new ColorPicker(level.colors[3]);
- ColorPicker c5 = new ColorPicker(level.colors[4]);
-
- Text filesLabel = new Text("Files");
-
- FileChooser backgroundChooser = new FileChooser();
- backgroundChooser.getExtensionFilters().add(new ExtensionFilter("PNG", "*.png"));
- Button backgroundButton = new Button("Import background PNG");
- backgroundButton.setOnAction(e -> {selectedBackground = backgroundChooser.showOpenDialog(primaryStage);});
-
- FileChooser previewChooser = new FileChooser();
- previewChooser.getExtensionFilters().add(new ExtensionFilter("PNG", "*.png"));
- Button previewButton = new Button("Import preview PNG");
- previewButton.setOnAction(e -> {selectedPreview = previewChooser.showOpenDialog(primaryStage);});
-
- FileChooser songChooser = new FileChooser();
- songChooser.getExtensionFilters().add(new ExtensionFilter("WAV", "*.wav"));
- Button songButton = new Button("Import song WAV");
- songButton.setOnAction(e -> selectedSong = songChooser.showOpenDialog(primaryStage));
-
- Text diffLabel = new Text("Difficulties");
-
- TableView<Difficulty> diffList = new TableView<Difficulty>();
-
- TableColumn<Difficulty,String> diffCol = new TableColumn<Difficulty,String>("Difficulty");
- TableColumn<Difficulty,Boolean> validCol = new TableColumn<Difficulty,Boolean>("Valid?");
-
- diffList.getColumns().add(diffCol);
- diffList.getColumns().add(validCol);
-
- diffCol.setCellValueFactory(new PropertyValueFactory<Difficulty,String>("title"));
- validCol.setCellValueFactory(new PropertyValueFactory<Difficulty,Boolean>("valid"));
-
- diffList.setItems(level.getDiffList());
-
-
- Button edit = new Button("Edit");
- edit.setOnAction(e -> new DiffEditor(diffList.getSelectionModel().getSelectedItem()));
-
- Button remove = new Button("Delete");
- remove.setOnAction(e -> level.removeDiff(diffList.getSelectionModel().getSelectedItem()));
-
- Button refresh = new Button("Refresh");
- refresh.setOnAction(e -> {
- level.readData();
- diffList.setItems(level.getDiffList());
- });
-
- HBox buttons = new HBox();
- buttons.getChildren().addAll(edit,remove,refresh);
-
- TextField newDiff = new TextField("new");
- Button newDiffButton = new Button("add");
- newDiffButton.setOnAction(e -> level.addDiff(newDiff.getText()));
- HBox newDiffBox = new HBox();
- newDiffBox.getChildren().addAll(newDiff,newDiffButton);
-
- Button save = new Button("Save");
- save.setOnAction(e -> { //asigns feilds to values
- level.setTitle(title.getText());
- level.setArtist(artist.getText());
- level.desc = desc.getText();
- level.colors[0] = c1.getValue();
- level.colors[1] = c2.getValue();
- level.colors[2] = c3.getValue();
- level.colors[3] = c4.getValue();
- level.colors[4] = c5.getValue();
- if (selectedBackground != null && selectedBackground.exists())
- {
- level.addFile(selectedBackground,"background.png");
- }
- if (selectedPreview != null && selectedPreview.exists())
- {
- level.addFile(selectedPreview,"preview.png");
- }
- if (selectedSong != null)
- {
- level.addFile(selectedSong,"song.wav");
- }
- level.writeMetadata();
- });
-
- VBox options = new VBox();
- options.getChildren().addAll(folderNameLabel,folderName,titleLabel,title,artistLabel,artist,descLabel,desc,colorsLabel,
- c1,c2,c3,c4,c5,filesLabel,previewButton,backgroundButton,songButton,save);
-
- VBox diffBox = new VBox();
- diffBox.getChildren().addAll(diffLabel,diffList,buttons,newDiffBox);
-
- HBox mainBox = new HBox();
- mainBox.getChildren().addAll(options,diffBox);
-
- Scene scene = new Scene(mainBox);
- primaryStage.setScene(scene);
- primaryStage.show();
- }
-} \ No newline at end of file
diff --git a/src/devmenu/LevelList.java b/src/devmenu/LevelList.java
deleted file mode 100644
index f9b4207..0000000
--- a/src/devmenu/LevelList.java
+++ /dev/null
@@ -1,71 +0,0 @@
-package devmenu;
-
-import gui.Driver;
-import javafx.scene.Scene;
-import javafx.scene.control.Button;
-import javafx.scene.control.TableColumn;
-import javafx.scene.control.TableView;
-import javafx.scene.control.TextField;
-import javafx.scene.control.cell.PropertyValueFactory;
-import javafx.scene.layout.HBox;
-import javafx.scene.layout.VBox;
-import javafx.stage.Stage;
-import main.Level;
-import main.LevelController;
-
-public class LevelList
-{
- /*
- * this class is a layout class, most of its purpose is to place UI elements like Buttons within Panes like VBoxes.
- * the creation of these UI elements are mostly not commented due to their repetitive and self explanatory nature.
- * style classes are defined in the style.css file.
- */
- public LevelList()
- {
- //sets up table view: requires special getters, setters and constructors to work
- TableView<Level> levels = new TableView<Level>();
-
- TableColumn<Level,String> titleCol = new TableColumn<Level,String>("Title");
- TableColumn<Level,String> artistCol = new TableColumn<Level,String>("Artist");
- TableColumn<Level,Boolean> validCol = new TableColumn<>("Valid?");
-
- levels.getColumns().add(titleCol);
- levels.getColumns().add(artistCol);
- levels.getColumns().add(validCol);
-
- titleCol.setCellValueFactory(new PropertyValueFactory<Level, String>("title"));
- artistCol.setCellValueFactory(new PropertyValueFactory<Level, String>("artist"));
- validCol.setCellValueFactory(new PropertyValueFactory<Level, Boolean>("valid"));
-
- levels.setItems(LevelController.getLevelList());
-
-
- Button edit = new Button("Edit");
- edit.setOnAction(e -> new LevelEditor(levels.getSelectionModel().getSelectedItem()));
-
- Button remove = new Button("Delete");
- remove.setOnAction(e -> gui.Driver.levelController.removeLevel(levels.getSelectionModel().getSelectedItem()));
-
- Button refresh = new Button("Refresh");
- refresh.setOnAction(e -> {
- Driver.levelController.readData();
- levels.setItems(LevelController.getLevelList());
- });
-
- HBox buttons = new HBox();
- buttons.getChildren().addAll(edit,remove,refresh);
-
- TextField newLevel = new TextField("new");
- Button newLevelButton = new Button("add");
- newLevelButton.setOnAction(e -> Driver.levelController.addLevel(newLevel.getText()));
- HBox newLevelBox = new HBox();
- newLevelBox.getChildren().addAll(newLevel,newLevelButton);
-
- VBox main = new VBox();
- main.getChildren().addAll(levels,buttons,newLevelBox);
- Scene scene = new Scene(main, 400, 400);
- Stage primaryStage = new Stage();
- primaryStage.setScene(scene);
- primaryStage.show();
- }
-} \ No newline at end of file
diff --git a/src/devmenu/NotesEditor.java b/src/devmenu/NotesEditor.java
deleted file mode 100644
index 0893446..0000000
--- a/src/devmenu/NotesEditor.java
+++ /dev/null
@@ -1,101 +0,0 @@
-package devmenu;
-
-import java.io.FileNotFoundException;
-import java.io.PrintWriter;
-import java.io.UnsupportedEncodingException;
-import gameplay.Timer;
-import gui.Driver;
-import javafx.scene.Scene;
-import javafx.scene.control.Button;
-import javafx.scene.input.KeyCode;
-import javafx.scene.layout.VBox;
-import javafx.scene.text.Text;
-import javafx.stage.Stage;
-import main.Difficulty;
-
-public class NotesEditor
-{
- Text help;
- String t1 = "Press Start to begin recording. Use the same keys. Note: existing notes will be overwitten.";
- String t2 = "Now recording. Press Stop or ESC to finish";
- Difficulty diff;
- Timer timer;
- PrintWriter writer;
- public NotesEditor(Difficulty diff) throws FileNotFoundException, UnsupportedEncodingException
- {
- this.diff = diff;
-
- help = new Text(t1);
- Text cur = new Text("-----");
-
- Button start = new Button("Start");
- start.setOnAction(e -> start());
- start.setFocusTraversable(false);
-
- Button stop = new Button("Stop");
- stop.setOnAction(e -> stop());
- stop.setFocusTraversable(false);
-
- VBox main = new VBox();
- main.getChildren().addAll(help,cur,start,stop);
-
- Scene scene = new Scene(main);
- Stage primaryStage = new Stage();
- primaryStage.setScene(scene);
- primaryStage.show();
-
- writer = new PrintWriter(diff.notes, "UTF-8");
-
- scene.setOnKeyPressed(e -> {
- if (e.getCode() == KeyCode.D) {
- writer.println("d"+timer);
- cur.setText("d"+timer);
- }
- if (e.getCode() == KeyCode.F) {
- writer.println("f"+timer);
- cur.setText("f"+timer);
- }
- if (e.getCode() == KeyCode.SPACE) {
- writer.println("s"+timer);
- cur.setText("s"+timer);
- }
- if (e.getCode() == KeyCode.J) {
- writer.println("j"+timer);
- cur.setText("j"+timer);
- }
- if (e.getCode() == KeyCode.K) {
- writer.println("k"+timer);
- cur.setText("k"+timer);
- }
- if (e.getCode() == KeyCode.ESCAPE)
- {
- stop();
- }
- });
-
- primaryStage.setOnCloseRequest(e -> stop());
- }
-
- private void start()
- {
- Driver.soundController.playSong(diff.level.song);
- timer = new Timer(diff.bpm);
- help.setText(t2);
- }
-
- private void stop()
- {
- try
- {
- Driver.soundController.endSong();
- diff.numBeats = (int)Double.parseDouble(timer.toString());
- timer = null;
- writer.close();
- help.setText(t1);
- }
- catch (Exception e)
- {
- //System.err.println("tried to stop but already stopped");
- }
- }
-} \ No newline at end of file