User Tools

Site Tools


mr:spell_system

Spell System - Code References

Java Classes

  • Spell.java - Base spell implementation. Defines `level`, `spellCost`, `castTime`, `cooldown`, `targetingType`, `magicAffinity`, `imageFile`, and the `cast(@NotNull Char, int)` / `cast(@NotNull Char, @NotNull Char)` / `canCast(@NotNull Char, boolean)` interfaces used by every spell.
  • SpellFactory.java - Factory that instantiates Spell subclasses (used to register the spell catalog and to look up the magic affinity / class restrictions for a hero).

Lua Scripts

  • All Spell Scripts - Individual spell implementations in Lua (each script returns the `desc` table consumed by the Lua spell library).

JSON Configuration

This system is implemented in Java/Lua, no JSON configuration exists.

String Resources

<string name="Spell_SelectAChar">Select a target being.</string>
<string name="Spells_NotEnoughSP">You do not have enough mana to cast a \&quot;%1$s\&quot; spell.</string>
<string name="Spells_NotInOwnBody">You can\'t perform %s while your soul separated from body.</string>
<string name="Spells_NotTooFast">%s is not ready for use yet</string>
<string name="Spells_SummonLimitReached">%1$s: summon limit reached (Current max: %2$d)!</string>
<string name="WndSpells_Level">Magic Level: </string>
<string name="WndSpells_Title">Spells</string>

mr/spell_system.txt · Last modified: by 127.0.0.1