Lpc Manpages

STANDARDOBJEKT FUER MONSTER:

BENUTZUNG:
  inherit "std/npc";
  
  #include <properties.h>    // Fuer Standardproperties
  #include <language.h>    // Fuer MALE, FEMALE etc.

BESCHREIBUNG:
  Ein Monster oder NPC (Non Player Charakter) ist die einzige
  andere 'Lebensform' im MUD ausser den Spielern. Monster koennen
  Fragen beantworten, Ausgaenge sperren, umherlaufen, kaempfen,
  dem Spieler helfen oder ihn behindern. Und 1001 Sachen mehr 🙂
  Hinweis: Fuer Monster nicht unbedings benoetigte Properties,
  Macros und Funktionen sind hier weggelassen.

PROPERTIES:
  <thing/description.h>
  <thing/language.h>
  <thing/material.h>
    siehe /doc/std/thing
  <living/attributes.h>  
    P_ATTRIBUTES  -- Attribute ('Stats')
  <living/combat.h>
    P_BODY_RESISTANCE -- Resistenz gegen Schadentypen
    P_TOTAL_AC  -- Gesamtabwehr
    P_HANDS    -- Informationen zum waffenlosen Angriff
    P_MAX_HANDS  -- Anzahl der Haende
    P_USED_HANDS  -- Anzahl der Haende in Benutzung
    P_NOATTACK  -- Monster kann nicht angegriffen werden
    P_ATTACK_BUSY  -- Angriffsblockade
  <living/corpse.h>
    P_CORPSE  -- Leichenobjekt
    P_NOCORPSE  -- Monster hat keine Leiche
    P_CORPSE_ORIGIN  -- Informationen uber die Leiche
  <living/life.h>
    P_ALIGN    -- Gesinnung (<0 = schlecht, >0=gut)
    P_FOOD    -- Nahrungsmenge im Monster
    P_MAX_FOOD  -- Maximale Nahrungsmenge
    P_DRINK    -- Fluessigkeitsmenge im Monster
    P_MAX_DRINK  -- Maximale Fluessigkeitsmenge
    P_ALCOHOL  -- Alkoholmenge im Monster
    P_MAX_ALCOHOL  -- Maximale Alkoholmenge
    P_HP    -- Lebenspunkte
    P_MAX_HP  -- Maximale Anzahl Lebenspunkte
    P_SP    -- Magiepunkte
    P_MAX_SP  -- Maximale Anzahl Magiepunkte
    P_XP    -- Erfahrungspunkte
  <living/messages.h>
    P_ENABLE_INFORM  -- Erlaubte Systemmeldungen
  <npc/chat.h>
    P_CHATS    -- Meldungen an den Raum
    P_CHAT_CHANCE  -- Meldungsrate
    P_ACHATS  -- Meldungen im Kampf
    P_ACHAT_CHANCE  -- Kampfmeldungsrate
  <npc/combat.h>
    P_AGGRESSIVE  -- Monster greift von selbst an
    P_SPELLS  -- Monsterspells
    P_SPELLRATE  -- Wahrscheinlichkeit fuer Monsterspells
  <npc/guard.h>
    P_GUARD    -- Monster bewacht etwas
  <npc/info.h>
    P_INFOS    -- Antworten auf Fragen
    P_DEFAULT_INFO  -- Defaultantwort auf Fragen
    P_LOG_INFO  -- Mitloggen von unbeantworteten Fragen
  <properties.h>
    P_INFO    -- Geheime Zusatzinformationen
    P_HEAL    -- Heilung beim Essen von Monsterleichen
    P_BODY    -- Abwehrstaerke ohne Ruestungen
    P_RACE    -- Rasse
    P_SIZE    -- Groesse in cm
    P_NOMAGIC  -- Resistenz gegen Magie (in Prozent)
    
