v3.2.0: enhanced thrown weapons can now spawn from some special rooms
This commit is contained in:
@@ -77,6 +77,9 @@ public class PitRoom extends SpecialRoom {
|
|||||||
case 2:
|
case 2:
|
||||||
mainLoot = Generator.random(Random.oneOf(
|
mainLoot = Generator.random(Random.oneOf(
|
||||||
Generator.Category.WEAPON,
|
Generator.Category.WEAPON,
|
||||||
|
Generator.Category.WEAPON,
|
||||||
|
Generator.Category.MISSILE,
|
||||||
|
Generator.Category.ARMOR,
|
||||||
Generator.Category.ARMOR));
|
Generator.Category.ARMOR));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -111,16 +111,25 @@ public class PoolRoom extends SpecialRoom {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//1 floor set higher in probability, never cursed
|
//1 floor set higher in probability, never cursed
|
||||||
if (Random.Int(2) == 0) {
|
switch (Random.Int(5)){
|
||||||
prize = Generator.randomWeapon((Dungeon.depth / 5) + 1);
|
case 0: case 1: default:
|
||||||
if (((Weapon)prize).hasCurseEnchant()){
|
prize = Generator.randomWeapon((Dungeon.depth / 5) + 1);
|
||||||
((Weapon) prize).enchant(null);
|
if (((Weapon)prize).hasCurseEnchant()){
|
||||||
}
|
((Weapon) prize).enchant(null);
|
||||||
} else {
|
}
|
||||||
prize = Generator.randomArmor((Dungeon.depth / 5) + 1);
|
break;
|
||||||
if (((Armor)prize).hasCurseGlyph()){
|
case 2:
|
||||||
((Armor) prize).inscribe(null);
|
prize = Generator.randomMissile((Dungeon.depth / 5) + 1);
|
||||||
}
|
if (((Weapon)prize).hasCurseEnchant()){
|
||||||
|
((Weapon) prize).enchant(null);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 3: case 4:
|
||||||
|
prize = Generator.randomArmor((Dungeon.depth / 5) + 1);
|
||||||
|
if (((Armor)prize).hasCurseGlyph()){
|
||||||
|
((Armor) prize).inscribe(null);
|
||||||
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
prize.cursed = false;
|
prize.cursed = false;
|
||||||
prize.cursedKnown = true;
|
prize.cursedKnown = true;
|
||||||
|
|||||||
@@ -23,7 +23,6 @@ package com.shatteredpixel.shatteredpixeldungeon.levels.rooms.special;
|
|||||||
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
import com.shatteredpixel.shatteredpixeldungeon.Assets;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.Badges;
|
import com.shatteredpixel.shatteredpixeldungeon.Badges;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.Challenges;
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
|
||||||
@@ -184,17 +183,25 @@ public class SentryRoom extends SpecialRoom {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//1 floor set higher in probability, never cursed
|
//1 floor set higher in probability, never cursed
|
||||||
//1 floor set higher in probability, never cursed
|
switch (Random.Int(5)){
|
||||||
if (Random.Int(2) == 0) {
|
case 0: case 1: default:
|
||||||
prize = Generator.randomWeapon((Dungeon.depth / 5) + 1);
|
prize = Generator.randomWeapon((Dungeon.depth / 5) + 1);
|
||||||
if (((Weapon)prize).hasCurseEnchant()){
|
if (((Weapon)prize).hasCurseEnchant()){
|
||||||
((Weapon) prize).enchant(null);
|
((Weapon) prize).enchant(null);
|
||||||
}
|
}
|
||||||
} else {
|
break;
|
||||||
prize = Generator.randomArmor((Dungeon.depth / 5) + 1);
|
case 2:
|
||||||
if (((Armor)prize).hasCurseGlyph()){
|
prize = Generator.randomMissile((Dungeon.depth / 5) + 1);
|
||||||
((Armor) prize).inscribe(null);
|
if (((Weapon)prize).hasCurseEnchant()){
|
||||||
}
|
((Weapon) prize).enchant(null);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 3: case 4:
|
||||||
|
prize = Generator.randomArmor((Dungeon.depth / 5) + 1);
|
||||||
|
if (((Armor)prize).hasCurseGlyph()){
|
||||||
|
((Armor) prize).inscribe(null);
|
||||||
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
prize.cursed = false;
|
prize.cursed = false;
|
||||||
prize.cursedKnown = true;
|
prize.cursedKnown = true;
|
||||||
@@ -354,7 +361,7 @@ public class SentryRoom extends SpecialRoom {
|
|||||||
|
|
||||||
public static class SentrySprite extends MobSprite {
|
public static class SentrySprite extends MobSprite {
|
||||||
|
|
||||||
private Animation charging;
|
private final Animation charging;
|
||||||
private Emitter chargeParticles;
|
private Emitter chargeParticles;
|
||||||
|
|
||||||
public SentrySprite(){
|
public SentrySprite(){
|
||||||
|
|||||||
Reference in New Issue
Block a user