source: 2014/27/VesaL/OmaPeli/OmaPeli/OmaPeli/OmaPeli.cs @ 5367

Revision 5367, 3.7 KB checked in by Velumile, 8 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
9
10public class OmaPeli : PhysicsGame
11{
12    DoubleMeter elamaLaskuri;
13    Vector nopeusYlos = new Vector(0, 100);
14    Vector nopeusAlas = new Vector(0, -200);
15    Vector nopeusOikealle = new Vector(-100, 0);
16    Vector nopeusVasemmalle = new Vector(100, 0);
17    PhysicsObject evilmoon;
18    PhysicsObject maa;
19
20   
21
22
23    public override void Begin()
24    {
25        SmoothTextures = false;
26        LuoKentta();
27        AsetaOhjaimet();
28        AloitaPeli();
29        AddCollisionHandler(evilmoon, PelaajaTormasi);
30        LuoElamaLaskuri();
31       
32    }
33
34    void LuoKentta()
35    {
36        evilmoon = new PhysicsObject(90.0, 90.0);
37        evilmoon.Shape = Shape.Circle;
38        evilmoon.X = 0.0;
39        evilmoon.Y = 0.0;
40        evilmoon.Restitution = 1.0;
41        evilmoon.CanRotate = (false);
42        Add(evilmoon);
43
44        //AddCollisionHandler(evilmoon, CollisionHandler.AddMeterValue(elamaLaskuri, -1));
45
46        IPhysicsObject maa = new PhysicsObject(90.0, 90.0);
47        maa.Shape = Shape.Circle;
48        maa.X = 100.0;
49        maa.Y = 100.0;
50        maa.Image = LoadImage("Untitled");
51
52        Add(maa);
53
54        Level.CreateBorders();
55
56
57
58
59        evilmoon.Image = LoadImage("EvilMoon");
60        //IsPaused=true;
61
62
63        Level.Background.CreateStars(1000);
64
65        // Camera.FollowedObject = evilmoon;
66
67        Camera.ZoomToLevel();
68    }
69
70   
71
72    void AloitaPeli()
73    {
74        Vector impulssi = new Vector(5.0, 0.0);
75        evilmoon.Hit(impulssi);
76    }
77
78    void AsetaOhjaimet()
79    {
80        Keyboard.Listen(Key.W, ButtonState.Down, AsetaNopeus, "evilmoon: Liikuta Kuuta ylös", evilmoon, nopeusYlos);
81       // Keyboard.Listen(Key.W, ButtonState.Released, AsetaNopeus, null, evilmoon, Vector.Zero);
82        Keyboard.Listen(Key.S, ButtonState.Down, AsetaNopeus, "evilmoon: Liikuta Kuuta alas", evilmoon, nopeusAlas);
83       // Keyboard.Listen(Key.S, ButtonState.Released, AsetaNopeus, null,evilmoon,Vector.Zero);
84         
85        Keyboard.Listen(Key.Q, ButtonState.Down, AsetaNopeus, null, evilmoon, Vector.Zero);
86
87        Keyboard.Listen(Key.A, ButtonState.Down, AsetaNopeus, "evilmoon: Liikuta Kuuta oikealle", evilmoon, nopeusOikealle);
88       // Keyboard.Listen(Key.A, ButtonState.Released, AsetaNopeus, null, evilmoon, Vector.Zero);
89
90        Keyboard.Listen(Key.D, ButtonState.Down, AsetaNopeus, "evilmoon: Liikuta Kuuta alas", evilmoon, nopeusVasemmalle);
91       // Keyboard.Listen(Key.D, ButtonState.Released, AsetaNopeus, null, evilmoon, Vector.Zero);
92
93        Keyboard.Listen(Key.P, ButtonState.Pressed,Pause , "Laittaa pelin pauselle");
94 
95
96
97        Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet");
98        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
99    }
100
101    void AsetaNopeus(PhysicsObject evilmoon, Vector nopeus)
102    {
103        evilmoon.Velocity = nopeus;
104    }
105
106
107
108    void PelaajaTormasi(PhysicsObject evilmoon, PhysicsObject maa)
109    {
110       MessageDisplay.Add("KUU TÖRMÄSI MAAHAN;");
111       
112
113
114    }
115
116
117
118    void LuoElamaLaskuri()
119{
120    elamaLaskuri = new DoubleMeter(10);
121    elamaLaskuri.MaxValue = 10;
122    elamaLaskuri.LowerLimit += ElamaLoppui;
123
124    ProgressBar elamaPalkki = new ProgressBar(150, 20);
125    elamaPalkki.X = Screen.Left + 150;
126    elamaPalkki.Y = Screen.Top - 20;
127    elamaPalkki.BindTo(elamaLaskuri);
128    Add(elamaPalkki);
129       
130 
131    }
132
133void ElamaLoppui()
134{
135    MessageDisplay.Add("Elämät loppuivat, voi voi.");
136}
137
138   
139
140
141
142}
Note: See TracBrowser for help on using the repository browser.