diff options
author | Aidan Ross <aross02@fairport.org> | 2023-05-25 16:31:51 -0400 |
---|---|---|
committer | Aidan Ross <aross02@fairport.org> | 2023-05-25 16:31:51 -0400 |
commit | b3f8d14e1af6277914e4a7c1c81082fb95f62d85 (patch) | |
tree | 81d8a8007fa1ac6a246ba093971c1beaeef717bf /src | |
parent | cb9076941d76b4395d19d30076481bfeea35cacb (diff) | |
download | NPEhero-b3f8d14e1af6277914e4a7c1c81082fb95f62d85.tar.gz NPEhero-b3f8d14e1af6277914e4a7c1c81082fb95f62d85.tar.bz2 NPEhero-b3f8d14e1af6277914e4a7c1c81082fb95f62d85.zip |
the main.Level() class is now declared in levelcontroller with the name of the level being read in the assets folder, allowing for different songs in the list.
Diffstat (limited to 'src')
-rw-r--r-- | src/assets/levels/test level2/background.png | bin | 0 -> 1009759 bytes | |||
-rw-r--r-- | src/assets/levels/test level2/easy/leaderboard.txt | 0 | ||||
-rw-r--r-- | src/assets/levels/test level2/easy/notes.txt | 0 | ||||
-rw-r--r-- | src/assets/levels/test level2/hard/leaderboard.txt | 0 | ||||
-rw-r--r-- | src/assets/levels/test level2/hard/notes.txt | 0 | ||||
-rw-r--r-- | src/assets/levels/test level2/medium/leaderboard.txt | 0 | ||||
-rw-r--r-- | src/assets/levels/test level2/medium/notes.txt | 0 | ||||
-rw-r--r-- | src/assets/levels/test level2/metadata.json | 5 | ||||
-rw-r--r-- | src/assets/levels/test level2/preview.png | bin | 0 -> 9072089 bytes | |||
-rw-r--r-- | src/gameplay/Score.java | 1 | ||||
-rw-r--r-- | src/gameplay/SongPlayer.java | 15 | ||||
-rw-r--r-- | src/gui/LevelSurround.java | 2 | ||||
-rw-r--r-- | src/main/Level.java | 6 | ||||
-rw-r--r-- | src/main/LevelController.java | 4 |
14 files changed, 28 insertions, 5 deletions
diff --git a/src/assets/levels/test level2/background.png b/src/assets/levels/test level2/background.png Binary files differnew file mode 100644 index 0000000..0113819 --- /dev/null +++ b/src/assets/levels/test level2/background.png diff --git a/src/assets/levels/test level2/easy/leaderboard.txt b/src/assets/levels/test level2/easy/leaderboard.txt new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/assets/levels/test level2/easy/leaderboard.txt diff --git a/src/assets/levels/test level2/easy/notes.txt b/src/assets/levels/test level2/easy/notes.txt new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/assets/levels/test level2/easy/notes.txt diff --git a/src/assets/levels/test level2/hard/leaderboard.txt b/src/assets/levels/test level2/hard/leaderboard.txt new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/assets/levels/test level2/hard/leaderboard.txt diff --git a/src/assets/levels/test level2/hard/notes.txt b/src/assets/levels/test level2/hard/notes.txt new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/assets/levels/test level2/hard/notes.txt diff --git a/src/assets/levels/test level2/medium/leaderboard.txt b/src/assets/levels/test level2/medium/leaderboard.txt new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/assets/levels/test level2/medium/leaderboard.txt diff --git a/src/assets/levels/test level2/medium/notes.txt b/src/assets/levels/test level2/medium/notes.txt new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/assets/levels/test level2/medium/notes.txt diff --git a/src/assets/levels/test level2/metadata.json b/src/assets/levels/test level2/metadata.json new file mode 100644 index 0000000..4058afd --- /dev/null +++ b/src/assets/levels/test level2/metadata.json @@ -0,0 +1,5 @@ +{ + "title": "testSong2", + "artist": "fred shmeeran", + "desc": "testSong 2: electric boogaloo" +}
\ No newline at end of file diff --git a/src/assets/levels/test level2/preview.png b/src/assets/levels/test level2/preview.png Binary files differnew file mode 100644 index 0000000..002ad9e --- /dev/null +++ b/src/assets/levels/test level2/preview.png diff --git a/src/gameplay/Score.java b/src/gameplay/Score.java index 8bba48a..fa8ddfe 100644 --- a/src/gameplay/Score.java +++ b/src/gameplay/Score.java @@ -3,6 +3,7 @@ */ package gameplay; +import javafx.beans.property.IntegerProperty; public class Score { diff --git a/src/gameplay/SongPlayer.java b/src/gameplay/SongPlayer.java index e8d6c7b..496a4b0 100644 --- a/src/gameplay/SongPlayer.java +++ b/src/gameplay/SongPlayer.java @@ -13,6 +13,11 @@ import javafx.scene.layout.VBox; import javafx.scene.paint.Color; import javafx.scene.shape.Rectangle; import javafx.animation.*; +import javafx.beans.Observable; +import javafx.beans.property.IntegerProperty; +import javafx.beans.property.SimpleStringProperty; +import javafx.beans.property.StringProperty; +import javafx.beans.value.ObservableStringValue; import javafx.util.*; import main.Difficulty; import main.ScoreController; @@ -23,6 +28,7 @@ public class SongPlayer extends Pane { final int TIME = 1500; // delay for notes falling down the screen Score scoreCounter = new Score(); + StringProperty scoreString = new SimpleStringProperty(); Rectangle goalPerfect = new Rectangle(); HBox buttonBox = new HBox(); @@ -92,6 +98,7 @@ public class SongPlayer extends Pane { public SongPlayer(main.Level lvl, Difficulty d, Pane p, ScoreController cntrl) { loadSong(); + Rectangle field = new Rectangle(50, 50, new Color(0, 0, 0, 0.7)); field.heightProperty().bind(super.heightProperty()); @@ -278,4 +285,12 @@ public class SongPlayer extends Pane { } return -1; } + + // public ObservableStringValue getScoreString() { + // return + // } + + public int getCombo() { + return scoreCounter.getCombo(); + } }
\ No newline at end of file diff --git a/src/gui/LevelSurround.java b/src/gui/LevelSurround.java index f815982..a94f890 100644 --- a/src/gui/LevelSurround.java +++ b/src/gui/LevelSurround.java @@ -24,6 +24,7 @@ public class LevelSurround extends Pane public LevelSurround(Level level, Difficulty difficulty, Pane prev) { ScoreController sc = new ScoreController(); + SongPlayer game = new SongPlayer(level, difficulty, prev, sc); Button exit = new Button(); exit.setText("Back"); @@ -82,7 +83,6 @@ public class LevelSurround extends Pane comboTextBox.getChildren().addAll(comboLabel,comboDisplay); comboTextBox.setPadding(new Insets(10)); - SongPlayer game = new SongPlayer(level, difficulty, prev, sc); game.minWidthProperty().bind(super.prefHeightProperty().multiply(0.66)); game.minHeightProperty().bind(super.prefHeightProperty()); game.getStyleClass().add("box"); diff --git a/src/main/Level.java b/src/main/Level.java index eb8d60e..bf39af5 100644 --- a/src/main/Level.java +++ b/src/main/Level.java @@ -20,6 +20,7 @@ import org.json.simple.parser.ParseException; public class Level { public Image preview; //optional + private String levelFolderName; private String title; private String artist; public String desc; @@ -36,11 +37,12 @@ public class Level } //all below is required for table view - public Level() + public Level(String path) { + levelFolderName = path; JSONParser jsonParser = new JSONParser(); //parser to read the file - try(FileReader reader = new FileReader("src/assets/levels/test level/metadata.json")) + try(FileReader reader = new FileReader("src/assets/levels/" + levelFolderName+ "/metadata.json")) { Object obj = jsonParser.parse(reader); diff --git a/src/main/LevelController.java b/src/main/LevelController.java index 4ba34e1..4e1e8b7 100644 --- a/src/main/LevelController.java +++ b/src/main/LevelController.java @@ -30,7 +30,7 @@ public class LevelController Difficulty d5 = new Difficulty(); d5.title = "Impossible"; - Level testLevel = new Level(); + Level testLevel = new Level("test level"); //testLevel.setTitle("test level class"); testLevel.desc = "this level is being used to test the LevelController class"; //testLevel.setArtist("testArtist"); @@ -39,7 +39,7 @@ public class LevelController testLevel.diffList.add(d2); levelList.add(testLevel); - Level testLevel2 = new Level(); + Level testLevel2 = new Level("test level2"); //testLevel2.setTitle("another one"); testLevel2.desc = "it can say something else too"; //testLevel2.setAritst("testArtist2"); |