v0.6.3: various bugfixes:

- new corruption logic now works with piranha and dwarf tokens
- wand of corruption can now apply to NPCs
- fixed being able to attempt assassination on NPCs
This commit is contained in:
Evan Debenham 2018-01-23 20:02:40 -05:00
parent d09c7e6067
commit 574c0cd29b
5 changed files with 11 additions and 8 deletions
core/src/main/java/com/shatteredpixel/shatteredpixeldungeon

View File

@ -26,6 +26,7 @@ import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
import com.shatteredpixel.shatteredpixeldungeon.actors.Actor;
import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Rat;
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.NPC;
import com.shatteredpixel.shatteredpixeldungeon.effects.CellEmitter;
import com.shatteredpixel.shatteredpixeldungeon.effects.Effects;
import com.shatteredpixel.shatteredpixeldungeon.effects.Speck;
@ -233,7 +234,7 @@ public class Preparation extends Buff implements ActionIndicator.Action {
public void onSelect(Integer cell) {
if (cell == null) return;
final Char enemy = Actor.findChar( cell );
if (enemy == null || Dungeon.hero.isCharmedBy(enemy)){
if (enemy == null || Dungeon.hero.isCharmedBy(enemy) || enemy instanceof NPC){
GLog.w(Messages.get(Preparation.class, "no_target"));
} else {

View File

@ -60,12 +60,12 @@ public class Golem extends Mob {
public int drRoll() {
return Random.NormalIntRange(0, 12);
}
@Override
public void die( Object cause ) {
public void rollToDropLoot() {
Imp.Quest.process( this );
super.die( cause );
super.rollToDropLoot();
}
{

View File

@ -74,10 +74,10 @@ public class Monk extends Mob {
}
@Override
public void die( Object cause ) {
public void rollToDropLoot() {
Imp.Quest.process( this );
super.die( cause );
super.rollToDropLoot();
}
private int hitsToDisarm = 0;

View File

@ -47,6 +47,9 @@ public class Piranha extends Mob {
EXP = 0;
loot = MysteryMeat.class;
lootChance = 1f;
HUNTING = new Hunting();
}
@ -86,7 +89,6 @@ public class Piranha extends Mob {
@Override
public void die( Object cause ) {
Dungeon.level.drop( new MysteryMeat(), pos ).sprite.drop();
super.die( cause );
Statistics.piranhasKilled++;

View File

@ -125,7 +125,7 @@ public class WandOfCorruption extends Wand {
if (ch != null){
if (!(ch instanceof Mob) || ch instanceof NPC){
if (!(ch instanceof Mob)){
return;
}