source: 2012/30/JuusoK/Fear_Calls/Fear_Calls/Fear_Calls/Fear_Calls.cs @ 3756

Revision 3756, 6.3 KB checked in by anlakane, 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;
8public class Fear_Calls : PhysicsGame
9{
10      Color PelaajanVari;
11      EasyHighScore top10 = new EasyHighScore();
12      Image PeliHahmot = LoadImage( "Guests" );
13
14    public override void Begin()
15    {
16        PhoneBackButton.Listen(ConfirmExit, "Lopeta peli");
17        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
18        alkuValikko();
19
20    }
21 
22    void alkuValikko()
23    {
24        ClearAll();
25        MultiSelectWindow alkuValikko = new MultiSelectWindow("Menu",
26        "Start game", "Survival", "Highscore", "End game");
27
28        Add(alkuValikko);
29        alkuValikko.Color = Color.Gray;
30        alkuValikko.SelectionColor = Color.LightGray;
31
32
33        Level.BackgroundColor = Color.Black;
34
35        alkuValikko.ItemSelected += PainettiinValikonNappia;
36}
37
38    void PainettiinValikonNappia(int valinta)
39    {
40        switch (valinta)
41        {
42            case 0:
43                Select();
44                break;
45            case 1:
46                Survival();
47                break;
48            case 2:
49                Highscore();
50                break;
51            case 3:
52                Exit();
53                break;
54        }
55    }
56
57    void Select()
58    {
59        ClearAll();
60        MultiSelectWindow ValitsePelaaja = new MultiSelectWindow("Select your character",
61        "Scarlet", "Mustard", "White", "Green", "Back");
62
63        ValitsePelaaja.ItemSelected += PelaajaValittiin;
64
65        ValitsePelaaja.Y = 225;
66        Add(ValitsePelaaja);
67        ValitsePelaaja.Color = Color.Gray;
68        ValitsePelaaja.SelectionColor = Color.LightGray;
69       
70        GameObject Kuva = new GameObject(PeliHahmot);
71        Kuva.Y = -170;
72        Add(Kuva);
73    }
74
75    void PelaajaValittiin(int valinta)
76    {
77        switch (valinta)
78        {
79            case 0:
80                GameStart(Color.Red);
81                break;
82            case 1:
83                GameStart(Color.Orange);
84                break;
85            case 2:
86                GameStart(Color.White);
87                break;
88            case 3:
89                GameStart(Color.Green);
90                break;
91            case 4:
92                alkuValikko();
93                break;
94        }
95    }
96
97    void GameStart(Color vari)
98    {
99        ClearGameObjects();
100        PelaajanVari = vari;
101        TileMap ruudut = TileMap.FromLevelAsset("Kentta1");
102       
103        Camera.StayInLevel = true;
104        Camera.Zoom(2);
105
106        ruudut.SetTileMethod('.', LuoLattia);
107        ruudut.SetTileMethod('#', LuoSeinä);
108        ruudut.SetTileMethod('1', LuoPelaaja1);
109        ruudut.SetTileMethod('2', LuoPelaaja2);
110        ruudut.SetTileMethod('Z', LuoZombi);
111        ruudut.Execute(50,50);
112    }
113
114    void LuoSeinä(Vector paikka, double leveys, double korkeus)
115    {
116        PhysicsObject Seinä = PhysicsObject.CreateStaticObject(leveys, korkeus);
117        Seinä.Position = paikka;
118        Seinä.Shape = Shape.Rectangle;
119        Seinä.Color = Color.Gray;
120        Add(Seinä);
121        Seinä.CollisionIgnoreGroup = 1;
122    }
123
124    void LuoLattia(Vector paikka, double leveys, double korkeus)
125    {
126        PhysicsObject Lattia = PhysicsObject.CreateStaticObject(leveys, korkeus);
127        Lattia.Position = paikka;
128        Lattia.IgnoresCollisionResponse = true;
129
130        Add(Lattia);
131        Lattia.CollisionIgnoreGroup = 1;
132    }
133
134    void LuoPelaaja1(Vector paikka, double leveys, double korkeus)
135    {
136        PhysicsObject Pelaaja1 = new PhysicsObject(leveys, korkeus);
137        Pelaaja1.Position = paikka;
138        Pelaaja1.Shape = Shape.Circle;
139        Pelaaja1.Image = LoadImage("Player");
140        Pelaaja1.Image.ReplaceColor(Color.White, PelaajanVari);
141        Add(Pelaaja1);
142        Camera.Follow(Pelaaja1);
143
144        ControllerOne.Listen(Button.DPadLeft, ButtonState.Down,
145  LiikutaPelaajaa, null, new Vector(-1000, 0), Pelaaja1);
146        ControllerOne.Listen(Button.DPadRight, ButtonState.Down,
147          LiikutaPelaajaa, null, new Vector(1000, 0), Pelaaja1);
148        ControllerOne.Listen(Button.DPadUp, ButtonState.Down,
149          LiikutaPelaajaa, null, new Vector(0, 1000), Pelaaja1);
150        ControllerOne.Listen(Button.DPadDown, ButtonState.Down,
151          LiikutaPelaajaa, null, new Vector(0, -1000), Pelaaja1);
152
153        Pelaaja1.LinearDamping = 0.80;
154        Pelaaja1.MaxVelocity = 200;
155        Pelaaja1.Restitution = 0.0;
156
157    }
158
159    void LuoPelaaja2(Vector paikka, double leveys, double korkeus)
160    {
161        PhysicsObject Pelaaja2 = new PhysicsObject(leveys, korkeus);
162        Pelaaja2.Position = paikka;
163        Pelaaja2.Image = LoadImage("Player");
164        Pelaaja2.Image.ReplaceColor(Color.White, PelaajanVari);
165        Add(Pelaaja2);
166
167        ControllerTwo.Listen(Button.DPadLeft, ButtonState.Down,
168          LiikutaPelaajaa, null, new Vector(-1000, 0), Pelaaja2);
169        ControllerTwo.Listen(Button.DPadRight, ButtonState.Down,
170          LiikutaPelaajaa, null, new Vector(1000, 0), Pelaaja2);
171        ControllerTwo.Listen(Button.DPadUp, ButtonState.Down,
172          LiikutaPelaajaa, null, new Vector(0, 1000), Pelaaja2);
173        ControllerTwo.Listen(Button.DPadDown, ButtonState.Down,
174          LiikutaPelaajaa, null, new Vector(0, -1000), Pelaaja2);
175
176        Pelaaja2.LinearDamping = 0.80;
177        Pelaaja2.MaxVelocity = 200;
178        Pelaaja2.Restitution = 0.0;
179
180    }
181
182    void LuoZombi(Vector paikka, double leveys, double korkeus)
183    {
184        PhysicsObject Zombi = new PhysicsObject(leveys, korkeus);
185        Zombi.Position = paikka;
186        Zombi.Shape = Shape.Rectangle;
187        Zombi.Color = Color.Gray;
188        Add(Zombi);
189    }
190
191    void LiikutaPelaajaa(Vector vektori, PhysicsObject pelaaja)
192    {
193        pelaaja.Push(vektori);
194    }
195
196    void Survival()
197    { 
198     
199    }
200
201    void Highscore()
202    {
203        top10.Color = Color.AshGray;
204        top10.Show();
205        top10.HighScoreWindow.Closed += delegate { alkuValikko(); };
206    }
207
208    void takaisinValikkoon(int valinta)
209    {
210        switch (valinta)
211        {
212            case 0:
213                alkuValikko();
214                break;
215        }
216    }
217}
Note: See TracBrowser for help on using the repository browser.