73 get {
return Ammo.
Value == Int32.MaxValue; }
76 if ( !value &&
Ammo.
Value == Int32.MaxValue )
123 if (value < 0)
throw new ArgumentException(
"Fire rate cannot be negative!");
156 public Weapon(
double width,
double height )
157 : base( width, height )
162 Ammo =
new IntMeter( Int32.MaxValue, 0, Int32.MaxValue );
229 position = this.
Position + direction * 0.75 * ( Math.Max(this.
Parent.
Width,
this.Parent.Height) );
252 projectile.
Hit( impulse );
262 if ( handler ==
null )
271 throw new InvalidOperationException(
"Cannot set a collision handler to non-physics game!" );
Kokoelma valmiita törmäyksenkäsittelijöitä.
Action< PhysicsObject > Shooting
Tapahtumankäsittelijä ampumiselle, parametrinä ammus. Voit antaa kaikille aseesta lähteville ammuksil...
bool CanHitOwner
Voi ammus osua aseen omistajaan?
double FireRate
Tulinopeus (ammusta sekunnissa)
abstract PhysicsObject CreateProjectile()
Luo uuden ammuksen. Ylikirjoitetaan aliluokissa.
override void Update(Time time)
Peliolion päivitys. Tätä kutsutaan, kun IsUpdated-ominaisuuden arvoksi on asetettu true ja olio on li...
bool AmmoIgnoresExplosions
Jättävätkö panokset räjähdyksen paineaallot huomiotta.
DoubleMeter Power
Voima, jolla panos ammutaan. Nollautuu ammuttaessa.
virtual bool IsReady
Voiko asetta valmiina käytettäväksi. Ottaa huomioon tulinopeuden, ammukset jne.
void ShootProjectile(PhysicsObject projectile, double power)
Ampuu ammuksen annetulla voimalla
bool AmmoIgnoresGravity
Jättävätkö panokset painovoiman huomiotta.
void OnShooting(PhysicsObject projectile)
Suoritetaan kun ase ampuu
bool InfiniteAmmo
Loputtomat ammukset.
TimeSpan MaxAmmoLifetime
Ammuksen elinikä. TimeSpan.MaxValue jos ikuinen, TimeSpan.FromSeconds( 5 ) jos 5 sekuntia jne.
PhysicsObject Shoot()
Ampuu aseella, ja palauttaa ammuksen tai null, jos ampuminen ei onnistu (esimerkiksi jos panokset ova...
Weapon(double width, double height)
Luo uuden aseen.
void SetCollisionHandler(PhysicsObject projectile, CollisionHandler< PhysicsObject, PhysicsObject > handler)
Lisää törmäyksenkäsittelijän ammukselle
IntMeter Ammo
Panosten määrä.
double Volume
Aseen laukauksen voimakkuus väliltä 0-1.0. Oletuksena 0.5.
CollisionHandler< PhysicsObject, PhysicsObject > ProjectileCollision
Tapahtumankäsittelijä ammuksen törmäykselle.
TimeSpan TimeBetweenUse
Kuinka kauan kestää, että asetta voidaan käyttää uudestaan.
SoundEffect AttackSound
Hyökkäysääni (pistoolin pamaus jne.)
Mittari, joka mittaa double-tyyppisiä arvoja. Sidottavissa näyttöihin, kuten ValueDisplay ja BarGa...
static Time Time
Peliaika. Sisältää tiedon siitä, kuinka kauan peliä on pelattu (Time.SinceStartOfGame) ja kuinka kaua...
void Add(Light light)
Lisää valon peliin. Nykyisellään valoja voi olla ainoastaan yksi kappale. Toistaiseksi ei tuettu Wind...
static Game Instance
Käynnissä olevan pelin pääolio.
Pelialueella liikkuva olio. Käytä fysiikkapeleissä PhysicsObject-olioita.
override Vector?? Position
bool IsAddedToGame
Onko olio lisätty peliin.
IGameObject Parent
Olio, jonka lapsiolio tämä olio on. Jos null, olio ei ole minkään olion lapsiolio.
TimeSpan MaximumLifetime
Olion suurin mahdollinen elinaika. Kun Lifetime on suurempi kuin tämä, olio kuolee.
Mittari, joka mittaa int-tyyppisiä arvoja. Sidottavissa näyttöihin, kuten ValueDisplay ja BarGauge...
void Reset()
Palauttaa mittarin arvon oletusarvoonsa.
ValueType Value
Mittarin arvo.
ValueType MinValue
Mittarin pienin sallittu arvo. Kun mittari saavuttaa tämän arvon, laukeaa tapahtuma LowerLimit.
A collision ignorer that uses reference comparison. All Bodies with the same instance of this ignorer...
Kantaluokka fysiikkapeleille.
void AddCollisionHandler(IPhysicsObject obj, CollisionHandler< IPhysicsObject, IPhysicsObject > handler)
Määrää, mihin aliohjelmaan siirrytään kun yleinen fysiikkaolio
Kappale joka noudattaa fysiikan lakeja, johon voi törmätä. Vaatii että käytössä on fysiikkapeli.
bool IgnoresExplosions
Jättääkö räjähdysten paineaallon huomioimatta
bool IgnoresGravity
Jättääkö painovoiman huomiotta.
override Vector?? Position
virtual Ignorer CollisionIgnorer
Olio, jolla voi välttää oliota osumasta tiettyihin muihin olioihin.
virtual void Hit(Vector impulse)
Kohdistaa kappaleeseen impulssin. Tällä kappaleen saa nopeasti liikkeeseen.
static readonly Rectangle Rectangle
Suorakulmio.
Ääniefekti. Yhdestä efektistä voi luoda CreateSound-metodilla monta ääntä (Sound),...
bool Play()
Soittaa äänen.
Suuntakulma (rajoitettu -180 ja 180 asteen välille) asteina ja radiaaneina. Tietoja kulmasta: http://...
Sisältää tiedon ajasta, joka on kulunut pelin alusta ja viime päivityksestä.
TimeSpan SinceStartOfGame
Aika joka on kulunut pelin alusta.
static Vector FromLengthAndAngle(double length, double angle)
Luo vektorin pituuden ja kulman perusteella.