public static void process( Mob mob ) { if (spawned && given && !completed) { if ((alternative && mob instanceof Monk) || (!alternative && mob instanceof Golem)) { Dungeon.level.drop( new DwarfToken(), mob.pos ).sprite.drop(); } } }
@Override protected void onThrow( int cell ) { if (Dungeon.level.pit[cell]) { super.onThrow( cell ); } else { Dungeon.level.drop(shatter( null, cell ), cell); } }
@Override public void detach() { for (Item item : items) Dungeon.level.drop( item, target.pos).sprite.drop(); super.detach(); }
protected void onThrow( int cell ) { Heap heap = Dungeon.level.drop( this, cell ); if (!heap.isEmpty()) { heap.sprite.drop( cell ); } }
@Override public void rollToDropLoot(){ if (items != null) { for (Item item : items) { Dungeon.level.drop( item, pos ).sprite.drop(); } items = null; } super.rollToDropLoot(); }
@Override public void detach() { for (Item item : items) Dungeon.level.drop( item, target.pos).sprite.drop(); super.detach(); }
@Override public void die(Object cause) { super.die(cause); Dungeon.level.drop( new Embers(), pos ).sprite.drop(); } }
private void placeItem(Item item, Level level){ int itemPos; do { itemPos = level.pointToCell(random()); } while (level.heaps.get(itemPos) != null); level.drop(item, itemPos); } }
@Override public void die(Object cause) { super.die(cause); Dungeon.level.drop( new Rotberry.Seed(), pos ).sprite.drop(); }
@Override public void rollToDropLoot() { if (item != null) { Dungeon.level.drop( item, pos ).sprite.drop(); //updates position if (item instanceof Honeypot.ShatteredPot) ((Honeypot.ShatteredPot)item).setHolder( this ); item = null; } super.rollToDropLoot(); }
@Override public int defenseProc(Char enemy, int damage) { if (state == FLEEING) { Dungeon.level.drop( new Gold(), pos ).sprite.drop(); } return super.defenseProc(enemy, damage); }
@Override public void die(Object cause) { super.die(cause); Dungeon.level.drop( new Embers(), pos ).sprite.drop(); } }
@Override public Heap drop( Item item, int cell ) { if (!keyDropped && item instanceof SkeletonKey) { keyDropped = true; unseal(); entrance = stairs; set( entrance, Terrain.ENTRANCE ); GameScene.updateMap( entrance ); } return super.drop( item, cell ); }
@Override public void rollToDropLoot() { if (item != null) { Dungeon.level.drop( item, pos ).sprite.drop(); //updates position if (item instanceof Honeypot.ShatteredPot) ((Honeypot.ShatteredPot)item).setHolder( this ); item = null; } super.rollToDropLoot(); }
@Override public void die(Object cause) { super.die(cause); Dungeon.level.drop( new Rotberry.Seed(), pos ).sprite.drop(); }
private void buy( Heap heap ) { Hero hero = Dungeon.hero; Item item = heap.pickUp(); int price = price( item ); Dungeon.gold -= price; if (!item.doPickUp( hero )) { Dungeon.level.drop( item, heap.pos ).sprite.drop(); } } }
@Override public void activate( Char ch ) { if (ch instanceof Hero && ((Hero) ch).subClass == HeroSubClass.WARDEN){ Buff.affect(ch, AdrenalineSurge.class).reset(1, 200f); } Dungeon.level.drop( new Seed(), pos ).sprite.drop(); }
@Override public void activate( Char ch ) { if (ch != null) { Buff.prolong(ch, Bless.class, Bless.DURATION); if (ch instanceof Hero && ((Hero) ch).subClass == HeroSubClass.WARDEN){ Buff.prolong(ch, Recharging.class, Bless.DURATION); } } if (Random.Int(5) == 0){ Dungeon.level.drop(new Seed(), pos).sprite.drop(); } }
@Override public Heap drop( Item item, int cell ) { if (!keyDropped && item instanceof SkeletonKey) { keyDropped = true; unseal(); CellEmitter.get( arenaDoor ).start( Speck.factory( Speck.ROCK ), 0.07f, 10 ); set( arenaDoor, Terrain.EMPTY_DECO ); GameScene.updateMap( arenaDoor ); Dungeon.observe(); } return super.drop( item, cell ); }