source: 2010/30/pesosant/War against the fat guy/Peli.cs @ 1393

Revision 1393, 2.8 KB checked in by pesosant, 11 years ago (diff)

csc

Line 
1using System;
2using Jypeli;
3using Jypeli.Widgets;
4using Jypeli.Assets;
5
6
7class Tasohyppely : PhysicsGame
8{
9    const int ruudunLeveys = 50;
10    const int ruudunKorkeus = 50;
11
12    const double nopeus = 200;
13    const double hyppyVoima = 3000;
14
15    PlatformCharacter pelaaja1;
16
17    protected override void Begin()
18    {
19        Gravity = new Vector(0, -1000);
20
21        luoKentta();
22        lisaaNappaimet();
23
24        Camera.Follow(pelaaja1);
25        Camera.ZoomFactor = 2.0;
26        Camera.StayInLevel = true;
27    }
28    void luoKentta()
29    {
30        TileMap ruudut = TileMap.FromFile("kentta.txt");
31        ruudut['-'] = LuoPalikka;
32        ruudut['v'] = LuoPahis;
33        ruudut.Insert(25, 50);
34
35        Level.CreateBottomBorder();
36        Level.Background.CreateGradient(Color.Brown, Color.Blue);
37        lisaaPelaajat();
38    }
39
40    PhysicsObject LuoPalikka()
41    {
42        PhysicsObject palikka = PhysicsObject.CreateStaticObject(50.0, 20.0);
43        return palikka;
44    }
45    PhysicsObject LuoPahis()
46    {
47        PhysicsObject pahis = PhysicsObject.CreateStaticObject(50.0, 20.0);
48        return pahis;
49
50    }
51
52
53    void lisaaTaso(double x, double y)
54    {
55        PhysicsObject taso = PhysicsObject.CreateStaticObject(100, 30);
56        taso.Color = Color.Black;
57        taso.X = x;
58        taso.Y = y;
59        Add(taso);
60    }
61
62    void lisaaPelaajat()
63    {
64        pelaaja1 = new PlatformCharacter(15, 30);
65        pelaaja1.Mass = 4.0;
66        pelaaja1.Image = LoadImage("MyTemp");
67        pelaaja1.X = 0;
68        pelaaja1.Y = Level.Bottom + 120;
69
70        Add(pelaaja1);
71    }
72
73    void lisaaNappaimet()
74    {
75        Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet");
76        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu pelistä");
77
78        Keyboard.Listen(Key.Left, ButtonState.Down, liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus);
79        Keyboard.Listen(Key.Right, ButtonState.Down, liikuta, "Liikkuu oikealle", pelaaja1, nopeus);
80        Keyboard.Listen(Key.Up, ButtonState.Pressed, hyppaa, "Hyppää", pelaaja1, hyppyVoima);
81
82        ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä");
83
84        ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, liikuta, "Pelaaja liikkuu vasemmalle", pelaaja1, -nopeus);
85        ControllerOne.Listen(Button.DPadRight, ButtonState.Down, liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus);
86        ControllerOne.Listen(Button.A, ButtonState.Pressed, hyppaa, "Pelaaja hyppää", pelaaja1, hyppyVoima);
87    }
88
89    void liikuta(PlatformCharacter hahmo, double nopeus)
90    {
91        hahmo.Walk(nopeus);
92    }
93
94    void hyppaa(PlatformCharacter hahmo, double voima)
95    {
96        hahmo.Jump(voima);
97    }
98
99}
Note: See TracBrowser for help on using the repository browser.