source: 2012/09-22/JariK/Jimmy The Survivor!/Jimmy The Survivor!/Jimmy The Survivor!/Jimmy_The_Survivor_.cs @ 3854

Revision 3854, 2.8 KB checked in by anlakane, 9 years ago (diff)
Line 
1using System;
2using System.Collections.Generic;
3using Jypeli;
4using Jypeli.Assets;
5using Jypeli.Controls;
6using Jypeli.Effects;
7using Jypeli.Widgets;
8
9public class Jimmy_The_Survivor_ : PhysicsGame
10{
11
12    PhysicsObject Jimmy;
13    PlasmaCannon Jimmyase;
14
15    public override void Begin()
16    {
17        IsMouseVisible = true;
18
19        Gravity = new Vector(0.0, -800.0);
20        Jimmy = new PhysicsObject(40, 40);
21        Jimmy.Color = Color.Green;
22        Jimmy.Shape = Shape.Ellipse;
23        Jimmy.Restitution = 1.0;
24        Add(Jimmy);
25        AddCollisionHandler(Jimmy, PelaajaTormasi);
26        Jimmyase = new PlasmaCannon(30, 10);
27        Jimmy.Add(Jimmyase);
28
29        PhysicsObject Vihollinen = new PhysicsObject(50, 50);
30        Vihollinen.Shape = Shape.Ellipse;
31        Vihollinen.Color = Color.Blue;
32        Vihollinen.Position = new Vector(250, 30);
33        Add(Vihollinen);
34        Vihollinen.Tag = "Vihollinen";
35       
36
37        Surface alaReuna = Surface.CreateBottom(Level);
38        Add(alaReuna);
39        alaReuna.Color = Color.Black;
40        Surface yläreuna = Surface.CreateTop(Level);
41        Add(yläreuna);
42        yläreuna.Color = Color.LightBlue;
43        Surface vasenreuna = Surface.CreateLeft(Level);
44        Add(vasenreuna);
45        vasenreuna.Color = Color.LightBlue;
46        Surface oikeareuna = Surface.CreateRight(Level);
47        oikeareuna.Color = Color.LightBlue;
48        Add(oikeareuna);
49
50        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu");
51        Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Ammu", Jimmyase);
52        Mouse.ListenMovement(0.1, Tahtaa, "Tähtää aseella");
53
54    }
55
56
57
58
59    void LiikutaPelaajaa(Vector vektori)
60    {
61        Jimmy.Push(vektori);
62    }
63
64    void CreateBorders()
65    {
66
67    }
68    void PelaajaTormasi(PhysicsObject Vihollinen, PhysicsObject Jimmy)
69    {
70         
71    }
72    void AmmuAseella(PlasmaCannon ase)
73    {
74        PhysicsObject ammus = ase.Shoot();
75       
76        if (ammus != null)
77        {
78            AddCollisionHandler(ammus, "Vihollinen", Vihollinenkuolee);
79        }
80
81        ase.FireRate = 3.0;
82    }
83    void AmmusOsui(PhysicsObject ammus, PhysicsObject Vihollinen)
84    {
85        ammus.Destroy();
86    }
87    void KaannaTykkia(Weapon tykki, Angle kulma)
88    {
89        tykki.Angle += kulma;
90    }
91
92    void Tahtaa(AnalogState hiirenLiike)
93    {
94       
95        Vector suunta = (Mouse.PositionOnWorld - Jimmyase.AbsolutePosition).Normalize();
96        Jimmyase.Angle = suunta.Angle;
97    }
98    void Vihollinenkuolee(PhysicsObject ammus, PhysicsObject Vihollinen)
99    {
100        Vihollinen.Destroy(); 
101    }
102    void LisaaVihollisia()
103    {
104        Timer ajastin = new Timer();
105        ajastin.Interval = 1.0;
106        ajastin.Timeout += LisaaVihollisia;
107        ajastin.Start();
108    }
109}
Note: See TracBrowser for help on using the repository browser.