Jypeli  9
The simple game programming library
PlatformCharacter2 luokkareferenssi

Tasohyppelypelin hahmo. Voi liikkua ja hyppiä. Lisäksi sillä voi olla ase. Lisää...

Luokan PlatformCharacter2 luokkakaavio
Jypeli.PhysicsObject

Julkiset jäsenfunktiot

 PlatformCharacter2 (double width, double height)
 Luo uuden tasohyppelyhahmon. Lisää...
 
 PlatformCharacter2 (double width, double height, Shape shape)
 Luo uuden tasohyppelyhahmon. Lisää...
 
void ForceJump (double speed)
 Hyppää vaikka olio ei olisikaan toisen päällä. Lisää...
 
void Jump (double speed)
 Hyppää tietyllä nopeudella, jos hahmo seisoo tukevalla pohjalla. Lisää...
 
override void Move (Vector movement)
 Siirtää oliota. Lisää...
 
void PlayAnimation (Animation anim, Action onPlayed=null)
 
void StopWalking ()
 Pysähtyy. Lisää...
 
void Turn (Direction direction)
 Kääntyy. Lisää...
 
override void Update (Time time)
 Ajetaan kun pelitilannetta päivitetään. Päivityksen voi toteuttaa omassa luokassa toteuttamalla tämän metodin. Perityn luokan metodissa tulee kutsua kantaluokan metodia. Lisää...
 
void Walk ()
 Kävelee. Lisää...
 
void Walk (Direction direction)
 Kävelee tiettyyn suuntaan. Lisää...
 
- Julkiset jäsenfunktiot inherited from Jypeli.PhysicsObject
 PhysicsObject (Animation animation)
 Alustaa fysiikkaolion käyttöön. Lisää...
 
 PhysicsObject (double width, double height)
 Alustaa fysiikkaolion käyttöön. Lisää...
 
 PhysicsObject (double width, double height, double x, double y)
 Luo uuden fysiikkaolion. Lisää...
 
 PhysicsObject (double width, double height, Shape shape, double x=0.0, double y=0.0)
 Alustaa fysiikkaolion käyttöön. Lisää...
 
 PhysicsObject (RaySegment raySegment)
 Luo fysiikkaolion, jonka muotona on säde. Lisää...
 
void AddCollisionIgnoreGroup (int group)
 Lisää uuden törmäyksenvälttelyryhmän. Lisää...
 
virtual void ApplyTorque (double torque)
 Kohdistaa kappaleeseen vääntövoiman. Voiman suunta riippuu merkistä. Lisää...
 
void ClearCollisionIgnoreGroups ()
 Poistaa kaikki törmäysryhmät, jolloin olio saa törmäillä vapaasti. Lisää...
 
virtual void Hit (Vector impulse)
 Kohdistaa kappaleeseen impulssin. Tällä kappaleen saa nopeasti liikkeeseen. Lisää...
 
bool IgnoresCollisionWith (PhysicsObject target)
 Tarkistaa, jätetäänkö törmäämättä toiseen olioon. Ts. tarkistaa, onko joko tällä oliolla tai toisella oliolla esim. IgnoresCollisionResponse tai keskenään sama CollisionIgnoreGroup. Lisää...
 
void MakeOneWay ()
 Tekee oliosta läpimentävän alhaalta ylöspäin (tasohyppelytaso). Huom. ei toimi yhdessä CollisionIgnoreGroupien kanssa! Lisää...
 
void MakeStatic ()
 Tekee oliosta staattisen eli liikkumattoman. Lisää...
 
override void Move (Vector movement)
 Siirtää oliota. Lisää...
 
void OnCollided (IPhysicsBody thisBody, IPhysicsBody otherBody)
 Fysiikkamoottori kutsuu kun törmäys tapahtuu Lisää...
 
virtual void Push (Vector force)
 Työntää oliota. Lisää...
 
void Push (Vector force, TimeSpan time)
 
void RemoveCollisionIgnoreGroup (int group)
 Poistaa annetun törmäyksenvälttelyryhmän. Lisää...
 
override void Stop ()
 Pysäyttää olion. Lisää...
 
