@Override public boolean interact() { updateRose(); if (rose != null && !rose.talkedTo){ rose.talkedTo = true; GameScene.show(new WndQuest(this, Messages.get(this, "introduce") )); return false; } else if (Dungeon.level.passable[pos] || Dungeon.hero.flying) { int curPos = pos; moveSprite( pos, Dungeon.hero.pos ); move( Dungeon.hero.pos ); Dungeon.hero.sprite.move( Dungeon.hero.pos, curPos ); Dungeon.hero.move( curPos ); Dungeon.hero.spend( 1 / Dungeon.hero.speed() ); Dungeon.hero.busy(); return true; } else { return false; } }
@Override public boolean interact() { updateRose(); if (rose != null && !rose.talkedTo){ rose.talkedTo = true; GameScene.show(new WndQuest(this, Messages.get(this, "introduce") )); return false; } else if (Dungeon.level.passable[pos] || Dungeon.hero.flying) { int curPos = pos; moveSprite( pos, Dungeon.hero.pos ); move( Dungeon.hero.pos ); Dungeon.hero.sprite.move( Dungeon.hero.pos, curPos ); Dungeon.hero.move( curPos ); Dungeon.hero.spend( 1 / Dungeon.hero.speed() ); Dungeon.hero.busy(); return true; } else { return false; } }
@Override protected boolean act() { updateRose(); if (rose == null || !rose.isEquipped(Dungeon.hero)){ damage(1, this); } if (!isAlive()) return true; if (!Dungeon.hero.isAlive()){ sayHeroKilled(); sprite.die(); destroy(); return true; } return super.act(); }
@Override protected boolean act() { updateRose(); if (rose == null || !rose.isEquipped(Dungeon.hero)){ damage(1, this); } if (!isAlive()) return true; if (!Dungeon.hero.isAlive()){ sayHeroKilled(); sprite.die(); destroy(); return true; } return super.act(); }
@Override public void destroy() { updateRose(); if (rose != null) { rose.ghost = null; rose.ghostID = -1; } super.destroy(); }
@Override public void destroy() { updateRose(); if (rose != null) { rose.ghost = null; rose.ghostID = -1; } super.destroy(); }
public GhostHero(DriedRose rose){ super(); this.rose = rose; updateRose(); HP = HT; }
public GhostHero(DriedRose rose){ super(); this.rose = rose; updateRose(); HP = HT; }