AddSkill()
**********


FUNKTION
========

   varargs int AddSkill(string sname, mapping ski)


DEFINIERT IN
============

   /std/gilden_ob.c


ARGUMENTE
=========

   string sname       Name des Skills
   mapping ski        Skill-Mapping


BESCHREIBUNG
============

   Fuegt den Skill zur Liste der in dieser Gilde lernbaren Skills
   hinzu. Das Mapping enthaelt Informationen, die der Gildenraum
   bzw. das Gildenobjekt zum Skill herausgeben und die das Lernen
   des Skills beeinflussen.


RUECKGABWERT
============

   1 fuer Erfolg


BEISPIEL
========

   AddSkill( FIGHT(WT_CLUB), ([ OFFSET(SI_SKILLLEARN) : 1 ]) );


SIEHE AUCH
==========

   GObj Lernen:    LearnSkill, LearnSpell, InitialSkillAbility
   * Anzeigen:     SkillListe
   * Verwalten:    AddSpell (gilde), QuerySpell, QuerySkill
   * Nutzen:       UseSpell (gilde)
   * Properties:   P_GUILD_SKILLS, P_GLOBAL_SKILLPROPS
   Gildenfkt.:     GuildRating
   * Ein/Austritt: beitreten, bei_oder_aus_treten, austreten

3. Okt 2011 Gloinson
