source: 2012/27/LeeviK/PhysicsBall/PhysicsBall/PhysicsBall/PhysicsBall.cs @ 3635

Revision 3635, 12.3 KB checked in by lekopakk, 9 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 PhysicsBall : PhysicsGame
10{
11    PhysicsObject Este5;
12    PhysicsObject Pelaaja4;
13    PhysicsObject Tynnyri6;
14    PhysicsObject este4;
15    PhysicsObject aloitus1;
16    PhysicsObject este3;
17    PhysicsObject Pelaaja3;
18    PhysicsObject este2;
19    PhysicsObject Tynnyri1;
20    PhysicsObject Este1;
21    Image BLOCK = LoadImage("Este");
22    PhysicsObject Este;
23    PhysicsObject Aloitus;
24    Image Barrel = LoadImage("Kohde");
25    PhysicsObject Tynnyri;
26    PhysicsObject Lava2;
27    PhysicsObject Lava;
28    Image Kuva = LoadImage("Tausta");
29    Image Laava = LoadImage("Lava");
30    PhysicsObject Pelaaja;
31    PhysicsObject Maali;
32    PhysicsObject Nappula;
33    PhysicsObject Katoava;
34    Image Pallo = LoadImage("Ball");
35    Image button = LoadImage("Nappula");
36    Image Tausta = LoadImage("Tausta");
37    Image Sahko = LoadImage("Warning");
38    Image Tausta2 = LoadImage("Tausta42");
39    SoundEffect maaliAani = LoadSoundEffect("maali");
40    Image startti = LoadImage("Aloitus1");
41
42
43    public override void Begin()
44    {
45
46        ControllerOne.Listen(Button.DPadLeft, ButtonState.Down,
47  LiikutaPelaajaa, null, new Vector(-300, 0), Pelaaja);
48        ControllerOne.Listen(Button.DPadRight, ButtonState.Down,
49          LiikutaPelaajaa, null, new Vector(300, 0), Pelaaja);
50        ControllerOne.Listen(Button.A, ButtonState.Down,
51          MuutaPainovoima, null);
52
53        Level.Background.Image = Kuva;
54        LuoKatoava();
55
56        LuoMaali();
57        AloitaKentta();
58        Pelaaja = new PhysicsObject(100, 100);
59        Pelaaja.X = -400;
60        Pelaaja.Y = -350;
61        Pelaaja.Shape = Shape.Circle;
62        Pelaaja.Color = Color.Lime;
63
64        Add(Pelaaja);
65        AddCollisionHandler(Pelaaja, KasittelePallonTormays);
66        Level.CreateBorders();
67        Pelaaja.KineticFriction = 0.8;
68        Pelaaja.Restitution = 0.2;
69        Pelaaja.Image = Pallo;
70
71        Gravity = new Vector(0, -700);
72        Keyboard.Listen(Key.Space, ButtonState.Pressed,
73            MuutaPainovoima, null);
74        Keyboard.Listen(Key.A, ButtonState.Down,
75          LiikutaPelaajaa, null, new Vector(-300, 0), Pelaaja);
76        Keyboard.Listen(Key.D, ButtonState.Down,
77           LiikutaPelaajaa, null, new Vector(300, 0), Pelaaja);
78        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli");
79        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
80        Level.BackgroundColor = Color.Gray;
81        Camera.Follow(Pelaaja);
82    }
83
84    void AloitaKentta()
85    {
86
87    }
88    void LiikutaPelaajaa(Vector vektori, PhysicsObject pelaaja)
89    {
90        pelaaja.Push(vektori);
91    }
92    Object LuoMaali()
93    {
94
95        PhysicsObject Nappula = PhysicsObject.CreateStaticObject(50, 30);
96        Nappula.X = -250;
97        Nappula.Y = 330;
98        Nappula.Color = Color.Red;
99        PhysicsObject Maali = PhysicsObject.CreateStaticObject(400.0, 400.0);
100        Maali.Image = Sahko;
101        Maali.Shape = Shape.Rectangle;
102        Maali.X = Level.Right;
103        Maali.Y = Level.Bottom;
104        Add(Maali);
105        PhysicsObject Tynnyri = PhysicsObject.CreateStaticObject(100, 100);
106        Tynnyri.X = 240;
107        Tynnyri.Y = 75;
108        Tynnyri.Tag = "tynnyri";
109        Add(Tynnyri);
110        Tynnyri.Image = Barrel;
111
112        return Maali;
113        Nappula.Image = button;
114    }
115    void MuutaPainovoima()
116    {
117        Gravity = Gravity * (-1);
118        if (Level.Background.Image == Tausta2)
119        {
120            Level.Background.Image = Tausta;
121        }
122        else
123            Level.Background.Image = Tausta2;
124
125        ControllerOne.Vibrate(0.5, 0.5, 0.0, 0.0, 0.1);
126    }
127    Object LuoKatoava()
128    {
129        PhysicsObject Katoava = PhysicsObject.CreateStaticObject(100, 50);
130        Katoava.X = 240;
131        Katoava.Y = 0;
132        Katoava.Color = Color.Black;
133        Add(Katoava);
134        return Katoava;
135        Katoava.Shape = Shape.Rectangle;
136    }
137    void KasittelePallonTormays(PhysicsObject Pelaaja, PhysicsObject kohde)
138    {
139        if (kohde == Nappula)
140        {
141            MessageDisplay.Add("Bump!");
142
143        }
144
145        if (kohde.Tag.ToString() == "tynnyri")
146        {
147
148            kohde.Destroy();
149            MessageDisplay.Add("Tuhosit tynnyrin!");
150            maaliAani.Play();
151
152            PhysicsObject Pelaaja1 = new PhysicsObject(50, 50);
153            Pelaaja1.X = -400;
154            Pelaaja1.Y = -150;
155            Pelaaja.Destroy();
156            Add(Pelaaja1);
157            Pelaaja1.Image = Pallo;
158
159
160            ControllerOne.Listen(Button.DPadLeft, ButtonState.Down,
161LiikutaPelaajaa, null, new Vector(-300, 0), Pelaaja1);
162            ControllerOne.Listen(Button.DPadRight, ButtonState.Down,
163              LiikutaPelaajaa, null, new Vector(300, 0), Pelaaja1);
164
165            Keyboard.Listen(Key.A, ButtonState.Down,
166              LiikutaPelaajaa1, null, new Vector(-300, 0), Pelaaja1);
167            Keyboard.Listen(Key.D, ButtonState.Down,
168               LiikutaPelaajaa1, null, new Vector(300, 0), Pelaaja1);
169            PhoneBackButton.Listen(ConfirmExit, "Lopeta peli");
170            Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
171            Level.BackgroundColor = Color.Gray;
172            Camera.Follow(Pelaaja1);
173            Camera.ZoomFactor = 1.0;
174            AddCollisionHandler(Pelaaja1, KasittelePallonTormays2);
175            AddCollisionHandler(Pelaaja1, KasittelePallonTormays3);
176
177            Level2();
178            MessageDisplay.Add("Level2");
179
180
181        }
182
183    }
184    void LiikutaPelaajaa1(Vector vektori, PhysicsObject pelaaja)
185    {
186        pelaaja.Push(vektori);
187
188    }
189    void Level2()
190    {
191        Level.CreateBottomBorder();
192        PhysicsObject Lava = PhysicsObject.CreateStaticObject(800, 100);
193        Lava.X = -100;
194        Lava.Y = -300;
195        Add(Lava);
196        Lava.Image = Laava;
197        Lava.Tag = "Magma";
198
199        PhysicsObject Aloitus = PhysicsObject.CreateStaticObject(200, 50);
200        Add(Aloitus);
201        Aloitus.X = -400;
202        Aloitus.Y = -200;
203        Aloitus.Image = startti;
204
205
206        PhysicsObject Este = PhysicsObject.CreateStaticObject(50, 400);
207        Add(Este);
208        Este.X = -200;
209        Este.Y = -200;
210        Este.Image = BLOCK;
211        Este.Tag = "ESTE1";
212
213        PhysicsObject Este1 = PhysicsObject.CreateStaticObject(700, 50);
214        Add(Este1);
215        Este1.X = -150;
216        Este1.Y = 200;
217        Este1.Image = BLOCK;
218        Este1.Tag = "ESTE1";
219
220        PhysicsObject Tynnyri1 = PhysicsObject.CreateStaticObject(100, 100);
221        Tynnyri1.X = 240;
222        Tynnyri1.Y = 75;
223        Tynnyri1.Tag = "tynnyri1";
224        Add(Tynnyri1);
225        Tynnyri1.Image = Barrel;
226
227        PhysicsObject este2 = PhysicsObject.CreateStaticObject(50, 450);
228        este2.X = 200;
229        este2.Y = 140;
230        Add(este2);
231        este2.Image = BLOCK;
232
233
234
235
236    }
237
238    void KasittelePallonTormays2(PhysicsObject Pelaaja1, PhysicsObject kohde)
239    {
240        if (kohde.Tag.ToString() == "Magma")
241        {
242            Pelaaja1.X = -400;
243            Pelaaja1.Y = -100;
244            MessageDisplay.Add("Kuolit!");
245
246        }
247        else if (kohde.Tag.ToString() == "ESTE1")
248        {
249            Pelaaja1.X = -400;
250            Pelaaja1.Y = -100;
251            MessageDisplay.Add("Kuolit!");
252        }
253
254
255
256    }
257    void KasittelePallonTormays3(PhysicsObject Pelaaja1, PhysicsObject kohde)
258    {
259        if (kohde.Tag.ToString() == "tynnyri1")
260        {
261            kohde.Destroy();
262
263            MessageDisplay.Add("Tuhosit Tynnyrin!");
264            MessageDisplay.Add("Level3");
265
266            Level3();
267        }
268       
269    }
270    void Level3()
271    {
272        ClearGameObjects();
273
274        PhysicsObject Pelaaja3 = new PhysicsObject(50, 50);
275        Camera.Follow(Pelaaja3);
276        Add(Pelaaja3);
277        Pelaaja3.X = -400;
278        Pelaaja3.Y = -150;
279        Pelaaja3.Image = Pallo;
280        Camera.Follow(Pelaaja3);
281        Camera.Zoom(1.0);
282
283        Level.CreateBorders();
284
285        ControllerOne.Listen(Button.DPadLeft, ButtonState.Down,
286LiikutaPelaajaa, null, new Vector(-300, 0), Pelaaja3);
287        ControllerOne.Listen(Button.DPadRight, ButtonState.Down,
288          LiikutaPelaajaa, null, new Vector(300, 0), Pelaaja3);
289
290        Keyboard.Listen(Key.A, ButtonState.Down,
291          LiikutaPelaajaa1, null, new Vector(-300, 0), Pelaaja3);
292        Keyboard.Listen(Key.D, ButtonState.Down,
293           LiikutaPelaajaa1, null, new Vector(300, 0), Pelaaja3);
294
295        PhysicsObject Aloitus1 = PhysicsObject.CreateStaticObject(200, 50);
296        Add(Aloitus1);
297        Aloitus1.X = -400;
298        Aloitus1.Y = -200;
299        Aloitus1.Image = startti;
300
301        PhysicsObject este5 = PhysicsObject.CreateStaticObject(1000, 50);
302        Add(este5);
303        este5.X = -10;
304        este5.Y = 0;
305        este5.Image = BLOCK;
306        este5.Tag = "ESTE5";
307
308        PhysicsObject este3 = PhysicsObject.CreateStaticObject(40, 100);
309        Add(este3);
310        este3.X = -300;
311        este3.Y = -200;
312        este3.Image = BLOCK;
313        este3.Tag = "ESTE3";
314
315        PhysicsObject este4 = PhysicsObject.CreateStaticObject(900, 50);
316        Add(este4);
317        este4.Tag = "ESTE4";
318        este4.X = -30;
319        este4.Y = -250;
320        este4.Image = BLOCK;
321
322
323        PhysicsObject Tynnyri6 = PhysicsObject.CreateStaticObject(100, 100);
324        Tynnyri6.X = 400;
325        Tynnyri6.Y = -100;
326        Tynnyri6.Tag = "tynnyri6";
327        Add(Tynnyri6);
328        Tynnyri6.Image = Barrel;
329
330        AddCollisionHandler(Pelaaja3, KasittelePallonTormays4);
331
332
333
334    }
335    void KasittelePallonTormays4(PhysicsObject Pelaaja3, PhysicsObject kohde)
336    {
337        if (kohde.Tag.ToString() == "ESTE4")
338        {
339            Pelaaja3.X = -400;
340            Pelaaja3.Y = -150;
341            MessageDisplay.Add("Kuolit!");
342        }
343        if (kohde.Tag.ToString() == "tynnyri6")
344        {
345            kohde.Destroy();
346            MessageDisplay.Add("Tuhosit tynnyrin!");
347            MessageDisplay.Add("Level4");
348            ClearGameObjects();
349            Level4();
350        }
351        if (kohde.Tag.ToString() == "ESTE5")
352        {
353            Pelaaja3.X = -400;
354            Pelaaja3.Y = -150;
355            MessageDisplay.Add("Kuolit!");
356        }
357
358
359    }
360    void Level4()
361    {
362
363        Level.CreateBorders();
364        PhysicsObject Pelaaja4 = new PhysicsObject(30, 30);
365        Add(Pelaaja4);
366        Pelaaja4.X = -400;
367        Pelaaja.Y = -150;
368        Pelaaja4.Image = Pallo;
369        Camera.Follow(Pelaaja4);
370            Camera.ZoomFactor = 2.0;
371
372        ControllerOne.Listen(Button.DPadLeft, ButtonState.Down,
373LiikutaPelaajaa4, null, new Vector(-300, 0), Pelaaja4);
374        ControllerOne.Listen(Button.DPadRight, ButtonState.Down,
375          LiikutaPelaajaa4, null, new Vector(300, 0), Pelaaja4);
376
377        Keyboard.Listen(Key.A, ButtonState.Down,
378          LiikutaPelaajaa4, null, new Vector(-300, 0), Pelaaja4);
379        Keyboard.Listen(Key.D, ButtonState.Down,
380           LiikutaPelaajaa4, null, new Vector(300, 0), Pelaaja4);
381
382
383        PhysicsObject Aloitus1 = PhysicsObject.CreateStaticObject(200, 30);
384        Add(Aloitus1);
385        Aloitus1.X = -400;
386        Aloitus1.Y = -200;
387        Aloitus1.Image = startti;
388
389        PhysicsObject Lava2 = PhysicsObject.CreateStaticObject(800, 100);
390        Lava2.X = -100;
391        Lava2.Y = -250;
392        Add(Lava2);
393        Lava2.Image = Laava;
394        Lava2.Tag = "Magma2";
395
396        AddCollisionHandler(Pelaaja4, KasittelePallonTormays5);
397
398        PhysicsObject Este5 = PhysicsObject.CreateStaticObject(20, 525);
399        Add(Este5);
400        Este5.X = -300;
401        Este5.Y = 50;
402        Este5.Image = BLOCK;
403        Este5.Tag = "ESTE1";
404
405
406
407    }
408    void LiikutaPelaajaa4(Vector vektori, PhysicsObject Pelaaja4)
409    {
410        Pelaaja4.Push(vektori);
411
412    }
413    void KasittelePallonTormays5(PhysicsObject Pelaaja4, PhysicsObject kohde)
414    {
415        if (kohde.Tag.ToString() == "Magma2")
416        {
417            Pelaaja4.X = -400;
418            Pelaaja4.Y = -150;
419            MessageDisplay.Add("Kuolit!");
420
421        }
422
423    }
424}
425
426 
427 
428       
429 
430
431
432
Note: See TracBrowser for help on using the repository browser.