Changeset 3811
- Timestamp:
- 2012-07-27 12:31:56 (11 years ago)
- Location:
- 2012/30/MiskaK/MW2(My Warfare 2)
- Files:
-
- 12 edited
Legend:
- Unmodified
- Added
- Removed
-
2012/30/MiskaK/MW2(My Warfare 2)/MW2(My Warfare 2)/MW2(My Warfare 2)/MW2_My_Warfare_2_.cs
r3780 r3811 12 12 Pelaaja pelaaja2; 13 13 Timer aseajastin; 14 int teeKerran = 0; 15 int teeKerran2 = 0; 16 int tappolimit; 14 17 15 18 Label asenäyttö; … … 65 68 public override void Begin() 66 69 { 67 LuoKenttä(); 68 AsetaOhjaimet(); 70 LuoAlkuValikko(); 71 //LuoKenttä(); 72 //AsetaOhjaimet(); 69 73 70 74 } … … 105 109 } 106 110 111 void LuoAlkuValikko() 112 { 113 MultiSelectWindow valikko = new MultiSelectWindow("MY WARFARE 2", 114 "Hardcore (1 taposta poikki)", "Lyhyt (5 taposta poikki) ", "Pitkä (11 taposta poikki)", "Loputon(ei mistään poikki)", "Lopeta peli"); 115 valikko.ItemSelected += PainettiinValikonNappia; 116 valikko.Color = Color.Green; 117 Level.BackgroundColor = Color.Black; 118 valikko.DefaultCancel = 4; 119 Add(valikko); 120 121 } 122 123 void PainettiinValikonNappia(int valinta) 124 { 125 switch (valinta) 126 { 127 case 0: 128 LuoKenttä(); 129 ClearControls(); 130 AsetaOhjaimet(); 131 tappolimit = 1; 132 break; 133 case 1: 134 LuoKenttä(); 135 ClearControls(); 136 AsetaOhjaimet(); 137 tappolimit = 5; 138 break; 139 case 2: 140 LuoKenttä(); 141 ClearControls(); 142 AsetaOhjaimet(); 143 tappolimit = 11; 144 break; 145 146 case 3: 147 LuoKenttä(); 148 ClearControls(); 149 AsetaOhjaimet(); 150 tappolimit = 99999999; 151 break; 152 153 case 4: 154 Exit(); 155 break; 156 } 157 } 158 159 160 107 161 void LuoBussi(Vector paikka, double leveys, double korkeus) 108 162 { … … 250 304 void LuoPelaaja1(Vector paikka, double leveys, double korkeus) 251 305 { 306 307 252 308 pelaaja1 = new Pelaaja(28.5, 19.5); 253 309 pelaaja1.Image = pelaaja1Kuva; … … 259 315 pelaaja1.Nro = 1; 260 316 pelaaja1.tähtäin = LuoTähtäin(Color.Green); 261 //Pelaaja1HPPalautus(); 317 if (teeKerran == 0) 318 { 319 Pelaaja1HPPalautus(); 320 teeKerran = 1; 321 } 262 322 LuoPistooli(pelaaja1); 263 323 264 324 Add(pelaaja1); 265 325 pelaaja1.Destroyed += delegate 266 326 { 327 MessageDisplay.Add("Pelaaja 2 tappoi pelaajan 1 aseella " + pelaaja2.ValittuAse.Tag.ToString()); 267 328 pelaajan2tapot.Value++; 329 if (pelaajan1tapot + pelaajan2tapot >= tappolimit) 330 { 331 if (pelaajan1tapot - pelaajan2tapot > 0) 332 { 333 334 //Pelaaja 1 voittaa 335 //MessageDisplay.Add("Pelaaja 1 voitti!"); 336 337 Label voittaja = new Label("Pelaaja 1 voitti!"); 338 voittaja.X = 0; 339 voittaja.Y = 0; 340 voittaja.TextColor = Color.Red; 341 voittaja.BorderColor = Color.White; 342 Add(voittaja); 343 Timer.SingleShot(5.0, LoppuTuho); 344 } 345 346 else 347 { 348 //Pelaaja 2 voittaa 349 350 Label voittaja = new Label("Pelaaja 2 voitti!"); 351 voittaja.X = 0; 352 voittaja.Y = 0; 353 voittaja.TextColor = Color.Red; 354 voittaja.BorderColor = Color.White; 355 Add(voittaja); 356 Timer.SingleShot(5.0, LoppuTuho); 357 //MessageDisplay.Add("Pelaaja 2 voitti!"); 358 } 359 360 361 } 362 363 268 364 KuolemaEfekti(pelaaja1.X, pelaaja1.Y, 600); 269 365 Timer.SingleShot(2.0, delegate … … 288 384 Camera.Follow(pelaaja1, pelaaja2); 289 385 }); 290 386 291 387 }; 292 388 LuoTerveysmittari1(); 293 389 } 294 390 295 /*void Pelaaja1HPPalautus()391 void Pelaaja1HPPalautus() 296 392 { 297 393 Timer hppalautin1 = new Timer(); … … 300 396 hppalautin1.Start(); 301 397 } 302 */ 398 303 399 void Pelaajan1Tapot() 304 400 { … … 354 450 Add(pelaaja2); 355 451 pelaaja2.tähtäin = LuoTähtäin(Color.Red); 356 //Pelaaja2HPPalautus(); 452 if (teeKerran2 == 0) 453 { 454 Pelaaja2HPPalautus(); 455 teeKerran2 = 1; 456 } 357 457 LuoPistooli(pelaaja2); 358 458 … … 365 465 { 366 466 pelaajan1tapot.Value++; 467 MessageDisplay.Add("Pelaaja 1 tappoi pelaajan 2 aseella " + pelaaja1.ValittuAse.Tag.ToString()); 367 468 KuolemaEfekti(pelaaja2.X, pelaaja2.Y, 600); 469 470 if (pelaajan1tapot + pelaajan2tapot >= tappolimit) 471 { 472 if (pelaajan1tapot - pelaajan2tapot > 0) 473 { 474 //Pelaaja 1 voittaa 475 Label voittaja = new Label("Pelaaja 1 voitti!"); 476 voittaja.X = 0; 477 voittaja.Y = 0; 478 voittaja.TextColor = Color.Red; 479 voittaja.BorderColor = Color.White; 480 Add(voittaja); 481 482 Timer.SingleShot(5.0, LoppuTuho); 483 484 //MessageDisplay.Add("Pelaaja 1 voitti!"); 485 } 486 487 else 488 { 489 //Pelaaja 2 voittaa 490 Label voittaja = new Label("Pelaaja 2 voitti!"); 491 voittaja.X = 0; 492 voittaja.Y = 0; 493 voittaja.TextColor = Color.Red; 494 voittaja.BorderColor = Color.White; 495 Add(voittaja); 496 497 Timer.SingleShot(5.0, LoppuTuho); 498 //MessageDisplay.Add("Pelaaja 2 voitti!"); 499 } 500 501 502 } 368 503 369 504 … … 397 532 } 398 533 399 /*void Pelaaja2HPPalautus()534 void Pelaaja2HPPalautus() 400 535 { 401 536 Timer hppalautin2 = new Timer(); … … 404 539 hppalautin2.Start(); 405 540 } 406 */541 407 542 void Pelaajan2Tapot() 408 543 { … … 472 607 Ase rynkky = new Ase(30, 10); 473 608 rynkky.IsVisible = false; 474 rynkky.aikaJolloinVoiLuoda = 15; 609 rynkky.aikaJolloinVoiLuoda = 15;//15 475 610 rynkky.FireRate = 5; 476 611 rynkky.tuhovoimaTuhoutuviaVastaan = 1; … … 487 622 pistooli.aikaJolloinVoiLuoda = 0; 488 623 pistooli.Ammo.Value = 10000; 624 pistooli.Ammo.MaxValue = 10000; 489 625 pistooli.IsVisible = false; 490 626 pistooli.tuhovoimaPelaajaaVastaan = 2; … … 502 638 minigun.tuhovoimaTuhoutuviaVastaan = 0.2; 503 639 minigun.tuhovoimaPelaajaaVastaan = 0.5; 504 minigun.aikaJolloinVoiLuoda = 60; 640 minigun.aikaJolloinVoiLuoda = 60;//60 505 641 minigun.Ammo.MaxValue = 600; 506 642 minigun.FireRate = 30; … … 518 654 snipa.tuhovoimaTuhoutuviaVastaan = 10; 519 655 snipa.tuhovoimaPelaajaaVastaan = 20; 520 snipa.aikaJolloinVoiLuoda = 90; 656 snipa.aikaJolloinVoiLuoda = 90;//90 521 657 snipa.Power.DefaultValue = 500; 522 658 snipa.IsVisible = false; … … 591 727 592 728 Pelaaja pelaaja = (kohde as Pelaaja); 593 Func<Ase>[] aseidenLuontimetodit = { LuoRynkky, LuoSnipa, LuoSinko, LuoMinigun};729 Func<Ase>[] aseidenLuontimetodit = { LuoRynkky,LuoMinigun,LuoSnipa, LuoSinko }; 594 730 double aikaKentanAlustaSek = aseajastin.SecondCounter.Value; 595 731 aseajastin.SecondCounter.AddTrigger(15.0, TriggerDirection.Down, delegate { MessageDisplay.Add("Rynkky saatavilla nyt!"); }); 596 if (aikaKentanAlustaSek < 15)732 if (aikaKentanAlustaSek < 5) 597 733 { 598 734 MessageDisplay.Add("Liian aikaista ottaa aseita, odota"); … … 600 736 } 601 737 602 int arvottuAse = RandomGen.NextInt(0, 4); 603 Ase ase = aseidenLuontimetodit[arvottuAse](); 604 605 if (pelaaja.OnkoPelaajallaAse(ase.Tag.ToString()) || aikaKentanAlustaSek < ase.aikaJolloinVoiLuoda) 738 739 for (int i = 0; i < aseidenLuontimetodit.Length; i++) 606 740 { 607 if (arvottuAse >= 4) arvottuAse++; 608 else arvottuAse = 0; 609 ase = aseidenLuontimetodit[arvottuAse](); 610 611 741 Ase ase = aseidenLuontimetodit[i](); 742 if (!pelaaja.OnkoPelaajallaAse(ase.Tag.ToString())) 743 { 744 if (aikaKentanAlustaSek > ase.aikaJolloinVoiLuoda) 745 { 746 pelaaja.LisaaAse(ase); 747 MessageDisplay.Add("Pelaaja" + pelaaja.Nro + " sai aseen: " + ase.Tag.ToString()); 748 return; 749 } 750 } 612 751 } 613 614 pelaaja.LisaaAse(ase); 615 MessageDisplay.Add("Pelaaja" + pelaaja.Nro + " sai aseen: " + ase.Tag.ToString()); 616 laatikko.Animation.Stop(); 617 laatikko.Image = laatikkoTyhjä; 752 753 Ase satunnainenPelaajanAse = RandomGen.SelectOne<Ase>(pelaaja.Aseet); 754 satunnainenPelaajanAse.Ammo.Value = satunnainenPelaajanAse.Ammo.MaxValue; 755 MessageDisplay.Add("Pelaaja" + pelaaja.Nro + " sai ammuksia aseeseen: " + satunnainenPelaajanAse.Tag.ToString()); 756 757 //laatikko.Animation.Stop(); 758 //laatikko.Image = laatikkoTyhjä; 618 759 } 619 760 } … … 860 1001 KipinäPartikkelit(ammus.X, ammus.Y, 300); 861 1002 } 1003 } 1004 1005 void LoppuTuho() 1006 { 1007 Vector sijainti = RandomGen.NextVector(-400.0, -400.0, 400.0, 400.0); 1008 Camera.StopFollowing(); 1009 1010 Camera.ZoomToLevel(); 1011 Explosion loppuräjähdys = new Explosion(1000); 1012 loppuräjähdys.Position = sijainti; 1013 loppuräjähdys.Image = null; 1014 loppuräjähdys.Sound = null; 1015 loppuräjähdys.Force = 400; 1016 loppuräjähdys.Speed = 1000; 1017 loppuräjähdys.ShockwaveColor = Color.Transparent; 1018 loppuräjähdys.ShockwaveReachesObject += LoppuTuhoOsuu; 1019 Add(loppuräjähdys); 1020 1021 RäjähdysPartikkelit(sijainti.X, sijainti.Y, 800); 1022 RäjähdysPartikkelit2(sijainti.X, sijainti.Y, 300); 1023 } 1024 1025 void LoppuTuhoOsuu(IPhysicsObject kohde, Vector shokki) 1026 { 1027 KiviHajoaa(kohde.X, kohde.Y, 50); 1028 PuuHajoaa(kohde.X, kohde.Y, 50); 1029 kohde.Destroy(); 1030 Timer.SingleShot(4.0, AloitaAlusta); 1031 } 1032 1033 void AloitaAlusta() 1034 { 1035 ClearAll(); 1036 LuoAlkuValikko(); 862 1037 } 863 1038 … … 912 1087 { 913 1088 base.Update(time); 914 Vector suunta = (pelaaja1.tähtäin.Position - pelaaja1.Position).Normalize(); 915 pelaaja1.Angle = suunta.Angle; 1089 if (pelaaja1 != null) 1090 { 1091 Vector suunta = (pelaaja1.tähtäin.Position - pelaaja1.Position).Normalize(); 1092 pelaaja1.Angle = suunta.Angle; 1093 } 916 1094 } 917 1095 } -
2012/30/MiskaK/MW2(My Warfare 2)/MW2(My Warfare 2)/MW2(My Warfare 2)/Pelaaja.cs
r3780 r3811 12 12 { 13 13 private List<Ase> aseet; 14 public List<Ase> Aseet { get { return aseet; } } 14 15 private Ase valittuAse = null; 15 16 public Ase ValittuAse { get { return valittuAse; } } … … 61 62 valittuAse = aseet[0]; 62 63 } 63 else64 {65 int i = aseet.FindIndex(x => x.Tag.ToString() == w.Tag.ToString());66 aseet[i].Ammo.Reset();67 }64 //else 65 //{ 66 // int i = aseet.FindIndex(x => x.Tag.ToString() == w.Tag.ToString()); 67 // aseet[i].Ammo.Reset(); 68 //} 68 69 } 69 70 -
2012/30/MiskaK/MW2(My Warfare 2)/MW2(My Warfare 2)/MW2(My Warfare 2)/obj/x86/Debug/ContentPipeline-{22ADBDA1-5A43-4401-8049-15C4051FEE11}.xml
r3775 r3811 216 216 <Options>None</Options> 217 217 <Output>C:\MyTemp\MiskaK\MW2(My Warfare 2)\MW2(My Warfare 2)\MW2(My Warfare 2)\bin\x86\Debug\Content\kenttä2.xnb</Output> 218 <Time>2012-07-2 6T13:00:43.5698999+03:00</Time>218 <Time>2012-07-27T09:16:01.3661551+03:00</Time> 219 219 </Item> 220 220 <Item>
Note: See TracChangeset
for help on using the changeset viewer.