File tree Expand file tree Collapse file tree 3 files changed +94
-9
lines changed
main/java/io/github/moulberry/repo Expand file tree Collapse file tree 3 files changed +94
-9
lines changed Original file line number Diff line number Diff line change 1111import java .util .List ;
1212import java .util .Map ;
1313
14+ @ Getter
1415public class NEUConstants implements IReloadable {
15- @ Getter
1616 Bonuses bonuses ;
17- @ Getter
1817 Parents parents ;
19- @ Getter
2018 Enchants enchants ;
21- @ Getter
2219 EssenceCosts essenceCost ;
23- @ Getter
2420 FairySouls fairySouls ;
25- @ Getter
2621 Misc misc ;
27- @ Getter
2822 Leveling leveling ;
29- @ Getter
3023 PetLevelingData petLevelingData ;
31- @ Getter
3224 Map <@ PetId String , Map <Rarity , PetNumbers >> petNumbers ;
25+ Islands islands ;
3326
3427 public void reload (NEURepository repository ) throws NEURepositoryException {
3528 bonuses = repository .requireFile ("constants/bonuses.json" ).json (Bonuses .class );
@@ -45,6 +38,8 @@ public void reload(NEURepository repository) throws NEURepositoryException {
4538 petLevelingData = repository .requireFile ("constants/pets.json" ).json (PetLevelingData .class );
4639 petNumbers = repository .requireFile ("constants/petnums.json" ).json (new TypeToken <Map <@ PetId String , Map <Rarity , PetNumbers >>>() {
4740 });
41+ NEURepoFile islandsFile = repository .file ("constants/islands.json" );
42+ islands = islandsFile != null ? islandsFile .json (Islands .class ) : new Islands ();
4843 }
4944
5045
Original file line number Diff line number Diff line change 1+ package io .github .moulberry .repo .constants ;
2+
3+ import com .google .gson .annotations .SerializedName ;
4+ import lombok .AllArgsConstructor ;
5+ import lombok .Getter ;
6+ import lombok .NoArgsConstructor ;
7+ import lombok .ToString ;
8+ import org .jetbrains .annotations .NotNull ;
9+ import org .jetbrains .annotations .Unmodifiable ;
10+
11+ import java .util .ArrayList ;
12+ import java .util .HashMap ;
13+ import java .util .List ;
14+ import java .util .Map ;
15+
16+ @ Getter
17+ @ ToString
18+ public class Islands {
19+ /**
20+ * User friendly names from {@code /locraw} names
21+ */
22+ @ SerializedName ("area_names" )
23+ @ Unmodifiable Map <@ NotNull String , @ NotNull String > areaNames = new HashMap <>();
24+
25+ /**
26+ * List of portals
27+ */
28+ @ Unmodifiable @ NotNull List <@ NotNull Teleporter > teleporters = new ArrayList <>();
29+
30+ /**
31+ * List of /warp exit points
32+ */
33+ @ SerializedName ("island_warps" )
34+ @ Unmodifiable @ NotNull List <@ NotNull Warp > warps = new ArrayList <>();
35+
36+ @ Getter
37+ @ ToString
38+ @ AllArgsConstructor
39+ @ NoArgsConstructor
40+ public static class Warp {
41+ /**
42+ * Name of this warp in `/warp`
43+ */
44+ @ NotNull String warp ;
45+ /**
46+ * Alia
47+ */
48+ @ NotNull @ Unmodifiable List <@ NotNull String > aliases = new ArrayList <>();
49+ /**
50+ * The target island as a {@code /locraw} name
51+ */
52+ @ NotNull String mode ;
53+ /**
54+ * Coordinates of the target location
55+ */
56+ float x , y , z ;
57+ }
58+
59+ @ Getter
60+ @ ToString
61+ @ AllArgsConstructor
62+ @ NoArgsConstructor
63+ public static class Teleporter {
64+ /**
65+ * Coordinates of the teleporter on the entry side
66+ */
67+ float x , y , z ;
68+ /**
69+ * {@code /locraw} name of the entry side of the teleporter
70+ */
71+ @ NotNull String from ;
72+ /**
73+ * {@code /locraw} name of the exit side of the teleporter
74+ */
75+ @ NotNull String to ;
76+ }
77+ }
78+
Original file line number Diff line number Diff line change 88import io .github .moulberry .repo .data .Rarity ;
99
1010import java .nio .file .Paths ;
11+ import java .util .Arrays ;
1112import java .util .stream .Collectors ;
1213import java .util .stream .Stream ;
1314
@@ -24,6 +25,17 @@ public static void main(String[] args) throws NEURepositoryException {
2425 .filter (it -> it instanceof NEUUnknownRecipe ).map (it -> (NEUUnknownRecipe ) it )
2526 .map (NEUUnknownRecipe ::getType )
2627 .collect (Collectors .toSet ()));
28+ System .out .println ("all characters used for ids: " + repository .getItems ().getItems ().keySet ().stream ()
29+ .flatMap (it -> Arrays .stream (it .split ("" )))
30+ .collect (Collectors .toSet ()));
31+ repository .getConstants ().getIslands ().getWarps ().forEach (it -> {
32+ System .out .println ("Warp:" );
33+ System .out .println (" To: " + it .getMode () + " (" + it .getX () + " " + it .getY () + " " + it .getZ () + ")" );
34+ System .out .println (" Using: " + it .getWarp ());
35+ for (String alias : it .getAliases ()) {
36+ System .out .println (" Using: " + alias );
37+ }
38+ });
2739 System .out .println ("pet exp type for ROCK: " + repository .getConstants ().getPetLevelingData ().getPetExpTypes ().get ("ROCK" ));
2840 System .out .println ("stats of level 1 legendary sheep " + repository .getConstants ().getPetNumbers ().get ("SHEEP" ).get (Rarity .LEGENDARY ).interpolatedStatsAtLevel (1 ));
2941 System .out .println ("stats of level 150 golden dragon " + repository .getConstants ().getPetNumbers ().get ("GOLDEN_DRAGON" ).get (Rarity .LEGENDARY ).interpolatedStatsAtLevel (150 ));
You can’t perform that action at this time.
0 commit comments