MACROS:
  <living/attributes.h>  
    A_STR  -- Kraft
    A_INT  -- Intelligenz
    A_CON  -- Ausdauer
    A_DEX  -- Geschick
  <living/corpse.h>
    CO_INTERACTIVE  -- Leiche war ein Spieler
    CO_LEVEL  -- Level des Leicheninhabers
    CO_XP    -- Erfahrung des Monsters
    CO_LOST_XP  -- Verlorene Erfahrung des Spielers
    CO_MAX_HP  -- Maximale Lebenspunkte des Leicheninhabers
    CO_PATH    -- Pfad des Leicheninhabers
    CO_NAME    -- Name des Leicheninhabers
  <living/messages.h>
    INFORM_ATTACK  -- Angriffsmeldung
    INFORM_DEFEND  -- Verteidigungsmeldung
    INFORM_DIE  -- Todesmeldung
    INFORM_MOVE  -- Bewegungsmeldung (nicht implementiert)
    INFORM_ALCOHOL  -- Alkoholisierungsmeldung
  <npc/guard.h>
    GUARD_QUEST  -- Monster bewacht Questobjekt
    GUARD_POTION  -- Monster bewacht Zaubertrank
    GUARD_PERSON  -- Monster bewacht ein anderes Monster
    GUARD_THING  -- Monster bewacht Gegenstand
    GUARD_LOCATION  -- Monster bewacht Ort
  <npc/info.h>
    DEFAULT_INFO  -- Defaultantwort auf Fragen
  
FUNKTIONEN:
  "/std/living/attributes":
    int SetAttr(string attr, int val);
    int SetAttribute(string attr, int val);
    int QueryAttribute(string attr);
  "/std/living/combat":
    int Kill(object ob);
    int InsertEnemy(object ob);
    int IsEnemy(object wer);
    mixed EnemyPresent();
    varargs int StopHuntFor(mixed arg, int silent);
    varargs int StopHuntID(string str, int silent);
    varargs mixed StopHuntingMode(int silent);
    void Attack(object enemy);
    void AddDefender(object friend);
    void InformDefend(object enemy);
    mixed DefendOther(int dam, mixed dam_type,
                      mixed spell, object enemy);
    void Defend(int dam, mixed dam_type, int spell, object enemy);
    void Flee();
    float CheckResistance(string* dam_type);
    object QueryEnemy();
    mixed QueryEnemies();
  "/std/corpse":
    void Identify(object ob);
    void gegessen();
  "/std/living/life":
    int eat_food(int strength);
    int drink_soft(int strength);
    int drink_alcohol(int strength);
    varargs void die(int poisondeath);
    int do_damage(int dam, mixed enemy);
    int reduce_hit_point(int dam);
    void restore_spell_points(int h);
    void restore_hit_points(int h);
    void heal_self(int h);
  "/std/living/moving":
    void AddPursuer(object ob);
    void RemovePursuer(object ob);
  "/std/npc":
    varargs void create_default_npc(int level, int maxhp);
    int command_me(string cmd);
  "/std/npc/chat":
    void SetChats(int chance, mixed strs);
    void SetAttackChats(int chance, mixed strs);
  "/std/npc/combat":
    varargs void AddSpell(int rate, int damage,
                                      string TextForEnemy,
                                      string TextForOthers,
                                      mixed dam_type,
                                      mixed sp_info, mixed sp_extra);
  "/std/npc/comm":
    int sag(string "<msg>");         
       - alle im Raum sehen "<name> sagt: <msg>"
    int sagzu(string "<name> <msg>"  
       - <name> sieht "<name> sagt zu Dir: <msg>"
    int erzaehle(string "<name> <msg>"  
       - <name> sieht "<name> teilt Dir mit: <msg>"
    Diese Funktionen koennen durch "command" aufgerufen werden:
       command("sag Hallo");

  "/std/npc/guard":
    varargs mixed SetGuardProtection(int strength, int types);
    varargs int QueryGuardProtection(int arg);

  "/std/npc/info":
    varargs void AddInfo(mixed key, mixed info,
                         string indent, mixed silent);
    void RemoveInfo(string key);
    mixed GetInfo(string key);

ERLAEUTERUNG:
  ** "/std/living/attributes":

DOKUMENTIERT:
  -unbekannt-
  31.07.2003 geaendert von It

SIEHE AUCH:

  mnpc, mnpcinfo