source: 2011/23/vihakuli/ZomBiEs/ZomBiEs/ZomBiEs/Peli.cs @ 1838

Revision 1838, 2.2 KB checked in by vihakuli, 9 years ago (diff)
Line 
1using System;
2using System.Collections.Generic;
3using Jypeli;
4using Jypeli.Assets;
5using Jypeli.Controls;
6using Jypeli.Effects;
7using Jypeli.Widgets;
8
9public class Peli : PhysicsGame
10{
11    const int ruudunLeveys = 50;
12    const int ruudunKorkeus = 50;
13    PlatformCharacter ukko;
14   
15
16    public override void Begin()
17    {
18        SetWindowSize(800, 600);
19        TeeKentta();
20    }
21
22    void TeeKentta()
23    {
24        TileMap ruudut = TileMap.FromFile("kentta.txt");
25        ruudut.SetTileMethod('=', LuoPalikka);
26        ruudut.SetTileMethod('s', LuoSpawn);
27        ruudut.SetTileMethod('z', LuoZombi);
28        ruudut.Execute(ruudunLeveys, ruudunKorkeus);
29        Gravity = new Vector(0.0, -800.0);
30    }
31
32    void LuoPalikka(Vector paikka, double leveys, double korkeus)
33    {
34        PhysicsObject palikka = PhysicsObject.CreateStaticObject(50.0, 50.0);
35        palikka.Color = Color.Black;
36        palikka.Position = paikka;
37        Add(palikka);
38    }
39
40    void LuoSpawn(Vector paikka, double leveys, double korkeus)
41    {
42        PhysicsObject spawn = PhysicsObject.CreateStaticObject(50.0, 50.0);
43        spawn.Position = paikka;
44        TeeUkko(paikka);
45    }
46
47    void LuoZombi(Vector paikka, double leveys, double korkeus)
48    {
49        PhysicsObject zombiSpawn = PhysicsObject.CreateStaticObject(50, 50);
50        zombiSpawn.Position = paikka;
51        TeeZombi(paikka);
52    }
53
54    void TeeUkko(Vector paikka)
55    {
56        ukko = new PlatformCharacter(60,80);
57        ukko.Position = paikka;
58        Add(ukko);
59        Camera.Follow(ukko);
60        napit();
61    }
62
63    void TeeZombi(Vector paikka)
64    {
65        PlatformCharacter zombi = new PlatformCharacter(60, 80);
66        zombi.Position = paikka;
67        zombi.Color = Color.White;
68        Add(zombi);
69    }
70
71    void napit()
72    {
73        Keyboard.Listen(Key.Left, ButtonState.Down, LiikutaUkkoa, null, -600.0);
74        Keyboard.Listen(Key.Right, ButtonState.Down, LiikutaUkkoa, null, 600.0);
75        Keyboard.Listen(Key.Up, ButtonState.Pressed, Hyppaa, null);
76    }
77
78    void LiikutaUkkoa(double speed)
79    {
80        ukko.Walk(speed);
81    }
82
83    void Hyppaa()
84    {
85        ukko.Jump(600);
86    }
87}
Note: See TracBrowser for help on using the repository browser.