void StopAngular ()
 Pysäyttää kaiken pyörimisliikkeen. Lisää...
 
void StopAxial (Vector axis)
 Pysäyttää liikkeen akselin suunnassa. Lisää...
 
void StopHorizontal ()
 Pysäyttää olion liikkeen vaakasuunnassa. Lisää...
 
void StopVertical ()
 Pysäyttää olion liikkeen pystysuunnassa. Lisää...
 
void Throw (PhysicsObject obj, Angle angle, double force, double distOffset=0, int layer=0, double axialOffset=0)
 Heittää kappaleen hahmon rintamasuuntaa kohti. Lisää...
 
override void Update (Time time)
 

Suojatut jäsenfunktiot

override void PrepareThrowable (PhysicsObject obj, Angle angle, double force, double distanceDelta, double axialDelta)
 
- Suojatut jäsenfunktiot inherited from Jypeli.PhysicsObject
override void MoveToTarget ()
 

Ominaisuudet

new double Acceleration [get, set]
 Hahmon kiihtyvyys. Lisää...
 
Animation AnimFall [get, set]
 Putoamisanimaatio (oikealle) Lisää...
 
Animation AnimIdle [get, set]
 Animaatio, jota käytetään kun hahmo on paikallaan (kääntyneenä oikealle) Lisää...
 
Animation AnimJump [get, set]
 Hyppyanimaatio (oikealle) Lisää...
 
Animation AnimWalk [get, set]
 Kävelyanimaatio (oikealle) Lisää...
 
bool CanMoveOnAir [get, set]
 Jos false, hahmoa ei voi liikuttaa kun se on ilmassa. Lisää...
 
Direction FacingDirection [get, set]
 Hahmon rintamasuunta (vasen tai oikea). Lisää...
 
double gravityMagnitude [get]
 
Vector gravityNormal [get]
 
bool LoopFallAnim [get, set]
 Toistetaanko putoamisanimaatiota useammin kuin kerran. Lisää...
 
bool LoopJumpAnim [get, set]
 Toistetaanko hyppyanimaatiota useammin kuin kerran. Lisää...
 
new double MaxVelocity [get, set]
 Hahmon maksiminopeus. Lisää...
 
PhysicsObject Platform [get, set]
 Fysiikkaolio jonka päällä seisotaan. Lisää...
 
Vector PlatformNormal [get, private set]
 Suuntavektori, joka osoittaa tason suuntaan. Nollavektori, jos ilmassa. Lisää...
 
int PlatformTolerance [get, set]
 Toleranssiarvo, joka määrittää kuinka monta pelin päivitysjaksoa hahmo voi olla irti tasosta ennen kuin se lasketaan ilmassa olevaksi. Lisää...
 
bool WalkOnAir [get, set]
 Toistetaanko kävelyanimaatiota ilmassa liikuttaessa? Lisää...
 
Weapon Weapon [get, set]
 Hahmolla oleva ase. Lisää...
 
- Ominaisuudet inherited from Jypeli.PhysicsObject
Vector Acceleration [get, set]
 Kiihtyvyys. Lisää...
 
override Angle Angle [get, set]
 
double AngularAcceleration [get, set]
 Kulmakiihtyvyys. Lisää...
 
double AngularDamping [get, set]
 Kulmanopeuskerroin. Pienempi arvo kuin 1 (esim. 0.998) toimii kuten kitka / ilmanvastus. Lisää...
 
double AngularVelocity [get, set]
 Kulmanopeus. Lisää...
 
IPhysicsBody Body [get, private set]
 
BoundingRectangle BoundingRectangle [get]
 Olion sisältävä laatikko törmäyskäsittelyä varten. Lisää...
 
bool CanRotate [get, set]
 Jos false, olio ei voi pyöriä. Lisää...
 
virtual int? CollisionIgnoreGroup [get, set]
 Törmäysryhmä. Oliot jotka ovat samassa törmäysryhmässä menevät toistensa läpi. Jos ryhmä on nolla tai negatiivinen, sillä ei ole vaikutusta. Lisää...
 
virtual Ignorer CollisionIgnorer [get, set]
 Olio, jolla voi välttää oliota osumasta tiettyihin muihin olioihin. Lisää...
 
