User Tools

Site Tools


mr:treacherous_spirit_mob

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
mr:treacherous_spirit_mob [2026/02/13 04:01] – Update wiki pages to improve compliance with standards - Improve formatting and structure of Russian layers page - Fix broken links to existing lowercase pages - Enhance mr namespace page with complete code references - Update image references and ensure mikemr:treacherous_spirit_mob [2026/02/13 04:05] (current) – external edit 127.0.0.1
Line 1: Line 1:
 +====== Treacherous Spirit - Code References ======
  
 +===== Java Classes =====
 +  * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/nyrds/pixeldungeon/mobs/guts/TreacherousSpirit.java|TreacherousSpirit.java]]
 +  * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/nyrds/pixeldungeon/mobs/guts/SpiritOfPain.java|SpiritOfPain.java]]
 +
 +===== Java Class Content =====
 +<code java>
 +package com.nyrds.pixeldungeon.mobs.guts;
 +
 +
 +import com.nyrds.pixeldungeon.ai.MobAi;
 +import com.nyrds.pixeldungeon.ai.Wandering;
 +import com.nyrds.pixeldungeon.items.guts.HeartOfDarkness;
 +import com.watabou.pixeldungeon.Dungeon;
 +import com.watabou.pixeldungeon.actors.Char;
 +import com.watabou.pixeldungeon.actors.mobs.Mob;
 +import com.watabou.utils.Random;
 +
 +import org.jetbrains.annotations.NotNull;
 +
 +/**
 + * Created by DeadDie on 12.02.2016
 + */
 +public class TreacherousSpirit extends Mob {
 +    {
 +        hp(ht(200));
 +        baseDefenseSkill = 35;
 +        baseAttackSkill  = 35;
 +        dmgMin = 30;
 +        dmgMax = 45;
 +        dr = 25;
 +
 +        expForKill = 45;
 +        maxLvl = 30;
 +
 +        setState(MobAi.getStateByClass(Wandering.class));
 +        collect( new HeartOfDarkness());
 +    }
 +
 +    @Override
 +    public int attackProc(@NotNull Char enemy, int damage ) {
 +        //Summon proc
 +        if (Random.Int(4) == 1){
 +            int spiritPos = Dungeon.level.getEmptyCellNextTo(getPos());
 +
 +            if (Dungeon.level.cellValid(spiritPos)) {
 +                SpiritOfPain spirit = new SpiritOfPain();
 +                spirit.setPos(spiritPos);
 +                Dungeon.level.spawnMob(spirit, 0,getPos());
 +            }
 +        }
 +        return damage;
 +    }
 +
 +    @Override
 +    public boolean canBePet(){
 +        return false;
 +    }
 +
 +}
 +</code>
 +
 +===== JSON Configuration =====
 +  * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/assets/spritesDesc/TreacherousSpirit.json|TreacherousSpirit.json]]
 +
 +===== String Resources =====
 +<code xml>
 +<string name="TreacherousSpirit_Name">Treacherous spirit</string>
 +<string name="TreacherousSpirit_Gender">masculine</string>
 +<string name="TreacherousSpirit_Name_Objective">Treacherous spirit</string>
 +<string name="TreacherousSpirit_Desc">This monstrous creature looks like a cloud of living darkness. It\'s gigantic eye is stares at you, while pulsating with each movement you make.</string>
 +</code>
 +
 +===== Related String Resources =====
 +  * TreacherousSpirit_Desc
 +  * TreacherousSpirit_Name
 +  * TreacherousSpirit_Name_Objective
 +  * TreacherousSpirit_Gender
 +
 +===== Other Java Usage =====
 +Found usage in:
 +  * [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/java/com/nyrds/pixeldungeon/mobs/npc/AzuterronNPC.java|AzuterronNPC.java]]
 +
 +===== Lua Scripts =====
 +This entity is implemented in Java, no Lua script exists
 +
 +===== Related mr Entities =====
 +  * [[mr:spirit_of_pain_mob|Spirit of Pain (Mob)]]
 +  * [[mr:heart_of_darkness_item|Heart of Darkness (Item)]]
 +  * [[mr:azuterron_npc_mob|Azuterron NPC (Mob)]]