v0.3.2: fixed teleportation and movement inconsistencies with some characters
This commit is contained in:
parent
0c29e09d7a
commit
6ec890da5a
|
@ -29,6 +29,10 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Buff;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Invisibility;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Hero;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Mob;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.RotHeart;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.RotLasher;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.Shopkeeper;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.npcs.Wandmaker;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.MagicMissile;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.MagicMissile;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfTeleportation;
|
import com.shatteredpixel.shatteredpixeldungeon.items.scrolls.ScrollOfTeleportation;
|
||||||
|
@ -232,11 +236,18 @@ public class LloydsBeacon extends Artifact {
|
||||||
}
|
}
|
||||||
} while (pos == -1);
|
} while (pos == -1);
|
||||||
|
|
||||||
|
|
||||||
if (pos == -1 || Dungeon.bossLevel()) {
|
if (pos == -1 || Dungeon.bossLevel()) {
|
||||||
|
|
||||||
GLog.w(ScrollOfTeleportation.TXT_NO_TELEPORT);
|
GLog.w(ScrollOfTeleportation.TXT_NO_TELEPORT);
|
||||||
|
|
||||||
} else {
|
//FIXME: sloppy, fix when adding mob properties
|
||||||
|
} else if (ch instanceof RotLasher || ch instanceof RotHeart
|
||||||
|
|| ch instanceof Shopkeeper || ch instanceof Wandmaker) {
|
||||||
|
|
||||||
|
GLog.w("The teleportation magic fails.");
|
||||||
|
|
||||||
|
} else {
|
||||||
|
|
||||||
ch.pos = pos;
|
ch.pos = pos;
|
||||||
ch.sprite.place(ch.pos);
|
ch.sprite.place(ch.pos);
|
||||||
|
|
|
@ -29,6 +29,8 @@ import com.shatteredpixel.shatteredpixeldungeon.actors.Char;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Paralysis;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.buffs.Paralysis;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Golem;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Golem;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.King;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.King;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.RotHeart;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.RotLasher;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Yog;
|
import com.shatteredpixel.shatteredpixeldungeon.actors.mobs.Yog;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.Effects;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.Effects;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.effects.MagicMissile;
|
import com.shatteredpixel.shatteredpixeldungeon.effects.MagicMissile;
|
||||||
|
@ -110,7 +112,7 @@ public class WandOfBlastWave extends Wand {
|
||||||
if ((ch instanceof King) || (ch instanceof Golem) || (ch instanceof Yog.RottingFist))
|
if ((ch instanceof King) || (ch instanceof Golem) || (ch instanceof Yog.RottingFist))
|
||||||
dist /= 2;
|
dist /= 2;
|
||||||
|
|
||||||
if (dist == 0 || ch instanceof Yog) return;
|
if (dist == 0 || ch instanceof Yog || ch instanceof RotLasher || ch instanceof RotHeart) return;
|
||||||
|
|
||||||
if (Actor.findChar(trajectory.path.get(dist)) != null){
|
if (Actor.findChar(trajectory.path.get(dist)) != null){
|
||||||
dist--;
|
dist--;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user