User Tools

Site Tools


mr:terror_buff

Terror Buff - Code References

Java Classes

  • Main Implementation: RemixedDungeon/src/main/java/com/watabou/pixeldungeon/actors/buffs/Terror.java
  • AI Handler: RemixedDungeon/src/main/java/com/nyrds/pixeldungeon/ai/Horrified.java

Class Details

package com.watabou.pixeldungeon.actors.buffs;
 
public class Terror extends FlavourBuff {
    public static final float DURATION = 10f;
 
    @Override
    public int icon() {
        return BuffIndicator.TERROR;
    }
 
    public static void recover(Char target) {
        Terror terror = target.buff(Terror.class);
        if (terror != null && terror.cooldown() < DURATION) {
            target.remove(terror);
        }
    }
 
    @Override
    public boolean attachTo(@NotNull Char target) {
        if(super.attachTo(target)) {
            if(target instanceof Mob && target.fraction!=Fraction.NEUTRAL) {
                Mob tgt = (Mob)target;
                tgt.releasePet();
            }
            return true;
        }
        return false;
    }
 
    @Override
    public void attachVisual() {
        target.showStatus(CharSprite.NEGATIVE, StringsManager.getVar(R.string.Char_StaFrightened));
    }
}

Key Methods

  • attachTo(Char target): Attaches the Terror buff to a character. If the target is a non-neutral Mob, releases any pet.
  • recover(Char target): Removes Terror buff if cooldown is less than DURATION (10f).
  • attachVisual(): Shows “frightened” status message on the character sprite.
  • icon(): Returns BuffIndicator.TERROR for the buff icon.

Constants

  • DURATION: 10f (10 seconds default duration)

JSON Configuration

This entity does not have JSON configuration files. It is fully implemented in Java.

String Resources

<!-- English strings -->
<string name="Char_StaFrightened">frightened</string>
<string name="TerrorBuff_Info">It looks like someone was very frightened.</string>
 
<!-- Russian strings -->
<string name="Char_StaFrightened">испуган</string>
<string name="TerrorBuff_Info">Похоже, кто-то очень испугался.</string>

String Resource References

  • English: RemixedDungeon/src/main/res/values/strings_all.xml
    1. Char_StaFrightened (line ~335)
    2. TerrorBuff_Info (line ~615)
  • Russian: RemixedDungeon/src/main/res/values-ru/strings_all.xml
    1. Char_StaFrightened (line ~335)

Lua Scripts

This entity is implemented in Java, no Lua script exists.

Usage in Code

  • Immunity: Many mobs have immunity to Terror:
    1. IceGuardian, IceGuardianCore, Kobold (Ice Caves)
    2. YogsHeart, YogsBrain, YogsEye, BurningFist, RottingFist (Guts)
  • AI Behavior: The Horrified AI class handles terrorized mob behavior
  • Status Display: Uses CharSprite.NEGATIVE for visual feedback
  • Pet Release: Automatically releases pets when applied to non-neutral mobs
  • FlavourBuff (parent class)
  • BuffIndicator (icon system)
  • Horrified (AI handler for terrorized mobs)
  • CharSprite (visual status display)
  • Fraction (mob faction system)
mr/terror_buff.txt · Last modified: by 127.0.0.1