diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/DM200.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/DM200.java index 01e89e6b0..631783043 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/DM200.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/DM200.java @@ -82,7 +82,7 @@ public class DM200 extends Mob { Dungeon.LimitedDrops.DM200_EQUIP.count++; //uses probability tables for dwarf city if (loot == Generator.Category.WEAPON){ - return Generator.randomWeapon(4); + return Generator.randomWeapon(4, true); } else { return Generator.randomArmor(4); } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Golem.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Golem.java index 335c7a262..82c66e101 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Golem.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Golem.java @@ -90,7 +90,7 @@ public class Golem extends Mob { Dungeon.LimitedDrops.GOLEM_EQUIP.count++; //uses probability tables for demon halls if (loot == Generator.Category.WEAPON){ - return Generator.randomWeapon(5); + return Generator.randomWeapon(5, true); } else { return Generator.randomArmor(5); } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Mimic.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Mimic.java index 03920a9a1..4b6d635d0 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Mimic.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/Mimic.java @@ -294,16 +294,16 @@ public class Mimic extends Mob { reward = new Gold().random(); break; case 1: - reward = Generator.randomMissile(); + reward = Generator.randomMissile(true); break; case 2: reward = Generator.randomArmor(); break; case 3: - reward = Generator.randomWeapon(); + reward = Generator.randomWeapon(true); break; case 4: - reward = Generator.random(Generator.Category.RING); + reward = Generator.randomUsingDefaults(Generator.Category.RING); break; } } while (reward == null || Challenges.isItemBlocked(reward)); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/TormentedSpirit.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/TormentedSpirit.java index 3138932f5..dd6795265 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/TormentedSpirit.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/actors/mobs/TormentedSpirit.java @@ -60,7 +60,7 @@ public class TormentedSpirit extends Wraith { //50/50 between weapon or armor, always uncursed Item prize; if (Random.Int(2) == 0){ - prize = Generator.randomWeapon(); + prize = Generator.randomWeapon(true); if (((MeleeWeapon)prize).hasCurseEnchant()){ ((MeleeWeapon) prize).enchantment = null; } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/rings/RingOfWealth.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/rings/RingOfWealth.java index c11a53bf3..de4515ff8 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/rings/RingOfWealth.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/rings/RingOfWealth.java @@ -261,7 +261,7 @@ public class RingOfWealth extends Ring { int floorset = (Dungeon.depth + level)/5; switch (Random.Int(5)){ default: case 0: case 1: - Weapon w = Generator.randomWeapon(floorset); + Weapon w = Generator.randomWeapon(floorset, true); if (!w.hasGoodEnchant() && Random.Int(10) < level) w.enchant(); else if (w.hasCurseEnchant()) w.enchant(null); result = w; @@ -273,7 +273,7 @@ public class RingOfWealth extends Ring { result = a; break; case 3: - result = Generator.random(Generator.Category.RING); + result = Generator.randomUsingDefaults(Generator.Category.RING); break; case 4: result = Generator.random(Generator.Category.ARTIFACT); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/scrolls/ScrollOfTransmutation.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/scrolls/ScrollOfTransmutation.java index e1f23e50c..b365f9c08 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/scrolls/ScrollOfTransmutation.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/scrolls/ScrollOfTransmutation.java @@ -153,7 +153,7 @@ public class ScrollOfTransmutation extends InventoryScroll { Artifact a = changeArtifact( (Artifact)item ); if (a == null){ //if no artifacts are left, generate a random +0 ring with shared ID/curse state - Item result = Generator.random(Generator.Category.RING); + Item result = Generator.randomUsingDefaults(Generator.Category.RING); result.levelKnown = item.levelKnown; result.cursed = item.cursed; result.cursedKnown = item.cursedKnown; @@ -175,7 +175,7 @@ public class ScrollOfTransmutation extends InventoryScroll { } else { Wand n; do { - n = (Wand) Generator.random(Generator.Category.WAND); + n = (Wand) Generator.randomUsingDefaults(Generator.Category.WAND); } while (Challenges.isItemBlocked(n) || n.getClass() == wandClass); n.level(0); n.identify(); @@ -205,7 +205,7 @@ public class ScrollOfTransmutation extends InventoryScroll { } do { - n = (Weapon)Generator.random(c); + n = (Weapon)Generator.randomUsingDefaults(c); } while (Challenges.isItemBlocked(n) || n.getClass() == w.getClass()); n.level(0); @@ -232,7 +232,7 @@ public class ScrollOfTransmutation extends InventoryScroll { private static Ring changeRing( Ring r ) { Ring n; do { - n = (Ring)Generator.random( Generator.Category.RING ); + n = (Ring)Generator.randomUsingDefaults( Generator.Category.RING ); } while (Challenges.isItemBlocked(n) || n.getClass() == r.getClass()); n.level(0); diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/CursedWand.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/CursedWand.java index ae73a63de..2b16c0908 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/CursedWand.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/items/wands/CursedWand.java @@ -362,7 +362,7 @@ public class CursedWand { mimic.alignment = Char.Alignment.ENEMY; Item reward; do { - reward = Generator.random(Random.oneOf(Generator.Category.WEAPON, Generator.Category.ARMOR, + reward = Generator.randomUsingDefaults(Random.oneOf(Generator.Category.WEAPON, Generator.Category.ARMOR, Generator.Category.RING, Generator.Category.WAND)); } while (reward.level() < 1); //play vfx/sfx manually as mimic isn't in the scene yet diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/secret/SecretArtilleryRoom.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/secret/SecretArtilleryRoom.java index b16522068..77c304868 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/secret/SecretArtilleryRoom.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/secret/SecretArtilleryRoom.java @@ -46,7 +46,7 @@ public class SecretArtilleryRoom extends SecretRoom { if( i == 0 ){ level.drop(new Bomb.DoubleBomb(), itemPos); } else { - level.drop(Generator.randomMissile(), itemPos); + level.drop(Generator.randomMissile(true), itemPos); } } diff --git a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/secret/SecretMazeRoom.java b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/secret/SecretMazeRoom.java index 37e85152a..a7cd61660 100644 --- a/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/secret/SecretMazeRoom.java +++ b/core/src/main/java/com/shatteredpixel/shatteredpixeldungeon/levels/rooms/secret/SecretMazeRoom.java @@ -97,7 +97,7 @@ public class SecretMazeRoom extends SecretRoom { //1 floor set higher in probability, never cursed do { if (Random.Int(2) == 0) { - prize = Generator.randomWeapon((Dungeon.depth / 5) + 1); + prize = Generator.randomWeapon((Dungeon.depth / 5) + 1, true); } else { prize = Generator.randomArmor((Dungeon.depth / 5) + 1); }