source: 2011/31/TommiL/pallopeli/pallopeli/pallopeli/Peli.cs @ 2539

Revision 2539, 2.4 KB checked in by tolinnav, 8 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 Peli : PhysicsGame
10{
11    PhysicsObject robotti;
12   
13    Image olionKuva = LoadImage("kuva");
14
15    public override void Begin()
16    {
17        robotti = new PhysicsObject(50, 50);
18        Add(robotti);
19        robotti.X = (-450);
20        robotti.Y = (400);
21        robotti.Color = Color.LightGray;
22        robotti.Image = olionKuva;
23        robotti.Tag = "robotti";
24
25        robotti.CanRotate = false;
26        robotti.LinearDamping = 0.95;
27
28        Keyboard.Listen(Key.Left, ButtonState.Down,
29    LiikutaPelaajaa, null, new Vector(-1000, 0));
30        Keyboard.Listen(Key.Right, ButtonState.Down,
31          LiikutaPelaajaa, null, new Vector(1000, 0));
32        Keyboard.Listen(Key.Up, ButtonState.Down,
33          LiikutaPelaajaa, null, new Vector(0, 1000));
34        Keyboard.Listen(Key.Down, ButtonState.Down,
35          LiikutaPelaajaa, null, new Vector(0, -1000));
36
37        Level.Background.CreateGradient(Color.DarkOrange
38      , Color.DarkRed);
39
40        Level.CreateBorders(1, true);
41        Camera.Zoom(1.2);
42
43        tehdapallot();
44       
45    }
46
47    void LiikutaPelaajaa(Vector vektori)
48    {
49        robotti.Push(vektori);
50    }
51
52    void tehdapallot()
53    {
54        int i = 0;
55        while (i < 10)
56        {
57            PhysicsObject pallo = new PhysicsObject(40.0, 40.0);
58            Add(pallo);
59            pallo.X = RandomGen.NextDouble ( -400,400);
60            pallo.Y = RandomGen.NextDouble ( -400,400);
61            pallo.Color = Color.Yellow;
62            pallo.Shape = Shape.Circle;
63            pallo.Restitution = 1.5;
64            pallo.Tag = "pallo";
65            i++;
66            pallo.Hit(new Vector(RandomGen.NextDouble(400, -400), RandomGen.NextDouble(-400, 400)));
67            AddCollisionHandler(pallo, KasittelePallonTormays);
68        }
69     }
70
71    void KasittelePallonTormays(PhysicsObject pallo, PhysicsObject kohde)
72    {
73        if (kohde.Tag.ToString() == "robotti")
74        {
75            Explosion rajahdys = new Explosion(100.100);
76            rajahdys.Position = robotti.Position;
77            Add(rajahdys);
78            rajahdys.Speed = 150.0;
79            rajahdys.Force = 30;
80
81
82        }     
83    }
84
85
86       
87
88}
89   
90
91
92
93   
94
Note: See TracBrowser for help on using the repository browser.