v0.4.1a: fixed bugs involving distortion traps
This commit is contained in:
parent
9e14340a90
commit
4fe2eb1ad0
|
@ -57,8 +57,8 @@ public class LloydsBeacon extends Artifact {
|
||||||
public static final String AC_SET = "SET";
|
public static final String AC_SET = "SET";
|
||||||
public static final String AC_RETURN = "RETURN";
|
public static final String AC_RETURN = "RETURN";
|
||||||
|
|
||||||
private int returnDepth = -1;
|
public int returnDepth = -1;
|
||||||
private int returnPos;
|
public int returnPos;
|
||||||
|
|
||||||
{
|
{
|
||||||
image = ItemSpriteSheet.ARTIFACT_BEACON;
|
image = ItemSpriteSheet.ARTIFACT_BEACON;
|
||||||
|
|
|
@ -21,8 +21,9 @@
|
||||||
package com.shatteredpixel.shatteredpixeldungeon.levels.traps;
|
package com.shatteredpixel.shatteredpixeldungeon.levels.traps;
|
||||||
|
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
import com.shatteredpixel.shatteredpixeldungeon.Dungeon;
|
||||||
|
import com.shatteredpixel.shatteredpixeldungeon.actors.hero.Belongings;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
import com.shatteredpixel.shatteredpixeldungeon.items.Item;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.items.keys.Key;
|
import com.shatteredpixel.shatteredpixeldungeon.items.artifacts.LloydsBeacon;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.scenes.InterlevelScene;
|
import com.shatteredpixel.shatteredpixeldungeon.scenes.InterlevelScene;
|
||||||
import com.shatteredpixel.shatteredpixeldungeon.sprites.TrapSprite;
|
import com.shatteredpixel.shatteredpixeldungeon.sprites.TrapSprite;
|
||||||
import com.watabou.noosa.Game;
|
import com.watabou.noosa.Game;
|
||||||
|
@ -37,10 +38,12 @@ public class DistortionTrap extends Trap{
|
||||||
@Override
|
@Override
|
||||||
public void activate() {
|
public void activate() {
|
||||||
InterlevelScene.returnDepth = Dungeon.depth;
|
InterlevelScene.returnDepth = Dungeon.depth;
|
||||||
for (Item item : Dungeon.hero.belongings.backpack.items.toArray( new Item[0])){
|
Belongings belongings = Dungeon.hero.belongings;
|
||||||
if (item instanceof Key && ((Key)item).depth == Dungeon.depth){
|
belongings.ironKeys[Dungeon.depth] = 0;
|
||||||
item.detachAll(Dungeon.hero.belongings.backpack);
|
belongings.specialKeys[Dungeon.depth] = 0;
|
||||||
}
|
for (Item i : belongings){
|
||||||
|
if (i instanceof LloydsBeacon && ((LloydsBeacon) i).returnDepth == Dungeon.depth)
|
||||||
|
((LloydsBeacon) i).returnDepth = -1;
|
||||||
}
|
}
|
||||||
InterlevelScene.mode = InterlevelScene.Mode.RESET;
|
InterlevelScene.mode = InterlevelScene.Mode.RESET;
|
||||||
Game.switchScene(InterlevelScene.class);
|
Game.switchScene(InterlevelScene.class);
|
||||||
|
|
Loading…
Reference in New Issue
Block a user