bool IgnoresCollisionResponse [get, set]
 Jättääkö törmäykset huomiotta. Lisää...
 
bool IgnoresExplosions [get, set]
 
bool IgnoresGravity [get, set]
 Jättääkö painovoiman huomiotta. Lisää...
 
bool IgnoresPhysicsLogics [get, set]
 Jättääkö fysiikkakentät (esim. painovoiman) huomiotta. Lisää...
 
bool IsDestroying [get]
 Onko olio tuhoutumassa. Lisää...
 
double KineticFriction [get, set]
 Liikekitka (hidastaa kun olio on jo liikkeessä). Ks. StaticFriction (lepokitka) Lisää...
 
double LinearDamping [get, set]
 Nopeuskerroin. Pienempi arvo kuin 1 (esim. 0.998) toimii kuten kitka / ilmanvastus. Lisää...
 
double Mass [get, set]
 Olion massa (paino). Mitä enemmän massaa, sitä enemmän voimaa tarvitaan saamaan olio liikkeelle / pysähtymään. Lisää...
 
double MaxAngularVelocity [get, set]
 Suurin kulmanopeus, jonka olio voi saavuttaa. Lisää...
 
double MaxVelocity [get, set]
 Suurin nopeus, jonka olio voi saavuttaa. Lisää...
 
double MomentOfInertia [get, set]
 Olion hitausmomentti eli massa/paino kääntyessä. Mitä suurempi, sitä hitaampi olio on kääntymään / sitä enemmän vääntöä tarvitaan. Äärettömällä hitausmomentilla olio ei käänny lainkaan (paitsi suoraan kulmaa muuttamalla). Lisää...
 
PhysicsStructure ParentStructure [get, set]
 Rakenneolio, johon tämä olio kuuluu. Lisää...
 
override Vector Position [get, set]
 
double Restitution [get, set]
 Kimmoisuuskerroin (0 = ei kimmoisa, 1 = täysin kimmoisa, yli 1 = saa energiaa tyhjästä) Lisää...
 
override Shape Shape [get, set]
 
override Vector Size [get, set]
 
double StaticFriction [get, set]
 Lepokitka (hidastaa liikkeelle lähtiessä). Ks. KineticFriction (liikekitka) Lisää...
 
Vector Velocity [get, set]
 Nopeus. Lisää...
 

Tapahtumat

Action< DirectionDirectionChanged
 Tapahtuu kun suunta vaihtuu. Lisää...
 
- Tapahtumat inherited from Jypeli.PhysicsObject
CollisionHandler< IPhysicsObject, IPhysicsObjectCollided
 Tapahtuu, kun törmätään toiseen fysiikkaolioon. Lisää...
 
Action Destroying
 Tapahtuisi, kun olio on tuhoutumassa. EI KÄYTÖSSÄ! Lisää...
 

Yksityiset tyypit

enum  PlatformCharacterState { PlatformCharacterState.Idle, PlatformCharacterState.Falling, PlatformCharacterState.Jumping }
 

Yksityiset jäsenfunktiot

void AddCollisionHandler ()
 
void AnimationPlayed ()
 
bool IsWeaponFacingRight ()
 
void OnColliding (PhysicsObject collisionHelperObject, PhysicsObject target, Vector normal)
 
void SetAnimation (Animation anim, bool loop=true)
 
void updateGravity ()
 

Yksityiset attribuutit

double _accel = 1000
 
Vector _cachedGravity = Vector.Zero
 
double _cachedGravityMagnitude = 0
 
Vector _cachedGravityNormal = Vector.Zero
 
Direction _curDirection = Direction.Right
 
double _maxVel = 500
 
int _tolerance = 5
 
bool collisionDetected = false
 
Action customAnimAction
 
bool customAnimPlaying = false
 
Timer detachTimer = new Timer()
 
int noCollisionCount = 0
 
PlatformCharacterState state = PlatformCharacterState.Idle
 
int walkSteps = 0
 
Weapon weapon = null
 

Additional Inherited Members

