source: 2012/26/MikaL/Zombie Survival/Zombie Survival/Zombie Survival/Zombie_Survival.cs @ 3283

Revision 3283, 8.7 KB checked in by mitokalu, 9 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 Zombie_Survival : PhysicsGame
10{
11    PhysicsObject p1;
12    PhysicsObject p2;
13    PhysicsObject z1;
14        IntMeter killLaskuri;
15        IntMeter rahaLaskuri;
16
17    AssaultRifle pistol1;
18    AssaultRifle pistol2;
19
20
21    Vector nopeusVasen = new Vector(-300, 0);
22    Vector nopeusOikea = new Vector(300, 0);
23    Vector nopeusYlos = new Vector(0, 200);
24    Vector nopeusAlas = new Vector(0, -200);
25    //Map
26    Image map = LoadImage("map");
27    //Aseet
28    Image miniak = LoadImage("miniak47");
29    //player 1
30    Image p1_oikea = LoadImage("p1_oikea_new");
31    Image p1_vasen = LoadImage("p1_vasen");
32    Image p1_ylos = LoadImage("p1_ylos");
33    Image p1_alas = LoadImage("p1_alas");
34    //player 2
35    Image p2_oikea = LoadImage("p2_oikea");
36    Image zombie_skin = LoadImage("zombie_skin");
37
38    public override void Begin()
39    {
40        SetWindowSize(1280, 1024, false);
41        //Valikko();
42        //player1();
43        //player2();
44        LuoMap();
45        Zombie();
46        controls();
47        ui();
48                LuoKillLaskuri();
49                LuoRahalaskuri();
50        //ZombieSpawn();
51
52        //PhoneBackButton.Listen(ConfirmExit, "Lopeta peli");
53    }
54    void LuoMap()
55    {
56        SetWindowSize(1280, 1024, false);
57        ColorTileMap ruudut = ColorTileMap.FromLevelAsset("map");
58        ruudut.SetTileMethod(Color.Black, TeeSeina);
59        ruudut.SetTileMethod(Color.Red, TeeOvi);
60        ruudut.SetTileMethod(Color.Blue, TeeP1);
61        ruudut.SetTileMethod(Color.Yellow, TeeP2);
62        ruudut.Execute(20, 20);
63        Level.CreateBorders(false);
64        Camera.ZoomToLevel();
65       
66       
67    }
68    void TeeSeina(Vector paikka, double leveys, double korkeus)
69    {
70        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus);
71        taso.Position = paikka;
72        taso.Shape = Shape.Rectangle;
73        taso.Color = Color.Black;
74        Add(taso);
75
76    }
77    void TeeOvi(Vector paikka, double leveys, double korkeus)
78    {
79        PhysicsObject ovi = PhysicsObject.CreateStaticObject(leveys, korkeus);
80        ovi.Position = paikka;
81        ovi.Shape = Shape.Rectangle;
82        ovi.Color = Color.Red;
83        Add(ovi);
84    }
85    void TeeP1(Vector paikka, double leveys, double korkeus)
86    {
87        p1 = new PhysicsObject(45, 45);
88        p1.Shape = Shape.Circle;
89        p1.Image = p1_oikea;
90        p1.CanRotate = false;
91        p1.Restitution = 0;
92        p1.Position = paikka;
93        Add(p1);
94        pistol1 = new AssaultRifle(20, 20);
95        pistol1.Image = null;
96        pistol1.Color = Color.Transparent;
97        p1.Add(pistol1);
98    }
99    void TeeP2(Vector paikka, double leveys, double korkeus)
100    {
101        p2 = new PhysicsObject(45, 45);
102        p2.Shape = Shape.Circle;
103        p2.Image = p2_oikea;
104        p2.CanRotate = false;
105        p2.Position = paikka;
106        p2.Restitution = 0;
107        Add(p2);
108        pistol2 = new AssaultRifle(20, 20);
109        pistol2.Image = null;
110        pistol2.Color = Color.Transparent;
111        p2.Add(pistol2);
112    }
113    void ZombieSpawn(Vector paikka, double leveys, double korkeus)
114    {
115
116    }
117    //void player1()
118    //{
119    //    p1 = new PhysicsObject(45, 45);
120    //    p1.Shape = Shape.Circle;
121    //    p1.Image = p1_oikea;
122    //    p1.CanRotate = false;
123    //    p1.Restitution = 0;
124
125    //}
126    //void player2()
127    //{
128    //    p2 = new PhysicsObject(45, 45);
129    //    p2.Shape = Shape.Circle;
130    //    p2.Image = p2_oikea;
131    //    p2.CanRotate = false;
132    //    p2.X = -50;
133    //    p2.Restitution = 0;
134    //}
135    void Zombie()
136    {
137        z1 = new PhysicsObject(45, 38);
138        z1.X = 150;
139        z1.Shape = Shape.Circle;
140        z1.Image = zombie_skin;
141        z1.CanRotate = false;
142        z1.Restitution = 0;
143        Add(z1);
144 
145    }
146    void controls()
147    {
148        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
149
150        Keyboard.Listen(Key.W, ButtonState.Down, AsetaNopeus, null, p1, nopeusYlos);
151        Keyboard.Listen(Key.W, ButtonState.Released, AsetaNopeus, null, p1, Vector.Zero);
152
153        Keyboard.Listen(Key.A, ButtonState.Down, AsetaNopeus, null, p1, nopeusVasen);
154        Keyboard.Listen(Key.A, ButtonState.Released, AsetaNopeus, null, p1, Vector.Zero);
155
156        Keyboard.Listen(Key.S, ButtonState.Down, AsetaNopeus, null, p1, nopeusAlas);
157        Keyboard.Listen(Key.S, ButtonState.Released, AsetaNopeus, null, p1, Vector.Zero);
158
159        Keyboard.Listen(Key.D, ButtonState.Down, AsetaNopeus, null, p1, nopeusOikea);
160        Keyboard.Listen(Key.D, ButtonState.Released, AsetaNopeus, null, p1, Vector.Zero);
161
162        Keyboard.Listen(Key.Y, ButtonState.Pressed, Shoot, null);
163
164        //Keyboard.Listen(Key.R, ButtonState.Pressed, Reload, null, p1);
165
166        ControllerOne.Listen(Button.Start, ButtonState.Pressed, ConfirmExit, "Lopeta peli");
167
168        ControllerOne.Listen(Button.DPadUp, ButtonState.Down, AsetaNopeus, null, p2, nopeusYlos);
169        ControllerOne.Listen(Button.DPadUp, ButtonState.Released, AsetaNopeus, null, p2, Vector.Zero);
170
171        ControllerOne.Listen(Button.DPadDown, ButtonState.Down, AsetaNopeus, null, p2, nopeusAlas);
172        ControllerOne.Listen(Button.DPadDown, ButtonState.Released, AsetaNopeus, null, p2, Vector.Zero);
173
174        ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, AsetaNopeus, null, p2, nopeusVasen);
175        ControllerOne.Listen(Button.DPadLeft, ButtonState.Released, AsetaNopeus, null, p2, Vector.Zero);
176
177        ControllerOne.Listen(Button.DPadRight, ButtonState.Down, AsetaNopeus, null, p2, nopeusOikea);
178        ControllerOne.Listen(Button.DPadRight, ButtonState.Released, AsetaNopeus, null, p2, Vector.Zero);
179
180        //ControllerOne.Listen(Button.A, ButtonState.Released, AvaaOvi, null);
181        ControllerOne.Listen(Button.RightShoulder, ButtonState.Down, Shoot, null);
182
183    }
184    void ui()
185    {
186
187        //p1_hp
188        DoubleMeter p1_hp = new DoubleMeter(100);
189        Label player1 = new Label("Player 1");
190        player1.X = Screen.Left + 40;
191        player1.Y = Screen.Top - 15;
192        p1_hp.MaxValue = 100;
193        ProgressBar p1_hpPalkki = new ProgressBar(170, 20);
194        p1_hpPalkki.BindTo(p1_hp);
195        p1_hpPalkki.X = Screen.Left + 180;
196        p1_hpPalkki.Y = Screen.Top - 15;
197        p1_hpPalkki.BarImage = LoadImage("fullbar");
198        Add(player1);
199        Add(p1_hpPalkki);
200
201        //p2_hp
202        DoubleMeter p2_hp = new DoubleMeter(100);
203        Label player2 = new Label("Player 2");
204        player2.X = Screen.Left + 40;
205        player2.Y = Screen.Top - 40;
206        p2_hp.MaxValue = 100;
207        ProgressBar p2_hpPalkki = new ProgressBar(170, 20);
208        p2_hpPalkki.BindTo(p2_hp);
209        p2_hpPalkki.X = Screen.Left + 180;
210        p2_hpPalkki.Y = Screen.Top - 40;
211        p2_hpPalkki.BarImage = LoadImage("fullbar");
212        Add(p2_hpPalkki);
213        Add(player2);
214
215        //Ase ja ammo
216
217
218               
219
220               
221    }
222       
223        void LuoKillLaskuri()
224        {
225        killLaskuri = new IntMeter(0);
226        Label killNaytto = new Label();
227        Label Kills = new Label("Kills:");
228        Kills.X = Screen.Right - 190;
229        Kills.Y = Screen.Top - 15;
230        killNaytto.X = Screen.Right - 100;
231        killNaytto.Y = Screen.Top - 15;
232        killNaytto.TextColor = Color.Black;
233        killNaytto.BindTo(killLaskuri);
234        Add(Kills);
235        Add(killNaytto);
236        }
237
238    void LuoRahalaskuri()
239    {
240        rahaLaskuri = new IntMeter(500);
241        Label rahaNaytto = new Label();
242        Label Money = new Label("Money:");
243        Money.X = Screen.Right - 201;
244        Money.Y = Screen.Top - 39;
245        rahaNaytto.X = Screen.Right - 100;
246        rahaNaytto.Y = Screen.Top - 40;
247        rahaNaytto.TextColor = Color.Black;
248        rahaNaytto.BindTo(rahaLaskuri);
249        Add(Money);
250        Add(rahaNaytto);
251    }
252    void AsetaNopeus(PhysicsObject player, Vector nopeus)
253    {
254        player.Velocity = nopeus;
255        if (nopeus.Magnitude == 0)
256        {
257            return;
258        }
259        player.Angle = nopeus.Angle;
260    }
261    void Shoot()
262    {
263        //ase.Shoot();
264        ControllerOne.Vibrate(0.2, 0.2, 1, 1, 0.2);
265    }
266    void ZombieHit()
267    {
268        //LOL
269    }
270    void LuoAikaLaskuri()
271    {
272        Timer aikaLaskuri = new Timer();
273        aikaLaskuri.Start();
274
275        Label aikaNaytto = new Label();
276        aikaNaytto.TextColor = Color.Red;
277        aikaNaytto.DecimalPlaces = 1;
278        aikaNaytto.BindTo(aikaLaskuri.SecondCounter);
279        Add(aikaNaytto);
280    }
281    void Aseet()
282    {
283        // = new AssaultRifle(20, 20);
284    }
285
286}
Note: See TracBrowser for help on using the repository browser.