source: 2013/26/RoopeK/Hypopolis/Hypopolis/Hypopolis/Hypopolis.cs @ 4256

Revision 4256, 8.7 KB checked in by roarolky, 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 Hypopolis : PhysicsGame
10{
11    Image pelihahmo = LoadImage("Pelihahmo2");
12
13    Image taustakuva = LoadImage("Taustakuva");
14    Image taustakuvareuna = LoadImage("TaustakuvaReuna");
15    Image mustaruutu = LoadImage("Mustakuva");
16    Image rakennus1 = LoadImage("Rakennus1");
17    Image rakennus2 = LoadImage("Rakennus2");
18
19    PlatformCharacter2 pelaaja;
20
21    public override void Begin()
22    {
23
24        // Aloitus
25        Laskuri(LuoSatunnainenRakennusVasemmalta1);
26        Laskuri(LuoSatunnainenRakennusVasemmalta2);
27        Laskuri(LuoSatunnainenRakennusVasemmalta3);
28        Laskuri(LuoSatunnainenRakennusVasemmalta4);
29        Laskuri(LuoSatunnainenRakennusAlhaalta1);
30        Laskuri(LuoSatunnainenRakennusAlhaalta2);
31        Laskuri(LuoSatunnainenRakennusAlhaalta3);
32        Laskuri(LuoSatunnainenRakennusAlhaalta4);
33        Laskuri(LuoSatunnainenRakennusAlhaalta5);
34
35        Taso();
36        Pelaaja();
37        Ohjaimet();
38
39        // Musiikki
40        MediaPlayer.Play("HypopolisTheme");
41
42    }
43
44    void Laskuri(Action tapahtuma)
45    {
46        Timer ajastin = new Timer();
47        ajastin.Interval =RandomGen.NextDouble(3, 9);
48        ajastin.Timeout += tapahtuma;
49//        ajastin.Timeout += LuoSatunnainenRakennusVasemmalta1;
50//        ajastin.Timeout += LuoSatunnainenRakennusVasemmalta2;
51//        ajastin.Timeout += LuoSatunnainenRakennusVasemmalta3;
52        ajastin.Start();
53
54
55    }
56
57    void Kavele(PlatformCharacter2 pelaaja, Direction liike)
58    {
59
60        pelaaja.Walk(liike);
61
62    }
63
64    void Hyppy(PlatformCharacter2 pelaaja)
65    {
66
67        pelaaja.Jump(2000);
68
69    }
70
71    void Pelaaja()
72    {
73
74        pelaaja = new PlatformCharacter2(75, 75);
75        pelaaja.Shape = Shape.Rectangle;
76        pelaaja.Color = Color.Black;
77        pelaaja.X = 0;
78        pelaaja.Y = Level.Bottom + 100.0;
79        pelaaja.LinearDamping = 0.95;
80        pelaaja.Restitution = 0.0;
81        pelaaja.Image = pelihahmo;
82        Gravity = new Vector(0, -1500);
83        Add(pelaaja);
84
85    }
86
87    void Ohjaimet()
88    {
89
90        // Liike
91        Keyboard.Listen(Key.Left, ButtonState.Down, Kavele, "Vasen", pelaaja, Direction.Left);
92        Keyboard.Listen(Key.Right, ButtonState.Down, Kavele, "Oikea", pelaaja, Direction.Right);
93        Keyboard.Listen(Key.Up, ButtonState.Down, Hyppy, "Ylös", pelaaja);
94
95        // Poistuminen
96        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli");
97        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Lopeta peli");
98
99    }
100
101    void Taso()
102    {
103
104        Surface vasenReuna = new Surface(500, 1200);
105        vasenReuna.Restitution = 1.0;
106        vasenReuna.X = -820;
107        vasenReuna.IsVisible = false;
108        vasenReuna.Color = Color.White;
109        Add(vasenReuna);
110
111        Surface oikeaReuna = new Surface(500, 1200);
112        oikeaReuna.Restitution = 1.0;
113        oikeaReuna.IsVisible = true;
114        oikeaReuna.X = 825;
115        oikeaReuna.Y = -1;
116        oikeaReuna.Color = Color.White;
117        oikeaReuna.Image = taustakuvareuna;
118        Add(oikeaReuna, 2);
119
120        Surface yläReuna = new Surface(1400, 100);
121        yläReuna.Restitution = 1.0;
122        yläReuna.Y = 550;
123        yläReuna.IsVisible = false;
124        yläReuna.Color = Color.White;
125        Add(yläReuna);
126
127        Surface alaReuna = new Surface(1400, 100);
128        alaReuna.Restitution = 1.0;
129        alaReuna.X = 0;
130        alaReuna.Y = -515;
131        alaReuna.IsVisible = false;
132        alaReuna.Color = Color.White;
133        Add(alaReuna);
134
135        Level.Background.Image = taustakuva;
136        //Level.BackgroundColor = Color.Black;
137
138    }
139
140    private void LuoSatunnainenRakennusVasemmalta1()
141    {
142
143        double x = RandomGen.NextDouble(-1800, -1800);
144        double y = RandomGen.NextDouble(365, 365);
145        double r = RandomGen.NextDouble(500, 900);
146        double r2 = RandomGen.NextDouble(100, 100);
147        Color vari = RandomGen.NextColor();
148        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari);
149
150    }
151
152    private void LuoSatunnainenRakennusVasemmalta2()
153    {
154
155        double x = RandomGen.NextDouble(-1800, -1800);
156        double y = RandomGen.NextDouble(130, 130);
157        double r = RandomGen.NextDouble(500, 900);
158        double r2 = RandomGen.NextDouble(100, 100);
159        Color vari = RandomGen.NextColor();
160        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari);
161
162    }
163
164    private void LuoSatunnainenRakennusVasemmalta3()
165    {
166
167        double x = RandomGen.NextDouble(-1800, -1800);
168        double y = RandomGen.NextDouble(-100, -100);
169        double r = RandomGen.NextDouble(500, 900);
170        double r2 = RandomGen.NextDouble(100, 100);
171        Color vari = RandomGen.NextColor();
172        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari);
173
174    }
175
176    private void LuoSatunnainenRakennusVasemmalta4()
177    {
178
179        double x = RandomGen.NextDouble(-1800, -1800);
180        double y = RandomGen.NextDouble(-330, -320);
181        double r = RandomGen.NextDouble(500, 900);
182        double r2 = RandomGen.NextDouble(100, 100);
183        Color vari = RandomGen.NextColor();
184        LuoMuoto(Shape.Rectangle, x, y, r, r2, vari);
185
186    }
187
188    private void LuoSatunnainenRakennusAlhaalta1()
189    {
190
191        double x = RandomGen.NextDouble(-180, -180);
192        double y = RandomGen.NextDouble(-1800, -1800);
193        double r = RandomGen.NextDouble(100, 100);
194        double r2 = RandomGen.NextDouble(500, 900);
195        Color vari = RandomGen.NextColor();
196        LuoMuoto2(Shape.Rectangle, x, y, r, r2, vari);
197
198    }
199
200    private void LuoSatunnainenRakennusAlhaalta2()
201    {
202
203        double x = RandomGen.NextDouble(-410, -410);
204        double y = RandomGen.NextDouble(-1800, -1800);
205        double r = RandomGen.NextDouble(100, 100);
206        double r2 = RandomGen.NextDouble(500, 900);
207        Color vari = RandomGen.NextColor();
208        LuoMuoto2(Shape.Rectangle, x, y, r, r2, vari);
209
210    }
211
212    private void LuoSatunnainenRakennusAlhaalta3()
213    {
214
215        double x = RandomGen.NextDouble(50, 50);
216        double y = RandomGen.NextDouble(-1800, -1800);
217        double r = RandomGen.NextDouble(100, 100);
218        double r2 = RandomGen.NextDouble(500, 900);
219        Color vari = RandomGen.NextColor();
220        LuoMuoto2(Shape.Rectangle, x, y, r, r2, vari);
221
222    }
223
224    private void LuoSatunnainenRakennusAlhaalta4()
225    {
226
227        double x = RandomGen.NextDouble(275, 275);
228        double y = RandomGen.NextDouble(-1800, -1800);
229        double r = RandomGen.NextDouble(100, 100);
230        double r2 = RandomGen.NextDouble(500, 900);
231        Color vari = RandomGen.NextColor();
232        LuoMuoto2(Shape.Rectangle, x, y, r, r2, vari);
233
234    }
235
236    private void LuoSatunnainenRakennusAlhaalta5()
237    {
238
239        double x = RandomGen.NextDouble(475, 475);
240        double y = RandomGen.NextDouble(-1800, -1800);
241        double r = RandomGen.NextDouble(100, 100);
242        double r2 = RandomGen.NextDouble(500, 900);
243        Color vari = RandomGen.NextColor();
244        LuoMuoto2(Shape.Rectangle, x, y, r, r2, vari);
245
246    }
247
248
249    void LuoMuoto(Shape muoto, double x, double y, double sade, double sade2, Color vari)
250    {
251
252        PhysicsObject olio = new PhysicsObject(sade, sade2);
253        olio.Shape = muoto;
254        olio.Color = Color.OrangeRed;
255        olio.Y = y;
256        olio.X = x;
257        olio.Move(new Vector(150, 0));
258        olio.MakeStatic();
259        olio.Image = rakennus2;
260        Add(olio);
261
262    }
263
264    void LuoMuoto2(Shape muoto, double x, double y, double sade, double sade2, Color vari)
265    {
266
267        PhysicsObject olio2 = new PhysicsObject(sade, sade2);
268        olio2.Shape = muoto;
269        olio2.Color = Color.OrangeRed;
270        olio2.Y = y;
271        olio2.X = x;
272        olio2.Move(new Vector(0, 150));
273        olio2.MakeStatic();
274        olio2.Image = rakennus1;
275        Add(olio2);
276
277    }
278
279    void MustaRuutu()
280    {
281
282        Label tekstikentta = new Label(2500, 2500, "Aloitus");
283        tekstikentta.X = 0;
284        tekstikentta.Y = 0;
285        tekstikentta.TextColor = Color.White;
286        tekstikentta.Text = "Club Afterlife Presents_";
287        Add(tekstikentta);
288        Timer ajastin = new Timer();
289        ajastin.Interval = 5;
290        ajastin.Timeout += Aloitus;
291        ajastin.Start(1);
292       
293    }
294
295    void Aloitus()
296    {
297
298        MessageDisplay.Clear();
299        Timer ajastin = new Timer();
300        ajastin.Interval = 2;
301        ajastin.Timeout += Aloitus1;
302        ajastin.Start(1);
303
304    }
305
306    void Aloitus1()
307    {
308        // ...
309    }
310}
Note: See TracBrowser for help on using the repository browser.