- Staattiset julkiset jäsenfunktiot inherited from Jypeli.PhysicsObject
static PhysicsObject CreateStaticObject (Animation animation)
 Alustaa fysiikkaolion käyttöön. Lisää...
 
static PhysicsObject CreateStaticObject (double width, double height)
 Alustaa fysiikkaolion käyttöön ja tekee siitä staattisen (liikkumattoman). Lisää...
 
static PhysicsObject CreateStaticObject (double width, double height, Shape shape)
 Alustaa fysiikkaolion käyttöön ja tekee siitä staattisen (liikkumattoman). Lisää...
 

Yksityiskohtainen selite

Tasohyppelypelin hahmo. Voi liikkua ja hyppiä. Lisäksi sillä voi olla ase.

Määrittely tiedoston PlatformCharacter2.cs rivillä 17.

Jäsenluettelotyyppien dokumentaatio

◆ PlatformCharacterState

Luettelotyyppien arvot
Idle 
Falling 
Jumping 

Määrittely tiedoston PlatformCharacter2.cs rivillä 23.

Rakentajien & purkajien dokumentaatio

◆ PlatformCharacter2() [1/2]

PlatformCharacter2.PlatformCharacter2 ( double  width,
double  height 
)

Luo uuden tasohyppelyhahmon.

Määrittely tiedoston PlatformCharacter2.cs rivillä 226.

◆ PlatformCharacter2() [2/2]

PlatformCharacter2.PlatformCharacter2 ( double  width,
double  height,
Shape  shape 
)

Jäsenfunktioiden dokumentaatio

◆ AddCollisionHandler()

◆ AnimationPlayed()

void PlatformCharacter2.AnimationPlayed ( )
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 272.

Viittaukset customAnimAction, customAnimPlaying ja Jypeli.Animation.Played.

Viitattu PlayAnimation().

◆ ForceJump()

void PlatformCharacter2.ForceJump ( double  speed)

◆ IsWeaponFacingRight()

bool PlatformCharacter2.IsWeaponFacingRight ( )
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 377.

Viittaukset Jypeli.GameObject.Angle ja Jypeli.Angle.Radians.

◆ Jump()

void PlatformCharacter2.Jump ( double  speed)

Hyppää tietyllä nopeudella, jos hahmo seisoo tukevalla pohjalla.

Parametrit
speedLähtönopeus.

Määrittely tiedoston PlatformCharacter2.cs rivillä 387.

Viittaukset ForceJump(), Platform ja state.

Viitattu Move().

◆ Move()

override void PlatformCharacter2.Move ( Vector  movement)

Siirtää oliota.

Parametrit
movementVektori, joka määrittää kuinka paljon siirretään.

Määrittely tiedoston PlatformCharacter2.cs rivillä 511.

Viittaukset Jump(), Jypeli.Direction.Left, Jypeli.Direction.Right, Walk(), Jypeli.Vector.X ja Jypeli.Vector.Y.

◆ OnColliding()

void PlatformCharacter2.OnColliding ( PhysicsObject  collisionHelperObject,
PhysicsObject  target,
Vector  normal 
)
private

◆ PlayAnimation()

void PlatformCharacter2.PlayAnimation ( Animation  anim,
Action  onPlayed = null 
)

◆ PrepareThrowable()

override void PlatformCharacter2.PrepareThrowable ( PhysicsObject  obj,
Angle  angle,
double  force,
double  distanceDelta,
double  axialDelta 
)
protectedvirtual

◆ SetAnimation()

void PlatformCharacter2.SetAnimation ( Animation  anim,
bool  loop = true 
)
private

◆ StopWalking()

void PlatformCharacter2.StopWalking ( )

Pysähtyy.

Määrittely tiedoston PlatformCharacter2.cs rivillä 370.

Viittaukset AnimIdle, SetAnimation(), state ja walkSteps.

◆ Turn()

void PlatformCharacter2.Turn ( Direction  direction)

◆ Update()

override void PlatformCharacter2.Update ( Time  time)

Ajetaan kun pelitilannetta päivitetään. Päivityksen voi toteuttaa omassa luokassa toteuttamalla tämän metodin. Perityn luokan metodissa tulee kutsua kantaluokan metodia.

