source: 2011/31/JesseP/pelini/pelini/pelini/Peli.cs @ 2534

Revision 2534, 4.6 KB checked in by jemapalm, 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;
8
9public class Peli : PhysicsGame
10{
11
12    PhysicsObject pelaaja1;
13    PhysicsObject pelaaja2;
14    IntMeter pelaajan1Pisteet;
15    IntMeter pelaajan2Pisteet;
16    PhysicsObject maali;
17    PhysicsObject maali2;
18    PhysicsObject pallo;
19
20    public override void Begin()
21    {
22
23        luohahmot();
24        LuoKentta();
25        asetaohjaimet();
26        Lisaalaskurit();
27       
28    }
29
30    void LuoKentta()
31    {
32       
33        Level.BackgroundColor = Color.Green;
34
35        PhysicsObject vasenReuna = Level.CreateLeftBorder();
36        vasenReuna.Restitution = 1.0;
37        vasenReuna.IsVisible = false;
38
39        PhysicsObject oikeaReuna = Level.CreateRightBorder();
40        oikeaReuna.Restitution = 1.0;
41        oikeaReuna.IsVisible = false;
42
43        PhysicsObject yläReuna = Level.CreateTopBorder();
44        yläReuna.Restitution = 1.0;
45        yläReuna.IsVisible = false;
46
47        PhysicsObject alaReuna = Level.CreateBottomBorder();
48        alaReuna.Restitution = 1.0;
49        alaReuna.IsVisible = false;
50
51        Camera.ZoomToLevel();
52        Luomaali(Level.Left + 20.0, 0.0);
53        luomaali2(Level.Right - 20.0, 0.0);
54
55       
56
57
58 
59
60    }
61
62
63   
64
65    void luohahmot()
66    {
67        pelaaja1 = new PhysicsObject(40.0, 40.0);
68        Add(pelaaja1);
69        pelaaja1.X = 200;
70        pelaaja1.Color = Color.Black;
71        pelaaja2 = new PhysicsObject(40.0, 40.0);
72        Add(pelaaja2);
73        pelaaja2.X = -200;
74
75       
76
77    }
78
79    void luopallo()
80    { 
81    PhysicsObject pallo = new PhysicsObject(40,40)
82    pallo.Color = Color.Yellow
83    }
84
85    void asetaohjaimet()
86    {     
87       
88        Keyboard.Listen(Key.Left, ButtonState.Down, LiikutaPelaajaa,"Pelaaja liikkuu vasemmalle", new Vector(-500, 0));
89        Keyboard.Listen(Key.Right, ButtonState.Down, LiikutaPelaajaa, "Pelaaja liikkuu oikealle", new Vector(500,0));
90        Keyboard.Listen(Key.Down, ButtonState.Down, LiikutaPelaajaa, "Pelaaja liikkuu alas", new Vector (0, -500));
91        Keyboard.Listen(Key.Up, ButtonState.Down, LiikutaPelaajaa, "Pelaaja liikkuu ylös", new Vector(0, 500));
92
93        Keyboard.Listen(Key.A, ButtonState.Down, LiikutaPelaajaa2, "Pelaaja liikkuu vasemmalle", new Vector(-500, 0));
94        Keyboard.Listen(Key.D, ButtonState.Down, LiikutaPelaajaa2, "Pelaaja liikkuu oikealle", new Vector(500, 0));
95        Keyboard.Listen(Key.S, ButtonState.Down, LiikutaPelaajaa2, "Pelaaja liikkuu alas", new Vector(0, -500));
96        Keyboard.Listen(Key.W, ButtonState.Down, LiikutaPelaajaa2, "Pelaaja liikkuu ylös", new Vector(0, 500));
97
98        Keyboard.Listen(Key.Escape, ButtonState.Pressed, Exit, "Poistu");
99        Keyboard.Listen(Key.F1, ButtonState.Pressed, ShowControlHelp, "Näytä ohjeet");
100
101    }
102
103   
104void LiikutaPelaajaa(Vector vektori)
105    {
106        pelaaja1.Push(vektori);
107       
108    }
109
110void LiikutaPelaajaa2(Vector vektori)
111{
112    pelaaja2.Push(vektori);
113}
114void Luomaali(double x, double y)
115{
116    PhysicsObject maali = PhysicsObject.CreateStaticObject(20.0, 100.0);
117    maali.Shape = Shape.Rectangle;
118    maali.X = Level.Left + 20.0;
119    maali.Y = 0.0;
120    maali.Restitution = 1.0;
121    maali.Tag = "maali";
122    Add(maali);}
123
124    void luomaali2(double x, double y)
125
126    {   PhysicsObject maali2 = PhysicsObject.CreateStaticObject(20.0, 100.0);
127    maali2.Shape = Shape.Rectangle;
128    maali2.X = Level.Right - 20.0;
129    maali2.Y = 0.0;
130    maali2.Restitution = 1.0;
131    maali2.Tag = "maali2";
132    Add(maali2);
133    maali2.Color = Color.Black;
134   
135   
136    }
137
138    IntMeter LuoPisteLaskuri(double x, double y)
139    {
140        IntMeter laskuri = new IntMeter(0);
141        laskuri.MaxValue = 10;
142        Label naytto = new Label();
143        naytto.BindTo(laskuri);
144        naytto.X = x;
145        naytto.Y = y;
146        naytto.TextColor = Color.White;
147        naytto.BorderColor = Level.BackgroundColor;
148        naytto.Color = Level.BackgroundColor;
149        Add(naytto);
150        return laskuri;
151    }
152
153void Lisaalaskurit()
154    {
155        pelaajan1Pisteet = LuoPisteLaskuri(Screen.Left + 100.0, Screen.Top - 100.0);
156        pelaajan2Pisteet = LuoPisteLaskuri(Screen.Right - 100.0, Screen.Top - 100.0);
157  }
158
159void KasittelePallonTormays(PhysicsObject pallo, PhysicsObject kohde)
160{
161    if (kohde.Tag.ToString() == "maali")
162    {
163        pelaajan2Pisteet.Value += 1;
164        pallo.Destroy();
165    }
166    else if (kohde.Tag.ToString() == "maali2")
167    {
168        pelaajan1Pisteet.Value += 1;
169        pallo.Destroy();
170
171    }
172
173}
174
175}
176
Note: See TracBrowser for help on using the repository browser.