| 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 |