本文整理汇总了Java中com.shatteredpixel.shatteredpixeldungeon.sprites.ShamanSprite类的典型用法代码示例。如果您正苦于以下问题:Java ShamanSprite类的具体用法?Java ShamanSprite怎么用?Java ShamanSprite使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
ShamanSprite类属于com.shatteredpixel.shatteredpixeldungeon.sprites包,在下文中一共展示了ShamanSprite类的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: doAttack
import com.shatteredpixel.shatteredpixeldungeon.sprites.ShamanSprite; //导入依赖的package包/类
@Override
protected boolean doAttack( Char enemy ) {
if (Level.distance( pos, enemy.pos ) <= 1) {
return super.doAttack( enemy );
} else {
boolean visible = Level.fieldOfView[pos] || Level.fieldOfView[enemy.pos];
if (visible) {
((ShamanSprite)sprite).zap( enemy.pos );
}
spend( TIME_TO_ZAP );
if (hit( this, enemy, true )) {
int dmg = Random.Int( 2, 12 );
if (Level.water[enemy.pos] && !enemy.flying) {
dmg *= 1.5f;
}
enemy.damage( dmg, LightningTrap.LIGHTNING );
enemy.sprite.centerEmitter().burst( SparkParticle.FACTORY, 3 );
enemy.sprite.flash();
if (enemy == Dungeon.hero) {
Camera.main.shake( 2, 0.3f );
if (!enemy.isAlive()) {
Dungeon.fail( Utils.format( ResultDescriptions.MOB, Utils.indefinite( name ) ) );
GLog.n( TXT_LIGHTNING_KILLED, name );
}
}
} else {
enemy.sprite.showStatus( CharSprite.NEUTRAL, enemy.defenseVerb() );
}
return !visible;
}
}