5 public partial class PhysicsObject
16 get {
return Body.Velocity; }
17 set {
Body.Velocity = value; }
26 get {
return Body.Acceleration; }
27 set {
Body.Acceleration = value; }
36 get {
return Body.AngularVelocity; }
37 set {
Body.AngularVelocity = value; }
46 get {
return Body.AngularAcceleration; }
47 set {
Body.AngularAcceleration = value; }
76 Body.ApplyForce( force );
79#pragma warning disable CS1591
80 [Obsolete(
"Ei käytössä")]
83 throw new NotImplementedException();
85#pragma warning restore CS1591
92 Body.ApplyImpulse( impulse );
101 Body.ApplyTorque( torque );
124 Body.StopAxial( axis );
161 double d = ( this.
Width + obj.Width ) / 2 + distanceDelta;
176 public void Throw(
PhysicsObject obj,
Angle angle,
double force,
double distOffset = 0,
int layer = 0,
double axialOffset = 0 )
void Add(Light light)
Lisää valon peliin. Nykyisellään valoja voi olla ainoastaan yksi kappale. Toistaiseksi ei tuettu Wind...
void StopMoveTo()
Pysäyttää MoveTo-aliohjelmalla aloitetun liikkeen.
Action arrivedAction
Kun olio saapuu kohteeseen
double moveSpeed
Liikkumisnopeus kohdetta kohti
void ClearOscillations()
Poistaa kaikki värähtelyt kappaleelta.
Vector? moveTarget
Piste johon liikutaan
Timer moveTimer
Ajastin joka liikuttaa kappaletta kohti kohdepistettä
double Width
Olion leveys (X-suunnassa, leveimmässä kohdassa).
bool IsUpdated
Tarvitseeko olio päivittämistä. Kun perit oman luokkasi tästä luokasta, aseta tämä arvoon true,...
Kappale joka noudattaa fysiikan lakeja, johon voi törmätä. Vaatii että käytössä on fysiikkapeli.
double AngularVelocity
Kulmanopeus.
override void MoveToTarget()
Siirtää oliota kohti kohdetta
double AngularAcceleration
Kulmakiihtyvyys.
IPhysicsBody Body
Fysiikkamoottorin käsittelemä fysiikkakappale.
virtual void Push(Vector force)
Työntää oliota.
double MaxVelocity
Suurin nopeus, jonka olio voi saavuttaa.
override Vector?? Position
void StopHorizontal()
Pysäyttää olion liikkeen vaakasuunnassa.
double Mass
Olion massa (paino). Mitä enemmän massaa, sitä enemmän voimaa tarvitaan saamaan olio liikkeelle / pys...
void Push(Vector force, TimeSpan time)
virtual void Hit(Vector impulse)
Kohdistaa kappaleeseen impulssin. Tällä kappaleen saa nopeasti liikkeeseen.
void StopAxial(Vector axis)
Pysäyttää liikkeen akselin suunnassa.
void StopVertical()
Pysäyttää olion liikkeen pystysuunnassa.
virtual void PrepareThrowable(PhysicsObject obj, Angle angle, double force, double distanceDelta, double axialDelta)
Valmistelee heitettävän kappaleen heittoa varten valmiiksi, ei lisää sitä peliin.
void Throw(PhysicsObject obj, Angle angle, double force, double distOffset=0, int layer=0, double axialOffset=0)
Heittää kappaleen hahmon rintamasuuntaa kohti.
void StopAngular()
Pysäyttää kaiken pyörimisliikkeen.
override void Stop()
Pysäyttää olion.
Vector Acceleration
Kiihtyvyys.
override void Move(Vector movement)
Siirtää oliota.
virtual void ApplyTorque(double torque)
Kohdistaa kappaleeseen vääntövoiman. Voiman suunta riippuu merkistä.
double MaxAngularVelocity
Suurin kulmanopeus, jonka olio voi saavuttaa.
double Interval
Aika sekunneissa, jonka välein TimeOut tapahtuu.
void Stop()
Pysäyttää ajastimen ja nollaa sen tilan.
Suuntakulma (rajoitettu -180 ja 180 asteen välille) asteina ja radiaaneina. Tietoja kulmasta: http://...
static readonly Angle RightAngle
Suora kulma (90 astetta).
Vector GetVector()
Kulmaa vastaava yksikkövektori
Angle Angle
Kulma radiaaneina.
static readonly Vector UnitY
Pystysuuntainen yksikkövektori (pituus 1, suunta ylös).
static readonly Vector UnitX
Vaakasuuntainen yksikkövektori (pituus 1, suunta oikealle).
double Magnitude
Vektorin pituus.
static Vector FromLengthAndAngle(double length, double angle)
Luo vektorin pituuden ja kulman perusteella.