Changeset 3668 for 2012/27/LeeviN/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1.cs
- Timestamp:
- 2012-07-06 12:46:33 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
2012/27/LeeviN/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1.cs
r3612 r3668 9 9 public class Tasohyppelypeli1 : PhysicsGame 10 10 { 11 ScoreList topLista = new ScoreList(10, false, 0); 12 13 IntMeter pisteLaskuri; 11 14 const double nopeus = 200; 12 15 const double hyppyNopeus = 1000; … … 18 21 Image kolikkoKuva = LoadImage("tahti"); 19 22 Image orkkiKuva = LoadImage("Koala"); 20 SoundEffect maaliAani = LoadSoundEffect("maali ");21 23 SoundEffect maaliAani = LoadSoundEffect("maaliaani"); 24 Image MaaliKuva = LoadImage("maali"); 22 25 int kenttanro = 1; 23 26 24 27 public override void Begin() 25 28 { 29 if (DataStorage.Exists("pisteet.xml")) 30 topLista = DataStorage.Load<ScoreList>(topLista, "pisteet.xml"); 31 // ... 32 33 26 34 MultiSelectWindow alkuValikko = new MultiSelectWindow("Pelin alkuvalikko", 27 "Aloita peli", "Tasot", "Parhaat pisteet", "Lopeta");35 "Aloita peli", "Tasot", "Parhaat pisteet", "Lopeta"); 28 36 Add(alkuValikko); 29 37 alkuValikko.ItemSelected += PainettiinValikonNappia; … … 31 39 MediaPlayer.Play("taustamusiikki"); 32 40 MediaPlayer.IsRepeating = true; 33 34 41 } 35 42 … … 45 52 46 53 kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 47 54 48 55 Level.CreateBorders(); 49 56 Level.Background.CreateGradient(Color.White, Color.Blue); … … 52 59 void Lisaapiikki(Vector paikka, double leveys, double korkeus) 53 60 { 54 PhysicsObject piikki = PhysicsObject.CreateStaticObject(leveys, korkeus -10);61 PhysicsObject piikki = PhysicsObject.CreateStaticObject(leveys, korkeus - 10); 55 62 piikki.Position = paikka; 56 63 piikki.Tag = "piikki"; … … 82 89 Maali.Position = paikka; 83 90 Maali.Tag = "Maali"; 91 Maali.Image = MaaliKuva; 84 92 Add(Maali); 85 93 } … … 93 101 AddCollisionHandler(pelaaja1, "Maali", TormaaMaaliin); 94 102 Add(pelaaja1); 103 pelaaja1.Tag = "pelaaja1"; 95 104 pelaaja1.Weapon = new PlasmaCannon(20, 5); 96 105 pelaaja1.Weapon.InfiniteAmmo = true; … … 108 117 orkki.Position = paikka; 109 118 orkki.Mass = 4.0; 110 orkki.Image = orkkiKuva;119 orkki.Image = orkkiKuva; 111 120 Add(orkki); 112 121 113 122 orkki.Tag = "orkki"; 114 123 115 FollowerBrain seuraajaAivot = new FollowerBrain( pelaaja1);124 FollowerBrain seuraajaAivot = new FollowerBrain("pelaaja1"); 116 125 orkki.Brain = seuraajaAivot; 117 126 seuraajaAivot.Speed = 1000; … … 161 170 } 162 171 163 void TormaaKolikkoon 172 void TormaaKolikkoon(PhysicsObject hahmo, PhysicsObject tahti) 164 173 { 165 174 maaliAani.Play(); 166 175 MessageDisplay.Add("Keräsit Kolikon!"); 167 176 tahti.Destroy(); 168 177 pisteLaskuri.Value += 10; 169 178 } 170 179 void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) … … 182 191 { 183 192 case 0: 184 seuraavakentta();193 seuraavakentta(); 185 194 break; 186 195 case 1: 187 // ParhaatPisteet();196 Tasot(); 188 197 break; 189 198 case 2: 190 // Tasot(); 191 199 HighScoreWindow topIkkuna = new HighScoreWindow( 200 "Parhaat pisteet", 201 topLista ); 202 topIkkuna.Closed += TallennaPisteet; 203 Add( topIkkuna ); 204 205 break; 206 192 207 case 3: 193 208 Exit(); … … 196 211 } 197 212 213 void Tasot() 214 { 215 MultiSelectWindow tasoValikko = new MultiSelectWindow("Valitse taso", 216 "Taso 1", "Taso 2", "Taso 3"); 217 Add(tasoValikko); 218 tasoValikko.ItemSelected += delegate(int valinta) 219 { 220 switch (valinta) 221 { 222 case 0: 223 kenttanro = 1; 224 seuraavakentta(); 225 break; 226 case 1: 227 kenttanro = 2; 228 seuraavakentta(); 229 break; 230 case 2: 231 kenttanro = 3; 232 seuraavakentta(); 233 break; 234 } 235 }; 236 237 } 238 198 239 void seuraavakentta() 199 240 { … … 202 243 Gravity = new Vector(0, -1000); 203 244 204 if (kenttanro == 1) LuoKentta("kentta1");245 if (kenttanro == 1) LuoKentta("kentta1"); 205 246 else if (kenttanro == 2) LuoKentta("kentta2"); 206 247 else if (kenttanro == 3) LuoKentta("kentta3"); 207 248 208 249 LisaaNappaimet(); 250 LuoPistelaskuri(); 209 251 210 252 Camera.Follow(pelaaja1); … … 218 260 pelaaja1.Destroy(); 219 261 220 } void TormaaMaaliin(PhysicsObject hahmo, PhysicsObject Maali) 262 } 263 void TormaaMaaliin(PhysicsObject hahmo, PhysicsObject Maali) 221 264 { 222 265 kenttanro++; 223 266 seuraavakentta(); 224 267 } 225 } 268 void LuoPistelaskuri() 269 { 270 pisteLaskuri = new IntMeter(0); 271 272 Label pisteNaytto = new Label(); 273 pisteNaytto.X = Screen.Left + 100; 274 pisteNaytto.Y = Screen.Top - 100; 275 pisteNaytto.TextColor = Color.Black; 276 pisteNaytto.Color = Color.White; 277 278 pisteNaytto.BindTo(pisteLaskuri); 279 Add(pisteNaytto); 280 281 } 282 void TallennaPisteet(Window sender) 283 { 284 DataStorage.Save<ScoreList>(topLista, "pisteet.xml"); 285 286 MultiSelectWindow alkuValikko = new MultiSelectWindow("Pelin alkuvalikko", 287 "Aloita peli", "Tasot", "Parhaat pisteet", "Lopeta"); 288 Add(alkuValikko); 289 alkuValikko.ItemSelected += PainettiinValikonNappia; 290 } 291 292 293 } 294 295
Note: See TracChangeset
for help on using the changeset viewer.