phent_setelasticity ( entity*, var bounciness, var minimumSpeed );
Es gibt eindeutige Unterschiede im Abprallverhalten zwischen einem Flummi und
einer Metallkugel. Unter Verwendung von phent_setelasticity lässt
sich dieses Abprallverhalten festlegen. Bounciness benennt den Prozentsatz der
Abprallheftigkeit von anderen Objekten. Der Wert 100 bedeutet eine perfekt elastische
Kollision, wie beim Flummi. 0 bedingt, wie bei einem Lehmklumpen, eine absolut
plastische Kollision. Da Entities (bei eingeschalteter Gravitation) konstant nach
unten gezogen werden, kollidieren sie ständig mit dem Boden. Wenn Sie nicht
wollen, dass Objekte auf dem Boden herumspringen, setzten Sie eine Minimalgeschwindigkeit
für elastisches Verhalten. Wenn ein Objekt von einer bestimmten Höhe
fällt, erhöht sich die Geschwindigkeit, und e prallt vom Boden ab. Bei
geringer Höhe von wenigen Quants, kann sich die Geschwindigkeit nicht sehr
erhöhen und wenn die Kollisionsgeschwindigkweit unter minimumSpeed liegt,
wird die Kollision plastisch ausfallen und dafür sorgen, dass das Objekt
dort bleibt wo es auf die Oberfläche trifft. minimumSpeed wird für alle
Kollisionen und nicht nur für Objekt-Boden-Kollisionen verwendet. Die effektive
Elastizität hängt von beiden Objekten ab und wird durch Multiplikation
beider bounciness-Faktoren berechnet. Daher werden ein Flummi (bounciness=90)
und eine Lehmkugel (bounciness=0) mit dem lehmähnlichen Ergebnis einer plastischen
Kollision (0*90 = 0) aufeinandertreffen. Die Levelgeometrie hat eine bounciness
von 100 Prozent und dass sie gänzlich vom kollidierenden Objekt abhängt.
Parameter:
entity |
betreffende Entity |
bounciness |
Wert zwischen 0.. 100, welcher angibt, wie stark ein Objekt
von einem anderen abprallt. |
minimumSpeed |
ist die Geschwindigkeit kleiner, wird bounciness auf 0 gesetzt. |
Rückgabewert:
1 bei Erfolg, sonst 0.
Bemerkungen:
EVENT_FRICTION wird nur bei Geschwindigkeiten,
die über der Mindestgeschwindigkeit liegen, ausgelöst.
Geschwindigkeit:
Schnell
Edition:
C P
Beispiel:
phent_setelasticity(my, 0,0);
Siehe auch:
ph_setcorrections, EVENT_FRICTION
► Aktuelle Version Online