Erfolg()
FUNKTION:
    void Erfolg(object caster, string spell, mapping sinfo)

DEFINIERT IN:
    /std/spellbook.c

ARGUMENTE:
    object caster    Spell sprechender Spieler
    string spell     Spellname
    mapping sinfo    Spell-Info-Mapping mit allen Informationen

BESCHREIBUNG:
    Wird bei Erfolg eines Spells gerufen. Ruft SpellInform() am
    Environment.

SIEHE AUCH:
    Sonstiges:        SpellInform
    Spellbook Lernen: Learn, SpellSuccess, Misserfolg
    * Verwalten:      AddSpell, QuerySpell
    * Angriff:        TryAttackSpell, TryDefaultAttackSpell,
                      TryGlobalAttackSpell
    * Properties:     P_GLOBAL_SKILLPROPS, P_SB_SPELLS
    Skills Lernen:    LearnSkill, ModifySkill, LimitAbility
    * Nutzung:        UseSpell, UseSkill
    * sonstig:        spruchermuedung, skill_info_liste

5. Okt 2011 Gloinson