summaryrefslogtreecommitdiff
path: root/src/com/sneed/pkrandom/constants
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/sneed/pkrandom/constants')
-rw-r--r--src/com/sneed/pkrandom/constants/Gen3Constants.java27
1 files changed, 20 insertions, 7 deletions
diff --git a/src/com/sneed/pkrandom/constants/Gen3Constants.java b/src/com/sneed/pkrandom/constants/Gen3Constants.java
index c56a206..5c075c3 100644
--- a/src/com/sneed/pkrandom/constants/Gen3Constants.java
+++ b/src/com/sneed/pkrandom/constants/Gen3Constants.java
@@ -480,7 +480,7 @@ public class Gen3Constants {
}
}
- public static ItemList allowedItems, nonBadItems;
+ public static ItemList allowedItems, nonBadItemsRSE, nonBadItemsFRLG;
public static List<Integer> regularShopItems, opShopItems;
public static String getRunningShoesCheckPrefix(int romType) {
@@ -518,12 +518,17 @@ public class Gen3Constants {
// non-bad items
// ban specific pokemon hold items, berries, apricorns, mail
- nonBadItems = allowedItems.copy();
- nonBadItems.banSingles(Gen3Items.lightBall, Gen3Items.oranBerry, Gen3Items.soulDew);
- nonBadItems.banRange(Gen3Items.orangeMail, 12); // mail
- nonBadItems.banRange(Gen3Items.figyBerry, 33); // berries
- nonBadItems.banRange(Gen3Items.luckyPunch, 4); // pokemon specific
- nonBadItems.banRange(Gen3Items.redScarf, 5); // contest scarves
+ nonBadItemsRSE = allowedItems.copy();
+ nonBadItemsRSE.banSingles(Gen3Items.lightBall, Gen3Items.oranBerry, Gen3Items.soulDew);
+ nonBadItemsRSE.banRange(Gen3Items.orangeMail, 12); // mail
+ nonBadItemsRSE.banRange(Gen3Items.figyBerry, 33); // berries
+ nonBadItemsRSE.banRange(Gen3Items.luckyPunch, 4); // pokemon specific
+ nonBadItemsRSE.banRange(Gen3Items.redScarf, 5); // contest scarves
+
+ // FRLG-exclusive bad items
+ // Ban Shoal items and Shards, since they don't do anything
+ nonBadItemsFRLG = nonBadItemsRSE.copy();
+ nonBadItemsFRLG.banRange(Gen3Items.shoalSalt, 6);
regularShopItems = new ArrayList<>();
@@ -540,6 +545,14 @@ public class Gen3Constants {
opShopItems.add(Gen3Items.luckyEgg);
}
+ public static ItemList getNonBadItems(int romType) {
+ if (romType == Gen3Constants.RomType_FRLG) {
+ return nonBadItemsFRLG;
+ } else {
+ return nonBadItemsRSE;
+ }
+ }
+
public static void trainerTagsRS(List<Trainer> trs, int romType) {
// Gym Trainers
tag(trs, "GYM1", 0x140, 0x141);