1 | using System; |
---|
2 | using Jypeli; |
---|
3 | using Jypeli.ScreenObjects; |
---|
4 | using Jypeli.Assets; |
---|
5 | |
---|
6 | namespace Tortoise_Racing |
---|
7 | { |
---|
8 | public class Peli : TopDownPhysicsGame |
---|
9 | { |
---|
10 | Automobile auto; |
---|
11 | //viivatKentta01 |
---|
12 | PhysicsObject viiva; |
---|
13 | PhysicsObject viiva2; |
---|
14 | //viivatKentta02 |
---|
15 | PhysicsObject viiva3; |
---|
16 | PhysicsObject viiva4; |
---|
17 | PhysicsObject viiva5; |
---|
18 | PhysicsObject viiva6; |
---|
19 | PhysicsObject viiva7; |
---|
20 | PhysicsObject viiva8; |
---|
21 | //viivatKentta03 |
---|
22 | PhysicsObject viiva9; |
---|
23 | PhysicsObject viiva10; |
---|
24 | PhysicsObject viiva11; |
---|
25 | PhysicsObject viiva12; |
---|
26 | PhysicsObject viiva13; |
---|
27 | //viivatKentta04 |
---|
28 | PhysicsObject viiva14; |
---|
29 | PhysicsObject viiva15; |
---|
30 | PhysicsObject viiva16; |
---|
31 | PhysicsObject viiva17; |
---|
32 | PhysicsObject viiva18; |
---|
33 | PhysicsObject viiva19; |
---|
34 | //viivatKentta05 |
---|
35 | PhysicsObject viiva20; |
---|
36 | PhysicsObject viiva21; |
---|
37 | PhysicsObject viiva22; |
---|
38 | PhysicsObject viiva23; |
---|
39 | //viivatKentta06 |
---|
40 | PhysicsObject viiva24; |
---|
41 | PhysicsObject viiva25; |
---|
42 | PhysicsObject viiva26; |
---|
43 | PhysicsObject viiva27; |
---|
44 | //viivatKentta07 |
---|
45 | PhysicsObject viiva28; |
---|
46 | PhysicsObject viiva29; |
---|
47 | //viivatKentta08 |
---|
48 | PhysicsObject viiva30; |
---|
49 | PhysicsObject viiva31; |
---|
50 | PhysicsObject viiva32; |
---|
51 | PhysicsObject viiva33; |
---|
52 | //viivatKentta09 |
---|
53 | PhysicsObject viiva34; |
---|
54 | PhysicsObject viiva35; |
---|
55 | PhysicsObject viiva36; |
---|
56 | PhysicsObject viiva37; |
---|
57 | PhysicsObject viiva38; |
---|
58 | PhysicsObject viiva39; |
---|
59 | PhysicsObject viiva40; |
---|
60 | //viivatHidden |
---|
61 | PhysicsObject viiva41; |
---|
62 | PhysicsObject viiva42; |
---|
63 | PhysicsObject viiva43; |
---|
64 | |
---|
65 | //oikeitaObjekteja |
---|
66 | PhysicsObject reunaOikea; |
---|
67 | PhysicsObject reunaAlas; |
---|
68 | PhysicsObject reunaVasen; |
---|
69 | PhysicsObject reunaYla; |
---|
70 | PhysicsObject checkpoint; |
---|
71 | PhysicsObject valipoint; |
---|
72 | TimeSpan alkuaika; |
---|
73 | TimeSpan kierrosAika; |
---|
74 | double asd = 0; |
---|
75 | double kentta = 1; |
---|
76 | |
---|
77 | protected override void Begin() |
---|
78 | { |
---|
79 | TeeMenu(); |
---|
80 | LisaaNappaimet(); |
---|
81 | |
---|
82 | } |
---|
83 | |
---|
84 | |
---|
85 | |
---|
86 | void TeeMenu() |
---|
87 | { |
---|
88 | PhysicsObject menu = PhysicsObject.CreateStaticObject(1200, 1000); |
---|
89 | menu.IgnoresCollisionResponse = true; |
---|
90 | menu.IsVisible = true; |
---|
91 | menu.Image = LoadImage("menu"); |
---|
92 | AddSurface(menu); |
---|
93 | MediaPlayer.Play("queen"); |
---|
94 | } |
---|
95 | |
---|
96 | void LuoAuto() |
---|
97 | { |
---|
98 | auto = new Automobile(57.5, 40); |
---|
99 | auto.Mass = 100.0; |
---|
100 | auto.Acceleration = 550; |
---|
101 | auto.KineticFriction = 1; |
---|
102 | auto.X = 0; |
---|
103 | auto.Y = 300; |
---|
104 | auto.Color = new Color(192, 192, 255); |
---|
105 | auto.Maneuverability = Angle.Radians(Math.PI); |
---|
106 | auto.IsVisible = true; |
---|
107 | Add(auto); |
---|
108 | auto.TopSpeed = 0.03; |
---|
109 | auto.Image = LoadImage("tortoise1"); |
---|
110 | AddCollisionHandler(auto, TortoiseTormasiViiva); |
---|
111 | |
---|
112 | |
---|
113 | } |
---|
114 | |
---|
115 | void TortoiseTormasiViiva(PhysicsObject auto, PhysicsObject kohde) |
---|
116 | { |
---|
117 | // Törmää seinään |
---|
118 | if ((kohde == viiva) || (kohde == viiva2) || (kohde == viiva3) || (kohde == viiva4) || (kohde == viiva5) || (kohde == viiva6) || (kohde == viiva7) || (kohde == viiva8) || (kohde == viiva9) || (kohde == viiva10) || (kohde == viiva11) || (kohde == viiva12) || (kohde == viiva13) || (kohde == viiva14) || (kohde == viiva15) || (kohde == viiva16) || (kohde == viiva17) || (kohde == viiva18) || (kohde == viiva19) || (kohde == viiva20) || (kohde == viiva21) || (kohde == viiva22) || (kohde == viiva23) || (kohde == viiva24) || (kohde == viiva25) || (kohde == viiva26) || (kohde == viiva27) || (kohde == viiva28) || (kohde == viiva29) || (kohde == viiva30) || (kohde == viiva31) || (kohde == viiva32) || (kohde == viiva33) || (kohde == viiva34) || (kohde == viiva35) || (kohde == viiva36) || (kohde == viiva37) || (kohde == viiva38) || (kohde == viiva39) || (kohde == viiva40) || (kohde == viiva43) || (kohde == viiva42) || (kohde == viiva41) || (kohde == reunaOikea) || (kohde == reunaVasen) || (kohde == reunaAlas) || (kohde == reunaYla)) |
---|
119 | { |
---|
120 | //Vector temp = auto.Velocity; |
---|
121 | //auto.Stop(); |
---|
122 | auto.Velocity = -auto.Velocity; |
---|
123 | } |
---|
124 | |
---|
125 | if ((kohde == valipoint)) |
---|
126 | { |
---|
127 | asd = 1; |
---|
128 | } |
---|
129 | |
---|
130 | if((kohde == checkpoint)) |
---|
131 | { |
---|
132 | if ((asd == 1)) |
---|
133 | { |
---|
134 | TimeSpan aikaNyt = Time.SinceStartOfGame; |
---|
135 | kierrosAika = aikaNyt - alkuaika; |
---|
136 | alkuaika = aikaNyt; |
---|
137 | MessageDisplay.TextColor = Color.Red; |
---|
138 | MessageDisplay.Add("Kierrosaika: " + kierrosAika.TotalSeconds.ToString("F2")); |
---|
139 | asd = 0; |
---|
140 | } |
---|
141 | } |
---|
142 | |
---|
143 | } |
---|
144 | |
---|
145 | |
---|
146 | void NappaimetAutossa() |
---|
147 | { |
---|
148 | Keyboard.Listen(Key.NumPad1, ButtonState.Pressed, LisaaReunatKentta1, "Kentta 1"); |
---|
149 | Keyboard.Listen(Key.NumPad2, ButtonState.Pressed, LisaaReunatKentta2, "Kentta 2"); |
---|
150 | Keyboard.Listen(Key.NumPad3, ButtonState.Pressed, LisaaReunatKentta3, "Kentta 3"); |
---|
151 | Keyboard.Listen(Key.NumPad4, ButtonState.Pressed, LisaaReunatKentta4, "Kentta 4"); |
---|
152 | Keyboard.Listen(Key.NumPad5, ButtonState.Pressed, LisaaReunatKentta5, "Kentta 5"); |
---|
153 | Keyboard.Listen(Key.NumPad6, ButtonState.Pressed, LisaaReunatKentta6, "Kentta 6"); |
---|
154 | Keyboard.Listen(Key.NumPad7, ButtonState.Pressed, LisaaReunatKentta7, "Kentta 7"); |
---|
155 | Keyboard.Listen(Key.NumPad8, ButtonState.Pressed, LisaaReunatKentta8, "Kentta 8"); |
---|
156 | Keyboard.Listen(Key.NumPad9, ButtonState.Pressed, LisaaReunatKentta9, "Kentta 9"); |
---|
157 | Keyboard.Listen(Key.NumPad0, ButtonState.Pressed, LisaaReunatKentta0, "Kentta 0"); |
---|
158 | |
---|
159 | Keyboard.Listen(Key.Up, ButtonState.Down, kiihdyta, "Kiihdytä", auto); |
---|
160 | Keyboard.Listen(Key.Down, ButtonState.Down, jarruta, "Jarruta", auto); |
---|
161 | Keyboard.Listen(Key.Left, ButtonState.Down, kaanny, "Käänny vasemmalle", auto, Angle.Degrees(-160)); |
---|
162 | Keyboard.Listen(Key.Right, ButtonState.Down, kaanny, "Käänny oikealle", auto, Angle.Degrees(160)); |
---|
163 | Keyboard.Listen(Key.O, ButtonState.Pressed, highscorepelista, "HighestScoresByDaniMään"); |
---|
164 | Keyboard.Listen(Key.M, ButtonState.Pressed, Begin, "Valikkoon"); |
---|
165 | |
---|
166 | ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, kaanny, "Käänny vasemmalle", auto, Angle.Degrees(-160)); |
---|
167 | ControllerOne.Listen(Button.DPadRight, ButtonState.Down, kaanny, "Käänny oikealle", auto, Angle.Degrees(160)); |
---|
168 | ControllerOne.Listen(Button.RightTrigger, ButtonState.Down, kiihdyta, "Kiihdytä", auto); |
---|
169 | ControllerOne.Listen(Button.LeftTrigger, ButtonState.Down, jarruta, "Jarruta", auto); |
---|
170 | |
---|
171 | |
---|
172 | |
---|
173 | |
---|
174 | Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu pelistä"); |
---|
175 | |
---|
176 | |
---|
177 | |
---|
178 | } |
---|
179 | |
---|
180 | void highscorepelista() |
---|
181 | { |
---|
182 | HighScoreList lista = HighScoreList.LoadOrCreate("highscore01.dat", 20); |
---|
183 | lista.ReverseOrder = true; |
---|
184 | MessageDisplay.Add(((int)(kierrosAika.TotalMilliseconds)).ToString()); |
---|
185 | |
---|
186 | // TODO: Show-metodi ei anna nimen syöttö dialog boksia ??? |
---|
187 | |
---|
188 | lista.Show((int)(kierrosAika.TotalMilliseconds)); |
---|
189 | lista.ScreenList.ItemColor = Color.Red; |
---|
190 | lista.ScreenList.BackGroundColor = Color.Black; |
---|
191 | |
---|
192 | |
---|
193 | } |
---|
194 | |
---|
195 | void LisaaNappaimet() |
---|
196 | { |
---|
197 | Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu pelistä"); |
---|
198 | Keyboard.Listen(Key.NumPad1, ButtonState.Pressed, LisaaReunatKentta1, "Kentta 1"); |
---|
199 | Keyboard.Listen(Key.NumPad2, ButtonState.Pressed, LisaaReunatKentta2, "Kentta 2"); |
---|
200 | Keyboard.Listen(Key.NumPad3, ButtonState.Pressed, LisaaReunatKentta3, "Kentta 3"); |
---|
201 | Keyboard.Listen(Key.NumPad4, ButtonState.Pressed, LisaaReunatKentta4, "Kentta 4"); |
---|
202 | Keyboard.Listen(Key.NumPad5, ButtonState.Pressed, LisaaReunatKentta5, "Kentta 5"); |
---|
203 | Keyboard.Listen(Key.NumPad6, ButtonState.Pressed, LisaaReunatKentta6, "Kentta 6"); |
---|
204 | Keyboard.Listen(Key.NumPad7, ButtonState.Pressed, LisaaReunatKentta7, "Kentta 7"); |
---|
205 | Keyboard.Listen(Key.NumPad8, ButtonState.Pressed, LisaaReunatKentta8, "Kentta 8"); |
---|
206 | Keyboard.Listen(Key.NumPad9, ButtonState.Pressed, LisaaReunatKentta9, "Kentta 9"); |
---|
207 | Keyboard.Listen(Key.NumPad0, ButtonState.Pressed, LisaaReunatKentta0, "Kentta 0"); |
---|
208 | |
---|
209 | } |
---|
210 | |
---|
211 | void LisaaReunat() |
---|
212 | { |
---|
213 | if (kentta == 1) |
---|
214 | { |
---|
215 | LisaaReunatKentta1(); |
---|
216 | } |
---|
217 | else if (kentta == 2) |
---|
218 | { |
---|
219 | LisaaReunatKentta2(); |
---|
220 | } |
---|
221 | else if (kentta == 3) |
---|
222 | { |
---|
223 | LisaaReunatKentta3(); |
---|
224 | } |
---|
225 | else if (kentta == 4) |
---|
226 | { |
---|
227 | LisaaReunatKentta4(); |
---|
228 | } |
---|
229 | |
---|
230 | } |
---|
231 | |
---|
232 | |
---|
233 | void LisaaReunatKentta1() |
---|
234 | { |
---|
235 | |
---|
236 | ClearAll(); |
---|
237 | |
---|
238 | PhysicsObject taso = PhysicsObject.CreateStaticObject(1200, 1000); |
---|
239 | taso.Image = LoadImage("rata_oval01"); |
---|
240 | taso.IsVisible = true; |
---|
241 | AddSurface(taso); |
---|
242 | |
---|
243 | checkpoint = PhysicsObject.CreateStaticObject(2, 275); |
---|
244 | checkpoint.IsVisible = true; |
---|
245 | checkpoint.IgnoresCollisionResponse = true; |
---|
246 | checkpoint.X = 0; |
---|
247 | checkpoint.Y = 350; |
---|
248 | Add(checkpoint); |
---|
249 | |
---|
250 | valipoint = PhysicsObject.CreateStaticObject(2, 275); |
---|
251 | valipoint.IsVisible = false; |
---|
252 | valipoint.IgnoresCollisionResponse = true; |
---|
253 | valipoint.X = -20; |
---|
254 | valipoint.Y = -350; |
---|
255 | Add(valipoint); |
---|
256 | |
---|
257 | viiva = PhysicsObject.CreateStaticObject(10, 730); |
---|
258 | viiva.IsVisible = true; |
---|
259 | viiva.Angle = Angle.Degrees(60); |
---|
260 | |
---|
261 | viiva2 = PhysicsObject.CreateStaticObject(10, 730); |
---|
262 | viiva2.IsVisible = true; |
---|
263 | viiva2.Angle = Angle.Degrees(-60); |
---|
264 | |
---|
265 | //KineticFriction = 0.1; // Asetetaan kitka |
---|
266 | Gravity = 300; |
---|
267 | |
---|
268 | viiva.X = 0; |
---|
269 | viiva.Y = 0; |
---|
270 | viiva2.X = 0; |
---|
271 | viiva2.Y = 0; |
---|
272 | |
---|
273 | viiva.Color = Color.Black; |
---|
274 | viiva2.Color = Color.Black; |
---|
275 | |
---|
276 | AddSurface(viiva); |
---|
277 | AddSurface(viiva2); |
---|
278 | |
---|
279 | reunaOikea = PhysicsObject.CreateStaticObject(25, 1400); |
---|
280 | reunaOikea.IsVisible = true; |
---|
281 | reunaOikea.X = 700; |
---|
282 | reunaOikea.Y = 0; |
---|
283 | Add(reunaOikea); |
---|
284 | |
---|
285 | reunaVasen = PhysicsObject.CreateStaticObject(25, 1400 ); |
---|
286 | reunaVasen.IsVisible = true; |
---|
287 | reunaVasen.X = -700; |
---|
288 | reunaVasen.Y = 0; |
---|
289 | Add(reunaVasen); |
---|
290 | |
---|
291 | reunaYla = PhysicsObject.CreateStaticObject(1400, 25); |
---|
292 | reunaYla.IsVisible = true; |
---|
293 | reunaYla.X = 0; |
---|
294 | reunaYla.Y = 600; |
---|
295 | Add(reunaYla); |
---|
296 | |
---|
297 | reunaAlas = PhysicsObject.CreateStaticObject(1400, 25); |
---|
298 | reunaAlas.IsVisible = true; |
---|
299 | reunaAlas.X = 0; |
---|
300 | reunaAlas.Y = -600; |
---|
301 | Add(reunaAlas); |
---|
302 | |
---|
303 | |
---|
304 | LuoAuto(); |
---|
305 | NappaimetAutossa(); |
---|
306 | } |
---|
307 | |
---|
308 | |
---|
309 | void LisaaReunatKentta2() |
---|
310 | { |
---|
311 | ClearAll(); |
---|
312 | |
---|
313 | PhysicsObject taso = PhysicsObject.CreateStaticObject(1200, 1000); |
---|
314 | taso.Image = LoadImage("rata_super02"); |
---|
315 | taso.IsVisible = true; |
---|
316 | AddSurface(taso); |
---|
317 | |
---|
318 | checkpoint = PhysicsObject.CreateStaticObject(2, 375); |
---|
319 | checkpoint.IsVisible = true; |
---|
320 | checkpoint.IgnoresCollisionResponse = true; |
---|
321 | checkpoint.X = 0; |
---|
322 | checkpoint.Y = 350; |
---|
323 | Add(checkpoint); |
---|
324 | |
---|
325 | valipoint = PhysicsObject.CreateStaticObject(2, 700); |
---|
326 | valipoint.IsVisible = false; |
---|
327 | valipoint.IgnoresCollisionResponse = true; |
---|
328 | valipoint.X = -20; |
---|
329 | valipoint.Y = -300; |
---|
330 | Add(valipoint); |
---|
331 | |
---|
332 | viiva3 = PhysicsObject.CreateStaticObject(657, 10); |
---|
333 | viiva3.IsVisible = true; |
---|
334 | viiva3.Angle = Angle.Degrees(0); |
---|
335 | |
---|
336 | viiva4 = PhysicsObject.CreateStaticObject(10, 520); |
---|
337 | viiva4.IsVisible = true; |
---|
338 | viiva4.Angle = Angle.Degrees(0); |
---|
339 | |
---|
340 | viiva5 = PhysicsObject.CreateStaticObject(35, 10); |
---|
341 | viiva5.IsVisible = true; |
---|
342 | viiva5.Angle = Angle.Degrees(0); |
---|
343 | |
---|
344 | viiva6 = PhysicsObject.CreateStaticObject(10, 150); |
---|
345 | viiva6.IsVisible = true; |
---|
346 | viiva6.Angle = Angle.Degrees(0); |
---|
347 | |
---|
348 | viiva7 = PhysicsObject.CreateStaticObject(10, 100); |
---|
349 | viiva7.IsVisible = true; |
---|
350 | viiva7.Angle = Angle.Degrees(0); |
---|
351 | |
---|
352 | viiva8 = PhysicsObject.CreateStaticObject(10, 500); |
---|
353 | viiva8.IsVisible = true; |
---|
354 | viiva8.Angle = Angle.Degrees(-9); |
---|
355 | |
---|
356 | //KineticFriction = 0.1; // Asetetaan kitka |
---|
357 | Gravity = 300; |
---|
358 | |
---|
359 | viiva3.X = -40; |
---|
360 | viiva3.Y = 50; |
---|
361 | viiva4.X = -370; |
---|
362 | viiva4.Y = 0; |
---|
363 | viiva5.X = 570; |
---|
364 | viiva5.Y = 50; |
---|
365 | viiva6.X = -40; |
---|
366 | viiva6.Y = -370; |
---|
367 | viiva7.X = -60; |
---|
368 | viiva7.Y = 437; |
---|
369 | viiva8.X = 280; |
---|
370 | viiva8.Y = 0; |
---|
371 | |
---|
372 | viiva3.Color = Color.Black; |
---|
373 | viiva4.Color = Color.Black ; |
---|
374 | viiva5.Color = Color.Black ; |
---|
375 | viiva6.Color = Color.Black ; |
---|
376 | viiva7.Color = Color.Black ; |
---|
377 | viiva8.Color = Color.Black; |
---|
378 | |
---|
379 | AddSurface(viiva3); |
---|
380 | AddSurface(viiva4); |
---|
381 | AddSurface(viiva5); |
---|
382 | AddSurface(viiva6); |
---|
383 | AddSurface(viiva7); |
---|
384 | AddSurface(viiva8); |
---|
385 | |
---|
386 | reunaOikea = PhysicsObject.CreateStaticObject(25, 1400); |
---|
387 | reunaOikea.IsVisible = true; |
---|
388 | reunaOikea.X = 700; |
---|
389 | reunaOikea.Y = 0; |
---|
390 | Add(reunaOikea); |
---|
391 | |
---|
392 | reunaVasen = PhysicsObject.CreateStaticObject(25, 1400); |
---|
393 | reunaVasen.IsVisible = true; |
---|
394 | reunaVasen.X = -700; |
---|
395 | reunaVasen.Y = 0; |
---|
396 | Add(reunaVasen); |
---|
397 | |
---|
398 | reunaYla = PhysicsObject.CreateStaticObject(1400, 25); |
---|
399 | reunaYla.IsVisible = true; |
---|
400 | reunaYla.X = 0; |
---|
401 | reunaYla.Y = 600; |
---|
402 | Add(reunaYla); |
---|
403 | |
---|
404 | reunaAlas = PhysicsObject.CreateStaticObject(1400, 25); |
---|
405 | reunaAlas.IsVisible = true; |
---|
406 | reunaAlas.X = 0; |
---|
407 | reunaAlas.Y = -600; |
---|
408 | Add(reunaAlas); |
---|
409 | |
---|
410 | |
---|
411 | LuoAuto(); |
---|
412 | NappaimetAutossa(); |
---|
413 | |
---|
414 | } |
---|
415 | |
---|
416 | void LisaaReunatKentta3() |
---|
417 | { |
---|
418 | ClearAll(); |
---|
419 | |
---|
420 | |
---|
421 | PhysicsObject taso = PhysicsObject.CreateStaticObject(1200, 1000); |
---|
422 | taso.Image = LoadImage("rata_deadend03"); |
---|
423 | taso.IsVisible = true; |
---|
424 | AddSurface(taso); |
---|
425 | |
---|
426 | checkpoint = PhysicsObject.CreateStaticObject(2, 225); |
---|
427 | checkpoint.IsVisible = true; |
---|
428 | checkpoint.IgnoresCollisionResponse = true; |
---|
429 | checkpoint.X = 150; |
---|
430 | checkpoint.Y = 350; |
---|
431 | Add(checkpoint); |
---|
432 | |
---|
433 | valipoint = PhysicsObject.CreateStaticObject(2, 250); |
---|
434 | valipoint.IsVisible = true; |
---|
435 | valipoint.IgnoresCollisionResponse = true; |
---|
436 | valipoint.X = -20; |
---|
437 | valipoint.Y = -350; |
---|
438 | Add(valipoint); |
---|
439 | |
---|
440 | viiva9 = PhysicsObject.CreateStaticObject(657, 10); |
---|
441 | viiva9.IsVisible = true; |
---|
442 | viiva9.Angle = Angle.Degrees(0); |
---|
443 | |
---|
444 | viiva10 = PhysicsObject.CreateStaticObject(10, 450); |
---|
445 | viiva10.IsVisible = true; |
---|
446 | viiva10.Angle = Angle.Degrees(0); |
---|
447 | |
---|
448 | viiva11 = PhysicsObject.CreateStaticObject(35, 10); |
---|
449 | viiva11.IsVisible = true; |
---|
450 | viiva11.Angle = Angle.Degrees(0); |
---|
451 | |
---|
452 | viiva12 = PhysicsObject.CreateStaticObject(935, 10); |
---|
453 | viiva12.IsVisible = true; |
---|
454 | viiva12.Angle = Angle.Degrees(0); |
---|
455 | |
---|
456 | viiva13 = PhysicsObject.CreateStaticObject(385, 10); |
---|
457 | viiva13.IsVisible = true; |
---|
458 | viiva13.Angle = Angle.Degrees(0); |
---|
459 | |
---|
460 | |
---|
461 | //KineticFriction = 0.1; // Asetetaan kitka |
---|
462 | Gravity = 300; |
---|
463 | |
---|
464 | viiva9.X = -40; |
---|
465 | viiva9.Y = -215; |
---|
466 | viiva10.X = 245; |
---|
467 | viiva10.Y = 13; |
---|
468 | viiva11.X = 540; |
---|
469 | viiva11.Y = -10; |
---|
470 | viiva12.X = -460; |
---|
471 | viiva12.Y = 70; |
---|
472 | viiva13.X = 130; |
---|
473 | viiva13.Y = 240; |
---|
474 | |
---|
475 | viiva9.Color = Color.Black; |
---|
476 | viiva10.Color = Color.Black; |
---|
477 | viiva11.Color = Color.Black; |
---|
478 | viiva12.Color = Color.Black; |
---|
479 | viiva13.Color = Color.Black; |
---|
480 | |
---|
481 | AddSurface(viiva9); |
---|
482 | AddSurface(viiva10); |
---|
483 | AddSurface(viiva11); |
---|
484 | AddSurface(viiva12); |
---|
485 | AddSurface(viiva13); |
---|
486 | |
---|
487 | reunaOikea = PhysicsObject.CreateStaticObject(25, 1400); |
---|
488 | reunaOikea.IsVisible = true; |
---|
489 | reunaOikea.X = 700; |
---|
490 | reunaOikea.Y = 0; |
---|
491 | Add(reunaOikea); |
---|
492 | |
---|
493 | reunaVasen = PhysicsObject.CreateStaticObject(25, 1400); |
---|
494 | reunaVasen.IsVisible = true; |
---|
495 | reunaVasen.X = -700; |
---|
496 | reunaVasen.Y = 0; |
---|
497 | Add(reunaVasen); |
---|
498 | |
---|
499 | reunaYla = PhysicsObject.CreateStaticObject(1400, 25); |
---|
500 | reunaYla.IsVisible = true; |
---|
501 | reunaYla.X = 0; |
---|
502 | reunaYla.Y = 600; |
---|
503 | Add(reunaYla); |
---|
504 | |
---|
505 | reunaAlas = PhysicsObject.CreateStaticObject(1400, 25); |
---|
506 | reunaAlas.IsVisible = true; |
---|
507 | reunaAlas.X = 0; |
---|
508 | reunaAlas.Y = -600; |
---|
509 | Add(reunaAlas); |
---|
510 | |
---|
511 | |
---|
512 | LuoAuto(); |
---|
513 | NappaimetAutossa(); |
---|
514 | |
---|
515 | } |
---|
516 | |
---|
517 | void LisaaReunatKentta4() |
---|
518 | { |
---|
519 | ClearAll(); |
---|
520 | |
---|
521 | PhysicsObject taso = PhysicsObject.CreateStaticObject(1200, 1000); |
---|
522 | taso.Image = LoadImage("rata_snoopy04"); |
---|
523 | taso.IsVisible = true; |
---|
524 | AddSurface(taso); |
---|
525 | |
---|
526 | checkpoint = PhysicsObject.CreateStaticObject(2, 225); |
---|
527 | checkpoint.IsVisible = true; |
---|
528 | checkpoint.IgnoresCollisionResponse = true; |
---|
529 | checkpoint.X = 150; |
---|
530 | checkpoint.Y = 350; |
---|
531 | Add(checkpoint); |
---|
532 | |
---|
533 | valipoint = PhysicsObject.CreateStaticObject(2, 250); |
---|
534 | valipoint.IsVisible = true; |
---|
535 | valipoint.IgnoresCollisionResponse = true; |
---|
536 | valipoint.X = -120; |
---|
537 | valipoint.Y = -350; |
---|
538 | Add(valipoint); |
---|
539 | |
---|
540 | viiva14 = PhysicsObject.CreateStaticObject(500, 10); |
---|
541 | viiva14.IsVisible = true; |
---|
542 | viiva14.Angle = Angle.Degrees(-55); |
---|
543 | |
---|
544 | viiva15 = PhysicsObject.CreateStaticObject(10, 470); |
---|
545 | viiva15.IsVisible = true; |
---|
546 | viiva15.Angle = Angle.Degrees(-41); |
---|
547 | |
---|
548 | viiva16 = PhysicsObject.CreateStaticObject(350, 10); |
---|
549 | viiva16.IsVisible = true; |
---|
550 | viiva16.Angle = Angle.Degrees(0); |
---|
551 | |
---|
552 | viiva17 = PhysicsObject.CreateStaticObject(265, 10); |
---|
553 | viiva17.IsVisible = true; |
---|
554 | viiva17.Angle = Angle.Degrees(99); |
---|
555 | |
---|
556 | viiva18 = PhysicsObject.CreateStaticObject(635, 10); |
---|
557 | viiva18.IsVisible = true; |
---|
558 | viiva18.Angle = Angle.Degrees(119); |
---|
559 | |
---|
560 | viiva19 = PhysicsObject.CreateStaticObject(200, 10); |
---|
561 | viiva19.IsVisible = true; |
---|
562 | viiva19.Angle = Angle.Degrees(90); |
---|
563 | |
---|
564 | //KineticFriction = 0.1; // Asetetaan kitka |
---|
565 | Gravity = 300; |
---|
566 | |
---|
567 | viiva14.X = -275; |
---|
568 | viiva14.Y = -5; |
---|
569 | viiva15.X = -84; |
---|
570 | viiva15.Y = 115; |
---|
571 | viiva16.X = 670; |
---|
572 | viiva16.Y = 130; |
---|
573 | viiva17.X = 99; |
---|
574 | viiva17.Y = -245; |
---|
575 | viiva18.X = 250; |
---|
576 | viiva18.Y = 10; |
---|
577 | viiva19.X = -220; |
---|
578 | viiva19.Y = 405; |
---|
579 | |
---|
580 | viiva14.Color = Color.Black; |
---|
581 | viiva15.Color = Color.Black; |
---|
582 | viiva16.Color = Color.Black; |
---|
583 | viiva17.Color = Color.Black; |
---|
584 | viiva18.Color = Color.Black; |
---|
585 | viiva19.Color = Color.Black; |
---|
586 | |
---|
587 | AddSurface(viiva14); |
---|
588 | AddSurface(viiva15); |
---|
589 | AddSurface(viiva16); |
---|
590 | AddSurface(viiva17); |
---|
591 | AddSurface(viiva18); |
---|
592 | AddSurface(viiva19); |
---|
593 | |
---|
594 | reunaOikea = PhysicsObject.CreateStaticObject(25, 1400); |
---|
595 | reunaOikea.IsVisible = true; |
---|
596 | reunaOikea.X = 700; |
---|
597 | reunaOikea.Y = 0; |
---|
598 | Add(reunaOikea); |
---|
599 | |
---|
600 | reunaVasen = PhysicsObject.CreateStaticObject(25, 1400); |
---|
601 | reunaVasen.IsVisible = true; |
---|
602 | reunaVasen.X = -700; |
---|
603 | reunaVasen.Y = 0; |
---|
604 | Add(reunaVasen); |
---|
605 | |
---|
606 | reunaYla = PhysicsObject.CreateStaticObject(1400, 25); |
---|
607 | reunaYla.IsVisible = true; |
---|
608 | reunaYla.X = 0; |
---|
609 | reunaYla.Y = 600; |
---|
610 | Add(reunaYla); |
---|
611 | |
---|
612 | reunaAlas = PhysicsObject.CreateStaticObject(1400, 25); |
---|
613 | reunaAlas.IsVisible = true; |
---|
614 | reunaAlas.X = 0; |
---|
615 | reunaAlas.Y = -600; |
---|
616 | Add(reunaAlas); |
---|
617 | |
---|
618 | |
---|
619 | LuoAuto(); |
---|
620 | NappaimetAutossa(); |
---|
621 | |
---|
622 | } |
---|
623 | |
---|
624 | void LisaaReunatKentta5() |
---|
625 | { |
---|
626 | ClearAll(); |
---|
627 | |
---|
628 | PhysicsObject taso = PhysicsObject.CreateStaticObject(1200, 1000); |
---|
629 | taso.Image = LoadImage("rata_b05"); |
---|
630 | taso.IsVisible = true; |
---|
631 | AddSurface(taso); |
---|
632 | |
---|
633 | checkpoint = PhysicsObject.CreateStaticObject(2, 275); |
---|
634 | checkpoint.IsVisible = true; |
---|
635 | checkpoint.IgnoresCollisionResponse = true; |
---|
636 | checkpoint.X = 0; |
---|
637 | checkpoint.Y = 350; |
---|
638 | Add(checkpoint); |
---|
639 | |
---|
640 | valipoint = PhysicsObject.CreateStaticObject(2, 275); |
---|
641 | valipoint.IsVisible = false; |
---|
642 | valipoint.IgnoresCollisionResponse = true; |
---|
643 | valipoint.X = -20; |
---|
644 | valipoint.Y = -350; |
---|
645 | Add(valipoint); |
---|
646 | |
---|
647 | viiva20 = PhysicsObject.CreateStaticObject(10, 489); |
---|
648 | viiva20.IsVisible = true; |
---|
649 | viiva20.Angle = Angle.Degrees(0); |
---|
650 | |
---|
651 | viiva21 = PhysicsObject.CreateStaticObject(10, 600); |
---|
652 | viiva21.IsVisible = true; |
---|
653 | viiva21.Angle = Angle.Degrees(-90); |
---|
654 | |
---|
655 | viiva22 = PhysicsObject.CreateStaticObject(10, 630); |
---|
656 | viiva22.IsVisible = true; |
---|
657 | viiva22.Angle = Angle.Degrees(-90); |
---|
658 | |
---|
659 | viiva23 = PhysicsObject.CreateStaticObject(175, 10); |
---|
660 | viiva23.IsVisible = true; |
---|
661 | viiva23.Angle = Angle.Degrees(0); |
---|
662 | |
---|
663 | //KineticFriction = 0.1; // Asetetaan kitka |
---|
664 | Gravity = 300; |
---|
665 | |
---|
666 | viiva20.X = 295; |
---|
667 | viiva20.Y = -7; |
---|
668 | viiva21.X = 0; |
---|
669 | viiva21.Y = 240; |
---|
670 | viiva22.X = -21; |
---|
671 | viiva22.Y = -180; |
---|
672 | viiva23.X = -590; |
---|
673 | viiva23.Y = 70; |
---|
674 | |
---|
675 | viiva20.Color = Color.Black; |
---|
676 | viiva21.Color = Color.Black; |
---|
677 | viiva22.Color = Color.Black; |
---|
678 | viiva23.Color = Color.Black; |
---|
679 | |
---|
680 | AddSurface(viiva20); |
---|
681 | AddSurface(viiva21); |
---|
682 | AddSurface(viiva22); |
---|
683 | AddSurface(viiva23); |
---|
684 | |
---|
685 | reunaOikea = PhysicsObject.CreateStaticObject(25, 1400); |
---|
686 | reunaOikea.IsVisible = true; |
---|
687 | reunaOikea.X = 700; |
---|
688 | reunaOikea.Y = 0; |
---|
689 | Add(reunaOikea); |
---|
690 | |
---|
691 | reunaVasen = PhysicsObject.CreateStaticObject(25, 1400); |
---|
692 | reunaVasen.IsVisible = true; |
---|
693 | reunaVasen.X = -700; |
---|
694 | reunaVasen.Y = 0; |
---|
695 | Add(reunaVasen); |
---|
696 | |
---|
697 | reunaYla = PhysicsObject.CreateStaticObject(1400, 25); |
---|
698 | reunaYla.IsVisible = true; |
---|
699 | reunaYla.X = 0; |
---|
700 | reunaYla.Y = 600; |
---|
701 | Add(reunaYla); |
---|
702 | |
---|
703 | reunaAlas = PhysicsObject.CreateStaticObject(1400, 25); |
---|
704 | reunaAlas.IsVisible = true; |
---|
705 | reunaAlas.X = 0; |
---|
706 | reunaAlas.Y = -600; |
---|
707 | Add(reunaAlas); |
---|
708 | |
---|
709 | |
---|
710 | LuoAuto(); |
---|
711 | NappaimetAutossa(); |
---|
712 | |
---|
713 | } |
---|
714 | |
---|
715 | void LisaaReunatKentta6() |
---|
716 | { |
---|
717 | ClearAll(); |
---|
718 | |
---|
719 | PhysicsObject taso = PhysicsObject.CreateStaticObject(1200, 1000); |
---|
720 | taso.Image = LoadImage("rata_around06"); |
---|
721 | taso.IsVisible = true; |
---|
722 | AddSurface(taso); |
---|
723 | |
---|
724 | checkpoint = PhysicsObject.CreateStaticObject(2, 275); |
---|
725 | checkpoint.IsVisible = true; |
---|
726 | checkpoint.IgnoresCollisionResponse = true; |
---|
727 | checkpoint.X = 250; |
---|
728 | checkpoint.Y = 350; |
---|
729 | Add(checkpoint); |
---|
730 | |
---|
731 | valipoint = PhysicsObject.CreateStaticObject(2, 275); |
---|
732 | valipoint.IsVisible = false; |
---|
733 | valipoint.IgnoresCollisionResponse = true; |
---|
734 | valipoint.X = -220; |
---|
735 | valipoint.Y = -350; |
---|
736 | Add(valipoint); |
---|
737 | |
---|
738 | viiva24 = PhysicsObject.CreateStaticObject(10, 409); |
---|
739 | viiva24.IsVisible = true; |
---|
740 | viiva24.Angle = Angle.Degrees(0); |
---|
741 | |
---|
742 | viiva25 = PhysicsObject.CreateStaticObject(10, 340); |
---|
743 | viiva25.IsVisible = true; |
---|
744 | viiva25.Angle = Angle.Degrees(0); |
---|
745 | |
---|
746 | viiva26 = PhysicsObject.CreateStaticObject(10, 730); |
---|
747 | viiva26.IsVisible = true; |
---|
748 | viiva26.Angle = Angle.Degrees(-90); |
---|
749 | |
---|
750 | viiva27 = PhysicsObject.CreateStaticObject(155, 10); |
---|
751 | viiva27.IsVisible = true; |
---|
752 | viiva27.Angle = Angle.Degrees(90); |
---|
753 | |
---|
754 | //KineticFriction = 0.1; // Asetetaan kitka |
---|
755 | Gravity = 300; |
---|
756 | |
---|
757 | viiva24.X = 350; |
---|
758 | viiva24.Y = 7; |
---|
759 | viiva25.X = -117; |
---|
760 | viiva25.Y = 320; |
---|
761 | viiva26.X = 1; |
---|
762 | viiva26.Y = -180; |
---|
763 | viiva27.X = -322; |
---|
764 | viiva27.Y = -100; |
---|
765 | |
---|
766 | viiva24.Color = Color.Black; |
---|
767 | viiva25.Color = Color.Black; |
---|
768 | viiva26.Color = Color.Black; |
---|
769 | viiva27.Color = Color.Black; |
---|
770 | |
---|
771 | AddSurface(viiva24); |
---|
772 | AddSurface(viiva25); |
---|
773 | AddSurface(viiva26); |
---|
774 | AddSurface(viiva27); |
---|
775 | |
---|
776 | reunaOikea = PhysicsObject.CreateStaticObject(25, 1400); |
---|
777 | reunaOikea.IsVisible = true; |
---|
778 | reunaOikea.X = 700; |
---|
779 | reunaOikea.Y = 0; |
---|
780 | Add(reunaOikea); |
---|
781 | |
---|
782 | reunaVasen = PhysicsObject.CreateStaticObject(25, 1400); |
---|
783 | reunaVasen.IsVisible = true; |
---|
784 | reunaVasen.X = -700; |
---|
785 | reunaVasen.Y = 0; |
---|
786 | Add(reunaVasen); |
---|
787 | |
---|
788 | reunaYla = PhysicsObject.CreateStaticObject(1400, 25); |
---|
789 | reunaYla.IsVisible = true; |
---|
790 | reunaYla.X = 0; |
---|
791 | reunaYla.Y = 600; |
---|
792 | Add(reunaYla); |
---|
793 | |
---|
794 | reunaAlas = PhysicsObject.CreateStaticObject(1400, 25); |
---|
795 | reunaAlas.IsVisible = true; |
---|
796 | reunaAlas.X = 0; |
---|
797 | reunaAlas.Y = -600; |
---|
798 | Add(reunaAlas); |
---|
799 | |
---|
800 | |
---|
801 | LuoAuto(); |
---|
802 | NappaimetAutossa(); |
---|
803 | |
---|
804 | } |
---|
805 | |
---|
806 | void LisaaReunatKentta7() |
---|
807 | { |
---|
808 | ClearAll(); |
---|
809 | |
---|
810 | PhysicsObject taso = PhysicsObject.CreateStaticObject(1200, 800); |
---|
811 | taso.Image = LoadImage("rata_wheelie07"); |
---|
812 | taso.IsVisible = true; |
---|
813 | AddSurface(taso); |
---|
814 | |
---|
815 | checkpoint = PhysicsObject.CreateStaticObject(2, 275); |
---|
816 | checkpoint.IsVisible = false; |
---|
817 | checkpoint.IgnoresCollisionResponse = true; |
---|
818 | checkpoint.X = -72; |
---|
819 | checkpoint.Y = 350; |
---|
820 | Add(checkpoint); |
---|
821 | |
---|
822 | valipoint = PhysicsObject.CreateStaticObject(2, 275); |
---|
823 | valipoint.IsVisible = false; |
---|
824 | valipoint.IgnoresCollisionResponse = true; |
---|
825 | valipoint.X = -72; |
---|
826 | valipoint.Y = -350; |
---|
827 | Add(valipoint); |
---|
828 | |
---|
829 | viiva28 = PhysicsObject.CreateStaticObject(10, 409); |
---|
830 | viiva28.IsVisible = false; |
---|
831 | viiva28.Angle = Angle.Degrees(45); |
---|
832 | |
---|
833 | viiva29 = PhysicsObject.CreateStaticObject(10, 409); |
---|
834 | viiva29.IsVisible = false; |
---|
835 | viiva29.Angle = Angle.Degrees(-45); |
---|
836 | |
---|
837 | |
---|
838 | //KineticFriction = 0.1; // Asetetaan kitka |
---|
839 | Gravity = 300; |
---|
840 | |
---|
841 | viiva28.X = -72; |
---|
842 | viiva28.Y = 0; |
---|
843 | |
---|
844 | viiva29.X = -72; |
---|
845 | viiva29.Y = 0; |
---|
846 | |
---|
847 | viiva28.Color = Color.Black; |
---|
848 | viiva29.Color = Color.Black; |
---|
849 | |
---|
850 | AddSurface(viiva28); |
---|
851 | AddSurface(viiva29); |
---|
852 | |
---|
853 | reunaOikea = PhysicsObject.CreateStaticObject(25, 1400); |
---|
854 | reunaOikea.IsVisible = true; |
---|
855 | reunaOikea.X = 700; |
---|
856 | reunaOikea.Y = 0; |
---|
857 | Add(reunaOikea); |
---|
858 | |
---|
859 | reunaVasen = PhysicsObject.CreateStaticObject(25, 1400); |
---|
860 | reunaVasen.IsVisible = true; |
---|
861 | reunaVasen.X = -700; |
---|
862 | reunaVasen.Y = 0; |
---|
863 | Add(reunaVasen); |
---|
864 | |
---|
865 | reunaYla = PhysicsObject.CreateStaticObject(1400, 25); |
---|
866 | reunaYla.IsVisible = true; |
---|
867 | reunaYla.X = 0; |
---|
868 | reunaYla.Y = 600; |
---|
869 | Add(reunaYla); |
---|
870 | |
---|
871 | reunaAlas = PhysicsObject.CreateStaticObject(1400, 25); |
---|
872 | reunaAlas.IsVisible = true; |
---|
873 | reunaAlas.X = 0; |
---|
874 | reunaAlas.Y = -600; |
---|
875 | Add(reunaAlas); |
---|
876 | |
---|
877 | |
---|
878 | LuoAuto(); |
---|
879 | NappaimetAutossa(); |
---|
880 | |
---|
881 | |
---|
882 | } |
---|
883 | |
---|
884 | void LisaaReunatKentta8() |
---|
885 | { |
---|
886 | ClearAll(); |
---|
887 | |
---|
888 | PhysicsObject taso = PhysicsObject.CreateStaticObject(1200, 800); |
---|
889 | taso.Image = LoadImage("rata_drivein08"); |
---|
890 | taso.IsVisible = true; |
---|
891 | AddSurface(taso); |
---|
892 | |
---|
893 | checkpoint = PhysicsObject.CreateStaticObject(275, 2); |
---|
894 | checkpoint.IsVisible = true; |
---|
895 | checkpoint.IgnoresCollisionResponse = true; |
---|
896 | checkpoint.X = 492; |
---|
897 | checkpoint.Y = 0; |
---|
898 | Add(checkpoint); |
---|
899 | |
---|
900 | valipoint = PhysicsObject.CreateStaticObject(275, 2); |
---|
901 | valipoint.IsVisible = false; |
---|
902 | valipoint.IgnoresCollisionResponse = true; |
---|
903 | valipoint.X = -492; |
---|
904 | valipoint.Y = 0; |
---|
905 | Add(valipoint); |
---|
906 | |
---|
907 | viiva30 = PhysicsObject.CreateStaticObject(10, 409); |
---|
908 | viiva30.IsVisible = true; |
---|
909 | viiva30.Angle = Angle.Degrees(0); |
---|
910 | |
---|
911 | viiva31 = PhysicsObject.CreateStaticObject(10, 389); |
---|
912 | viiva31.IsVisible = true; |
---|
913 | viiva31.Angle = Angle.Degrees(0); |
---|
914 | |
---|
915 | viiva32 = PhysicsObject.CreateStaticObject(10, 699); |
---|
916 | viiva32.IsVisible = true; |
---|
917 | viiva32.Angle = Angle.Degrees(90); |
---|
918 | |
---|
919 | viiva33 = PhysicsObject.CreateStaticObject(10, 409); |
---|
920 | viiva33.IsVisible = true; |
---|
921 | viiva33.Angle = Angle.Degrees(0); |
---|
922 | |
---|
923 | |
---|
924 | //KineticFriction = 0.1; // Asetetaan kitka |
---|
925 | Gravity = 300; |
---|
926 | |
---|
927 | viiva30.X = -20; |
---|
928 | viiva30.Y = 300; |
---|
929 | |
---|
930 | viiva31.X = -352; |
---|
931 | viiva31.Y = -83; |
---|
932 | |
---|
933 | viiva32.X = 2; |
---|
934 | viiva32.Y = -260; |
---|
935 | |
---|
936 | viiva33.X = 352; |
---|
937 | viiva33.Y = -83; |
---|
938 | |
---|
939 | viiva30.Color = Color.Black; |
---|
940 | viiva30.Color = Color.Black; |
---|
941 | |
---|
942 | viiva31.Color = Color.Black; |
---|
943 | viiva31.Color = Color.Black; |
---|
944 | |
---|
945 | viiva32.Color = Color.Black; |
---|
946 | viiva32.Color = Color.Black; |
---|
947 | |
---|
948 | viiva33.Color = Color.Black; |
---|
949 | viiva33.Color = Color.Black; |
---|
950 | |
---|
951 | AddSurface(viiva30); |
---|
952 | AddSurface(viiva31); |
---|
953 | AddSurface(viiva32); |
---|
954 | AddSurface(viiva33); |
---|
955 | |
---|
956 | reunaOikea = PhysicsObject.CreateStaticObject(25, 1400); |
---|
957 | reunaOikea.IsVisible = true; |
---|
958 | reunaOikea.X = 700; |
---|
959 | reunaOikea.Y = 0; |
---|
960 | Add(reunaOikea); |
---|
961 | |
---|
962 | reunaVasen = PhysicsObject.CreateStaticObject(25, 1400); |
---|
963 | reunaVasen.IsVisible = true; |
---|
964 | reunaVasen.X = -700; |
---|
965 | reunaVasen.Y = 0; |
---|
966 | Add(reunaVasen); |
---|
967 | |
---|
968 | reunaYla = PhysicsObject.CreateStaticObject(1400, 25); |
---|
969 | reunaYla.IsVisible = true; |
---|
970 | reunaYla.X = 0; |
---|
971 | reunaYla.Y = 600; |
---|
972 | Add(reunaYla); |
---|
973 | |
---|
974 | reunaAlas = PhysicsObject.CreateStaticObject(1400, 25); |
---|
975 | reunaAlas.IsVisible = true; |
---|
976 | reunaAlas.X = 0; |
---|
977 | reunaAlas.Y = -600; |
---|
978 | Add(reunaAlas); |
---|
979 | |
---|
980 | |
---|
981 | LuoAuto(); |
---|
982 | NappaimetAutossa(); |
---|
983 | |
---|
984 | } |
---|
985 | |
---|
986 | void LisaaReunatKentta9() |
---|
987 | { |
---|
988 | ClearAll(); |
---|
989 | |
---|
990 | PhysicsObject taso = PhysicsObject.CreateStaticObject(1200, 900); |
---|
991 | taso.Image = LoadImage("rata_fisu09"); |
---|
992 | taso.IsVisible = true; |
---|
993 | AddSurface(taso); |
---|
994 | |
---|
995 | checkpoint = PhysicsObject.CreateStaticObject(100, 2); |
---|
996 | checkpoint.IsVisible = true; |
---|
997 | checkpoint.IgnoresCollisionResponse = true; |
---|
998 | checkpoint.X = 312; |
---|
999 | checkpoint.Y = 100; |
---|
1000 | Add(checkpoint); |
---|
1001 | |
---|
1002 | valipoint = PhysicsObject.CreateStaticObject(275, 2); |
---|
1003 | valipoint.IsVisible = true; |
---|
1004 | valipoint.IgnoresCollisionResponse = true; |
---|
1005 | valipoint.X = -412; |
---|
1006 | valipoint.Y = 30; |
---|
1007 | Add(valipoint); |
---|
1008 | |
---|
1009 | viiva34 = PhysicsObject.CreateStaticObject(10, 160); |
---|
1010 | viiva34.IsVisible = true; |
---|
1011 | viiva34.Angle = Angle.Degrees(4); |
---|
1012 | |
---|
1013 | viiva35 = PhysicsObject.CreateStaticObject(10, 120); |
---|
1014 | viiva35.IsVisible = true; |
---|
1015 | viiva35.Angle = Angle.Degrees(4); |
---|
1016 | |
---|
1017 | viiva36 = PhysicsObject.CreateStaticObject(10, 380); |
---|
1018 | viiva36.IsVisible = true; |
---|
1019 | viiva36.Angle = Angle.Degrees(- 16); |
---|
1020 | |
---|
1021 | viiva37 = PhysicsObject.CreateStaticObject(10, 509); |
---|
1022 | viiva37.IsVisible = true; |
---|
1023 | viiva37.Angle = Angle.Degrees(81); |
---|
1024 | |
---|
1025 | viiva38 = PhysicsObject.CreateStaticObject(10, 409); |
---|
1026 | viiva38.IsVisible = true; |
---|
1027 | viiva38.Angle = Angle.Degrees(-16); |
---|
1028 | |
---|
1029 | viiva39 = PhysicsObject.CreateStaticObject(10, 100); |
---|
1030 | viiva39.IsVisible = true; |
---|
1031 | viiva39.Angle = Angle.Degrees(72); |
---|
1032 | |
---|
1033 | viiva40 = PhysicsObject.CreateStaticObject(10, 270); |
---|
1034 | viiva40.IsVisible = true; |
---|
1035 | viiva40.Angle = Angle.Degrees(74); |
---|
1036 | |
---|
1037 | |
---|
1038 | //KineticFriction = 0.1; // Asetetaan kitka |
---|
1039 | Gravity = 300; |
---|
1040 | |
---|
1041 | viiva34.X = 260; |
---|
1042 | viiva34.Y = 85; |
---|
1043 | |
---|
1044 | viiva35.X = 360; |
---|
1045 | viiva35.Y = 100; |
---|
1046 | |
---|
1047 | viiva36.X = -280; |
---|
1048 | viiva36.Y = 5; |
---|
1049 | |
---|
1050 | viiva37.X = 2; |
---|
1051 | viiva37.Y = 153; |
---|
1052 | |
---|
1053 | viiva38.X = 2; |
---|
1054 | viiva38.Y = -50; |
---|
1055 | |
---|
1056 | viiva39.X = -492; |
---|
1057 | viiva39.Y = -283; |
---|
1058 | |
---|
1059 | viiva40.X = 120; |
---|
1060 | viiva40.Y = 320; |
---|
1061 | |
---|
1062 | viiva34.Color = Color.Black; |
---|
1063 | viiva35.Color = Color.Black; |
---|
1064 | viiva36.Color = Color.Black; |
---|
1065 | viiva37.Color = Color.Black; |
---|
1066 | viiva38.Color = Color.Black; |
---|
1067 | viiva39.Color = Color.Black; |
---|
1068 | viiva40.Color = Color.Black; |
---|
1069 | |
---|
1070 | AddSurface(viiva34); |
---|
1071 | AddSurface(viiva35); |
---|
1072 | AddSurface(viiva36); |
---|
1073 | AddSurface(viiva37); |
---|
1074 | AddSurface(viiva38); |
---|
1075 | AddSurface(viiva39); |
---|
1076 | AddSurface(viiva40); |
---|
1077 | |
---|
1078 | reunaOikea = PhysicsObject.CreateStaticObject(25, 1400); |
---|
1079 | reunaOikea.IsVisible = true; |
---|
1080 | reunaOikea.X = 700; |
---|
1081 | reunaOikea.Y = 0; |
---|
1082 | Add(reunaOikea); |
---|
1083 | |
---|
1084 | reunaVasen = PhysicsObject.CreateStaticObject(25, 1400); |
---|
1085 | reunaVasen.IsVisible = true; |
---|
1086 | reunaVasen.X = -700; |
---|
1087 | reunaVasen.Y = 0; |
---|
1088 | Add(reunaVasen); |
---|
1089 | |
---|
1090 | reunaYla = PhysicsObject.CreateStaticObject(1400, 25); |
---|
1091 | reunaYla.IsVisible = true; |
---|
1092 | reunaYla.X = 0; |
---|
1093 | reunaYla.Y = 600; |
---|
1094 | Add(reunaYla); |
---|
1095 | |
---|
1096 | reunaAlas = PhysicsObject.CreateStaticObject(1400, 25); |
---|
1097 | reunaAlas.IsVisible = true; |
---|
1098 | reunaAlas.X = 0; |
---|
1099 | reunaAlas.Y = -600; |
---|
1100 | Add(reunaAlas); |
---|
1101 | |
---|
1102 | |
---|
1103 | LuoAuto(); |
---|
1104 | NappaimetAutossa(); |
---|
1105 | |
---|
1106 | } |
---|
1107 | |
---|
1108 | void LisaaReunatKentta0() |
---|
1109 | { |
---|
1110 | ClearAll(); |
---|
1111 | |
---|
1112 | PhysicsObject taso = PhysicsObject.CreateStaticObject(1200, 1000); |
---|
1113 | taso.Image = LoadImage("rata_tortoiseracing10"); |
---|
1114 | taso.IsVisible = true; |
---|
1115 | AddSurface(taso); |
---|
1116 | |
---|
1117 | checkpoint = PhysicsObject.CreateStaticObject(2, 275); |
---|
1118 | checkpoint.IsVisible = false; |
---|
1119 | checkpoint.IgnoresCollisionResponse = true; |
---|
1120 | checkpoint.X = -72; |
---|
1121 | checkpoint.Y = 350; |
---|
1122 | Add(checkpoint); |
---|
1123 | |
---|
1124 | valipoint = PhysicsObject.CreateStaticObject(2, 275); |
---|
1125 | valipoint.IsVisible = false; |
---|
1126 | valipoint.IgnoresCollisionResponse = true; |
---|
1127 | valipoint.X = -72; |
---|
1128 | valipoint.Y = -350; |
---|
1129 | Add(valipoint); |
---|
1130 | |
---|
1131 | viiva41 = PhysicsObject.CreateStaticObject(550, 10); |
---|
1132 | viiva41.IsVisible = true; |
---|
1133 | viiva41.Angle = Angle.Degrees(45); |
---|
1134 | |
---|
1135 | viiva42 = PhysicsObject.CreateStaticObject(550, 10); |
---|
1136 | viiva42.IsVisible = true; |
---|
1137 | viiva42.Angle = Angle.Degrees(-45); |
---|
1138 | |
---|
1139 | viiva43 = PhysicsObject.CreateStaticObject(10, 800); |
---|
1140 | viiva43.IsVisible = true; |
---|
1141 | viiva43.Angle = Angle.Degrees(90); |
---|
1142 | |
---|
1143 | //KineticFriction = 0.1; // Asetetaan kitka |
---|
1144 | Gravity = 300; |
---|
1145 | |
---|
1146 | viiva41.X = -250; |
---|
1147 | viiva41.Y = 101; |
---|
1148 | |
---|
1149 | viiva42.X = 130; |
---|
1150 | viiva42.Y = 101; |
---|
1151 | |
---|
1152 | viiva43.X = -60; |
---|
1153 | viiva43.Y = -100; |
---|
1154 | |
---|
1155 | |
---|
1156 | viiva41.Color = Color.Black; |
---|
1157 | viiva42.Color = Color.Black; |
---|
1158 | viiva43.Color = Color.Black; |
---|
1159 | |
---|
1160 | AddSurface(viiva41); |
---|
1161 | AddSurface(viiva42); |
---|
1162 | AddSurface(viiva43); |
---|
1163 | |
---|
1164 | reunaOikea = PhysicsObject.CreateStaticObject(25, 1400); |
---|
1165 | reunaOikea.IsVisible = true; |
---|
1166 | reunaOikea.X = 700; |
---|
1167 | reunaOikea.Y = 0; |
---|
1168 | Add(reunaOikea); |
---|
1169 | |
---|
1170 | reunaVasen = PhysicsObject.CreateStaticObject(25, 1400); |
---|
1171 | reunaVasen.IsVisible = true; |
---|
1172 | reunaVasen.X = -700; |
---|
1173 | reunaVasen.Y = 0; |
---|
1174 | Add(reunaVasen); |
---|
1175 | |
---|
1176 | reunaYla = PhysicsObject.CreateStaticObject(1400, 25); |
---|
1177 | reunaYla.IsVisible = true; |
---|
1178 | reunaYla.X = 0; |
---|
1179 | reunaYla.Y = 600; |
---|
1180 | Add(reunaYla); |
---|
1181 | |
---|
1182 | reunaAlas = PhysicsObject.CreateStaticObject(1400, 25); |
---|
1183 | reunaAlas.IsVisible = true; |
---|
1184 | reunaAlas.X = 0; |
---|
1185 | reunaAlas.Y = -600; |
---|
1186 | Add(reunaAlas); |
---|
1187 | |
---|
1188 | |
---|
1189 | LuoAuto(); |
---|
1190 | NappaimetAutossa(); |
---|
1191 | } |
---|
1192 | |
---|
1193 | void kiihdyta(Automobile auto) |
---|
1194 | { |
---|
1195 | //MessageDisplay.Add("" + pistelaskuri.CurrentTime); |
---|
1196 | auto.Accelerate(Time.SinceLastUpdate.TotalSeconds); |
---|
1197 | |
---|
1198 | } |
---|
1199 | |
---|
1200 | void jarruta(Automobile auto) |
---|
1201 | { |
---|
1202 | auto.Brake(Time.SinceLastUpdate.TotalSeconds); |
---|
1203 | } |
---|
1204 | |
---|
1205 | void kaanny(Automobile auto, Angle kaannos) |
---|
1206 | { |
---|
1207 | auto.Turn(kaannos, Time.SinceLastUpdate.TotalSeconds); |
---|
1208 | |
---|
1209 | } |
---|
1210 | } |
---|
1211 | } |
---|