MayAddWeight()

FUNKTION

int MayAddWeight(int gewicht);

DEFINIERT IN

/std/container/restrictions.c

ARGUMENTE

gewicht
     Das zu pruefende Gewicht.

BESCHREIBUNG

Wenn ein Objekt ein einen Behaelter bewegt wird, prueft move() ueber
diese Funktion, ob das Objekt ueberhaupt noch in den Behaelter hinein
passt. Dazu uebergibt move() dieser Funktion das Gewicht des zu
bewegenden Objektes.

RUeCKGABEWERT

0, wenn der Behaelter noch ein gewicht Gramm wiegendes Objekt aufnehmen
kann, -1 im anderen Fall.

BEMERKUNGEN

move() ruft diese Funktion nicht auf, wenn in den Flags M_NOCHECK
gesetzt war!

BEISPIELE

Die entsprechende Abfrage in /std/thing/moving.c sieht etwa
folgendermassen aus:

int weight;

...
weight = QueryProp(P_TOTAL_WEIGHT);   // Behaelter? Ja => Gesamtgewicht
if (!weight)
  weight = QueryProp(P_WEIGHT);       // Nein: einfaches Gewicht

if (ziel->MayAddWeight(weight) == -1) // Passt es noch rein?
  return ME_TOO_HEAVY;                // Nein, entspr. Fehler zurueckgeben

...

SIEHE AUCH

MayAddObject(), PreventInsert(), move(), /std/container/restrictions.c

Last modified: 23.09.2007, Zesstra