Lpc Manpages

*************************************************************************
                       !!!!! ACHTUNG !!!!!                               
                                                                         
  Diesen Befehl nicht mehr benutzen, da er nicht mehr unterstuetzt wird! 
                                                                         
*************************************************************************
AddFood()

FUNKTION:
     void AddFood(string name, mixed ids, int preis, int heilung, mixed
     extra, int max, mixed func);

DEFINIERT IN:
     /std/kneipe.c

ARGUMENTE:
     name
          Der Name der Speise.
     ids
          String oder Array von Strings, mit denen sich die Speise
          ansprechen laesst (beim Bestellen).
     preis
          Was solls denn kosten?
     heilung
          Heil- und Saettigungswert der Speise.
     extra
          Closure, String oder Array von String. Bedeutung s.u.
     max
          Maximale Anzahl von diesem Gericht vor Reset in dieser Kneipe

     func Eine Funktion, die zusaetzlich aufgerufen wird. Entweder ein
          String oder eine Closure.

BESCHREIBUNG:
     Es wird eine Speise namens 'name' zum Preis von 'preis' Muenzen in die
     Speisekarte eingefuegt.

     Bestellt ein Spieler die Speise, kann sie finanzieren und auch noch
     verzehren, so wird er um 'heilung' Lebenspunkte geheilt. Seine Saettigung
     erhoeht sich dabei ebenfalls um 'heilung' Punkte.

     Abhaengig von extra wird dann eine der folgenden Aktionen ausgefuehrt:
     extra ist eine Closure oder ein Funktionsname
          Die Funktion wird aufgerufen. Als Parameter bekommt sie den
          Spender und den Empfaenger der Speise und ein Array, das alle 
          Werte der Speise enthaelt.

          Fuer Speisen sieht das Array so aus:
          ({ nameOfFood, ids, price, heal, myFunction, 0, max,
             extraFunktion })

          In der Funktion kann man irgendwelche Sonderfunktionen ausfuehren.
          Wenn man Knoblauch bestellt hat, kann man dem Empfaenger zB. ein
          Mundgeruchsobjekt unterschieben.

     extra ist ein Array von zwei Strings
          Der erste dieser Strings wird an den Empfaenger der Speise
          ausgegeben, der zweite der Strings an alle anderen in der Kneipe.

          Name und verschiedene Pronomina des Empfaengers koennen mit Platz-
          haltern in die Strings eingebaut werden:
          Platzhalter  Bedeutung
          &&           Name des Spielers im Nominativ (Mupfel, Marita)
          &?           Name des Spielers im Genetiv (Mupfels, Maritas)
          &1 == &!     Personalpronomen des Spielers im Nominativ (er, sie)
          &2           Personalpronomen des Spielers im Genetiv (ihn, sie)
          &3           Personalpronomen des Spielers im Dativ (ihm, ihr)
          &4           Personalpronomen des Spielers im Akkusativ (ihn, sie)
          &=           Possessivpronomen des Spielers, maennl. (sein, ihr)
                     Possessivpronomen des Spielers, weibl. (seine, ihre)

RUECKGABEWERT:
     keiner

BEMERKUNGEN:
     Man sollte darauf achten, das man keine guten Heilspeisen zu
     Schleuderpreisen verkauft.

     Dagegen ist es durchaus erlaubt, Speisen mit heilung=0 auf die Karte zu
     setzen.
     
BEISPIELE:

     inherit "/std/kneipe";

     create() {
       ::create();

       // Beschreibungen, Details, etc...
       SetProp(...);

       // Ein zaehes Schnitzel
       AddFood("Schnitzel", "schnitzel", 50, 5,
         ({ "Du kaust auf dem zaehen Schnitzel herum.",
            "&& kaut auf einem zaehen Schnitzel herum." }) );

       // Eine Pizza mit Knoblauch
       AddFood("Knofipizza", ({ "pizza", "knofipizza" }),
         70, 10, "pizza" );
     }

     pizza(object zahler, object esser)
     {
       tell_object(esser, "Du isst genuesslich Deine Pizza.\n");
       tell_room(this_object(), esser->name(WER)+" isst eine Knofipizza.\n",
                 ({ esser }) );
       clone_object("/obj/mundgeruch"->move(esser, M_NOCHECK));
     }

SIEHE AUCH:
     kneipe, AddDrink(), /std/kneipe.c