source: 2016/23/ohjaajat/Punasininen/Punasininen/Punasininen/Punasininen.cs @ 7182

Revision 7182, 3.0 KB checked in by jotapoti, 3 years ago (diff)

kentän lataus, kontrollien kuuntelijat lisätty

Line 
1using System;
2using System.Collections.Generic;
3using Jypeli;
4using Jypeli.Assets;
5using Jypeli.Controls;
6using Jypeli.Effects;
7using Jypeli.Widgets;
8
9public class Player : PlatformCharacter
10{
11
12    public Player(double leveys, double korkeus, Image pic, Color color)
13        : base(leveys, korkeus)
14    {
15        Image = pic;
16        Color = color;
17    }
18}
19
20public class Punasininen : PhysicsGame
21{
22    const double nopeus = 200;
23    const double hyppyNopeus = 750;
24    const int RUUDUN_KOKO = 40;
25
26    Player blue;
27    Player red; 
28
29    Image bluepic;
30    Image redpic;
31
32    public override void Begin()
33    {
34        //Gravity = new Vector(0, -1000);
35
36        CreateLevel();
37        AddControls();
38
39    }
40
41    void CreateLevel()
42    {
43        ColorTileMap map = ColorTileMap.FromLevelAsset("dungeon1");
44        map.SetTileMethod(Color.Black, LisaaTaso);
45        map.SetTileMethod(Color.FromHexCode("#FF0026FF"), delegate(Vector paikka, double leveys, double korkeus) { blue = CreatePlayer(paikka, leveys, korkeus, bluepic, Color.Blue); });
46        map.SetTileMethod(Color.Red, delegate(Vector paikka, double leveys, double korkeus) { red = CreatePlayer(paikka, leveys, korkeus, redpic, Color.Red); });
47        map.Execute(RUUDUN_KOKO, RUUDUN_KOKO);
48
49        Camera.ZoomToAllObjects();
50
51        Level.Background.Color = Color.Black;
52
53    }
54
55    void LisaaTaso(Vector paikka, double leveys, double korkeus)
56    {
57        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus);
58        taso.Position = paikka;
59        taso.Color = Color.Green;
60        Add(taso);
61    }
62
63    Player CreatePlayer(Vector paikka, double leveys, double korkeus, Image playerspic, Color playersColor)
64    {
65        Player player = new Player(leveys, korkeus, playerspic, playersColor);
66        player.Position = paikka;
67        Add(player);
68        return player;
69    }
70
71    void AddControls()
72    {
73        ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä");
74
75        ControllerOne.ListenAnalog(AnalogControl.LeftStick, 0.1, Move, "Liikuta pelaajaa", red);
76        ControllerOne.Listen(Button.A, ButtonState.Pressed, Jump, "Pelaaja hyppää", red, hyppyNopeus);
77        ControllerOne.ListenAnalog(AnalogControl.RightStick, 0.1, Aim, "Tähtää", red);
78
79        ControllerTwo.ListenAnalog(AnalogControl.LeftStick, 0.1, Move, "Liikuta pelaajaa", blue);
80        ControllerTwo.Listen(Button.A, ButtonState.Pressed, Jump, "Pelaaja hyppää", blue, hyppyNopeus);
81        ControllerOne.ListenAnalog(AnalogControl.RightStick, 0.1, Aim, null, blue);
82
83        Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Ohjeet");
84        Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta");
85    }
86
87    void Move(AnalogState tatinTila, Player player)
88    {
89
90    }
91
92    void Jump(Player player, double speed)
93    {
94
95    }
96
97    void Aim(AnalogState tatinTila, Player player)
98    {
99
100    }
101
102
103}
Note: See TracBrowser for help on using the repository browser.