source: 2012/30/JesseN/Oma peli/OmaPeli/OmaPeli/OmaPeli/OmaPeli.cs @ 3818

Revision 3818, 19.9 KB checked in by anlakane, 10 years ago (diff)

Talletus.

Line 
1using System;
2using System.Collections.Generic;
3using Jypeli;
4using Jypeli.Assets;
5using Jypeli.Controls;
6using Jypeli.Effects;
7using Jypeli.Widgets;
8
9public class MetalFist : PhysicsGame
10{
11    PlatformCharacter hahmo;
12    Maavihu frog;
13    Image hahmostand = LoadImage("CharStand32");
14    Image[] hahmojuoksu = LoadImages("CharRun1", "CharRun2", "CharRun3");
15    Image hahmojump = LoadImage("CharJump");
16    Image hahmofall = LoadImage("CharJump");
17    Image panos = LoadImage("Bullet");
18    Image tahtaa = LoadImage("CharShoot32bit");
19    Image[] flyer = LoadImages("EnemyFlying1", "EnemyFlying2", "EnemyFlying3", "EnemyFlying4");
20    Image[] frogi = LoadImages("EnemyLand1", "EnemyLand2");
21    Image[] fullmetalli = LoadImages("FullMetal", "FullMetal", "FullMetal");
22
23    Image vesiblock = LoadImage("Water");
24    Image puublock = LoadImage("Wood");
25    Image ruohoblock = LoadImage("Grass");
26    Image multablock = LoadImage("Dirt");
27    Image lehdetblock = LoadImage("Leaves");
28    Image panos2 = LoadImage("Bullet2");
29    Image kiviblock = LoadImage("Stone");
30    Image kattokivi1block = LoadImage("StoneCeiling");
31    Image kattokivi2block = LoadImage("StoneCeiling2");
32    Image kattokivi3block = LoadImage("StoneCeiling3");
33    Image takakiviblock = LoadImage("StoneBackground");
34    Image luolakiviblock1 = LoadImage("StoneCeilingBack1");
35    Image luolakiviblock2 = LoadImage("StoneCeilingBack2");
36    Image luolakiviblock3 = LoadImage("StoneCeilingBack3");
37    Image borderblock = LoadImage("BorderWall");
38    Image ammolaatikko = LoadImage("AmmoBox");
39    Image taustakuva = LoadImage("CloudBackground");
40    Image hpsalkku = LoadImage("Briefcase");
41    Image enemygun = LoadImage("EnemyGun");
42    IntMeter pistelaskuri;
43    Animation hahmoosuma;
44    Animation fullimetalli;
45    ExplosionSystem rajahdys;
46
47    DoubleMeter elamaLaskuri;
48    IntMeter ammuslaskuri;
49    EasyHighScore topLista;
50
51
52    public override void Begin()
53    {
54        ClearAll();
55        topLista =  new EasyHighScore();
56        topLista.HighScoreWindow.Closed += delegate { Begin(); };
57
58        MultiSelectWindow alkuValikko = new MultiSelectWindow("Pelin alkuvalikko",
59"Aloita peli", "Parhaat pisteet", "Lopeta");
60        Add(alkuValikko);
61
62        alkuValikko.ItemSelected += PainettiinValikonNappia;
63
64        PhoneBackButton.Listen(ConfirmExit, "Lopeta Peli");
65        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
66    }
67
68    void PainettiinValikonNappia(int valinta)
69    {
70        switch (valinta)
71        {
72            case 0:
73                Luokentta();
74                break;
75            case 1:
76                topLista.Show();
77                break;
78            case 2:
79                Exit();
80                break;
81        }
82    }
83
84    void Alkuvalikkoon()
85    {
86        Camera.Zoom(1.0);
87        ClearAll();
88        Begin();
89        return;
90    }
91    void LuoTausta()
92    {
93        GameObject tausta = new GameObject(Level.Width, Level.Height);
94        tausta.Image = taustakuva;
95        Add(tausta, -3);
96        Layers[-3].RelativeTransition = new Vector(0.5, 0.5);
97    }
98
99    void Luokentta()
100    {
101
102        ammuslaskuri = new IntMeter(30);
103
104
105        LuoElamaLaskuri();
106        Luoammustenmaara();
107        LuoPisteLaskuri();
108
109        ColorTileMap ruudut = ColorTileMap.FromLevelAsset("Level1");
110
111        ruudut.SetTileMethod(Color.BrightGreen, LuoRuoho);
112        ruudut.SetTileMethod(Color.Cyan, LuoVesi);
113        ruudut.SetTileMethod(Color.Red, LuoVihollinen);
114        ruudut.SetTileMethod(Color.DarkBlue, LuoLehdet);
115        ruudut.SetTileMethod(Color.HanPurple, LuoPuu);
116        ruudut.SetTileMethod(Color.Black, LuoMulta);
117        ruudut.SetTileMethod(Color.Orange, LuoPelaaja);
118        ruudut.SetTileMethod(Color.Rose, LuoKivi);
119
120        ruudut.SetTileMethod(Color.Gray, LuoKattoKivi1);
121        ruudut.SetTileMethod(Color.BrownGreen, LuoKattoKivi2);
122        ruudut.SetTileMethod(Color.Olive, LuoKattoKivi3);
123        ruudut.SetTileMethod(Color.DarkRed, LuoTakakivi);
124        ruudut.SetTileMethod(Color.ForestGreen, Luoluolakivi1);
125        ruudut.SetTileMethod(Color.DarkGray, Luoluolakivi2);
126        ruudut.SetTileMethod(Color.DarkJungleGreen, Luoluolakivi3);
127        ruudut.SetTileMethod(Color.YellowGreen, LuoBorderwall);
128        ruudut.SetTileMethod(Color.SpringGreen, LuoAmmuslaatikko);
129        ruudut.SetTileMethod(Color.Purple, LuoMaaVihu);
130        Camera.Reset();
131        Camera.Zoom(1.1);
132        Camera.StayInLevel = true;
133
134        ruudut.Execute(45, 45);
135        int pMaxMaara = 200;
136        rajahdys = new ExplosionSystem(LoadImage("Explosion"), pMaxMaara);
137        rajahdys.MaxVelocity = 1;
138        Add(rajahdys);
139        LuoTausta();
140    }
141
142    void LuoAmmuslaatikko(Vector paikka, double leveys, double korkeus)
143    {
144        PhysicsObject ammobox = new PhysicsObject(32, 32);
145        ammobox.Position = paikka;
146        ammobox.Image = ammolaatikko;
147        ammobox.CollisionIgnoreGroup = 0;
148        ammobox.Tag = "Ammo";
149        Add(ammobox);
150    }
151
152    void LuoHPsalkku(Vector paikka, double leveys, double korkeus)
153    {
154        PhysicsObject hpbox = new PhysicsObject(32, 32);
155        hpbox.Position = paikka;
156        hpbox.Image = hpsalkku;
157        hpbox.CollisionIgnoreGroup = 0;
158        hpbox.Tag = "HP";
159        Add(hpbox);
160    }
161
162
163    void Luoluolakivi1(Vector paikka, double leveys, double korkeus)
164    {
165        PhysicsObject luolakivi1 = PhysicsObject.CreateStaticObject(leveys, korkeus);
166        luolakivi1.Position = paikka;
167        luolakivi1.Image = luolakiviblock1;
168        luolakivi1.CollisionIgnoreGroup = 1;
169        luolakivi1.IgnoresCollisionResponse = true;
170        Add(luolakivi1, -1);
171    }
172
173    void LuoBorderwall(Vector paikka, double leveys, double korkeus)
174    {
175        PhysicsObject borderseina = PhysicsObject.CreateStaticObject(leveys, korkeus);
176        borderseina.Position = paikka;
177        borderseina.Image = borderblock;
178        borderseina.CollisionIgnoreGroup = 1;
179        Add(borderseina, -1);
180    }
181
182
183
184
185    void Luoluolakivi2(Vector paikka, double leveys, double korkeus)
186    {
187        PhysicsObject luolakivi2 = PhysicsObject.CreateStaticObject(leveys, korkeus);
188        luolakivi2.Position = paikka;
189        luolakivi2.Image = luolakiviblock2;
190        luolakivi2.CollisionIgnoreGroup = 1;
191        luolakivi2.IgnoresCollisionResponse = true;
192        Add(luolakivi2, -1);
193    }
194
195    void Luoluolakivi3(Vector paikka, double leveys, double korkeus)
196    {
197        PhysicsObject luolakivi3 = PhysicsObject.CreateStaticObject(leveys, korkeus);
198        luolakivi3.Position = paikka;
199        luolakivi3.Image = luolakiviblock3;
200        luolakivi3.CollisionIgnoreGroup = 1;
201        luolakivi3.IgnoresCollisionResponse = true;
202        Add(luolakivi3, -1);
203    }
204
205
206    void LuoKattoKivi1(Vector paikka, double leveys, double korkeus)
207    {
208        PhysicsObject kattokivi1 = PhysicsObject.CreateStaticObject(leveys, korkeus);
209        kattokivi1.Position = paikka;
210        kattokivi1.Image = kattokivi1block;
211        kattokivi1.CollisionIgnoreGroup = 1;
212        kattokivi1.IgnoresCollisionResponse = true;
213        Add(kattokivi1, -1);
214    }
215
216    void LuoKattoKivi2(Vector paikka, double leveys, double korkeus)
217    {
218        PhysicsObject kattokivi2 = PhysicsObject.CreateStaticObject(leveys, korkeus);
219        kattokivi2.Position = paikka;
220        kattokivi2.Image = kattokivi2block;
221        kattokivi2.CollisionIgnoreGroup = 1;
222        kattokivi2.IgnoresCollisionResponse = true;
223        Add(kattokivi2, -1);
224    }
225
226    void LuoKattoKivi3(Vector paikka, double leveys, double korkeus)
227    {
228        PhysicsObject kattokivi3 = PhysicsObject.CreateStaticObject(leveys, korkeus);
229        kattokivi3.Position = paikka;
230        kattokivi3.Image = kattokivi3block;
231        kattokivi3.CollisionIgnoreGroup = 1;
232        kattokivi3.IgnoresCollisionResponse = true;
233        Add(kattokivi3, -1);
234    }
235
236
237
238    void LuoKivi(Vector paikka, double leveys, double korkeus)
239    {
240
241        PhysicsObject kivi = PhysicsObject.CreateStaticObject(leveys, korkeus);
242        kivi.Position = paikka;
243        kivi.Image = kiviblock;
244        kivi.CollisionIgnoreGroup = 1;
245        Add(kivi);
246
247    }
248
249    void LuoPelaaja(Vector paikka, double leveys, double korkeus)
250    {
251        hahmo = new PlatformCharacter(48, 48);
252        hahmo.AnimWalk = new Animation(hahmojuoksu);
253        hahmo.AnimWalk.FPS = 10;
254        hahmo.AnimIdle = new Animation(hahmostand);
255        hahmo.AnimJump = new Animation(hahmojump);
256        hahmo.AnimFall = new Animation(hahmofall);
257        hahmo.Weapon = new LaserGun(30, 30);
258        hahmo.Weapon.Ammo.Value = 30;
259        hahmo.Weapon.Image = null;
260        hahmo.Weapon.Color = Color.Transparent;
261        hahmo.Weapon.Power.DefaultValue = 1000;
262        hahmo.Weapon.CanHitOwner = false;
263        AddCollisionHandler<PlatformCharacter, PhysicsObject>(hahmo, "Ammo", Ammuksia);
264        AddCollisionHandler<PlatformCharacter, PhysicsObject>(hahmo, "HP", Hpta); 
265        AddCollisionHandler<PlatformCharacter, PhysicsObject>(hahmo, "Vesi", Vesi2 );
266        AddCollisionHandler<PlatformCharacter, PhysicsObject>(hahmo, "vihollinen", OsumaPelaajaan);
267        AddCollisionHandler<PlatformCharacter, PhysicsObject>(hahmo, "vihollinen2", OsumaPelaajaan);
268        fullimetalli = new Animation(fullmetalli);
269        fullimetalli.FPS = 9;
270
271        Image[] hahmodmg = LoadImages("CharHit", "CharHit2", "CharHit3");
272        hahmoosuma = new Animation(hahmodmg);
273        Add(hahmo);
274        hahmo.Position = paikka;
275        Gravity = new Vector(0.0, -1000.0);
276        Ohjaus();
277        Camera.Follow(hahmo);
278    }
279
280    void OsumaPelaajaan(PlatformCharacter hahmo, PhysicsObject lentava )
281    {
282        elamaLaskuri.Value -= 1;
283        hahmo.PlayAnimation(hahmoosuma);
284    }
285
286
287    void LuoPisteLaskuri()
288    {
289        pistelaskuri = new IntMeter(0);
290        Label pisteNaytto = new Label();
291        pisteNaytto.X = Screen.Left + 61;
292        pisteNaytto.Y = Screen.Top - 45;
293        pisteNaytto.TextColor = Color.White;
294        pisteNaytto.Color = Color.Black;
295        pisteNaytto.BindTo(pistelaskuri);
296        pisteNaytto.Size = new Vector(28, 40);
297        pisteNaytto.Title = "Points";
298        Add(pisteNaytto);
299    }
300
301
302    void Vesi2(PlatformCharacter hahmo, PhysicsObject vesi)
303    {
304        hahmo.Hit(new Vector(0, 120));
305    }
306
307    void Hpta(PlatformCharacter hahmo, PhysicsObject hpbox)
308    {
309        hpbox.Destroy();
310
311        elamaLaskuri.Value += 2;
312    }
313
314    void Ammuksia(PlatformCharacter hahmo, PhysicsObject ammobox)
315    {
316        ammobox.Destroy();
317        hahmo.Weapon.Ammo.Value += 20;
318        ammuslaskuri.Value += 20;
319    }
320
321    void LuoMulta(Vector paikka, double leveys, double korkeus)
322    {
323        PhysicsObject multa = PhysicsObject.CreateStaticObject(leveys, korkeus);
324        multa.Position = paikka;
325        multa.Image = multablock;
326        multa.CollisionIgnoreGroup = 1;
327        Add(multa);
328
329
330
331    }
332
333
334
335    void LuoRuoho(Vector paikka, double leveys, double korkeus)
336    {
337        PhysicsObject ruoho = PhysicsObject.CreateStaticObject(leveys, korkeus);
338        ruoho.Position = paikka;
339        ruoho.Image = ruohoblock;
340        ruoho.CollisionIgnoreGroup = 1;
341        Add(ruoho);
342    }
343
344    void LuoPuu(Vector paikka, double leveys, double korkeus)
345    {
346        GameObject puu = new GameObject(leveys, korkeus);
347        puu.Position = paikka;
348        puu.Image = puublock;
349        Add(puu, -1);
350    }
351
352    void LuoLehdet(Vector paikka, double leveys, double korkeus)
353    {
354        GameObject lehdet = new GameObject(leveys, korkeus);
355        lehdet.Position = paikka;
356        lehdet.Image = lehdetblock;
357        Add(lehdet, -1);
358    }
359
360    void LuoVesi(Vector paikka, double leveys, double korkeus)
361    {
362        PhysicsObject vesi = PhysicsObject.CreateStaticObject(leveys, korkeus);
363        vesi.Position = paikka;
364        vesi.Image = vesiblock;
365        vesi.IgnoresCollisionResponse = true;
366        vesi.Tag = "Vesi";
367        Add(vesi, -1);
368    }
369
370    void LuoTakakivi(Vector paikka, double leveys, double korkeus)
371    {
372        GameObject takakivi = new GameObject(leveys, korkeus);
373        takakivi.Position = paikka;
374        takakivi.Image = takakiviblock;
375        Add(takakivi, -1);
376    }
377
378        void LuoMaaVihu(Vector paikka, double leveys, double korkeus)
379    {
380        Maavihu frog = new Maavihu(50, 50);
381        frog.Position = paikka;
382        frog.Animation = new Animation(frogi);
383        frog.Shape = Shape.Circle;
384        frog.Animation.Start();
385        LaserGun frogun = new LaserGun(30, 20);
386        frog.CanRotate = false;
387        frogun.Ammo.Value = 10000;
388        frogun.Image = enemygun;
389        frogun.Color = Color.Transparent;
390        frogun.Y = -10;
391        frog.Add(frogun);
392        frog.Tag = "vihollinen2";
393
394
395
396        frogun.Destroyed += delegate { vihollinen2tuhottu(frog); };
397        /*RandomMoverBrain satunnaisAivot = new RandomMoverBrain(200);
398        satunnaisAivot.ChangeMovementSeconds = 3;
399        frog.Brain = satunnaisAivot; */
400        PlatformWandererBrain tasoAivot = new PlatformWandererBrain();
401        tasoAivot.Speed = 100;
402        frog.Brain = tasoAivot;
403        Timer ajastin2 = new Timer();
404        ajastin2.Interval = 1.7;
405        ajastin2.Timeout += delegate { VihollinenAmpuu(frog, frogun, ajastin2); };
406        ajastin2.Start();
407        Add(frog);
408    }
409
410    void LuoVihollinen(Vector paikka, double leveys, double korkeus)
411    {
412        Vihuclass lentava = new Vihuclass(50, 50);
413        lentava.Position = paikka;
414        lentava.Shape = Shape.Circle;
415        FollowerBrain seuraajanAivot1 = new FollowerBrain(hahmo);
416        seuraajanAivot1.Speed = 100;
417        lentava.IgnoresGravity = true;
418        seuraajanAivot1.DistanceFar = 500;
419        seuraajanAivot1.DistanceClose = 100;
420        seuraajanAivot1.StopWhenTargetClose = true;
421        //seuraajanAivot1.TargetClose += vihulahella;
422        lentava.Animation = new Animation(flyer);
423        lentava.Animation.Start();
424        lentava.Animation.FPS = 10;
425        lentava.CanRotate = false;
426        lentava.Brain = seuraajanAivot1;
427        LaserGun lentavagun = new LaserGun(10, 10);
428        lentavagun.Ammo.Value = 10000;
429        //lentavagun.ProjectileCollision = AmmusOsui;
430        lentavagun.Image = null;
431        lentavagun.Color = Color.Transparent;
432        lentava.Tag = "vihollinen";
433        lentava.Destroyed += delegate { vihollinen1tuhottu(lentava); };
434        lentava.Destroyed += delegate { if (RandomGen.NextBool()) LuoHPsalkku(lentava.Position, leveys, korkeus); };
435
436        lentava.Add(lentavagun);
437
438        Timer ajastin = new Timer();
439        ajastin.Interval = 2.0;
440        ajastin.Timeout += delegate { VihollinenAmpuu(lentava, lentavagun, ajastin); };
441        ajastin.Start();
442        Add(lentava);
443    }
444   
445    void vihollinen1tuhottu(Vihuclass paikka)
446    {
447        int pMaara = 50;
448        rajahdys.AddEffect(paikka.Position, pMaara);
449        pistelaskuri.Value += 10;
450    }
451
452    void vihollinen2tuhottu(Maavihu paikka)
453    {
454        int pMaara = 50;
455        rajahdys.AddEffect(paikka.Position, pMaara);
456        pistelaskuri.Value += 20;
457    }
458    void AmmusViholliseen(PhysicsObject ammus, Vihuclass lentava)
459    {
460        lentava.Hitpoints.Value -= 1;
461
462    }
463
464    void AmmusViholliseen2(PhysicsObject ammus, Maavihu frog)
465    {
466        frog.Hitpoints2.Value -= 1;
467
468    }
469
470    void AmmusPelaajaan(PhysicsObject ammus2, PlatformCharacter hahmo)
471    {
472        elamaLaskuri.Value -= 1;
473        hahmo.PlayAnimation(hahmoosuma);
474        //hahmo.PlayAnimation(...);
475    }
476
477
478
479    void VihollinenAmpuu(PhysicsObject lentava, LaserGun lentavagun, Timer ajastin)
480    {
481        if (lentava.IsDestroyed == true)
482        {
483            ajastin.Stop();
484            return;
485        }
486
487        Vector suunta = (hahmo.Position - lentava.Position);
488        if (suunta.Magnitude < 600)
489        {
490            lentavagun.Angle = suunta.Angle;
491            PhysicsObject ammus2 = lentavagun.Shoot();
492
493            if (ammus2 != null)
494            {
495                ammus2.Shape = Shape.Circle;
496                ammus2.Size = new Vector(10, 10);
497                ammus2.Image = panos2;
498                AddCollisionHandler(ammus2, CollisionHandler.DestroyObject);
499                AddCollisionHandler(ammus2, hahmo, AmmusPelaajaan);
500
501
502
503            }
504        }
505    }
506
507    void Vihollinen2Ampuu(PlatformCharacter frog, LaserGun frogun, Timer ajastin2)
508    {
509        if (frog.IsDestroyed == true)
510        {
511            ajastin2.Stop();
512            return;
513        }
514
515        Vector suunta = (hahmo.Position - frog.Position);
516        if (suunta.Magnitude < 600)
517        {
518            frogun.Angle = suunta.Angle;
519            PhysicsObject ammus2 = frogun.Shoot();
520
521            if (ammus2 != null)
522            {
523                ammus2.Shape = Shape.Circle;
524                ammus2.Size = new Vector(10, 10);
525                ammus2.Image = panos2;
526                AddCollisionHandler(ammus2, CollisionHandler.DestroyObject);
527                AddCollisionHandler(ammus2, hahmo, AmmusPelaajaan);
528
529
530
531            }
532        }
533    }
534
535
536
537
538
539    void Ohjaus()
540    {
541        Keyboard.Listen(Key.Left, ButtonState.Down, LiikutaHahmoa, "Pelaaja liiku vasemmalle", -400.0);
542        Keyboard.Listen(Key.Right, ButtonState.Down, LiikutaHahmoa, "Pelaaja liiku oikealle", 400.0);
543        Keyboard.Listen(Key.Space, ButtonState.Pressed, hyppy, "Pelaaja hyppää", 650.0);
544        Keyboard.Listen(Key.S, ButtonState.Pressed, AmmuAseella, "Ammu", hahmo);
545        Keyboard.Listen(Key.T, ButtonState.Pressed, Alkuvalikkoon, "Palaa valikkoon");
546        Keyboard.Listen(Key.Down, ButtonState.Pressed, fullmetal, "Full metal - muoto");
547    }
548
549    void fullmetal()
550    {
551        hahmo.PlayAnimation(fullimetalli);
552        hahmo.Hit(new Vector(0, -1000));
553
554    }
555
556    void LiikutaHahmoa(double vektori)
557    {
558        hahmo.Walk(vektori);
559    }
560
561    void hyppy(double hyppyvoima)
562    {
563        hahmo.Jump(hyppyvoima);
564    }
565
566    void AmmuAseella(PlatformCharacter hahmo)
567    {
568        PhysicsObject ammus = hahmo.Weapon.Shoot();
569        hahmo.PlayAnimation(tahtaa);
570        //hahmo.Animation = new Animation(tahtaa);
571        //hahmo.Animation.Start(1);
572        ammuslaskuri.Value -= 1;
573
574        if (ammus != null)
575        {
576            ammus.Shape = Shape.Circle;
577            ammus.Size = new Vector(10, 10);
578            ammus.Image = panos;
579            AddCollisionHandler(ammus, CollisionHandler.DestroyObject);
580            AddCollisionHandler<PhysicsObject, Vihuclass>(ammus, "vihollinen", AmmusViholliseen);
581            AddCollisionHandler<PhysicsObject, Maavihu>(ammus, "vihollinen2", AmmusViholliseen2);
582
583        }
584    }
585
586    void LuoElamaLaskuri()
587    {
588        elamaLaskuri = new DoubleMeter(6);
589        elamaLaskuri.MaxValue = 6;
590        elamaLaskuri.LowerLimit += ElamaLoppui;
591
592        ProgressBar elamaPalkki = new ProgressBar(140, 40);
593        elamaPalkki.X = Screen.Left + 88;
594        elamaPalkki.Y = Screen.Top - 100;
595        elamaPalkki.BindTo(elamaLaskuri);
596        elamaPalkki.Image = LoadImage("HPbarEmpty");
597        elamaPalkki.BarImage = LoadImage("HPbarFull");
598        Add(elamaPalkki);
599    }
600
601    void ElamaLoppui()
602    {
603        MessageDisplay.Add("You were destroyed. Game Over.");
604        int pMaara = 50;
605        rajahdys.AddEffect(hahmo.Position, pMaara);
606        hahmo.Destroy();
607        topLista.EnterAndShow(pistelaskuri.Value);
608    }
609
610
611    void Luoammustenmaara()
612    {
613
614        Label ammustenmaara = new Label();
615        ammustenmaara.X = Screen.Left + 100;
616        ammustenmaara.Y = Screen.Top - 70;
617        ammustenmaara.TextColor = Color.White;
618        ammustenmaara.Color = Color.Black;
619        ammustenmaara.BindTo(ammuslaskuri);
620        ammustenmaara.Title = "Ammunition";
621        Add(ammustenmaara);
622    }
623
624   
625}
Note: See TracBrowser for help on using the repository browser.