====== 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