v0.7.4: various bugfixes

This commit is contained in:
Evan Debenham 2019-07-08 21:59:16 -04:00
parent 1c4603d6e4
commit 760ecc7e61
8 changed files with 17 additions and 7 deletions

View File

@ -81,7 +81,7 @@ public class ShatteredPixelDungeon extends Game {
com.watabou.utils.Bundle.addAlias( com.watabou.utils.Bundle.addAlias(
com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Elastic.class, com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Elastic.class,
"com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.curses.Elastic" ); "com.shatteredpixel.shatteredpixeldungeon.items.weapon.curses.Elastic" );
com.watabou.utils.Bundle.addAlias( com.watabou.utils.Bundle.addAlias(
com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Elastic.class, com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Elastic.class,
"com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Dazzling" ); "com.shatteredpixel.shatteredpixeldungeon.items.weapon.enchantments.Dazzling" );

View File

@ -66,7 +66,7 @@ public class MagicalSleep extends Buff {
if (target.alignment == Char.Alignment.ALLY) { if (target.alignment == Char.Alignment.ALLY) {
target.HP = Math.min(target.HP+1, target.HT); target.HP = Math.min(target.HP+1, target.HT);
if (target instanceof Hero) ((Hero) target).resting = true; if (target instanceof Hero) ((Hero) target).resting = true;
if (target.HP == target.buff(Regeneration.class).regencap()) { if (target.HP == target.HT) {
if (target instanceof Hero) GLog.p(Messages.get(this, "wakeup")); if (target instanceof Hero) GLog.p(Messages.get(this, "wakeup"));
detach(); detach();
} }

View File

@ -105,7 +105,7 @@ public class DriedRose extends Artifact {
actions.remove(AC_EQUIP); actions.remove(AC_EQUIP);
return actions; return actions;
} }
if (isEquipped( hero ) && charge == chargeCap && !cursed && ghostID != 0) { if (isEquipped( hero ) && charge == chargeCap && !cursed && ghostID == 0) {
actions.add(AC_SUMMON); actions.add(AC_SUMMON);
} }
if (ghostID != 0){ if (ghostID != 0){

View File

@ -121,6 +121,7 @@ public class WandOfLivingEarth extends DamageWand {
} else { } else {
guardian.pos = closest; guardian.pos = closest;
GameScene.add(guardian); GameScene.add(guardian);
Dungeon.level.press(guardian.pos, guardian);
} }
guardian.aggro(ch); guardian.aggro(ch);
@ -128,6 +129,7 @@ public class WandOfLivingEarth extends DamageWand {
} else { } else {
guardian.pos = bolt.collisionPos; guardian.pos = bolt.collisionPos;
GameScene.add(guardian); GameScene.add(guardian);
Dungeon.level.press(guardian.pos, guardian);
} }
guardian.sprite.centerEmitter().burst(MagicMissile.EarthParticle.ATTRACT, 5 + level()/2); guardian.sprite.centerEmitter().burst(MagicMissile.EarthParticle.ATTRACT, 5 + level()/2);

View File

@ -65,6 +65,7 @@ public class WandOfWarding extends Wand {
ward.pos = bolt.collisionPos; ward.pos = bolt.collisionPos;
ward.wandLevel = level(); ward.wandLevel = level();
GameScene.add(ward, 1f); GameScene.add(ward, 1f);
Dungeon.level.press(ward.pos, ward);
ward.sprite.emitter().burst(MagicMissile.WardParticle.UP, ward.tier); ward.sprite.emitter().burst(MagicMissile.WardParticle.UP, ward.tier);
QuickSlotButton.target(ward); QuickSlotButton.target(ward);
} else { } else {
@ -346,6 +347,7 @@ public class WandOfWarding extends Wand {
protected void onSelect(int index) { protected void onSelect(int index) {
if (index == 0){ if (index == 0){
die(null); die(null);
Dungeon.observe();
} }
} }
}); });
@ -377,5 +379,9 @@ public class WandOfWarding extends Wand {
wandLevel = bundle.getInt(WAND_LEVEL); wandLevel = bundle.getInt(WAND_LEVEL);
totalZaps = bundle.getInt(TOTAL_ZAPS); totalZaps = bundle.getInt(TOTAL_ZAPS);
} }
{
properties.add(Property.IMMOVABLE);
}
} }
} }

