source: 2010/30/jumakall/The_Bus_Game_codetesting/Peli.cs @ 1382

Revision 1382, 3.1 KB checked in by jumakall, 11 years ago (diff)

Pallomasiina lisätty
The Bus Gamen pysäkkisysteemi aloitettu

Line 
1using System;
2using Jypeli;
3using Jypeli.Widgets;
4using Jypeli.Assets;
5
6public class Peli : PhysicsGame
7{
8    Image osotinkuva = LoadImage("reittivalitsin");
9
10    PhysicsObject osoitin;
11    PhysicsObject pallo;
12    double palloja;
13    double vaihda;
14
15    protected override void Begin()
16    {
17        osoitin = LuoOsoitin();
18        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Sulje");
19        pallo = LuoPallo();
20
21        Mouse.Listen(MouseButton.Left, ButtonState.Down, Pam, "Luo räjähdys");
22        Camera.ZoomToLevel();
23        Gravity = new Vector(0.0, -500.0);
24        PhysicsObject vasenReuna = Level.CreateLeftBorder();
25        vasenReuna.Restitution = 1.0;
26        vasenReuna.IsVisible = false;
27        PhysicsObject oikeaReuna = Level.CreateRightBorder();
28        oikeaReuna.Restitution = 1.0;
29        oikeaReuna.IsVisible = false;
30        PhysicsObject ylaReuna = Level.CreateTopBorder();
31        ylaReuna.Restitution = 1.0;
32        ylaReuna.IsVisible = false;
33        PhysicsObject alaReuna = Level.CreateBottomBorder();
34        alaReuna.Restitution = 1.0;
35        alaReuna.IsVisible = false;
36        palloja = 0;
37        vaihda = 0;
38    }
39
40    protected override void Update(Time time)
41    {
42        base.Update(time);
43
44        if (vaihda == 10)
45        {
46            Level.BackgroundColor = RandomGen.NextColor();
47            vaihda = 0;
48        }
49        vaihda++;
50        if (palloja <= 100)
51        {
52            LuoPallo();
53            palloja++;
54        }
55        if (osoitin != null)
56        {
57            osoitin.X = Mouse.PositionOnScreen.X;
58            osoitin.Y = Mouse.PositionOnScreen.Y;
59        }
60
61    }
62
63
64    PhysicsObject LuoOsoitin()
65    {
66        PhysicsObject osoitin = new PhysicsObject(25.0, 25.0);
67        osoitin.Shape = Shapes.Circle;
68        osoitin.Color = Color.White;
69        osoitin.X = Mouse.PositionOnScreen.X;
70        osoitin.Y = Mouse.PositionOnScreen.Y;
71        osoitin.Restitution = 1.0;
72        osoitin.Image = osotinkuva;
73
74        osoitin.IgnoresCollisionResponse = true;
75        osoitin.IgnoresGravity = true;
76        osoitin.IgnoresPhysicsLogics = true;
77        osoitin.IgnoresExplosions = true;
78
79        Add(osoitin);
80
81        return osoitin;
82    }
83
84    PhysicsObject LuoPallo()
85    {
86        PhysicsObject pallo = new PhysicsObject(20.00, 20.00);
87        pallo.Shape = Shapes.Circle;
88        pallo.Position = RandomGen.NextVector(Level.Right, Level.Bottom, Level.Left, Level.Top);
89        // RandomGen.NextDouble(Level.Right, Level.Left); RandomGen.NextDouble(Level.Top, Level.Bottom);
90        /*pallo.X = 0.0;
91        pallo.Y = 0.0;*/
92        pallo.Color = RandomGen.NextColor();
93
94        Add(pallo);
95
96        return pallo;
97    }
98
99    void Pam()
100    {
101        Explosion rajahdys = new Explosion(100.0);
102        rajahdys.Position = Mouse.PositionOnScreen;
103        Add(rajahdys);
104
105        //Lisäasetukset
106        //
107        //rajahdys.Speed = 500.0;
108        //rajahdys.Force = 10000;
109        //rajahdys.ShockwaveColor = Color.Yellow;
110    }
111}
Note: See TracBrowser for help on using the repository browser.