Changeset 162
- Timestamp:
- 2009-07-24 11:35:57 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
aleksi_h/Pallopeli/Peli.cs
r136 r162 31 31 PhysicsObject maali; 32 32 33 Timer sekuntiKello = new Timer(); 34 35 int kenttaNro; 36 int keratytTahdet = 0; 37 int sekunnit; 33 int keratytKultakimpaleet = 0; 38 34 39 35 // monesko kenttä on menossa … … 46 42 SetWindowSize(true); 47 43 48 // Asetetaan kentän numero nollaksi, jota kasvatetaan kentän latauksessa (aina siis vähintään 1)49 kenttaNro = 0;50 51 44 DrawPerimeter = false; // ei haluta piirtää kentän reunoja 52 45 … … 68 61 MessageDisplay.Clear(); 69 62 70 kenttaNro = 0; 71 keratytTahdet = 0; 72 73 Level = seuraavaKentta(); 74 75 sekuntiKello.Interval = 1; 76 sekuntiKello.Trigger += new Timer.TriggerHandler(paivita); 77 AddTimer(sekuntiKello); 78 sekuntiKello.Start(); 79 sekunnit = 0; 63 keratytKultakimpaleet = 0; 64 65 elamaLaskuri.Reset(); 66 Camera.Follow(pelaaja1); 67 68 Level = luoKentta(); 80 69 81 70 // Laitetaan peliohje näyttöön … … 95 84 96 85 } 97 98 void paivita(Timer sender)99 {100 ++sekunnit;101 }102 103 86 #endregion 104 87 … … 106 89 #region KentanLataus 107 90 108 Level seuraavaKentta() 109 { 91 Level luoKentta() 92 { 93 MessageDisplay.Clear(); 94 95 keratytKultakimpaleet = 0; 96 110 97 elamaLaskuri.Reset(); 111 kenttaNro += 1; // lisätään kenttänumeroa yhdellä112 Level seuraava = luoKentta();113 lisaaNappaimet();114 98 Camera.Follow(pelaaja1); 115 return seuraava; 116 } 117 118 Level luoKentta() 119 { 99 120 100 Level kentta = new Level(this, 2000, 1000); 121 101 kentta.CreateBorder(); … … 144 124 lisaaViholliset(kentta, 5); 145 125 126 lisaaNappaimet(); 127 Camera.Follow(pelaaja1); 128 146 129 return kentta; 147 130 } … … 161 144 pelaaja1.Y = kentta.Bottom + 120; 162 145 146 pelaaja1.Restitution = 0; 147 163 148 AddCollisionHandler(pelaaja1, osuiMaaliin); 164 149 … … 170 155 for (int i = 0; i < 20; i++) 171 156 { 172 PhysicsObject tahti= new PhysicsObject(0.005, Shapes.CreateCircle(12));173 tahti.X = RandomGen.NextDouble(-475.0, 475.0);174 tahti.Y = 400.0;175 tahti.Restitution = 1.0;176 tahti.Texture = Content.Load<Texture2D>("kultakimpale");177 AddCollisionHandler( tahti, keraa);178 kentta.Objects.Add( tahti);157 PhysicsObject kultakimpale = new PhysicsObject(0.005, Shapes.CreateCircle(12)); 158 kultakimpale.X = RandomGen.NextDouble(-475.0, 475.0); 159 kultakimpale.Y = 400.0; 160 kultakimpale.Restitution = 1.0; 161 kultakimpale.Texture = Content.Load<Texture2D>("kultakimpale"); 162 AddCollisionHandler(kultakimpale, keraa); 163 kentta.Objects.Add(kultakimpale); 179 164 180 165 } … … 234 219 { 235 220 PlatformCharacter hahmo = e.Parameter0 as PlatformCharacter; 236 Vector2D voima = e.Parameter1.ToVector2D(); 237 hahmo.Walk(e.Time, voima); 221 Vector2D voima = e.Parameter1.ToVector2D(); 222 223 hahmo.Walk(e.Time, voima); 238 224 return false; 239 225 } … … 267 253 if (collision.Other.Tag == "maali") 268 254 { 269 if (keratyt Tahdet == 20)255 if (keratytKultakimpaleet == 20) 270 256 { 271 257 this.PlaySound("maali"); … … 273 259 elamaNaytto.Visible = false; 274 260 275 MessageDisplay.TextColor = Color. White;261 MessageDisplay.TextColor = Color.Black; 276 262 MessageDisplay.Add("Voitit pelin"); 277 MessageDisplay.Add("Sekunteja kului: " + sekunnit.ToString());278 263 MessageDisplay.Add("Uusi peli painamalla Enter"); 279 264 MessageDisplay.Add("Poistu painamalla ESC"); 265 266 Level.BackgroundColor = Color.Yellow; 280 267 } 281 268 } … … 283 270 } 284 271 285 // Kerää tähden ja antaa pisteen272 // Kerää kultakimpaleen 286 273 void keraa(Collision collision) 287 274 { … … 292 279 293 280 this.PlaySound("kerays", -0.5, 0.5); 294 ++keratyt Tahdet;295 296 if (keratyt Tahdet == 20)281 ++keratytKultakimpaleet; 282 283 if (keratytKultakimpaleet == 20) 297 284 { 298 285 maali.Visible = true; … … 308 295 if (collision.Other == pelaaja1) 309 296 { 310 // pieni värinä törmäyksestä311 Controls.GameControllers[PlayerIndex.One].Vibrate(0.5, 0.5, 0.0, 0.0, 0.1);312 297 313 298 elamaLaskuri.Value -= 1; … … 331 316 332 317 MessageDisplay.Add("Pallo puhkesi"); 333 MessageDisplay.Add("Sekunteja kului: " + sekunnit.ToString());334 318 MessageDisplay.Add("Uusi peli painamalla Enter"); 335 319 MessageDisplay.Add("Poistu painamalla ESC");
Note: See TracChangeset
for help on using the changeset viewer.