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 | |
| 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.
| -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.pngBinary files differ new 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.pngBinary files differ new 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"); | 
