Changeset 3327 for 2012/26/FanniO
- Timestamp:
- 2012-06-28 15:02:10 (7 years ago)
- Location:
- 2012/26/FanniO/Sailtilyousink/Sailtilyousink
- Files:
-
- 4 added
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
2012/26/FanniO/Sailtilyousink/Sailtilyousink/Sailtilyousink/Sailtilyousink.cs
r3285 r3327 15 15 Image verkonKuva = LoadImage("verkko"); 16 16 Image arkunKuva = LoadImage("arkku"); 17 Image matalankuva = LoadImage("matala"); 18 Image Mveneenkuva = LoadImage("Mvene"); 19 Image kalankuva = LoadImage("kala"); 20 Image vasarankuva = LoadImage("vasara"); 17 21 18 22 Vector nopeusoikea = new Vector(400, 0); … … 23 27 24 28 25 PhysicsObject vene; 29 PhysicsObject vene1; 30 PhysicsObject vene2; 26 31 DoubleMeter elamamittari; 32 DoubleMeter elamamittari2; 27 33 PhysicsObject rengas; 28 34 PhysicsObject kivi; 29 35 PhysicsObject verkko; 30 36 PhysicsObject arkku; 37 PhysicsObject matala; 38 PhysicsObject Mvene; 39 PhysicsObject kala; 40 PhysicsObject vasara; 31 41 IntMeter pisteet; 32 42 IntMeter merimailit; 43 IntMeter loppupoint; 44 IntMeter pisteet2; 45 IntMeter merimailit2; 46 47 48 ScoreList toplista = new ScoreList(5,false,0); 33 49 34 50 … … 38 54 public override void Begin() 39 55 { 40 56 if (DataStorage.Exists("point.xml")) 57 toplista=DataStorage.Load<ScoreList>(toplista, "point.xml"); 41 58 IsMouseVisible = true; 42 MultiSelectWindow alkuvalikko = new MultiSelectWindow("Sail 'Til You Sink", "Aloita peli", "Parhaat pisteet", "Lopeta");59 MultiSelectWindow alkuvalikko = new MultiSelectWindow("Sail 'Til You Sink", "Aloita peli","Kaksinpeli", "Lopeta"); 43 60 Add(alkuvalikko); 44 61 alkuvalikko.ItemSelected += Painettiinvalikkonappia; 45 62 alkuvalikko.Color = Color.LightBlue; 46 63 47 48 49 64 PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 50 65 … … 55 70 { 56 71 case 0: 57 purjeVene(0,0);72 vene1=purjeVene(0,0); 58 73 lisaakivia(); 59 74 ajastin(); 60 75 lisaarengas(); 76 lisaamatala(); 77 lisaaMvene(); 61 78 LuoKentta(); 62 79 lisaaPlaskin(); … … 64 81 asetaohjaimet(); 65 82 lisaaEmittari(); 66 veneosuu(vene,kivi); 67 pistelisaa(vene, rengas); 68 mailittaynna(); 69 suoristavene(); 70 break; 83 84 85 break; 86 71 87 case 1: 88 vene1=purjeVene(0,0); 89 vene2=purjeVene(0,0); 90 lisaakivia(); 91 ajastin(); 92 lisaarengas(); 93 lisaamatala(); 94 lisaaMvene(); 95 LuoKentta(); 96 lisaaPlaskin(); 97 lisaaMlaskin(); 98 asetaohjaimet(); 99 lisaaEmittari(); 100 asetaveneen2ohjaimet(); 101 102 103 104 pisteet2 = new IntMeter(0); 105 Label pistenaytto2 = new Label(); 106 pistenaytto2.X = -400; 107 pistenaytto2.Y = -200; 108 pistenaytto2.TextColor = Color.Blue; 109 pistenaytto2.Color = Color.Aqua; 110 pistenaytto2.Title = "Pisteet"; 111 pistenaytto2.BindTo(pisteet); 112 Add(pistenaytto2); 113 114 merimailit2 = new IntMeter(0); 115 merimailit2.MaxValue = 100; 116 merimailit2.UpperLimit += vene2.Destroy; 117 Label mailinaytto2 = new Label(); 118 mailinaytto2.X = -400; 119 mailinaytto2.Y = -250; 120 mailinaytto2.TextColor = Color.DarkBlue; 121 mailinaytto2.Color = Color.Aqua; 122 mailinaytto2.Title = "NM"; 123 mailinaytto2.BindTo(merimailit2); 124 Add(mailinaytto2); 125 elamamittari2 = new DoubleMeter(10); 126 elamamittari2.MaxValue = 10; 127 ProgressBar elamapalkki2 = new ProgressBar(150, 15); 128 elamapalkki2.BindTo(elamamittari2); 129 elamapalkki2.BarColor = Color.Green; 130 elamapalkki2.BorderColor = Color.Red; 131 elamapalkki2.Color = Color.Red; 132 elamapalkki2.X = Screen.Left +150; 133 elamapalkki2.Y = Screen.Bottom +200; 134 Add(elamapalkki2); 135 elamamittari2.LowerLimit += elamaloppui; 136 137 138 72 139 break; 73 140 case 2: … … 80 147 PhysicsObject purjeVene(double x,double y) 81 148 { 82 vene =new PhysicsObject(veneenKuva);149 PhysicsObject vene =new PhysicsObject(veneenKuva); 83 150 vene.Width = 40; 84 151 vene.Height = 90; … … 88 155 AddCollisionHandler(vene, "este", veneosuu); 89 156 AddCollisionHandler(vene, "Aarkku", pistelisaa); 157 AddCollisionHandler(vene,"pluselama", elamalisaa); 90 158 return (vene); 91 159 … … 95 163 Surface vasenreuna = Surface.CreateLeft(Level,300,100,20); 96 164 vasenreuna.Color = Color.LightGreen; 165 vasenreuna.Tag = "este"; 97 166 Add(vasenreuna); 98 167 99 168 Surface oikeareuna = Surface.CreateRight(Level, 300, 100, 20); 100 169 oikeareuna.Color = Color.LightGreen; 170 oikeareuna.Tag = "este"; 101 171 Add(oikeareuna); 102 172 103 173 Level.BackgroundColor = Color.Aqua; 174 175 104 176 105 177 } … … 132 204 ajastin4.Start(); 133 205 Timer ajastin5 = new Timer(); 134 ajastin5.Interval = 1 0;206 ajastin5.Interval = 15; 135 207 ajastin5.Timeout += lisaaarkku; 136 208 ajastin5.Start(); 209 Timer ajastin6 = new Timer(); 210 ajastin6.Interval = 8; 211 ajastin6.Timeout += lisaamatala; 212 ajastin6.Start(); 213 Timer ajastin7 = new Timer(); 214 ajastin7.Interval = 8; 215 ajastin7.Timeout += lisaavasara; 216 ajastin7.Start(); 217 Timer ajastin8 = new Timer(); 218 ajastin8.Interval = 12; 219 ajastin8.Timeout += lisaakala; 220 ajastin8.Start(); 221 Timer ajastin9 = new Timer(); 222 ajastin9.Interval = 12; 223 ajastin9.Timeout += lisaaMvene; 224 ajastin9.Start(); 137 225 138 226 … … 145 233 rengas.Velocity = new Vector(0, -100); 146 234 rengas.Tag = "hyvis"; 235 rengas.IgnoresCollisionResponse = true; 147 236 Add(rengas); 148 237 238 } 239 void lisaakala() 240 { 241 kala = PhysicsObject.CreateStaticObject(kalankuva); 242 kala.Y = 500; 243 kala.X = RandomGen.NextDouble(Level.Left, Level.Right); 244 kala.Velocity = new Vector(0, -100); 245 kala.Tag = "hyvis"; 246 kala.IgnoresCollisionResponse = true; 247 Add(kala); 248 249 } 250 void lisaavasara() 251 { 252 vasara = PhysicsObject.CreateStaticObject(vasarankuva); 253 vasara.Y = 500; 254 vasara.X = RandomGen.NextDouble(Level.Left, Level.Right); 255 vasara.Velocity = new Vector(0, -100); 256 vasara.Tag = "pluselama"; 257 vasara.IgnoresCollisionResponse = true; 258 Add(vasara); 149 259 } 150 260 void lisaaverkko() … … 157 267 Add(verkko); 158 268 } 269 void lisaamatala() 270 { 271 matala = PhysicsObject.CreateStaticObject(matalankuva); 272 matala.Y = 500; 273 matala.X = RandomGen.NextDouble(Level.Left, Level.Right); 274 matala.Velocity = new Vector(0, -100); 275 matala.Tag = "este"; 276 Add(matala); 277 278 } 279 void lisaaMvene() 280 { 281 Mvene = PhysicsObject.CreateStaticObject(Mveneenkuva); 282 Mvene.Y = RandomGen.NextDouble(0,Level.Top); 283 Mvene.X =Level.Left; 284 Mvene.Velocity = new Vector(200, -100); 285 Mvene.Tag = "este"; 286 Add(Mvene); 287 288 } 159 289 void lisaaarkku() 160 290 { … … 164 294 arkku.Velocity = new Vector(0, -100); 165 295 arkku.Tag = "Aarkku"; 296 arkku.IgnoresCollisionResponse = true; 166 297 Add(arkku); 167 298 } … … 172 303 173 304 } 305 void pistelisaa2(PhysicsObject vene2, PhysicsObject rengas) 306 { 307 pisteet2.Value += 10; 308 rengas.Destroy(); 309 310 } 174 311 void pistelisaaA(PhysicsObject vene, PhysicsObject arkku) 175 312 { 176 pisteet.Value += 30; 313 if(vene == vene1) pisteet.Value += 30; 314 if (vene == vene2) pisteet2.Value += 30; 315 177 316 arkku.Destroy(); 178 317 } 318 319 void elamalisaa(PhysicsObject vene, PhysicsObject vasara) 320 { 321 if (vene == vene1) 322 { 323 elamamittari.Value += 1; 324 325 } 326 if (vene == vene2) 327 elamamittari2.Value += 1; 328 vasara.Destroy(); 329 330 } 331 179 332 void lisaaPlaskin() 180 333 { 181 182 334 pisteet = new IntMeter(0); 183 335 Label pistenaytto = new Label(); … … 190 342 pistenaytto.BindTo(pisteet); 191 343 Add(pistenaytto); 192 193 194 195 196 197 } 344 } 345 198 346 void lisaaMlaskin() 199 347 { … … 217 365 218 366 } 367 219 368 void lisaaEmittari() 220 369 { … … 228 377 elamapalkki.Color = Color.Red; 229 378 elamapalkki.X =Screen.Right -150; 230 elamapalkki.Y =Screen.Bottom+ 15;379 elamapalkki.Y =Screen.Bottom+200; 231 380 Add(elamapalkki); 232 381 elamamittari.LowerLimit += elamaloppui; … … 235 384 236 385 } 386 237 387 void asetaohjaimet() 238 388 { 239 Keyboard.Listen(Key.Right, ButtonState.Down, asetanopeus, "pelaaja, liikuta venettä oikealle", vene , nopeusoikea);240 Keyboard.Listen(Key.Right, ButtonState.Released, asetanopeus, null, vene , Vector.Zero);241 Keyboard.Listen(Key.Left, ButtonState.Down, asetanopeus, "pelaaja, liikuta venettä oikealle", vene , nopeusvasen);242 Keyboard.Listen(Key.Left, ButtonState.Released, asetanopeus, null, vene , Vector.Zero);389 Keyboard.Listen(Key.Right, ButtonState.Down, asetanopeus, "pelaaja, liikuta venettä oikealle", vene1, nopeusoikea); 390 Keyboard.Listen(Key.Right, ButtonState.Released, asetanopeus, null, vene1, Vector.Zero); 391 Keyboard.Listen(Key.Left, ButtonState.Down, asetanopeus, "pelaaja, liikuta venettä oikealle", vene1, nopeusvasen); 392 Keyboard.Listen(Key.Left, ButtonState.Released, asetanopeus, null, vene1, Vector.Zero); 243 393 Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 244 Keyboard.Listen(Key.Up, ButtonState.Down, asetanopeus, "pelaaja, liikuta venettä ylös", vene, nopeusylos); 245 Keyboard.Listen(Key.Up, ButtonState.Released, asetanopeus, null, vene, Vector.Zero); 246 Keyboard.Listen(Key.Down, ButtonState.Down, asetanopeus, "pelaaja, liikuta venettä alas", vene, nopeusalas); 247 Keyboard.Listen(Key.Down, ButtonState.Released, asetanopeus, null, vene, Vector.Zero); 248 Keyboard.Listen(Key.A, ButtonState.Pressed, suovene, "pelaaja, suorista vene", vene); 249 394 Keyboard.Listen(Key.Up, ButtonState.Down, asetanopeus, "pelaaja, liikuta venettä ylös", vene1, nopeusylos); 395 Keyboard.Listen(Key.Up, ButtonState.Released, asetanopeus, null, vene1, Vector.Zero); 396 Keyboard.Listen(Key.Down, ButtonState.Down, asetanopeus, "pelaaja, liikuta venettä alas", vene1, nopeusalas); 397 Keyboard.Listen(Key.Down, ButtonState.Released, asetanopeus, null, vene1, Vector.Zero); 398 Keyboard.Listen(Key.A, ButtonState.Pressed, suovene, "pelaaja, suorista vene", vene1); 399 400 } 401 void asetaveneen2ohjaimet() 402 { 403 Keyboard.Listen(Key.NumPad6, ButtonState.Down, asetanopeus, "pelaaja2, liikuta venettä oikealle", vene2, nopeusoikea); 404 Keyboard.Listen(Key.NumPad6, ButtonState.Released, asetanopeus, null, vene2, Vector.Zero); 405 Keyboard.Listen(Key.NumPad4, ButtonState.Down, asetanopeus, "pelaaja2, liikuta venettä oikealle", vene2, nopeusvasen); 406 Keyboard.Listen(Key.NumPad4, ButtonState.Released, asetanopeus, null, vene2, Vector.Zero); 407 Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 408 Keyboard.Listen(Key.NumPad8, ButtonState.Down, asetanopeus, "pelaaja2, liikuta venettä ylös", vene2, nopeusylos); 409 Keyboard.Listen(Key.NumPad8, ButtonState.Released, asetanopeus, null, vene2, Vector.Zero); 410 Keyboard.Listen(Key.NumPad2, ButtonState.Down, asetanopeus, "pelaaja2, liikuta venettä alas", vene2, nopeusalas); 411 Keyboard.Listen(Key.NumPad2, ButtonState.Released, asetanopeus, null, vene2, Vector.Zero); 412 Keyboard.Listen(Key.NumPad5, ButtonState.Pressed, suovene, "pelaaja2, suorista vene", vene2); 413 250 414 } 251 415 void suovene(PhysicsObject vene) … … 256 420 void asetanopeus(PhysicsObject vene,Vector nopeus) 257 421 { 422 if((nopeus.Y<0)&&(vene.Bottom<Level.Bottom)) 423 { 424 vene.Velocity = Vector.Zero; 425 return; 426 } 427 428 429 if((nopeus.Y>0)&&(vene.Top>Level.Top)) 430 { 431 vene.Velocity = Vector.Zero; 432 return; 433 } 258 434 vene.Velocity = nopeus; 259 435 260 436 261 437 } 438 262 439 void elamaloppui() 263 440 { 441 264 442 MessageDisplay.Add("Veneesi upposi!"); 265 443 if(elamamittari.Value==0) 266 444 { 445 267 446 ClearAll(); 268 447 naytavalikko (); 269 448 } 270 271 272 449 } 273 450 void veneosuu(PhysicsObject vene, PhysicsObject kivi) 274 451 { 452 if(vene==vene1) 275 453 elamamittari.Value-=1; 276 277 } 454 if (vene == vene2) 455 elamamittari2.Value -= 1; 456 457 } 458 278 459 void lisaamaili() 279 460 { 280 461 merimailit.Value += 1; 462 if(merimailit2 != null) merimailit2.Value += 1; 463 281 464 } 282 465 void mailittaynna() 283 466 { 284 467 MessageDisplay.Add("Onnittelut! Purjehdit regatan loppuun!"); 285 286 287 } 468 Exit(); 469 470 471 } 472 288 473 void naytavalikko() 289 474 { … … 291 476 Add(loppuvalikko); 292 477 loppuvalikko.ItemSelected += painettiinnuppia; 293 loppuvalikko.Color = Color. LightBlue;478 loppuvalikko.Color = Color.Green; 294 479 295 480 … … 300 485 { 301 486 case 0: 302 purjeVene(0,0);303 lisaakivia();304 ajastin();305 lisaarengas();306 LuoKentta();307 lisaaPlaskin();308 lisaaMlaskin();309 asetaohjaimet();310 lisaaEmittari();311 veneosuu(vene, kivi);312 pistelisaa(vene, rengas);313 mailittaynna();314 suoristavene();487 purjeVene(0,0); 488 lisaakivia(); 489 ajastin(); 490 lisaarengas(); 491 lisaamatala(); 492 lisaaMvene(); 493 LuoKentta(); 494 lisaaPlaskin(); 495 lisaaMlaskin(); 496 asetaohjaimet(); 497 lisaaEmittari(); 498 499 315 500 break; 316 501 case 1: 502 HighScoreWindow topikkuna = new HighScoreWindow("Top 5-lista", 503 "Onnea, Pääsit parhaiden purjehtijoiden joukkoon loppupisteillä %p! Syötä nimesi:", 504 toplista, merimailit.Value * 10 + pisteet.Value); 505 topikkuna.Closed += tallennapisteet; 506 Add(topikkuna); 507 317 508 break; 318 509 case 2: … … 323 514 mailit.X = 0; 324 515 mailit.Y = 300; 325 mailit.T ext= "Merimalit yhteensä";516 mailit.Title = "Merimalit yhteensä"; 326 517 Add(mailit); 518 519 mailit.BindTo(merimailit); 520 521 Label pointit = new Label(); 522 pointit.X = 0; 523 pointit.Y=200; 524 pointit.Title = "Pisteet yhteensä"; 525 Add(pointit); 526 pointit.BindTo(pisteet); 527 528 loppupoint = new IntMeter(0); 529 loppupoint.Value = merimailit.Value * 10 + pisteet.Value; 530 Label Lopulliset = new Label(); 531 Lopulliset.X = 0; 532 Lopulliset.Y = 100; 533 Lopulliset.TextColor = Color.Brown; 534 Lopulliset.Title = "Loppupisteet yhteensä"; 535 Add(Lopulliset); 536 Lopulliset.BindTo(loppupoint); 537 538 MultiSelectWindow loppuPisteetvalikko = new MultiSelectWindow("Sail 'Til You Sink", "Lopeta"); 539 Add(loppuPisteetvalikko); 540 loppuPisteetvalikko.ItemSelected += painettiinvalikonnapikkaa; 541 loppuPisteetvalikko.Color = Color.DarkBlue; 542 327 543 break; 328 544 default: … … 331 547 332 548 } 333 void suoristavene() 334 { 335 } 549 void painettiinvalikonnapikkaa(int valinta) 550 { 551 switch (valinta) 552 { 553 case 0: 554 Exit(); 555 break; 556 557 } 558 } 559 void tallennapisteet(Window Sender) 560 { 561 DataStorage.Save<ScoreList>(toplista, "point.xml"); 562 MultiSelectWindow topvalikko = new MultiSelectWindow("Sail 'Til You Sink", "Lopeta"); 563 Add(topvalikko); 564 topvalikko.ItemSelected += Painettiinvalikkonnuppua; 565 topvalikko.Color = Color.Blue; 566 567 568 } 569 void Painettiinvalikkonnuppua(int valinta) 570 { 571 switch (valinta) 572 { 573 case 0: 574 Exit(); 575 break; 576 577 } 578 } 579 336 580 } -
2012/26/FanniO/Sailtilyousink/Sailtilyousink/SailtilyousinkContent/SailtilyousinkContent.contentproj
r3285 r3327 93 93 </Compile> 94 94 </ItemGroup> 95 <ItemGroup> 96 <Compile Include="matala.png"> 97 <Name>matala</Name> 98 <Importer>TextureImporter</Importer> 99 <Processor>TextureProcessor</Processor> 100 </Compile> 101 </ItemGroup> 102 <ItemGroup> 103 <Compile Include="Mvene.png"> 104 <Name>Mvene</Name> 105 <Importer>TextureImporter</Importer> 106 <Processor>TextureProcessor</Processor> 107 </Compile> 108 </ItemGroup> 109 <ItemGroup> 110 <Compile Include="kala.png"> 111 <Name>kala</Name> 112 <Importer>TextureImporter</Importer> 113 <Processor>TextureProcessor</Processor> 114 </Compile> 115 </ItemGroup> 116 <ItemGroup> 117 <Compile Include="vasara.png"> 118 <Name>vasara</Name> 119 <Importer>TextureImporter</Importer> 120 <Processor>TextureProcessor</Processor> 121 </Compile> 122 </ItemGroup> 95 123 <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 96 124 <!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Note: See TracChangeset
for help on using the changeset viewer.