source: 2010/23/vajuanse/Get the money/Peli.cs @ 631

Revision 631, 4.3 KB checked in by vajuanse, 11 years ago (diff)

wee

Line 
1using System;
2using Jypeli;
3using Jypeli.ScreenObjects;
4using Jypeli.Assets;
5
6namespace Get_the_money
7{
8    public class Peli : TopDownPhysicsGame
9
10    {
11        Automobile auto;
12        PhysicsObject vasenseina;
13        PhysicsObject oikeaseina;
14        IntMeter pistelaskuri;
15        PhysicsObject raha;
16       
17
18        protected override void Begin()
19        {         
20            SetWindowSize(true);
21
22            pistelaskuri = new IntMeter(0);
23            ValueDisplay pistenaytto = new ValueDisplay();
24
25            pistenaytto.Text = "rahasi ";
26
27            pistenaytto.X = Screen.Left + 500;
28            pistenaytto.Y = Screen.Top - 100;
29
30            pistenaytto.ValueColor = Color.Black;
31            pistenaytto.TextColor = Color.DarkOrange;
32
33            pistenaytto.BindTo(pistelaskuri);
34
35            Add(pistenaytto);
36//tässä lisätään pistä näytö--------------------------------------------------------------------
37            luokentta();
38
39           
40
41            KineticFriction = 2.0; // Asetetaan kitka
42
43            auto = new Automobile(40, 30);
44            auto.Mass = 200.0;
45            Add(auto);
46            auto.X = 0;
47            auto.Y = -140;
48                 
49
50            Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet");
51            Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu pelistä");
52            Keyboard.Listen(Key.Up, ButtonState.Down, kiihdyta, "Kiihdytä", auto);
53            Keyboard.Listen(Key.Down, ButtonState.Down, jarruta, "Jarruta", auto);
54            Keyboard.Listen(Key.Left, ButtonState.Down, kaanny, "Käänny vasemmalle", auto, Angle.Degrees(1));
55            Keyboard.Listen(Key.Right, ButtonState.Down, kaanny, "Käänny oikealle", auto, Angle.Degrees(-1));
56
57            ShowControlHelp();
58        }
59
60        private void luokivi()
61        {
62            throw new NotImplementedException();
63        }
64
65        void kiihdyta(Automobile auto)
66        {
67            auto.Accelerate(Time.SinceLastUpdate.TotalSeconds);
68        }
69
70        void jarruta(Automobile auto)
71        {
72            auto.Brake(Time.SinceLastUpdate.TotalSeconds);
73        }
74
75        void kaanny(Automobile auto, Angle kaannos)
76        {
77            auto.Turn(kaannos, Time.SinceLastUpdate.TotalSeconds);
78        }
79        void luokentta()
80        {
81            ajastin.Start();
82
83            PhysicsObject rahat = new PhysicsObject(20, 20);
84
85            Camera.ZoomToLevel();
86
87            vasenseina = Level.CreateLeftBorder();
88            vasenseina.Restitution = 1.0;
89            vasenseina.IsVisible = false;
90            oikeaseina = Level.CreateRightBorder();
91            oikeaseina.Restitution = 1.0;
92            oikeaseina.IsVisible = false;
93            PhysicsObject alaseina = Level.CreateBottomBorder();
94            alaseina.Restitution = 1.0;
95            alaseina.IsVisible = true;
96            PhysicsObject yläseinä = Level.CreateTopBorder();
97            yläseinä.Restitution = 1.0;
98            yläseinä.IsVisible = false;
99
100            kivi();
101        }
102        void kivi()
103        {
104            PhysicsObject kivi = new PhysicsObject(23, 23);
105            kivi.Shape = Shapes.Circle;
106            kivi.X = -300;
107            kivi.Y = RandomGen.NextDouble(Level.Bottom, Level.Top);
108            kivi.Restitution = 1.0;
109            AddCollisionHandler( kivi, kassitelekiventormays );
110
111            Add(kivi);
112            Vector impulssi = new Vector(500.0, 0.0);
113            kivi.Hit(impulssi);
114           
115        }
116        void kassitelekiventormays(PhysicsObject kivi, PhysicsObject kohde)
117        {
118            if (kohde == oikeaseina)
119            {
120                kivi.Destroy();
121            }
122            else if (kohde == auto)
123            {
124                MessageDisplay.Add("Hävisit pelin haahaa!");
125            }       
126        }
127
128        void luoraha()
129        {
130            raha = new PhysicsObject(20, 20);
131            raha.Shape = Shapes.Circle;
132            raha.Mass = 10.0;
133            Add(raha);
134            return;
135
136        }
137
138        void lisaakivia(Timer sender)
139    {
140        Timer ajastin = new Timer();
141        ajastin.Interval = 10;
142        ajastin.Trigger += lisaakivia;
143        Add(ajastin);
144    }
145       
146    }
147}
Note: See TracBrowser for help on using the repository browser.