Parametrit
timePeliaika.

Määrittely tiedoston PlatformCharacter2.cs rivillä 457.

Viittaukset _curDirection, Acceleration, AnimFall, AnimIdle, AnimWalk, collisionDetected, gravityMagnitude, gravityNormal, Jypeli.Direction.Left, Jypeli.Vector.LeftNormal, LoopFallAnim, Jypeli.PhysicsObject.Mass, MaxVelocity, noCollisionCount, Platform, PlatformTolerance, Jypeli.PhysicsObject.Push(), Jypeli.Direction.Right, SetAnimation(), Jypeli.Time.SinceLastUpdate, state, Jypeli.Vector.UnitX, Jypeli.PhysicsObject.Velocity, walkSteps ja Jypeli.Vector.X.

◆ updateGravity()

◆ Walk() [1/2]

void PlatformCharacter2.Walk ( )

Kävelee.

Määrittely tiedoston PlatformCharacter2.cs rivillä 319.

Viittaukset AnimWalk, SetAnimation(), state, WalkOnAir ja walkSteps.

Viitattu Move().

◆ Walk() [2/2]

void PlatformCharacter2.Walk ( Direction  direction)

Kävelee tiettyyn suuntaan.

Parametrit
directionRintamasuunta. Direction.Left tai Direction.Right

Määrittely tiedoston PlatformCharacter2.cs rivillä 331.

Viittaukset AnimWalk, SetAnimation(), state, Turn(), WalkOnAir ja walkSteps.

Jäsendatan dokumentaatio

◆ _accel

double PlatformCharacter2._accel = 1000
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 20.

◆ _cachedGravity

Vector PlatformCharacter2._cachedGravity = Vector.Zero
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 27.

Viitattu updateGravity().

◆ _cachedGravityMagnitude

double PlatformCharacter2._cachedGravityMagnitude = 0
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 28.

Viitattu updateGravity().

◆ _cachedGravityNormal

Vector PlatformCharacter2._cachedGravityNormal = Vector.Zero
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 29.

Viitattu updateGravity().

◆ _curDirection

Direction PlatformCharacter2._curDirection = Direction.Right
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 34.

Viitattu Turn() ja Update().

◆ _maxVel

double PlatformCharacter2._maxVel = 500
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 21.

◆ _tolerance

int PlatformCharacter2._tolerance = 5
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 19.

◆ collisionDetected

bool PlatformCharacter2.collisionDetected = false
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 31.

Viitattu OnColliding() ja Update().

◆ customAnimAction

Action PlatformCharacter2.customAnimAction
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 38.

Viitattu AnimationPlayed() ja PlayAnimation().

◆ customAnimPlaying

bool PlatformCharacter2.customAnimPlaying = false
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 37.

Viitattu AnimationPlayed(), PlayAnimation() ja SetAnimation().

◆ detachTimer

Timer PlatformCharacter2.detachTimer = new Timer()
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 35.

◆ noCollisionCount

int PlatformCharacter2.noCollisionCount = 0
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 32.

Viitattu OnColliding() ja Update().

◆ state

PlatformCharacterState PlatformCharacter2.state = PlatformCharacterState.Idle
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 24.

Viitattu ForceJump(), Jump(), OnColliding(), StopWalking(), Update() ja Walk().

◆ walkSteps

int PlatformCharacter2.walkSteps = 0
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 33.

Viitattu StopWalking(), Turn(), Update() ja Walk().

◆ weapon

Weapon PlatformCharacter2.weapon = null
private

Määrittely tiedoston PlatformCharacter2.cs rivillä 26.

Ominaisuuksien dokumentaatio

◆ Acceleration

new double PlatformCharacter2.Acceleration
getset

Hahmon kiihtyvyys.

Määrittely tiedoston PlatformCharacter2.cs rivillä 80.

Viitattu Update().

◆ AnimFall

Animation PlatformCharacter2.AnimFall
getset

Putoamisanimaatio (oikealle)

Määrittely tiedoston PlatformCharacter2.cs rivillä 196.

Viitattu ForceJump() ja Update().

◆ AnimIdle

