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

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