blob: ba2e05fc89287b311ed48f3a2155fe9cf15e68f3 [file] [log] [blame]
// MorgenGrauen MUDlib
//
// armour/moving.c -- armour moving object
//
// $Id: moving.c,v 3.3 1998/03/02 08:34:57 Paracelsus Exp $
#pragma strict_types
#pragma save_types
#pragma no_clone
#pragma pedantic
#pragma range_check
inherit "/std/thing/moving";
#define NEED_PROTOTYPES 1
#include <thing/properties.h>
#include <properties.h>
#include <moving.h>
#include <defines.h>
#include <clothing.h>
/* Bekleidung muss vor Bewegung und Zerstoerung ausgezogen werden */
varargs int move(mixed dest, int method ) {
// ggf. Ausziehen
if (objectp(QueryProp(P_WORN)))
DoUnwear(method & (M_SILENT|M_NOCHECK));
if ((method&M_NOCHECK) || (!(object)QueryProp(P_WORN)))
return ::move(dest, method);
return ME_CANT_BE_DROPPED;
}
varargs int remove(int silent) {
// ggf. Ausziehen
if (objectp(QueryProp(P_WORN)))
DoUnwear(M_SILENT|M_NOCHECK);
if (!(object)QueryProp(P_WORN))
return ::remove(silent);
// Ausziehen hat irgendwie nicht geklappt. :-(
return 0;
}