mr:spell_system
Table of Contents
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 \"%1$s\" 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>
Related mr Entities
mr/spell_system.txt · Last modified: by 127.0.0.1
