User Tools

Site Tools


mr:berserker_subclass

Berserker Subclass - Code References

Java Classes

Full Java Class Content

HeroSubClass.java - BERSERKER Definition:

// Enum definition (line 44)
BERSERKER(R.string.HeroSubClass_NameBers, R.string.HeroSubClass_DescBers, "BerserkArmor")

Fury Buff Activation (from HeroSubClass.java):

@Override
public int charGotDamage(int damage, NamedEntityKind src, Char target) {
    switch (this) {
        case BERSERKER:
            // Activate Fury when HP drops to 40% or below (Fury.LEVEL = 0.4f)
            if (0 < target.hp() && target.hp() <= target.ht() * Fury.LEVEL) {
                if (!target.hasBuff(BuffFactory.FURY)) {
                    Buff.affect(target, BuffFactory.FURY);
                }
            }
            break;
    }
    return damage;
}

Fury.java - Buff Implementation:

package com.watabou.pixeldungeon.actors.buffs;
 
public class Fury extends Buff {
    // Fury activates when HP is at or below 40% of max HP
    public static final float LEVEL = 0.4f;
 
    @Override
    public boolean act() {
        // Detach Fury when HP rises above 40%
        if (target.hp() > target.ht() * LEVEL) {
            detach();
        }
        spend(TICK * 10);
        return true;
    }
 
    @Override
    public int attackProc(Char attacker, Char defender, int damage) {
        // Double damage while in Fury state
        return damage * 2;
    }
 
    @Override
    public int icon() {
        return BuffIndicator.FURY;
    }
}

Stats from code:

  • Fury Activation Threshold: 40% of max HP (Fury.LEVEL = 0.4f)
  • Fury Damage Bonus: 2x (damage * 2)
  • Fury Duration: Persistent while HP ⇐ 40%
  • Associated Armor: “BerserkArmor”

JSON Configuration

This entity is implemented in Java, no JSON configuration exists

String Resources

English (values/strings_all.xml):

<string name="BERSERKER_SubclassName">Berserker</string>
<string name="BERSERKER_SubclassDesc">When severely wounded, the Berserker enters a state of wild Fury, significantly increasing his damage output.</string>
<string name="Brute_Enraged">%s is enraged!</string>
<string name="Brute_StaEnraged">ENRAGED</string>

Russian (values-ru/strings_all.xml):

<string name="BERSERKER_SubclassName">Берсерк</string>
<string name="BERSERKER_SubclassDesc">Когда берсерк тяжело ранен, он впадает в состояние неистовства, значительно увеличивая свой урон.</string>
<string name="Brute_Enraged">%s в ярости!</string>
<string name="Brute_StaEnraged">ЯРОСТЬ</string>

Lua Scripts

This entity is implemented in Java, no Lua script exists

mr/berserker_subclass.txt · Last modified: by 127.0.0.1