====== Burning Fist Mob - Code References ====== ===== Java Classes ===== * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/nyrds/pixeldungeon/mobs/guts/BurningFist.java|BurningFist.java]] ===== Java Class Content ===== package com.nyrds.pixeldungeon.mobs.guts; import com.nyrds.pixeldungeon.ai.MobAi; import com.nyrds.pixeldungeon.ai.Wandering; import com.nyrds.pixeldungeon.mechanics.NamedEntityKind; import com.nyrds.pixeldungeon.ml.R; import com.nyrds.pixeldungeon.mobs.common.IZapper; import com.nyrds.platform.util.StringsManager; import com.watabou.pixeldungeon.actors.Char; import com.watabou.pixeldungeon.actors.blobs.Blob; import com.watabou.pixeldungeon.actors.blobs.Fire; import com.watabou.pixeldungeon.actors.blobs.ToxicGas; import com.watabou.pixeldungeon.actors.buffs.Amok; import com.watabou.pixeldungeon.actors.buffs.Burning; import com.watabou.pixeldungeon.actors.buffs.Sleep; import com.watabou.pixeldungeon.actors.buffs.Terror; import com.watabou.pixeldungeon.actors.mobs.Mob; import com.watabou.pixeldungeon.items.wands.WandOfFirebolt; import com.watabou.pixeldungeon.levels.Level; import com.watabou.pixeldungeon.mechanics.Ballistica; import com.watabou.pixeldungeon.scenes.GameScene; import org.jetbrains.annotations.NotNull; public class BurningFist extends Mob implements IZapper { { hp(ht(400)); baseDefenseSkill = 25; baseAttackSkill = 26; expForKill = 0; dmgMin = 40; dmgMax = 62; dr = 15; setState(MobAi.getStateByClass(Wandering.class)); addResistance(ToxicGas.class); addImmunity(Amok.class); addImmunity(Sleep.class); addImmunity(Terror.class); addImmunity(Burning.class); addImmunity(WandOfFirebolt.class); } public BurningFist() { } @Override public boolean canAttack(@NotNull Char enemy) { return Ballistica.cast(getPos(), enemy.getPos(), false, true) == enemy.getPos(); } @Override public boolean attack(@NotNull Char enemy) { if (super.attack(enemy)) { if (!adjacent(enemy)) { enemy.getSprite().flash(); } return true; } return false; } @Override public void onZapped() { GameScene.add(Blob.affect(getPos(), getLevel(), Fire.class)); } @Override public void act() { super.act(); GameScene.add(Blob.affect(getPos(), getLevel(), Fire.class)); } @Override @NotNull public String getEntityKind() { return getClass().getSimpleName(); } } ===== Usage in Other Java Classes ===== * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/watabou/pixeldungeon/items/rings/RingOfElements.java|Used in RingOfElements.java]] * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/nyrds/pixeldungeon/mobs/guts/YogsEye.java|Referenced in YogsEye.java]] * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/nyrds/pixeldungeon/mobs/common/MobFactory.java|Registered in MobFactory.java]] ===== String Resources ===== Burning Fist Burning Fist masculine Burning Fist of Old God. ===== Lua Scripts ===== This entity is implemented in Java, no Lua script exists ===== JSON Configuration ===== This entity is implemented in Java as a class, no JSON configuration exists