@Override public void setKnown() { if (!isKnown()) { handler.know(exoToReg.get(this.getClass())); updateQuickslot(); } }
@Override public void doRead() { setKnown(); GameScene.selectItem( itemSelector, WndBag.Mode.ENCHANTABLE, Messages.get(this, "inv_title")); }
@Override public void doRead() { SpellSprite.show( curUser, SpellSprite.MAP ); Sample.INSTANCE.play( Assets.SND_READ ); Invisibility.dispel(); Buff.affect(curUser, Foresight.class, 600f); setKnown(); readAnimation(); }
@Override public void doRead() { Invisibility.dispel(); Buff.affect( curUser, MagicImmune.class, 20f ); new Flare( 5, 32 ).color( 0xFF0000, true ).show( curUser.sprite, 2f ); setKnown(); readAnimation(); } }
@Override public void doRead() { new Flare( 5, 32 ).color( 0xFF0000, true ).show( curUser.sprite, 2f ); Sample.INSTANCE.play( Assets.SND_READ ); Invisibility.dispel(); for (Mob mob : Dungeon.level.mobs.toArray( new Mob[0] )) { if (Dungeon.level.heroFOV[mob.pos]) { Buff.affect( mob, Paralysis.class, Paralysis.DURATION ); } } setKnown(); readAnimation(); } }
@Override public void doRead() { //append buff Buff.affect(curUser, ArtifactRecharge.class).set( 30 ); Sample.INSTANCE.play( Assets.SND_READ ); Invisibility.dispel(); SpellSprite.show( curUser, SpellSprite.CHARGE ); setKnown(); ScrollOfRecharging.charge(curUser); readAnimation(); }
WndDivination(ArrayList<Item> IDed ){ IconTitle cur = new IconTitle(new ItemSprite(ScrollOfDivination.this), Messages.titleCase(Messages.get(ScrollOfDivination.class, "name"))); cur.setRect(0, 0, WIDTH, 0); add(cur); RenderedTextMultiline msg = PixelScene.renderMultiline(Messages.get(this, "desc"), 6); msg.maxWidth(120); msg.setPos(0, cur.bottom() + 2); add(msg); float pos = msg.bottom() + 10; for (Item i : IDed){ cur = new IconTitle(i); cur.setRect(0, pos, WIDTH, 0); add(cur); pos = cur.bottom() + 2; } resize(WIDTH, (int)pos); }
@Override public void doRead() { for (Mob mob : Dungeon.level.mobs.toArray( new Mob[0] )) { if (Dungeon.level.heroFOV[mob.pos]) { Buff.prolong(mob, Vertigo.class, 10f); Buff.prolong(mob, Blindness.class, 10f); } } setKnown(); curUser.sprite.centerEmitter().start( Speck.factory( Speck.SCREAM ), 0.3f, 3 ); Sample.INSTANCE.play( Assets.SND_READ ); Invisibility.dispel(); readAnimation(); }
@Override public void doRead() { curUser.sprite.centerEmitter().start( Speck.factory( Speck.HEART ), 0.2f, 5 ); Sample.INSTANCE.play( Assets.SND_CHARMS ); Invisibility.dispel(); for (Mob mob : Dungeon.level.mobs.toArray( new Mob[0] )) { if (Dungeon.level.heroFOV[mob.pos]) { Buff.affect( mob, Charm.class, 20f ).object = curUser.id(); mob.sprite.centerEmitter().start( Speck.factory( Speck.HEART ), 0.2f, 5 ); } } //GLog.i( Messages.get(this, "sooth") ); setKnown(); readAnimation(); }
@Override public void doRead() { setKnown(); if (Dungeon.bossLevel()) { GLog.w( Messages.get(ScrollOfTeleportation.class, "no_tele") ); return; } Buff buff = Dungeon.hero.buff(TimekeepersHourglass.timeFreeze.class); if (buff != null) buff.detach(); InterlevelScene.mode = InterlevelScene.Mode.RETURN; InterlevelScene.returnDepth = Math.max(1, (Dungeon.depth - 1 - (Dungeon.depth-2)%5)); InterlevelScene.returnPos = -1; Game.switchScene( InterlevelScene.class ); } }
@Override public void doRead() { Invisibility.dispel(); Buff.affect( curUser, MagicImmune.class, 20f ); new Flare( 5, 32 ).color( 0xFF0000, true ).show( curUser.sprite, 2f ); setKnown(); readAnimation(); } }
@Override public void setKnown() { if (!isKnown()) { handler.know(exoToReg.get(this.getClass())); updateQuickslot(); } }
@Override public void doRead() { SpellSprite.show( curUser, SpellSprite.MAP ); Sample.INSTANCE.play( Assets.SND_READ ); Invisibility.dispel(); Buff.affect(curUser, Foresight.class, 600f); setKnown(); readAnimation(); }
@Override public void doRead() { new Flare( 5, 32 ).color( 0xFF0000, true ).show( curUser.sprite, 2f ); Sample.INSTANCE.play( Assets.SND_READ ); Invisibility.dispel(); for (Mob mob : Dungeon.level.mobs.toArray( new Mob[0] )) { if (Dungeon.level.heroFOV[mob.pos]) { Buff.affect( mob, Paralysis.class, Paralysis.DURATION ); } } setKnown(); readAnimation(); } }
@Override public void doRead() { //append buff Buff.affect(curUser, ArtifactRecharge.class).set( 30 ); Sample.INSTANCE.play( Assets.SND_READ ); Invisibility.dispel(); SpellSprite.show( curUser, SpellSprite.CHARGE ); setKnown(); ScrollOfRecharging.charge(curUser); readAnimation(); }
WndDivination(ArrayList<Item> IDed ){ IconTitle cur = new IconTitle(new ItemSprite(ScrollOfDivination.this), Messages.titleCase(Messages.get(ScrollOfDivination.class, "name"))); cur.setRect(0, 0, WIDTH, 0); add(cur); RenderedTextMultiline msg = PixelScene.renderMultiline(Messages.get(this, "desc"), 6); msg.maxWidth(120); msg.setPos(0, cur.bottom() + 2); add(msg); float pos = msg.bottom() + 10; for (Item i : IDed){ cur = new IconTitle(i); cur.setRect(0, pos, WIDTH, 0); add(cur); pos = cur.bottom() + 2; } resize(WIDTH, (int)pos); }
@Override public void doRead() { for (Mob mob : Dungeon.level.mobs.toArray( new Mob[0] )) { if (Dungeon.level.heroFOV[mob.pos]) { Buff.prolong(mob, Vertigo.class, 10f); Buff.prolong(mob, Blindness.class, 10f); } } setKnown(); curUser.sprite.centerEmitter().start( Speck.factory( Speck.SCREAM ), 0.3f, 3 ); Sample.INSTANCE.play( Assets.SND_READ ); Invisibility.dispel(); readAnimation(); }
@Override public void doRead() { curUser.sprite.centerEmitter().start( Speck.factory( Speck.HEART ), 0.2f, 5 ); Sample.INSTANCE.play( Assets.SND_CHARMS ); Invisibility.dispel(); for (Mob mob : Dungeon.level.mobs.toArray( new Mob[0] )) { if (Dungeon.level.heroFOV[mob.pos]) { Buff.affect( mob, Charm.class, 20f ).object = curUser.id(); mob.sprite.centerEmitter().start( Speck.factory( Speck.HEART ), 0.2f, 5 ); } } //GLog.i( Messages.get(this, "sooth") ); setKnown(); readAnimation(); }
@Override public void doRead() { setKnown(); GameScene.selectItem( itemSelector, WndBag.Mode.ENCHANTABLE, Messages.get(this, "inv_title")); }
@Override public void doRead() { setKnown(); if (Dungeon.bossLevel()) { GLog.w( Messages.get(ScrollOfTeleportation.class, "no_tele") ); return; } Buff buff = Dungeon.hero.buff(TimekeepersHourglass.timeFreeze.class); if (buff != null) buff.detach(); InterlevelScene.mode = InterlevelScene.Mode.RETURN; InterlevelScene.returnDepth = Math.max(1, (Dungeon.depth - 1 - (Dungeon.depth-2)%5)); InterlevelScene.returnPos = -1; Game.switchScene( InterlevelScene.class ); } }