source: 2012/30/TuomasW/Mortal Rally/Mortal Rally/Mortal Rally/Mortal_Rally.cs @ 3774

Revision 3774, 4.0 KB checked in by juiitamm, 10 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 Mortal_Rally : TopDownPhysicsGame  //actually is dolan
10{
11   
12
13    //saatanan saatanan saatana
14
15    Image taustaKuva = LoadImage("rata");
16                                                                           
17
18    Automobile auto;
19    Automobile auto2;
20
21    public override void Begin() //äxschly is dlan
22    {
23
24        LuoKenttä();
25
26       
27
28        Level.CreateBorders(1, true);
29        Camera.ZoomToLevel();
30
31        Level.Background.Image = taustaKuva;
32        Level.BackgroundColor = Color.Green;
33        Level.Background.FitToLevel();
34
35        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli");
36        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
37
38
39
40        //PhysicsObject aita = new PhysicsObject(LoadImage("aidat"));
41        //Add(aita);
42       
43       auto = LuoAuto(-50, -1300);
44       auto.Image = LoadImage("auto1");
45
46       auto2 = LuoAuto(-50, 1100);
47       auto2.Image = LoadImage("auto2");
48
49       AddCollisionHandler(auto, auto2, AutoHajoaa);
50       AddCollisionHandler(auto2, auto, Auto2Hajoaa);
51
52       Keyboard.Listen(Key.Up, ButtonState.Down, liikutaAutoa, "liikuta", auto);
53       Keyboard.Listen(Key.Down, ButtonState.Down, jarruta, "jarruttaa", auto);
54       //Keyboard.Listen(Key.Down, ButtonState.Released, , "liikuta", auto);
55       Keyboard.Listen(Key.Left, ButtonState.Down, Kaanny, "Kääntyy", Angle.FromDegrees(1.5), auto);
56       Keyboard.Listen(Key.Right, ButtonState.Down, Kaanny, "Kääntyy", Angle.FromDegrees(-1.5), auto);
57
58       Keyboard.Listen(Key.W, ButtonState.Down, liikutaAutoa, "liikuta", auto2);
59       Keyboard.Listen(Key.S, ButtonState.Down, jarruta, "jarruttaa", auto2);
60       Keyboard.Listen(Key.A, ButtonState.Down, Kaanny, "Kääntyy", Angle.FromDegrees(1.5), auto2);
61       Keyboard.Listen(Key.D, ButtonState.Down, Kaanny, "Kääntyy", Angle.FromDegrees(-1.5), auto2);
62    }
63
64    Automobile LuoAuto(double x, double y) //ask about free shipping!
65    {
66
67
68       Automobile auto = new Automobile(150, 130);
69       auto.Shape = Shape.Rectangle;
70       //auto.Image = LoadImage("auto1");
71       auto.X = x;
72       auto.Y = y;
73       auto.Restitution = 0.5;
74       //auto.MaxVelocity = 100;
75       auto.Acceleration = 300.0;
76       auto.AngularDamping = 0.01;
77       auto.LinearDamping = 0.992;
78       Add(auto);
79       return auto;
80
81    }
82        //saatanan saatanan SAATANA
83
84
85     void LuoKenttä()
86    {
87         ColorTileMap ruudut = ColorTileMap.FromLevelAsset("aidat_pieni");
88
89         ruudut.SetTileMethod(Color.Black, LuoAidat);
90
91         ruudut.Execute(48, 64);
92
93    }
94
95    //kenttä on paras :D ja aidat:DD
96
97     void LuoAidat(Vector paikka, double korkeus, double leveys)
98     {
99         PhysicsObject aidat = PhysicsObject.CreateStaticObject(leveys, korkeus);
100         aidat.Position = paikka;
101         aidat.Color = Color.OrangeRed;
102         // aidat.Image =
103         Add(aidat);
104     }
105
106    void Kaanny (Angle kulma, Automobile auto)
107    {
108        auto.Turn(kulma,1);
109    }
110
111    void liikutaAutoa(Automobile auto)
112    {
113        auto.Accelerate();
114     }
115
116    void jarruta(Automobile auto)
117    {
118        auto.Brake();
119    }
120
121    void autonSuunta(PhysicsObject auto)
122    {
123        Vector autonsuunta = Vector.FromLengthAndAngle(1.0, auto.Angle);
124    }
125
126    void asetaNopeus(PhysicsObject auto, Vector nopeus)
127    {
128        auto.Velocity = nopeus;
129    }
130
131    void AutoHajoaa(PhysicsObject auto, PhysicsObject auto2)
132    {
133        if (auto.Velocity.Magnitude > 100) 
134        {
135            auto2.Destroy();
136        }
137    }
138
139    void Auto2Hajoaa(PhysicsObject auto2, PhysicsObject auto)
140    {
141        if (auto2.Velocity.Magnitude > 100)
142        {
143            auto.Destroy();
144        }
145    }
146
147
148
149   
150
151}
152
153    //NOW GET OUT OF MY HOUSE!
Note: See TracBrowser for help on using the repository browser.