Morgengrauner Dokumentation
Dateipfad: /home/mud/mudlib/doc/props/P_TARGET_AREAP_TARGET_AREA
*************
NAME
====
P_TARGET_AREA "target_area"
DEFINIERT IN
============
BESCHREIBUNG
============
Kann in einem Raum gesetzt werden, um einen anderen, von dort aus mit
Fernkampfwaffen beschiessbaren Raum als Objekt oder Objektnamen (zu
einem geladenen Objekt) festzulegen.
BEMERKUNGEN
===========
Ein Schuetze kann nur in den anderen Raum schiessen, wenn die P_RANGE
seiner Waffe mindest gleich der P_SHOOTING_AREA des Raums (nicht des
Zielraums) ist.
Idealerweise sollte in mit P_TARGET_AREA angegebenen Raeumen auch
P_NEVER_CLEAN gesetzt sein.
BEISPIELE
=========
// #1 Ein Baum-Raum (/std/room)
void create() {
::create();
SetProp(P_INT_SHORT, "Auf einem Baum");
SetProp(P_INT_LONG, break_string("Du hockst auf einem Baum und kannst "
"auf die Lichtung unter Dir sehen.\n");
AddExit("unten", RAEUME("lichtung"));
SetProp(P_TARGET_AREA, RAEUME("lichtung")); // Lichtung beschiessbar
SetProp(P_SHOOTING_AREA, 15); // 15 Entfernung
}
// #2 Ein Elefanten-Transporter (/std/transport)
// Er trampelt durch mehrere Raeume durch und der Schuetze kann vom
// Ruecken des Elefanten aus auf Gegner draussen schiessen.
void create() {
::create();
SetProp(P_NAME, "Kampfelefant");
AddId(({"elefant", "kampfelefant")});
SetProp(P_GENDER, MALE);
SetProp(P_SHORT, "Ein Kampfelefant");
SetProp(P_INT_SHORT, "Auf einem Kampfelefanten");
// P_LONG, P_INT_LONG
SetProp(P_ENTERCMDS, ({"kletter", "erkletter"}));
SetProp(P_LEAVECMDS, ({"verlass", "verlasse"}));
SetProp(P_ARRIVEMSG, ({"Der Elefant trampelt in einen Raum.\n",
"Ein Kampfelefant trampelt herein.\n"}));
SetProp(P_DEPARTMSG, ({"Der Elefant trampelt weiter.\n",
"Der Kampfelefant trampelt weiter.\n"}));
SetProp(P_SHOOTING_AREA, 8); // weiter als 8 sollte man schiessen
AddRoute(RAEUME("schlachtfeld"), 20+random(10), 6, "Schlachtfeld");
AddRoute(RAEUME("burgtor"), 20+random(10), 6, "Burgtor");
AddRoute(RAEUME("burghof"), 20+random(10), 6, "Burghof");
AddRoute(RAEUME("halle"), 20+random(10), 6, "Halle");
AddRoute(RAEUME("bresche"), 20+random(10), 6, "Bresche");
// ...
Start();
}
SIEHE AUCH
==========
Generell: P_AMMUNITION, P_SHOOTING_WC, P_STRETCH_TIME
Methoden: FindRangedTarget(L), shoot_dam(L), cmd_shoot(L)
Gebiet: P_RANGE, P_SHOOTING_AREA
Raeume: P_NEVER_CLEAN
Sonstiges: fernwaffen
29.Jul 2014 Gloinson
zurück zur Übersicht