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

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