Animation PlatformCharacter2.AnimIdle
getset

Animaatio, jota käytetään kun hahmo on paikallaan (kääntyneenä oikealle)

Määrittely tiedoston PlatformCharacter2.cs rivillä 211.

Viitattu StopWalking() ja Update().

◆ AnimJump

Animation PlatformCharacter2.AnimJump
getset

Hyppyanimaatio (oikealle)

Määrittely tiedoston PlatformCharacter2.cs rivillä 191.

Viitattu ForceJump() ja SetAnimation().

◆ AnimWalk

Animation PlatformCharacter2.AnimWalk
getset

Kävelyanimaatio (oikealle)

Määrittely tiedoston PlatformCharacter2.cs rivillä 186.

Viitattu Update() ja Walk().

◆ CanMoveOnAir

bool PlatformCharacter2.CanMoveOnAir
getset

Jos false, hahmoa ei voi liikuttaa kun se on ilmassa.

Määrittely tiedoston PlatformCharacter2.cs rivillä 181.

Viitattu PlatformCharacter2().

◆ FacingDirection

Direction PlatformCharacter2.FacingDirection
getset

Hahmon rintamasuunta (vasen tai oikea).

Määrittely tiedoston PlatformCharacter2.cs rivillä 71.

Viitattu PrepareThrowable() ja Turn().

◆ gravityMagnitude

double PlatformCharacter2.gravityMagnitude
getprivate

Määrittely tiedoston PlatformCharacter2.cs rivillä 40.

Viitattu Update().

◆ gravityNormal

Vector PlatformCharacter2.gravityNormal
getprivate

◆ LoopFallAnim

bool PlatformCharacter2.LoopFallAnim
getset

Toistetaanko putoamisanimaatiota useammin kuin kerran.

Määrittely tiedoston PlatformCharacter2.cs rivillä 206.

Viitattu ForceJump() ja Update().

◆ LoopJumpAnim

bool PlatformCharacter2.LoopJumpAnim
getset

Toistetaanko hyppyanimaatiota useammin kuin kerran.

Määrittely tiedoston PlatformCharacter2.cs rivillä 201.

Viitattu ForceJump().

◆ MaxVelocity

new double PlatformCharacter2.MaxVelocity
getset

Hahmon maksiminopeus.

Määrittely tiedoston PlatformCharacter2.cs rivillä 89.

Viitattu Update().

◆ Platform

PhysicsObject PlatformCharacter2.Platform
getset

Fysiikkaolio jonka päällä seisotaan.

Määrittely tiedoston PlatformCharacter2.cs rivillä 127.

Viitattu ForceJump(), Jump(), OnColliding() ja Update().

◆ PlatformNormal

Vector PlatformCharacter2.PlatformNormal
getprivate set

Suuntavektori, joka osoittaa tason suuntaan. Nollavektori, jos ilmassa.

Määrittely tiedoston PlatformCharacter2.cs rivillä 134.

Viitattu OnColliding().

◆ PlatformTolerance

int PlatformCharacter2.PlatformTolerance
getset

Toleranssiarvo, joka määrittää kuinka monta pelin päivitysjaksoa hahmo voi olla irti tasosta ennen kuin se lasketaan ilmassa olevaksi.

Määrittely tiedoston PlatformCharacter2.cs rivillä 62.

Viitattu Update().

◆ WalkOnAir

bool PlatformCharacter2.WalkOnAir
getset

Toistetaanko kävelyanimaatiota ilmassa liikuttaessa?

Määrittely tiedoston PlatformCharacter2.cs rivillä 216.

Viitattu Walk().

◆ Weapon

Weapon PlatformCharacter2.Weapon
getset

Hahmolla oleva ase.

Määrittely tiedoston PlatformCharacter2.cs rivillä 139.

Tapahtumien dokumentaatio

◆ DirectionChanged

Action<Direction> PlatformCharacter2.DirectionChanged

Tapahtuu kun suunta vaihtuu.

Määrittely tiedoston PlatformCharacter2.cs rivillä 221.

Viitattu Turn().


Dokumentaatio tälle luokalle luotiin seuraavasta tiedostosta: