SpellInform

FUNKTION:
        void SpellInform(caster,spell,sinfo);

DEFINIERT IN:
        selber zu definieren

ARGUMENTE:
        pl
          Das Lebewesen, das erfolgreich gezaubert hat.
        spell
          Der Name des gezauberten Spells
        sinfo
          Das komplette Spellmapping des gezauberten Spells

BESCHREIBUNG:
        Diese Funktion wird vom Spellbuch einer Gilde in der Umgebung
        (Environment) eines Lebewesens aufgerufen, wenn immer das Lebewesen
        einen Spell _erfolgreich_ gezaubert hat.
        Bemerkung: Bitte vermeiden, aufwaendige Sachen in der Funktion zu
        machen, da sonst u.U. deswegen Gilden anfangen zu buggen. Falls es
        sein muss, macht dann lieber einen call_out mit 2s Wartezeit.

RUeCKGABEWERT:
        keiner

SIEHE AUCH:
        
----------------------------------------------------------------------------
16.04.2007, Zesstra
