Bewegung von Objekten - /sys/moving.h
Stand vom 01.05.2003.
Aktuelle Informationen auch
hier.
Es sind folgende move-Methoden definiert.
|
#ifndef __MOVING_H__
#define __MOVING_H__
// Methods to move objects
#define M_GO 1 // Living geht
#define M_TPORT 2 // Living teleportiert
#define M_NOCHECK 4 // einfaches Moven, ohne Checks
#define M_GET 8 // obj geht von Nonliving zu Living
#define M_PUT 16 // obj geht von Living zu Nonliving
#define M_GIVE 32 // obj geht von Living zu Living
#define M_DROP 64 // obj geht von Living ins Environment
#define M_SILENT 128 // obj soll ohne meldung ausgezogen werden
#define M_NO_ATTACK 256 // Kein Begruessungsschlag
#define M_NO_SHOW 512 // Zeige nicht die Room-Descr beim ankommen
// Hier folgt noch was fuer die Unit
#define M_MOVE_ALL 1024 // bewegt ein komlettes Unitobjekt
#define M_FORCE_SPLIT 2048 // bewegt Teile davon
#define M_NO_JOIN 4096 // Verhindert das automatische Vereinigen
// Nur fuer Lebewesen
#define M_MY_MSG 8192 // Verhindert Wirkung von P_MSG_FORCE
// Moven ohne Event
#define M_NOEVENT 16384 // Verwendung mit einem Erzmagier absprechen
// Returnwerte fuer erfolgreiches move
#define MOVE_OK 1
#define MOVE_OK_SILENT 2
// Errors when moving things
#define ME_PLAYER -1 // Spieler kann man nicht tragen/nehmen
#define ME_TOO_HEAVY -2 // Das Ziel kann mich nicht mehr tragen (I)
#define ME_CANT_TPORT_IN -3 // Ins Ziel darf man nicht teleporten
#define ME_CANT_TPORT_OUT -4 // Hier darf man nicht raus teleporten
#define ME_CANT_BE_DROPPED -5 // Ich darf nicht abgelegt werden
#define ME_CANT_BE_TAKEN -6 // Ich darf nicht genommen werden
#define ME_CANT_BE_INSERTED -7 // Behaelter hindert mich am 'betreten'
#define ME_TOO_BULKY -8 // Das Ziel kann mich nicht mehr tragen (II)
#define ME_WORN -9 // Ich werde noch getragen
#define ME_WIELDED -10 // Ich bin noch gezueckt
#define MOVE_EVENT_CANCELLED -11 // Wie der Name schon sagt (Ursache unklar)
#define NO_TPORT 1
#define NO_TPORT_IN 2
#define NO_TPORT_OUT 4
// Ablehnreaktionen von NPCs
#define REJECT_DROP "reject_drop"
#define REJECT_GIVE "reject_give"
#define REJECT_KEEP "reject_keep"
// Move-Events
#define ET_GO "et_go"
#define ET_TPORT "et_tport"
#define ET_GET "et_get"
#define ET_PUT "et_put"
#define ET_GIVE "et_give"
#define ET_DROP "et_drop"
// Move-Event Defines
#define E_MOVE_OBJ "e_move_obj"
#define E_MOVE_SOURCE "e_move_source"
#define E_MOVE_DEST "e_move_dest"
#define E_MOVE_METHOD "e_move_method"
#define E_MOVE_DIR "e_move_dir"
#define E_MOVE_MSGS "e_move_msgs"
#define E_MOVE_RVALUE "e_move_rvalue"
// OBSOLETE
#define E_MOVE_MSGDIR "e_move_msgdir"
#define E_MOVE_MSGLIV "e_move_msgliv"
#define E_MOVE_MSGOUT "e_move_msgout"
#define E_MOVE_MSGIN "e_move_msgin"
#endif
|