diff options
Diffstat (limited to 'src/devmenu')
-rw-r--r-- | src/devmenu/DebugMenu.java | 41 | ||||
-rw-r--r-- | src/devmenu/DiffEditor.java | 79 | ||||
-rw-r--r-- | src/devmenu/LevelEditor.java | 148 | ||||
-rw-r--r-- | src/devmenu/LevelList.java | 71 | ||||
-rw-r--r-- | src/devmenu/NotesEditor.java | 101 |
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 |