Beispieldateien

Türbeispielraum C

----------



// Holger@Wunderland 7/99
// 13.03.02 Fiona  Umbau Tuer auf DF_CLOSE_PASS
//

inherit "room";

#include <properties.h>
#include <doors.h>

#pragma strict_types

void create() {
  ::create();
  SetProp(P_INDOORS, 0);
  SetProp(P_LIGHT, 2);
  SetProp(P_INT_SHORT, "Im Tuertestraum C");
  SetProp(P_INT_LONG, "Du stehst hier im Tuertestraum C\n"
    " +---+  +---+  Das Testgebiet erstreckt sich ueber 4 Raeume. In jedem\n"
    " | a +--+ b |  Raum sind andere Tueren mit anderen Verhaltesnweisen.\n"
    " +-+-+  +-+-+  In diesem Raum hier fuehrt das Gartentor nach Norden.\n"
    "   |      |    Es ist Auto-Open und kann mit dem Torschluessel auf und\n"
    " +-+-+  +-+-+  zugeschlossen werden. Es ist nicht aufbrechbar und\n"
    " | d +--+ C |  nicht zerstoerbar.\n"
    " +---+  +---+  Die dumme Tuer im Westen schliesst nach dem Durchgehen.\n");    

  AddDetail("boden", "Ein ganz normaler Boden.");
  AddDetail("decke", "Eine ganz normale Decke.");
  AddDetail("waende", "Vier ganz normale Waende siehst Du um Dich herum.\n");

  // Den Torschluessel legen wir hierher
  AddItem("/doc/beispiele/doors/torschluessel", REFRESH_REMOVE);

  /////////////////////////////////////////////////////////////////////////
  // Jetzt das Gartentor zurueck nach Norden. Es ist wieder AUTO_OPEN und
  // Abschliessbar und knackbar. Wir setzen wieder eigne Messages beim Oeff-
  // nen und Schliessen.

  AddDoor(
    "norden",
    "/doc/beispiele/doors/raum_b",
    DS_OPEN,
    DF_AUTO_OPEN|DF_LOCKABLE|DF_UNBREAKABLE|DF_LOCK_ALWAYS, // Oeffnen/Abschliessbar/Nicht knackbar
    ([ P_NAME     : "Gartentor",
       P_NAME_ADJ : "knarrend",
       P_DESCR    : "nach Norden",
       P_LONG     : "Eine @@es Gartentor welches wieder nach Norden fuehrt.",
       P_GENDER   : NEUTER,
       P_ARTICLE  : ART_AUTO,
       P_IDS      : ({"tor","gartentor"})]));

  AddDoor(
    "westen",
    "/doc/beispiele/doors/raum_d", 0,
    DF_AUTO_CLOSE|DF_CLOSE_PASS,
    ([ P_NAME     : "Tuer",
       P_NAME_ADJ : "dumme",
       P_DESCR    : "nach Westen",
       P_LONG     : "Eine @@e Tuer.",
       P_GENDER   : FEMALE,
       P_ARTICLE  : ART_AUTO,
       P_IDS      : ({"tuer"})]));

  SetDoorEventMsgs("norden", ET_DOOR_OPEN,
    ({"Du oeffnest das Gartentor. Es quietscht und knarrt.",
      ({"Das Gartentor quietscht, als &name es oeffnet.",
        "Ein Windstoss erfasst das Gartentor. Quietschend oeffnet es sich."}),
      ({"Das Gartentor wird von der anderen Seite geoeffnet.",
        "Quietschend oeffnet sich das Gartentor."})}));

  // Das gleiche noch fuer den Schliess-Event
  SetDoorEventMsgs("norden", ET_DOOR_CLOSE,
    ({"Du schliesst das Gartentor. Es quietscht und knarrt.",
      ({"Das Gartentor quietscht, als &name es schliesst.",0}),
      ({"Das Gartentor wird von der anderen Seite geschlossen.",0})}));
}


Start » Magierhandbuch » Dokumentation » Programmierbeispiele » Türbeispielraum C
Valid HTML 4.01!