diff options
37 files changed, 25 insertions, 90 deletions
@@ -2,7 +2,7 @@ target/ !.mvn/wrapper/maven-wrapper.jar !**/src/main/**/target/ !**/src/test/**/target/ -/levels/ +/.npehero ### IntelliJ IDEA ### .idea/modules.xml diff --git a/controls.json b/.npehero/controls.json index e347aec..fd7f0ad 100644 --- a/controls.json +++ b/.npehero/controls.json @@ -12,5 +12,6 @@ "PLAY_PAUSE": "P", "SELECT_ALL": "S", "CLEAR_SELECTION": "ESCAPE", + "SELECT_MULTIPLE": "CONTROL", "NOTE_UP": "UP" }
\ No newline at end of file diff --git a/settings.json b/.npehero/settings.json index fb4d270..562d704 100755 --- a/settings.json +++ b/.npehero/settings.json @@ -1,4 +1,5 @@ { + "guiScale": 1.0, "effectsVol": 1.0, "musicVol": 1.0, "enableMenuMusic": true diff --git a/levels/Apathetic Empathy/Hard/leaderboard.json b/levels/Apathetic Empathy/Hard/leaderboard.json deleted file mode 100644 index 61b2fbd..0000000 --- a/levels/Apathetic Empathy/Hard/leaderboard.json +++ /dev/null @@ -1 +0,0 @@ -[{"date":"2023-06-05","score":1203000,"name":"NEW CHART NEW ME BABY"},{"date":"2023-06-05","score":1371000,"name":"woopee!"},{"date":"2023-06-06","score":1689800,"name":"zbone (bad run)"}]
\ No newline at end of file diff --git a/levels/Book Betrayal/Easy/metadata.json b/levels/Book Betrayal/Easy/metadata.json deleted file mode 100644 index 3027067..0000000 --- a/levels/Book Betrayal/Easy/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"numBeats":652,"title":"Easy","priority":2,"bpm":166.0}
\ No newline at end of file diff --git a/levels/Book Betrayal/metadata.json b/levels/Book Betrayal/metadata.json deleted file mode 100644 index a0b1a48..0000000 --- a/levels/Book Betrayal/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"color1":"0xff0000ff","color2":"0x0000ffff","artist":"Lunacid","title":"Book Betrayal","color5":"0xffff00ff","color3":"0x008000ff","desc":"No description","color4":"0x800080ff"}
\ No newline at end of file diff --git a/levels/Easy Level for Little Babies/Baby/leaderboard.json b/levels/Easy Level for Little Babies/Baby/leaderboard.json deleted file mode 100644 index 8f2cf38..0000000 --- a/levels/Easy Level for Little Babies/Baby/leaderboard.json +++ /dev/null @@ -1 +0,0 @@ -[{"date":"2023-06-06","score":113400,"name":"I MESSED UP ONE NOTE"},{"date":"2023-06-07","score":60600,"name":"connor"},{"date":"2023-06-07","score":68800,"name":"amelia w w w w w w"},{"date":"2023-06-07","score":80200,"name":"beevah"}]
\ No newline at end of file diff --git a/levels/Easy Level for Little Babies/Baby/metadata.json b/levels/Easy Level for Little Babies/Baby/metadata.json deleted file mode 100644 index 410ccf2..0000000 --- a/levels/Easy Level for Little Babies/Baby/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"numBeats":88,"title":"Baby","priority":0,"bpm":100.0}
\ No newline at end of file diff --git a/levels/Easy Level for Little Babies/Baby/notes.txt b/levels/Easy Level for Little Babies/Baby/notes.txt deleted file mode 100644 index 47947a7..0000000 --- a/levels/Easy Level for Little Babies/Baby/notes.txt +++ /dev/null @@ -1,57 +0,0 @@ -f21.0 -j22.2 -d23.4 -j24.6 -f25.6 -k26.8 -d27.9 -f29.1 -s30.2 -j31.4 -f32.6 -d33.6 -s34.7 -f35.9 -j36.9 -d38.1 -k39.3 -f40.4 -j41.5 -d42.7 -s43.8 -j44.9 -k46.1 -f47.3 -s48.4 -j49.5 -k51.8 -d52.9 -f54.1 -j55.2 -d56.4 -f57.4 -s58.6 -k60.9 -j62.0 -f63.1 -d64.3 -f65.4 -s66.6 -k67.8 -j69.9 -f71.0 -d72.2 -s73.3 -j73.3 -k74.5 -d75.7 -d76.8 -k76.8 -s76.8 -j79.0 -f80.3 -k81.4 -d82.5 -s83.6 -k84.7 -f85.9 diff --git a/levels/Easy Level for Little Babies/background.png b/levels/Easy Level for Little Babies/background.png Binary files differdeleted file mode 100644 index 5fc661b..0000000 --- a/levels/Easy Level for Little Babies/background.png +++ /dev/null diff --git a/levels/Easy Level for Little Babies/metadata.json b/levels/Easy Level for Little Babies/metadata.json deleted file mode 100644 index f368399..0000000 --- a/levels/Easy Level for Little Babies/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"color1":"0x0000ffff","color2":"0x00ffffff","artist":"Jane Taylor","title":"Easy Level for Little Babies","color5":"0x000000ff","color3":"0xffff00ff","desc":"An easy level for little babies (twinkle twinkle little star)","color4":"0x8099ffff"}
\ No newline at end of file diff --git a/levels/Easy Level for Little Babies/preview.png b/levels/Easy Level for Little Babies/preview.png Binary files differdeleted file mode 100644 index 5fc661b..0000000 --- a/levels/Easy Level for Little Babies/preview.png +++ /dev/null diff --git a/levels/Galway Girl/Easy/metadata.json b/levels/Galway Girl/Easy/metadata.json deleted file mode 100644 index b6b0973..0000000 --- a/levels/Galway Girl/Easy/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"numBeats":150,"title":"Medium","priority":2,"bpm":100.0}
\ No newline at end of file diff --git a/levels/Galway Girl/Hard/metadata.json b/levels/Galway Girl/Hard/metadata.json deleted file mode 100644 index 984d821..0000000 --- a/levels/Galway Girl/Hard/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"numBeats":55,"title":"Hard","priority":3,"bpm":100.0}
\ No newline at end of file diff --git a/levels/Galway Girl/metadata.json b/levels/Galway Girl/metadata.json deleted file mode 100644 index b8d2120..0000000 --- a/levels/Galway Girl/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"color1":"0x6680e6ff","color2":"0x334db3ff","artist":"Ed Sheeran","title":"Galway Girl","color5":"0x6680e6ff","color3":"0x4d4d4dff","desc":"Fred Shmeeran Returns","color4":"0x334db3ff"}
\ No newline at end of file diff --git a/levels/Gas Gas Gas/Hard/metadata.json b/levels/Gas Gas Gas/Hard/metadata.json deleted file mode 100644 index 38aedf6..0000000 --- a/levels/Gas Gas Gas/Hard/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"numBeats":695,"title":"Hard","priority":3,"bpm":154.0}
\ No newline at end of file diff --git a/levels/Gas Gas Gas/metadata.json b/levels/Gas Gas Gas/metadata.json deleted file mode 100644 index 0e97d88..0000000 --- a/levels/Gas Gas Gas/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"color1":"0xb3b3b3ff","color2":"0x666666ff","artist":"Manuel","title":"Gas Gas Gas","color5":"0xe6e6e6ff","color3":"0xffffffff","desc":"Fast","color4":"0x808080ff"}
\ No newline at end of file diff --git a/levels/Mr. Brightside/Easy/metadata.json b/levels/Mr. Brightside/Easy/metadata.json deleted file mode 100644 index 1e0bbf6..0000000 --- a/levels/Mr. Brightside/Easy/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"numBeats":526,"title":"Easy","priority":-1,"bpm":148.0}
\ No newline at end of file diff --git a/levels/Mr. Brightside/Hard/metadata.json b/levels/Mr. Brightside/Hard/metadata.json deleted file mode 100644 index a6c7d46..0000000 --- a/levels/Mr. Brightside/Hard/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"numBeats":540,"title":"Hard","priority":0,"bpm":148.0}
\ No newline at end of file diff --git a/levels/Mr. Brightside/metadata.json b/levels/Mr. Brightside/metadata.json deleted file mode 100644 index 60ed15f..0000000 --- a/levels/Mr. Brightside/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"color1":"0x334db3ff","color2":"0x99b3ffff","artist":"The Killers","title":"Mr. Brightside","color5":"0x334db3ff","color3":"0xe64d4dff","color4":"0x99b3ffff"}
\ No newline at end of file diff --git a/levels/PEPSI MAN/Aidan's Difficult/metadata.json b/levels/PEPSI MAN/Aidan's Difficult/metadata.json deleted file mode 100644 index 8ff9095..0000000 --- a/levels/PEPSI MAN/Aidan's Difficult/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"numBeats":640,"title":"Aidan's Insane","priority":1,"bpm":158.0}
\ No newline at end of file diff --git a/levels/PEPSI MAN/metadata.json b/levels/PEPSI MAN/metadata.json deleted file mode 100644 index ab172ae..0000000 --- a/levels/PEPSI MAN/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"color1":"0x0000ffff","color2":"0x00ffffff","artist":"Pepsi","title":"PEPSI MAN","color5":"0xcc3333ff","color3":"0xffffffff","desc":"The champion of thirst-quenching","color4":"0xff0000ff"}
\ No newline at end of file diff --git a/levels/Pepsi on the House/Medium/metadata.json b/levels/Pepsi on the House/Medium/metadata.json deleted file mode 100644 index e54a392..0000000 --- a/levels/Pepsi on the House/Medium/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"numBeats":168,"title":"Medium","priority":2,"bpm":138.0}
\ No newline at end of file diff --git a/levels/Pepsi on the House/metadata.json b/levels/Pepsi on the House/metadata.json deleted file mode 100644 index 0d95355..0000000 --- a/levels/Pepsi on the House/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"color1":"0xff0000ff","color2":"0x0000ffff","artist":"Peach Pit","title":"Pepsi on the House","color5":"0xffff00ff","color3":"0x008000ff","color4":"0x800080ff"}
\ No newline at end of file diff --git a/levels/Take On Me/Easy/metadata.json b/levels/Take On Me/Easy/metadata.json deleted file mode 100644 index eba6cd1..0000000 --- a/levels/Take On Me/Easy/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"numBeats":610,"title":"Easy","priority":0,"bpm":170.0}
\ No newline at end of file diff --git a/levels/Take On Me/Medium/leaderboard.json b/levels/Take On Me/Medium/leaderboard.json deleted file mode 100644 index 32e170f..0000000 --- a/levels/Take On Me/Medium/leaderboard.json +++ /dev/null @@ -1 +0,0 @@ -[{"date":"2023-06-06","score":2059000,"name":"A Train"},{"date":"2023-06-07","score":2151900,"name":"Aidan"}]
\ No newline at end of file diff --git a/levels/Take On Me/metadata.json b/levels/Take On Me/metadata.json deleted file mode 100644 index f5849e8..0000000 --- a/levels/Take On Me/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"color1":"0x4d4d4dff","color2":"0x999999ff","artist":"A-ha","title":"Take On Me","color5":"0x4d4d4dff","color3":"0xe6e6e6ff","desc":"","color4":"0x999999ff"}
\ No newline at end of file diff --git a/levels/fragmentsOfTime/Medium/metadata.json b/levels/fragmentsOfTime/Medium/metadata.json deleted file mode 100644 index 086cb1f..0000000 --- a/levels/fragmentsOfTime/Medium/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"numBeats":460,"title":"Medium","priority":2,"bpm":100.0}
\ No newline at end of file diff --git a/levels/fragmentsOfTime/metadata.json b/levels/fragmentsOfTime/metadata.json deleted file mode 100644 index fcdd51d..0000000 --- a/levels/fragmentsOfTime/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"color1":"0xcccc33ff","color2":"0xffffffff","artist":"Daft Punk","title":"Fragments Of Time","color5":"0xcccc33ff","color3":"0xb3ccffff","desc":"(feat. Todd Edwards)","color4":"0xffffffff"}
\ No newline at end of file diff --git a/levels/intoMyArms/Medium/metadata.json b/levels/intoMyArms/Medium/metadata.json deleted file mode 100644 index a570f3b..0000000 --- a/levels/intoMyArms/Medium/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"numBeats":670,"title":"Medium","priority":2,"bpm":175.0}
\ No newline at end of file diff --git a/levels/intoMyArms/metadata.json b/levels/intoMyArms/metadata.json deleted file mode 100644 index e3f918a..0000000 --- a/levels/intoMyArms/metadata.json +++ /dev/null @@ -1 +0,0 @@ -{"color1":"0xff0000ff","color2":"0x0000ffff","artist":"COIN","title":"Into My Arms","color5":"0xffff00ff","color3":"0x008000ff","desc":"No description","color4":"0x800080ff"}
\ No newline at end of file @@ -99,7 +99,6 @@ <noManPages>true</noManPages> <stripDebug>true</stripDebug> <noHeaderFiles>true</noHeaderFiles> - <jmodsPath>/home/sowgro/Code/jdk-22_windows-x64_bin/jdk-22.0.2</jmodsPath> <options>-Dprism.forceGPU=true</options> <compress>0</compress> </configuration> diff --git a/src/main/java/net/sowgro/npehero/Driver.java b/src/main/java/net/sowgro/npehero/Driver.java index 89381aa..3be414c 100755 --- a/src/main/java/net/sowgro/npehero/Driver.java +++ b/src/main/java/net/sowgro/npehero/Driver.java @@ -17,6 +17,7 @@ import net.sowgro.npehero.levelapi.Levels; import net.sowgro.npehero.main.*; import net.sowgro.npehero.gui.MainMenu; +import java.io.File; import java.io.IOException; import java.net.URL; import java.util.Stack; @@ -25,6 +26,7 @@ import java.util.Stack; public class Driver extends Application { public static final Image MENU_BACKGROUND = new Image(Driver.class.getResource("mountains.png").toExternalForm()); + public static final File BASE_DIR = new File(".npehero"); public static Stage primaryStage; public static ScrollPane primaryPane = new ScrollPane(); @@ -88,6 +90,17 @@ public class Driver extends Application primaryStage.show(); Stack<String> errors = new Stack<>(); + System.out.println("Loading .npehero..."); + try { + if (!BASE_DIR.exists() && !BASE_DIR.mkdir()) { + throw new IOException(); + } + if (!BASE_DIR.isDirectory()) { + throw new IOException(); + } + } catch (Exception e) { + errors.push("Failed to locate .npehero\n"+e); + } System.out.println("Loading settings..."); try { Settings.read(); diff --git a/src/main/java/net/sowgro/npehero/levelapi/Levels.java b/src/main/java/net/sowgro/npehero/levelapi/Levels.java index 84d169c..f4cdc1d 100755 --- a/src/main/java/net/sowgro/npehero/levelapi/Levels.java +++ b/src/main/java/net/sowgro/npehero/levelapi/Levels.java @@ -11,6 +11,7 @@ import java.util.HashMap; import javafx.collections.FXCollections; import javafx.collections.ObservableList; +import net.sowgro.npehero.Driver; /** * Stores a list of all the levels @@ -20,7 +21,7 @@ public class Levels { public static final ObservableList<Level> list = FXCollections.observableArrayList(); public static final HashMap<String, Exception> problems = new HashMap<>(); - public static final File dir = new File("levels"); + public static final File dir = new File(Driver.BASE_DIR, "levels"); /** * Reads contents of the levels folder and creates a level form each subfolder diff --git a/src/main/java/net/sowgro/npehero/main/Control.java b/src/main/java/net/sowgro/npehero/main/Control.java index c842419..df6e3ef 100644 --- a/src/main/java/net/sowgro/npehero/main/Control.java +++ b/src/main/java/net/sowgro/npehero/main/Control.java @@ -5,6 +5,7 @@ import com.google.gson.GsonBuilder; import javafx.beans.property.ObjectProperty; import javafx.beans.property.SimpleObjectProperty; import javafx.scene.input.KeyCode; +import net.sowgro.npehero.Driver; import java.io.*; import java.util.*; @@ -43,7 +44,7 @@ public enum Control { LANE4, }; - private static final File file = new File("controls.json"); + private static final File file = new File(Driver.BASE_DIR, "controls.json"); private static final Gson json = new GsonBuilder().serializeNulls().setPrettyPrinting().create(); public static void writeToFile() throws IOException { @@ -57,6 +58,7 @@ public enum Control { } public static void readFromFile() throws Exception { + @SuppressWarnings("unchecked") Map<String, Object> data = json.fromJson(new FileReader(file), Map.class); for (Control control : Control.values()) { if (data.containsKey(control.toString())) { diff --git a/src/main/java/net/sowgro/npehero/main/Settings.java b/src/main/java/net/sowgro/npehero/main/Settings.java index 162f579..cee7680 100755 --- a/src/main/java/net/sowgro/npehero/main/Settings.java +++ b/src/main/java/net/sowgro/npehero/main/Settings.java @@ -11,6 +11,7 @@ import com.google.gson.Gson; import com.google.gson.GsonBuilder; import javafx.beans.property.SimpleBooleanProperty; import javafx.beans.property.SimpleDoubleProperty; +import net.sowgro.npehero.Driver; public class Settings { @@ -20,7 +21,7 @@ public class Settings public static SimpleDoubleProperty guiScale = new SimpleDoubleProperty(1); private static final Gson jsonParser = new GsonBuilder().serializeNulls().setPrettyPrinting().create(); - private static final File jsonFile = new File("settings.json"); + private static final File jsonFile = new File(Driver.BASE_DIR, "settings.json"); /** * Reads json data from settings.json diff --git a/src/main/resources/net/sowgro/npehero/style.css b/src/main/resources/net/sowgro/npehero/style.css index e4d34f0..0697632 100755 --- a/src/main/resources/net/sowgro/npehero/style.css +++ b/src/main/resources/net/sowgro/npehero/style.css @@ -168,8 +168,7 @@ Slider:focused .thumb{ /* scroll bars */ -.scroll-bar:horizontal , -.scroll-bar:vertical{ +.scroll-bar:horizontal, .scroll-bar:vertical { -fx-font-size: 10px; -fx-background-color :transparent; -fx-border-color :transparent; @@ -177,7 +176,7 @@ Slider:focused .thumb{ -fx-border-radius :2.0em; } -.increment-button ,.decrement-button { +.increment-button, .decrement-button { -fx-background-color:transparent; -fx-border-color:transparent; } |