v2.5.0: adjusted some special rooms to no longer throw out cursed items
This commit is contained in:
@@ -26,6 +26,8 @@ import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Generator;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Heap;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.armor.Armor;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Level;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.features.Maze;
|
||||
@@ -95,13 +97,19 @@ public class SecretMazeRoom extends SecretRoom {
|
||||
|
||||
Item prize;
|
||||
//1 floor set higher in probability, never cursed
|
||||
do {
|
||||
if (Random.Int(2) == 0) {
|
||||
prize = Generator.randomWeapon((Dungeon.depth / 5) + 1, true);
|
||||
} else {
|
||||
prize = Generator.randomArmor((Dungeon.depth / 5) + 1);
|
||||
//1 floor set higher in probability, never cursed
|
||||
if (Random.Int(2) == 0) {
|
||||
prize = Generator.randomWeapon((Dungeon.depth / 5) + 1, true);
|
||||
if (((Weapon)prize).hasCurseEnchant()){
|
||||
((Weapon) prize).enchant(null);
|
||||
}
|
||||
} while (prize.cursed || Challenges.isItemBlocked(prize));
|
||||
} else {
|
||||
prize = Generator.randomArmor((Dungeon.depth / 5) + 1);
|
||||
if (((Armor)prize).hasCurseGlyph()){
|
||||
((Armor) prize).inscribe(null);
|
||||
}
|
||||
}
|
||||
prize.cursed = false;
|
||||
prize.cursedKnown = true;
|
||||
|
||||
//33% chance for an extra update.
|
||||
|
||||
@@ -21,13 +21,14 @@
|
||||
|
||||
package com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special;
|
||||
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Challenges;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Piranha;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Generator;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Heap;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.armor.Armor;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfInvisibility;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Level;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
||||
@@ -110,13 +111,18 @@ public class PoolRoom extends SpecialRoom {
|
||||
}
|
||||
|
||||
//1 floor set higher in probability, never cursed
|
||||
do {
|
||||
if (Random.Int(2) == 0) {
|
||||
prize = Generator.randomWeapon((Dungeon.depth / 5) + 1);
|
||||
} else {
|
||||
prize = Generator.randomArmor((Dungeon.depth / 5) + 1);
|
||||
if (Random.Int(2) == 0) {
|
||||
prize = Generator.randomWeapon((Dungeon.depth / 5) + 1);
|
||||
if (((Weapon)prize).hasCurseEnchant()){
|
||||
((Weapon) prize).enchant(null);
|
||||
}
|
||||
} while (prize.cursed || Challenges.isItemBlocked(prize));
|
||||
} else {
|
||||
prize = Generator.randomArmor((Dungeon.depth / 5) + 1);
|
||||
if (((Armor)prize).hasCurseGlyph()){
|
||||
((Armor) prize).inscribe(null);
|
||||
}
|
||||
}
|
||||
prize.cursed = false;
|
||||
prize.cursedKnown = true;
|
||||
|
||||
//33% chance for an extra update.
|
||||
|
||||
@@ -35,7 +35,9 @@ import com.shatteredpixel.shatteredpixeldungeon.effects.MagicMissile;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Generator;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Heap;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.armor.Armor;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfHaste;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.journal.Bestiary;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Level;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
||||
@@ -182,13 +184,19 @@ public class SentryRoom extends SpecialRoom {
|
||||
}
|
||||
|
||||
//1 floor set higher in probability, never cursed
|
||||
do {
|
||||
if (Random.Int(2) == 0) {
|
||||
prize = Generator.randomWeapon((Dungeon.depth / 5) + 1);
|
||||
} else {
|
||||
prize = Generator.randomArmor((Dungeon.depth / 5) + 1);
|
||||
//1 floor set higher in probability, never cursed
|
||||
if (Random.Int(2) == 0) {
|
||||
prize = Generator.randomWeapon((Dungeon.depth / 5) + 1);
|
||||
if (((Weapon)prize).hasCurseEnchant()){
|
||||
((Weapon) prize).enchant(null);
|
||||
}
|
||||
} while (prize.cursed || Challenges.isItemBlocked(prize));
|
||||
} else {
|
||||
prize = Generator.randomArmor((Dungeon.depth / 5) + 1);
|
||||
if (((Armor)prize).hasCurseGlyph()){
|
||||
((Armor) prize).inscribe(null);
|
||||
}
|
||||
}
|
||||
prize.cursed = false;
|
||||
prize.cursedKnown = true;
|
||||
|
||||
//33% chance for an extra update.
|
||||
|
||||
@@ -21,12 +21,13 @@
|
||||
|
||||
package com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special;
|
||||
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Challenges;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Generator;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Heap;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.armor.Armor;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.potions.PotionOfLevitation;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.Weapon;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Level;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.Terrain;
|
||||
import com.shatteredpixel.shatteredpixeldungeon.levels.painters.Painter;
|
||||
@@ -133,13 +134,18 @@ public class TrapsRoom extends SpecialRoom {
|
||||
}
|
||||
|
||||
//1 floor set higher in probability, never cursed
|
||||
do {
|
||||
if (Random.Int(2) == 0) {
|
||||
prize = Generator.randomWeapon((Dungeon.depth / 5) + 1);
|
||||
} else {
|
||||
prize = Generator.randomArmor((Dungeon.depth / 5) + 1);
|
||||
if (Random.Int(2) == 0) {
|
||||
prize = Generator.randomWeapon((Dungeon.depth / 5) + 1);
|
||||
if (((Weapon)prize).hasCurseEnchant()){
|
||||
((Weapon) prize).enchant(null);
|
||||
}
|
||||
} while (prize.cursed || Challenges.isItemBlocked(prize));
|
||||
} else {
|
||||
prize = Generator.randomArmor((Dungeon.depth / 5) + 1);
|
||||
if (((Armor)prize).hasCurseGlyph()){
|
||||
((Armor) prize).inscribe(null);
|
||||
}
|
||||
}
|
||||
prize.cursed = false;
|
||||
prize.cursedKnown = true;
|
||||
|
||||
//33% chance for an extra update.
|
||||
|
||||
Reference in New Issue
Block a user