source: 2016/24/AldoG/TheAdwentureOf/TheAdwentureOf/TheAdwentureOf/TheAdwentureOf.cs @ 7394

Revision 7394, 4.3 KB checked in by alaxgroe, 3 years ago (diff)

laittanut nakomattomia blokkeja ja lisanyt ukkelin

Line 
1using System;
2using System.Collections.Generic;
3using Jypeli;
4using Jypeli.Assets;
5using Jypeli.Controls;
6using Jypeli.Effects;
7using Jypeli.Widgets;
8
9public class TheAdwentureOf : PhysicsGame
10{
11
12    List<Vector> sijainnit = new List<Vector>();
13    PhysicsObject hahmo;
14    void LuoPalikka(Vector paikka, double leveys, double korkeus)
15    {
16
17        PhysicsObject palikka = PhysicsObject.CreateStaticObject(leveys, korkeus);
18        palikka.Position = paikka;
19        palikka.Shape = Shape.Rectangle;
20        palikka.Color = Color.LightBlue;
21        Add(palikka);
22
23
24    }
25
26    Image hahmoKuva = LoadImage("KUVA");
27
28
29
30    public override void Begin()
31    {
32        TileMap kentta = TileMap.FromLevelAsset("kentta1");
33        kentta.SetTileMethod('*', LuoTahti, Color.LightBlue);
34        kentta.SetTileMethod('#', LisaaTaso, Color.LightBlue);
35        kentta.SetTileMethod('s', LisaaHahmo, Color.LightBlue);
36        kentta.SetTileMethod('h', LisaaVihollinen, Color.LightBlue);
37        kentta.SetTileMethod('.', LisaaSpawn, Color.LightBlue);
38
39        kentta.SetTileMethod('P', LuoPiikki, Color.Gold);
40        kentta.Execute();
41
42       
43
44    }
45
46    void LisaaSpawn(Vector paikka, double leveys, double korkeus, Color vari)
47    {
48        sijainnit.Add(paikka);
49    }
50
51    void LisaaTaso(Vector paikka, double leveys, double korkeus, Color vari)
52    {
53        PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus);
54        taso.Position = paikka;
55        taso.Color = vari;
56        Add(taso);
57    }
58
59    void LisaaHahmo(Vector paikka, double leveys, double korkeus, Color vari)
60    {
61
62        hahmo = new PhysicsObject(leveys, korkeus);
63        hahmo.Position = paikka;
64
65        hahmo.Color = vari;
66        LuoOhjain();
67        Add(hahmo);
68        AddCollisionHandler(hahmo, "aarre", ArvoUusiPaikka);
69       
70
71        hahmo.Image = hahmoKuva;
72    }
73
74    void ArvoUusiPaikka(PhysicsObject hahmo, PhysicsObject aarre)
75    {
76        aarre.Position = RandomGen.SelectOne<Vector>(sijainnit);
77    }
78
79    void LuoPiikki(Vector paikka, double leveys, double korkeus, Color vari)
80    {
81
82        PhysicsObject piikki = PhysicsObject.CreateStaticObject(leveys, korkeus);
83        piikki.Position = paikka;
84        piikki.Color = vari;
85        piikki.Tag = "aarre";
86        Add(piikki);
87
88    }
89    void LuoTahti(Vector paikka, double leveys, double korkeus, Color vari)
90    {
91
92        PhysicsObject tahti = PhysicsObject.CreateStaticObject(leveys, korkeus);
93        tahti.Position = paikka;
94        tahti.Color = Color.LightBlue;
95        Add(tahti);
96
97
98
99
100    }
101    void LisaaVihollinen(Vector paikka, double leveys, double korkeus, Color vari)
102    {
103
104        PhysicsObject Vihollinen = PhysicsObject.CreateStaticObject(leveys, korkeus);
105        Vihollinen.Position = paikka;
106        Vihollinen.Color = Color.LightBlue;
107
108        // RandomMoverBrain satunnaisAivot = new RandomMoverBrain(200);
109        //satunnaisAivot.ChangeMovementSeconds = 3;
110
111
112        ///  Vihollinen.Brain = satunnaisAivot;
113        Add(Vihollinen);
114
115
116
117        // Tapahtuma, joka tapahtuu kun ollaan lähellä kohdetta
118        //  seuraajanAivot.TargetClose += mitaTapahtuuKunOllaanLahella;
119    }
120    void LuoOhjain()
121    {
122
123        Keyboard.Listen(Key.Left, ButtonState.Down, LiikutaPelaajaa, null, new Vector(-1000, 0));
124        Keyboard.Listen(Key.Left, ButtonState.Released, LiikutaPelaajaa, null, new Vector(-0, 0));
125
126        Keyboard.Listen(Key.Right, ButtonState.Down, LiikutaPelaajaa, null, new Vector(1000, 0));
127        Keyboard.Listen(Key.Right, ButtonState.Released, LiikutaPelaajaa, null, new Vector(0, 0));
128
129
130        Keyboard.Listen(Key.Up, ButtonState.Down, LiikutaPelaajaa, null, new Vector(0, 1000));
131
132
133
134        Keyboard.Listen(Key.Up, ButtonState.Released, LiikutaPelaajaa, null, new Vector(0, 0));
135        Keyboard.Listen(Key.Down, ButtonState.Down, LiikutaPelaajaa, null, new Vector(0, -1000));
136
137
138
139        Keyboard.Listen(Key.Down, ButtonState.Released, LiikutaPelaajaa, null, new Vector(0, -0));
140    }
141    void LiikutaPelaajaa(Vector vektori)
142    {
143
144        hahmo.Push(vektori);
145    }
146}
147     
148   
149
150   
151
152         
153
154
155
156
157
158       
159
160   
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
Note: See TracBrowser for help on using the repository browser.