View File

@ -85,10 +85,12 @@ import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfDisintegration
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfFireblast; import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfFireblast;
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfFrost; import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfFrost;
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfLightning; import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfLightning;
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfLivingEarth;
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfMagicMissile; import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfMagicMissile;
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfPrismaticLight; import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfPrismaticLight;
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfRegrowth; import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfRegrowth;
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfTransfusion; import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfTransfusion;
import com.shatteredpixel.shatteredpixeldungeon.items.wands.WandOfWarding;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.AssassinsBlade; import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.AssassinsBlade;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.BattleAxe; import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.BattleAxe;
import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Crossbow; import com.shatteredpixel.shatteredpixeldungeon.items.weapon.melee.Crossbow;
@ -195,10 +197,10 @@ public enum Catalog {
WANDS.seen.put( WandOfFireblast.class, false); WANDS.seen.put( WandOfFireblast.class, false);
WANDS.seen.put( WandOfCorrosion.class, false); WANDS.seen.put( WandOfCorrosion.class, false);
WANDS.seen.put( WandOfBlastWave.class, false); WANDS.seen.put( WandOfBlastWave.class, false);
//WANDS.seen.put( WandOfLivingEarth.class, false); WANDS.seen.put( WandOfLivingEarth.class, false);
WANDS.seen.put( WandOfFrost.class, false); WANDS.seen.put( WandOfFrost.class, false);
WANDS.seen.put( WandOfPrismaticLight.class, false); WANDS.seen.put( WandOfPrismaticLight.class, false);
//WANDS.seen.put( WandOfWarding.class, false); WANDS.seen.put( WandOfWarding.class, false);
WANDS.seen.put( WandOfTransfusion.class, false); WANDS.seen.put( WandOfTransfusion.class, false);
WANDS.seen.put( WandOfCorruption.class, false); WANDS.seen.put( WandOfCorruption.class, false);
WANDS.seen.put( WandOfRegrowth.class, false); WANDS.seen.put( WandOfRegrowth.class, false);

View File

@ -318,7 +318,7 @@ public class PrisonBossLevel extends Level {
for (Mob m : mobs){ for (Mob m : mobs){
//bring the first ally with you //bring the first ally with you
if (m.alignment == Char.Alignment.ALLY){ if (m.alignment == Char.Alignment.ALLY && !m.properties().contains(Char.Property.IMMOVABLE)){
m.pos = ARENA_DOOR; //they should immediately walk out of the door m.pos = ARENA_DOOR; //they should immediately walk out of the door
m.sprite.place(m.pos); m.sprite.place(m.pos);
break; break;

View File

@ -1234,7 +1234,7 @@ items.wands.wandofwarding$ward.desc_5=This upgraded sentry is larger and able to
items.wands.wandofwarding$ward.name_6=greater sentry items.wands.wandofwarding$ward.name_6=greater sentry
items.wands.wandofwarding$ward.desc_6=This fully upgraded sentry is significantly more durable than its predecessors. Each zap from this sentry will deal _%1$d-%2$d damage._\n\nZapping this sentry with your wand of warding will heal it.\n\nThis sentry will spend some health each time it zaps an enemy, but can be healed by using your wand of warding on it. items.wands.wandofwarding$ward.desc_6=This fully upgraded sentry is significantly more durable than its predecessors. Each zap from this sentry will deal _%1$d-%2$d damage._\n\nZapping this sentry with your wand of warding will heal it.\n\nThis sentry will spend some health each time it zaps an enemy, but can be healed by using your wand of warding on it.
items.wands.wandofwarding$ward.dismiss_title=Dismiss this ward? items.wands.wandofwarding$ward.dismiss_title=Dismiss this ward?
items.wands.wandofwarding$ward.dismiss_body=You can dispel this ward if you no longer want your wand to maintain it. Doing so immediately doing so immediately destroys the ward.\n\nDismiss this ward? items.wands.wandofwarding$ward.dismiss_body=You can dispel this ward if you no longer want your wand to maintain it. Doing so immediately destroys the ward.\n\nDismiss this ward?
items.wands.wandofwarding$ward.dismiss_confirm=yes items.wands.wandofwarding$ward.dismiss_confirm=yes
items.wands.wandofwarding$ward.dismiss_cancel=no items.wands.wandofwarding$ward.dismiss_cancel=no