blob: 87e0e0dd7045f1c9edd1e5ee711e3407459d51e6 [file] [log] [blame]
#pragma strong_types,rtt_checks
inherit "/std/container";
#include <moving.h>
protected void create()
{
::create();
// Das Objekt raeumt sich selber im reset auf. (D.h. kein Env-Check)
SetAutoObject(1);
}
// Dieses Objekt raeumt sich immer im ersten reset auf - es ist kurzlebig und
// transient und Aenderungen an seinen Daten bleiben nicht erhalten.
void reset()
{
remove(1);
}
public varargs void init(object origin)
{
// leer ueberschreiben. Das klingt abstrus, hat aber folgenden Hintergrund:
// dieses Objekt ist nicht dazu gedacht, in irgendeine Umgebung zu gelangen.
// Und selbst wenn das jemand mit M_NOCHECK tut, soll die Interaktion dieses
// Objekts mit anderen minimiert werden. Also keine Anmeldung von actions
// etc.
}
// Auch dies ist ungewoehnlich: Bewegung nie erlauben, daher eruebrigt sich
// der Aufruf des geerbten PreventMove(). Auch wird M_NOCHECK nicht
// beruecksichtigt... Don't do this anywhere else.
protected int PreventMove(object dest, object oldenv, int method)
{
return ME_NOT_ALLOWED;
}