- Timestamp:
- 2013-07-25 22:20:56 (9 years ago)
- Location:
- 2013/30/MiskaK
- Files:
-
- 4 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
2013/30/MiskaK/MW2(My Warfare 2)/MW2(My Warfare 2)/MW2(My Warfare 2)/Escape.cs
r4677 r4693 22 22 public Vector LaskeutumisPaikka { get; set; } 23 23 24 public const double LASKEUTUMISEEN_VAADITTAVAN_VAPAAN_ALUEEN_HALKAISIJA = 250.0;24 public const double LASKEUTUMISEEN_VAADITTAVAN_VAPAAN_ALUEEN_HALKAISIJA = 50.0; 25 25 26 26 private List<Pelaaja> PelaajatPelissa { get; set; } … … 43 43 { 44 44 //LaskeutumisPaikka = landingPosition; 45 Peli = this; 45 46 PelaajatPelissa = pelaajat; 46 47 … … 62 63 OnkoLaskeutumisAlueTyhjaTarkistus.Start(); 63 64 64 Kopteri = new Helikopteri(233, 73, 50, false); // 211, 17165 //Kopteri = new Helikopteri(233, 73, 50, false); // 211, 171 65 66 //Kopteri.Position = 67 //SpawnataankoVihollisia = false; 66 68 67 69 } … … 78 80 { 79 81 foreach (Pelaaja p in PelaajatPelissa) 80 if (!OnkoLaskeutumisAlueenSisapuolella(p.Position)) return; 82 { 83 if (p != null) 84 if (!OnkoLaskeutumisAlueenSisapuolella(p.Position)) return; 85 } 81 86 82 foreach (Vihollinen v in VihollisetKentalla) 83 if (OnkoLaskeutumisAlueenSisapuolella(v.Position)) return; 87 //foreach (Vihollinen v in VihollisetKentalla) 88 //{ 89 // if (VihollisetKentalla.Count == 0) return; 90 // if (OnkoLaskeutumisAlueenSisapuolella(v.Position)) return; 91 //} 84 92 85 93 // Kopteri voi saapua 86 94 MW2_My_Warfare_2_.Peli.MessageDisplay.Add("[TESTI] Alue " + LASKEUTUMISEEN_VAADITTAVAN_VAPAAN_ALUEEN_HALKAISIJA + " yksikön säteeltä puhdas!"); 87 95 } 88 96 -
2013/30/MiskaK/MW2(My Warfare 2)/MW2(My Warfare 2)/MW2(My Warfare 2)/Helikopteri.cs
r4677 r4693 95 95 ReittiAivot = new PathFollowerBrain(); 96 96 this.Brain = ReittiAivot; 97 this.Destroyed += delegate { KopterinLavat.Destroy(); }; 97 98 } 98 99 -
2013/30/MiskaK/MW2(My Warfare 2)/MW2(My Warfare 2)/MW2(My Warfare 2)/MW2_My_Warfare_2_.cs
r4677 r4693 244 244 { 245 245 // MediaPlayer.Play("EPIC VICTORY THEME SONG"); 246 PimennaRuutua( );246 PimennaRuutua(0.01); 247 247 MultiSelectWindow voittoIkkuna = new MultiSelectWindow("Pelaaja " + voittanutPelaaja.Numero + " voitti pelin!\n\n" + 248 248 "Pelaajan 1 tapot: " + pelaajat[0].Tapot + "\n" + … … 275 275 { 276 276 MediaPlayer.Play("ZombieGameOverFIX"); 277 PimennaRuutua( );277 PimennaRuutua(0.01); 278 278 MultiSelectWindow havioIkkuna = new MultiSelectWindow("Peli päättyi!\nVihollisia tapettu " + havittyPeli.VihollisiaTapettu + " kpl.\nAikaa kului " + String.Format("{0:00}", havittyPeli.AikaPelinAlusta.CurrentTime) + " sekuntia.", Color.White, "Päävalikkoon", "Lopeta peli"); 279 279 havioIkkuna.ItemSelected += delegate(int valinta) … … 356 356 /// <summary> 357 357 /// Pimennetään ruutua pikku hiljaa. 358 /// </summary> 359 void PimennaRuutua() 358 /// Oletusnopeus 0.01. 359 /// </summary> 360 public void PimennaRuutua(double nopeus) 360 361 { 361 362 Timer ajastin = new Timer(); 362 363 ajastin.Interval = 0.1; 363 ajastin.Timeout += delegate { Level.AmbientLight -= 0.01; }; 364 ajastin.Timeout += delegate { 365 Level.AmbientLight -= nopeus; 366 if (Level.AmbientLight <= 0.0) 367 { 368 ajastin.Stop(); 369 ajastin.Reset(); 370 } 371 }; 364 372 ajastin.Start(); 365 373 } 374 375 /// <summary> 376 /// Kirkastetaan ruutua pikku hiljaa. 377 /// </summary> 378 public void KirkastaRuutua(double nopeus, double tavoite) 379 { 380 Timer ajastin = new Timer(); 381 ajastin.Interval = 0.1; 382 ajastin.Timeout += delegate { 383 //if (Level.AmbientLight > 0.1) return; 384 Level.AmbientLight += nopeus; 385 if (Level.AmbientLight > tavoite) 386 { 387 ajastin.Stop(); 388 ajastin.Reset(); 389 } 390 }; 391 ajastin.Start(); 392 } 393 366 394 367 395 /// <summary> … … 483 511 ruudut.SetTileMethod(Color.Black, LuoKentanOsa, piikkilankaKuva, "piikkilanka", 5); 484 512 ruudut.SetTileMethod(Color.Gray, LuoTuhoutuvaKentanOsa, kivenKuva, "kivi", 20, 1.0, 1.0); 485 ruudut.SetTileMethod(Color.DarkRed, LuoLapiMentavaKentanOsa, kivenKuva, "valekivi", 1.0, 1.0, 1 );513 ruudut.SetTileMethod(Color.DarkRed, LuoLapiMentavaKentanOsa, kivenKuva, "valekivi", 1.0, 1.0, 1, false); 486 514 ruudut.SetTileMethod(Color.Orange, LuoTuhoutuvaKentanOsa, pystypuunKuva, "puu", 10, 0.3, 1.0); 487 515 ruudut.SetTileMethod(Color.Red, LuoKentanOsa, pystypiikkilankaKuva, "piikkilanka", 5); … … 489 517 //ruudut.SetTileMethod(Color.ForestGreen, LuoLapiMentavaKentanOsa, naamioverkonKuva, "naamioverkko", 1); 490 518 ruudut.SetTileMethod(Color.Purple, LuoLaatikko); 491 ruudut.SetTileMethod(Color.Yellow, LuoLapiMentavaKentanOsa, seinäSoihdunKuva, "seinäsoihtu", 1.0, 1.0, -1 );492 ruudut.SetTileMethod(Color.Olive, LuoLapiMentavaKentanOsa, valonKuva, "valo", 6.0, 6.0, 1 );519 ruudut.SetTileMethod(Color.Yellow, LuoLapiMentavaKentanOsa, seinäSoihdunKuva, "seinäsoihtu", 1.0, 1.0, -1, false); 520 ruudut.SetTileMethod(Color.Olive, LuoLapiMentavaKentanOsa, valonKuva, "valo", 6.0, 6.0, 1, false); 493 521 ruudut.SetTileMethod(Color.Rose, LuoTynnyri); 494 522 ruudut.SetTileMethod(Color.BloodRed, delegate(Vector p, double w, double h, IntPoint posInLevel) … … 511 539 // ruudut.SetTileMethod(Color.YellowGreen, LuoLapiMentavaKentanOsa, helikopteriLaskeutumisAlusta, "laskeutumisalusta", 1.0, 1.0, -1); 512 540 ruudut.SetTileMethod(Color.YellowGreen, delegate(Vector p, double w, double h, IntPoint posInLevel) { 513 LuoLapiMentavaKentanOsa(p, w, h, posInLevel, helikopteriLaskeutumisAlusta, "laskeutumisalusta", 1.0, 1.0, -1);541 LuoLapiMentavaKentanOsa(p, w, h, posInLevel, helikopteriLaskeutumisAlusta, "laskeutumisalusta", 6.0, 6.0, -1, false); 514 542 if (Escape.Peli != null) 515 543 Escape.Peli.LaskeutumisPaikka = p; 516 544 }); 517 ruudut.SetTileMethod(Color.ForestGreen, LuoLapiMentavaKentanOsa, kuusi, "kuusi", 2.0, 2.0, 0);545 ruudut.SetTileMethod(Color.ForestGreen, LuoLapiMentavaKentanOsa, kuusi, "kuusi", 4.0, 4.0, 1, true); 518 546 ruudut.SetTileMethod(Color.DarkViolet, delegate(Vector p, double w, double h, IntPoint posInLevel) { Blood.AddNormalBlood(p, 5, 1.5); }); 519 547 … … 980 1008 /// <param name="kuva">Kappaleen kuva.</param> 981 1009 /// <param name="tag">Kappaleen tagi.</param> 982 void LuoLapiMentavaKentanOsa(Vector paikka, double leveys, double korkeus, IntPoint positionInLevelArray, Image kuva, string tag, double leveydenKerroin, double korkeudenKerroin, int layer = -1)1010 void LuoLapiMentavaKentanOsa(Vector paikka, double leveys, double korkeus, IntPoint positionInLevelArray, Image kuva, string tag, double leveydenKerroin, double korkeudenKerroin, int layer, bool satunnainenKulma) 983 1011 { 984 1012 GameObject kentanosa = new GameObject(leveys * leveydenKerroin, korkeus * korkeudenKerroin); … … 987 1015 kentanosa.Position = paikka; 988 1016 kentanosa.PositionInLevelArray = positionInLevelArray; 1017 if (satunnainenKulma) 1018 kentanosa.Angle = RandomGen.NextAngle(); 989 1019 Add(kentanosa, layer); 990 1020 … … 1059 1089 else pilvet.Image = LoadImage("pilvet2"); 1060 1090 pilvet.Tag = "pilvet"; 1061 Add(pilvet, 2);1062 Layers[ 2].RelativeTransition = new Vector(2.0, 2.0);1091 Add(pilvet, 3); 1092 Layers[3].RelativeTransition = new Vector(2.0, 2.0); 1063 1093 RandomMoverBrain rb = new RandomMoverBrain(0.3); 1064 1094 pilvet.Brain = rb; … … 1508 1538 Add(valikko); 1509 1539 1510 MonestakoVoittaa = new IntMeter(5, 1, 100);1511 1512 Slider kuolematJoillaHaviaa = new Slider(300.0, 20.0);1513 kuolematJoillaHaviaa.Position = new Vector(valikko.X, valikko.Y - 200);1514 Add( kuolematJoillaHaviaa);1515 kuolematJoillaHaviaa.BorderColor = Color.Transparent;1516 kuolematJoillaHaviaa.Color = Color.Transparent;1517 kuolematJoillaHaviaa.Knob.Color = Color.Green;1518 kuolematJoillaHaviaa.Track.Color = Color.DarkGreen;1519 kuolematJoillaHaviaa.BindTo(KauankoPuolustetaan);1520 ikkunanKomponentit.Add( kuolematJoillaHaviaa);1521 1522 Label kuolematJoillaHaviaaOtsikko = new Label("Tappoja voittoon:");1523 kuolematJoillaHaviaaOtsikko.Position = new Vector(kuolematJoillaHaviaa.X - kuolematJoillaHaviaa.Width, kuolematJoillaHaviaa.Y);1524 Add( kuolematJoillaHaviaaOtsikko);1525 ikkunanKomponentit.Add( kuolematJoillaHaviaaOtsikko);1526 1527 Label kuolematJoillaHaviaaNaytto = new Label();1528 kuolematJoillaHaviaaNaytto.BindTo(MonestakoVoittaa);1529 kuolematJoillaHaviaaNaytto.Position = new Vector(kuolematJoillaHaviaa.X + kuolematJoillaHaviaa.Width / 1.5, kuolematJoillaHaviaa.Y);1530 Add( kuolematJoillaHaviaaNaytto);1531 ikkunanKomponentit.Add( kuolematJoillaHaviaaNaytto);1540 MonestakoVoittaa = new IntMeter(5, 1, 600); 1541 1542 Slider puolustusAika = new Slider(300.0, 20.0); 1543 puolustusAika.Position = new Vector(valikko.X, valikko.Y - 200); 1544 Add(puolustusAika); 1545 puolustusAika.BorderColor = Color.Transparent; 1546 puolustusAika.Color = Color.Transparent; 1547 puolustusAika.Knob.Color = Color.Green; 1548 puolustusAika.Track.Color = Color.DarkGreen; 1549 puolustusAika.BindTo(KauankoPuolustetaan); 1550 ikkunanKomponentit.Add(puolustusAika); 1551 1552 Label puolustusAikaOtsikko = new Label("Kauanko puolustetaan:"); 1553 puolustusAikaOtsikko.Position = new Vector(puolustusAika.X - puolustusAika.Width, puolustusAika.Y); 1554 Add(puolustusAikaOtsikko); 1555 ikkunanKomponentit.Add(puolustusAikaOtsikko); 1556 1557 Label puolustusAikaNaytto = new Label(); 1558 puolustusAikaNaytto.BindTo(MonestakoVoittaa); 1559 puolustusAikaNaytto.Position = new Vector(puolustusAika.X + puolustusAika.Width / 1.5, puolustusAika.Y); 1560 Add(puolustusAikaNaytto); 1561 ikkunanKomponentit.Add(puolustusAikaNaytto); 1532 1562 } 1533 1563 … … 1542 1572 { 1543 1573 case 0: 1574 Level.Background.Image = null; 1575 ValittuKenttaTiedosto = "copter_rescue_map"; 1576 ClearControls(); 1577 SoitaMusiikkia(4); // OrcsCome Special 1544 1578 AloitaEscapeGame(1, 1, KauankoPuolustetaan); 1579 AsetaOhjaimet(); 1580 Partikkelit.PoistaValikkoTaustaPartikkelit(); 1545 1581 break; 1546 1582 case 1: 1583 Level.Background.Image = null; 1584 ValittuKenttaTiedosto = "copter_rescue_map"; // zombimäppi1 1585 ClearControls(); 1586 SoitaMusiikkia(4); // OrcsCome Special 1587 AloitaEscapeGame(2, 1, KauankoPuolustetaan); 1588 AsetaOhjaimet(); 1589 Partikkelit.PoistaValikkoTaustaPartikkelit(); 1547 1590 break; 1548 1591 case 2: 1592 LuoInfinitePeliMuodonValintaValikko(); 1549 1593 break; 1550 1594 1551 1595 } 1552 1596 } 1553 1554 1597 1555 1598 /// <summary> … … 1839 1882 Add(vihu); 1840 1883 Vector paikka; 1884 int spawnausYrityksia = 0; 1841 1885 if (peli.KaytetaankoFixedSpawneja && peli.VihollistenFixedSpawnit.Count != 0) 1842 1886 { … … 1844 1888 { 1845 1889 paikka = RandomGen.SelectOne<Vector>(peli.VihollistenFixedSpawnit); 1890 spawnausYrityksia++; 1891 if (spawnausYrityksia > peli.VihollistenFixedSpawnit.Count * 6) break; // ettei tule loputonta silmukkaa, jos ei ole spawnauspaikkoja 1846 1892 } while (!OnkoNaytonAlueella(paikka)); 1847 1893 vihu.Position = paikka; 1894 spawnausYrityksia = 0; 1848 1895 } 1849 1896 else vihu.Position = ArvoSpawnausPaikkaKentanLaidoilta(Vakiot.PALJONKO_VIHOLLISET_SPAWNAAVAT_KENTAN_RAJOJEN_ULKOPUOLELLE); … … 1898 1945 List<Pelaaja> pelaajatList = new List<Pelaaja>(pelaajat); 1899 1946 1947 Escape escapeGame = new Escape(respaustenMaara, puolustettavaAika, pelaajatList); 1900 1948 LuoKentta(0, pelaajienMaara, true); 1901 1902 Escape escapeGame = new Escape(respaustenMaara, puolustettavaAika, pelaajatList);1903 1904 1949 LuoVihollistenMallineet(escapeGame); 1905 1950 escapeGame.PeliPaattyi += InfiniteHavio; … … 2021 2066 tähtäin.LinearDamping = 0.60; 2022 2067 tähtäin.Tag = "tahtain"; 2023 Add(tähtäin, 3);2068 Add(tähtäin, 2); 2024 2069 return tähtäin; 2025 2070 } … … 2397 2442 Timer.SingleShot(0.5, delegate { valo.Intensity = 0.0; }); 2398 2443 }; 2399 kranaatti.Collided += delegate(IPhysicsObject k, IPhysicsObject kohde) { if (kohde.Tag.ToString() != "pelaaja" ) kranaatti.Velocity = Vector.Zero; };2444 kranaatti.Collided += delegate(IPhysicsObject k, IPhysicsObject kohde) { if (kohde.Tag.ToString() != "pelaaja" && kohde.Tag.ToString() != "tahtain") kranaatti.Velocity = Vector.Zero; }; 2400 2445 kranaatti.IsUpdated = true; 2401 2446 kranaatti.NeedsUpdateCall = true; … … 2625 2670 void AsetaSandboxOhjaimet() 2626 2671 { 2627 Keyboard.Listen(Key.Space, ButtonState.Pressed, delegate { LuoTuhoutuvaKentanOsa(SijoitaKentanosaRuudukkoon(pelaajat[0].tahtain.Position), 50, 50, n ull, kivenKuva, "kivi", 20, 1.0, 1.0); }, null);2672 Keyboard.Listen(Key.Space, ButtonState.Pressed, delegate { LuoTuhoutuvaKentanOsa(SijoitaKentanosaRuudukkoon(pelaajat[0].tahtain.Position), 50, 50, new IntPoint(0, 0), kivenKuva, "kivi", 20, 1.0, 1.0); }, null); 2628 2673 Keyboard.Listen(Key.K, ButtonState.Pressed, delegate { LuoKillBall(pelaajat[0].tahtain.Position); }, null); 2629 2674 Keyboard.Listen(Key.T, ButtonState.Pressed, delegate { LuoTynnyri(SijoitaKentanosaRuudukkoon(pelaajat[0].tahtain.Position), 50.0, 50.0, null); }, null); … … 2636 2681 2637 2682 }, null); 2638 ControllerOne.Listen(Button.B, ButtonState.Pressed, delegate { LuoTuhoutuvaKentanOsa(SijoitaKentanosaRuudukkoon(pelaajat[1].tahtain.Position), 50, 50, n ull, kivenKuva, "kivi", 20, 1.0, 1.0); }, null);2683 ControllerOne.Listen(Button.B, ButtonState.Pressed, delegate { LuoTuhoutuvaKentanOsa(SijoitaKentanosaRuudukkoon(pelaajat[1].tahtain.Position), 50, 50, new IntPoint(0, 0), kivenKuva, "kivi", 20, 1.0, 1.0); }, null); 2639 2684 ControllerOne.Listen(Button.Y, ButtonState.Pressed, delegate { LuoTynnyri(SijoitaKentanosaRuudukkoon(pelaajat[1].tahtain.Position), 50.0, 50.0, null); }, null); 2640 2685 ControllerOne.Listen(Button.DPadUp, ButtonState.Pressed, delegate -
2013/30/MiskaK/MW2(My Warfare 2)/MW2(My Warfare 2)/MW2(My Warfare 2)/Pelaaja.cs
r4580 r4693 181 181 Tag = "pelaaja"; 182 182 Mass = 10000; 183 IsUpdated = true; 183 184 184 185 if (kaytetaankoTaskuLamppua) … … 188 189 Taskulamppu.Position = this.Position - new Vector(25.0, 0.0); 189 190 this.Add(Taskulamppu); 191 //MW2_My_Warfare_2_.Peli.Add(Taskulamppu, 0); 190 192 } 191 193 } … … 196 198 public void Respawnaa() 197 199 { 198 Game.Add(this );200 Game.Add(this, 1); 199 201 this.Elamat.Value = Vakiot.PELAAJIEN_ELAMIEN_MAARA; 200 202 int i = 0; … … 209 211 this.Hit(new Vector(0.01, 0.01)); 210 212 KranaattienMaara = Vakiot.PELAAJAN_KRANAATTIEN_OLETUSMAARA; 213 if (this.Taskulamppu != null) 214 MW2_My_Warfare_2_.Peli.KirkastaRuutua(0.02, 0.7); 211 215 } 212 216 … … 224 228 this.KuolemaPaikka = this.Position; 225 229 Game.Remove(this); 230 if (this.Taskulamppu != null) 231 MW2_My_Warfare_2_.Peli.PimennaRuutua(0.03); 226 232 } 227 233 … … 340 346 this.aikaPoissaKentalta.Value = 5.00; 341 347 } 348 349 public override void Update(Time time) 350 { 351 //Taskulamppu.Position = this.Position + Vector.FromLengthAndAngle(-25.0, this.Angle); 352 base.Update(time); 353 } 342 354 } -
2013/30/MiskaK/MW2(My Warfare 2)/MW2(My Warfare 2)/MW2(My Warfare 2)Content/MW2(My Warfare 2)Content.contentproj
r4677 r4693 44 44 </ItemGroup> 45 45 <ItemGroup> 46 <Compile Include="copter_rescue_map.png"> 47 <Name>copter_rescue_map</Name> 48 <Importer>TextureImporter</Importer> 49 <Processor>TextureProcessor</Processor> 50 </Compile> 46 51 <Compile Include="testikenttä1.png"> 47 52 <Name>testikenttä1</Name> … … 1540 1545 <Compile Include="kuusi.png"> 1541 1546 <Name>kuusi</Name> 1542 <Importer>TextureImporter</Importer>1543 <Processor>TextureProcessor</Processor>1544 </Compile>1545 </ItemGroup>1546 <ItemGroup>1547 <Compile Include="copter_rescue_map.png">1548 <Name>copter_rescue_map</Name>1549 1547 <Importer>TextureImporter</Importer> 1550 1548 <Processor>TextureProcessor</Processor>
Note: See TracChangeset
for help on using the changeset viewer.