User Tools

Site Tools


mr:mimic_amulet_mob

mimic_amulet_mob

Mimic Amulet

Java Class

// File: RemixedDungeon/src/main/java/com/nyrds/pixeldungeon/mobs/guts/MimicAmulet.java
package com.nyrds.pixeldungeon.mobs.guts;
 
import com.nyrds.Packable;
import com.watabou.pixeldungeon.Dungeon;
import com.watabou.pixeldungeon.actors.blobs.ToxicGas;
import com.watabou.pixeldungeon.actors.buffs.Buff;
import com.watabou.pixeldungeon.actors.buffs.Levitation;
import com.watabou.pixeldungeon.actors.buffs.Paralysis;
import com.watabou.pixeldungeon.actors.buffs.Stun;
import com.watabou.pixeldungeon.actors.mobs.Mob;
import com.watabou.pixeldungeon.items.keys.SkeletonKey;
import com.watabou.utils.Bundle;
 
public class MimicAmulet extends Mob {
    @Packable
    public int level;
 
    public MimicAmulet() {
        baseSpeed = 1.25f;
        flying = true;
        carcassChance = 0;
        level = Dungeon.depth;
        adjustStats(level);
        addImmunity(ToxicGas.class);
        addImmunity(Paralysis.class);
        addImmunity(Stun.class);
        // Drops SkeletonKey on death
    }
 
    public void adjustStats(int level) {
        this.level = level;
        hp(ht((3 + level) * 5));
        expForKill = 2 + 2 * (level - 1) / 5;
        baseAttackSkill = 9 + level;
        baseDefenseSkill = 2 * attackSkill + 1;
        dmgMin = ht()/10;
        dmgMax = ht()/4;
    }
}

JSON Configuration

// File: RemixedDungeon/src/main/assets/spritesDesc/MimicAmulet.json
{
   "texture" : "mobs/mimic_amulet.png",
   "width" : 16,
   "height" : 16,
   "idle" : {
      "fps" : 5,
      "looped" : true,
      "frames" : [0, 0, 0, 1, 1]
   },
   "run" : {
      "fps" : 10,
      "looped" : true,
      "frames" : [0, 1, 2, 3, 3, 2, 1]
   },
   "attack" : {
      "fps" : 10,
      "looped" : false,
      "frames" : [0, 3, 4, 5]
   },
   "die" : {
      "fps" : 12,
      "looped" : false,
      "frames" : [6,7,8]
   }
}

String Resources

<!-- English: RemixedDungeon/src/main/res/values/strings_all.xml -->
<string name="MimicAmulet_Name">mimic</string>
<string name="MimicAmulet_Gender">masculine</string>
<string name="MimicAmulet_Name_Objective">mimic</string>
<string name="MimicAmulet_Desc">The most glorious moment of your adventuring career just turned out to be a trap.</string>

Entity Information

  • Entity Kind: MimicAmulet
  • Type: Mob
  • Package: com.nyrds.pixeldungeon.mobs.guts
  • Inherits From: Mob
  • Special: Mimic variant that appears as a floating amulet

Statistics (Scale with Dungeon Depth)

  • HP: (3 + level) × 5, where level = Dungeon.depth
  • Experience: 2 + 2 × (level - 1) / 5
  • Attack Skill: 9 + level
  • Defense Skill: 2 × attackSkill + 1
  • Damage: HT/10 to HT/4 (10% to 25% of max HP)
  • Speed: 1.25 (25% faster than normal)
  • Flying: Yes (always has Levitation buff)
  • Carcass Drop: 0% (no corpse)

Immunities

  • ToxicGas: Immune to toxic gas damage
  • Paralysis: Immune to paralysis status
  • Stun: Immune to stun status

Behavior

  • Act: Automatically applies Levitation buff (1000000 turns) if not already active
  • Loot: Always drops SkeletonKey on death
  • Pet: Cannot be tamed as pet (canBePet() returns false)

Lua Scripts

This entity is implemented entirely in Java. No Lua script exists.

Additional Notes

  • MimicAmulet is a special mimic variant found in guts levels
  • Stats scale dynamically with dungeon depth
  • Always carries a SkeletonKey as guaranteed loot
  • Flying movement allows traversal over obstacles
mr/mimic_amulet_mob.txt · Last modified: by 127.0.0.1