Changeset 4024
- Timestamp:
- 2013-06-07 13:26:51 (10 years ago)
- Location:
- 2013/23/OsamaA
- Files:
-
- 88 added
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
2013/23/OsamaA/Magneta/Magneta/Magneta/Magneta.cs
r4001 r4024 25 25 { 26 26 // TODO: Kirjoita ohjelmakoodisi tähän 27 IsFullScreen = true; 27 28 PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 28 29 Keyboard.Listen(Key.Escape, ButtonState.Pressed, ConfirmExit, "Lopeta peli"); 29 30 IsMouseVisible = true; 30 31 SoundEffect s; 32 s.Position.UpperLimit += 31 33 luoKentta(); 32 34 asetaNappaimet(); … … 47 49 suunta = Vector.Zero; 48 50 Level.CreateBorders(); 51 Level.Background.Image = LoadImage("Osamapelin_wheedi"); 52 Level.Background.TileToLevel(); 49 53 luoPelaaja(); 50 luoHirvio(new Vector(0, 0));54 Image image = LoadImage("Osamapeli_valloituskentta_hirvion"); 51 55 AddCollisionHandler(pelaaja, "hirvio", CollisionHandler.AddMeterValue(pelaaja.HP, -1)); 52 56 luoTukikohta(100, 100, 40, true, delegate { luoMinioni(100, 100); }, new Vector(100, 100), 1); 53 57 luoTukikohta(-100, -100, 40, false, delegate { luoHirvio(-100, -100); }, new Vector(-50, 100), 1); 54 luoTukikohta(-200, -200, 40, true, delegate { luoMinioni(-200, -200); }, new Vector(0, 70), 1);58 luoTukikohta(-200, -200, 40, false, delegate { luoHirvio(-200, -200); }, new Vector(0, 70), 1); 55 59 luoTukikohta(300, 5, 40, false, delegate { luoHirvio(300, 5); }, new Vector(-80, 30), 1); 56 luoTukikohta(0, 350, 40, true, delegate { luoMinioni(0, 350); }, new Vector(50, -100), 1); 60 luoTukikohta(0, 350, 40, true, delegate { luoHirvio(0, 350); }, new Vector(50, -100), 1); 61 } 62 public void eiMitaan() 63 { 57 64 } 58 65 59 66 public void luoPelaaja() 60 67 { 68 61 69 pelaaja = new Seurattava(20, 20, 10); 62 70 pelaaja.Image = LoadImage("Osamapelin_Sankari"); … … 71 79 } 72 80 81 public void luoKentta(int tukikohtienmaara, int tukikohtiaPelaajalla, int minEtaisyys) 82 { 83 { 84 double tukikohtaX; 85 double tukikohtaY; 86 double maxEtaisyys = Level.Left; 87 int mones; 88 Vector tukikohta_sijainti; 89 Vector valloituskentta_sijainti; 90 for (int i = 0; i < tukikohtienmaara; i++) 91 { 92 mones = 300; 93 do 94 { 95 do 96 { 97 tukikohtaX = RandomGen.NextDouble(Level.Left, Level.Right); 98 tukikohtaY = RandomGen.NextDouble(Level.Bottom, Level.Top); 99 tukikohta_sijainti = new Vector(tukikohtaX, tukikohtaY); 100 mones--; 101 } while (!onkoLiianLahella(tukikohta_sijainti, mones) || mones < minEtaisyys); 102 mones = 200; 103 do 104 { 105 valloituskentta_sijainti = RandomGen.NextVector(50, mones); 106 } while (!onkoLiianLahella(valloituskentta_sijainti, mones) || mones < minEtaisyys); 107 } while (maxEtaisyys > minEtaisyys); 108 } 109 } 110 } 111 112 public bool onkoLiianLahella(Vector piste, double etaisyys) 113 { 114 foreach (var item in tukikohdat) 115 { 116 if ((item.Position - piste).Magnitude < 300 || (item.Valtauskentta.Position - piste).Magnitude < 300) 117 { 118 return true; 119 } 120 } 121 return false; 122 } 123 73 124 public void luoMinioni(double x, double y) 74 125 { … … 84 135 minioni.LinearDamping = 0.75; 85 136 minioni.Shape = Shape.Circle; 86 minioni.Mass = 10;137 minioni.Mass = 0.1; 87 138 minioni.Tag = "minioni"; 88 139 minionit.Add(minioni); … … 93 144 minionit.Remove(minioni); 94 145 }; 95 Add(minioni );146 Add(minioni, 1); 96 147 Seuraa(minioni, pelaaja); 97 148 } … … 125 176 public void luoTukikohta(double x, double y, double spawnausAika, bool onkoPelaajan, Action tapahtuuSpawnatessa, Vector ase, double valtausAika) 126 177 { 127 Tukikohta tukikohta = new Tukikohta(x, y, valtausAika, onkoPelaajan, delegate { tapahtuuSpawnatessa(); }, ase, spawnausAika); 178 Tukikohta tukikohta = new Tukikohta(x, y, 179 valtausAika, onkoPelaajan, delegate { tapahtuuSpawnatessa(); }, ase, 180 spawnausAika, LoadImage("Osamapelin_minionitorneli"), LoadImage("Osamapelin_orkkelimokkeli"), 181 LoadImage("Osamapeli_valloituskentta_pelaajan"), LoadImage("Osamapeli_valloituskentta_hirvion")); 128 182 tukikohdat.Add(tukikohta); 129 183 if (onkoPelaajan == true) … … 131 185 pelaajanTKValtauskentat.Add(tukikohta.Valtauskentta); 132 186 } 133 Add(tukikohta );187 Add(tukikohta, 2); 134 188 } 135 189 … … 150 204 List<Seurattava> sisalla = tukikohdat[ii].KetaOnSisalla<Seurattava>(GetObjects(x => true)); 151 205 if (sisalla.Count == 0) continue; 152 153 Seurattava seurattava = sisalla[0]; 206 Seurattava seurattava = null; 207 if (tukikohdat[ii].OnkoPelaajan == true) //jos pelaajan, etsii hirviön 208 { 209 foreach (var item in sisalla) 210 { 211 if (item.Tag.ToString() == "hirvio") 212 { 213 seurattava = item; 214 continue; 215 } 216 } 217 } 218 else 219 { 220 foreach (var item in sisalla) 221 { 222 if (item.Tag.ToString() == "pelaaja") 223 { 224 seurattava = item; 225 continue; 226 } 227 } 228 } 229 if (seurattava == null) continue; 154 230 if (tukikohdat[ii].AloitaValtaus(seurattava)) // Aloittaa valtauksen, jos saa vallatuksi, suorittaa 155 231 { … … 175 251 public void asetaNappaimet() 176 252 { 177 Mouse.Listen(MouseButton. Right, ButtonState.Pressed, valitseMinionit, "Valitsee minionit valitulta alueelta");178 Mouse.Listen(MouseButton. Right, ButtonState.Released, suoritaValinta, "Liikuttaa valitut minionit haluamaan paikkaan");179 Mouse.Listen(MouseButton. Left, ButtonState.Pressed, suoritaKomento, "Suorittaa komennon");253 Mouse.Listen(MouseButton.Left, ButtonState.Pressed, valitseMinionit, "Valitsee minionit valitulta alueelta"); 254 Mouse.Listen(MouseButton.Left, ButtonState.Released, suoritaValinta, "Liikuttaa valitut minionit haluamaan paikkaan"); 255 Mouse.Listen(MouseButton.Right, ButtonState.Pressed, suoritaKomento, "Suorittaa komennon"); 180 256 Keyboard.Listen(Key.W, ButtonState.Pressed, asetaSuunta, "ylös", pelaaja, new Vector(0.0, 1.0)); 181 257 Keyboard.Listen(Key.A, ButtonState.Pressed, asetaSuunta, "vasen", pelaaja, new Vector(-1.0, 0.0)); -
2013/23/OsamaA/Magneta/Magneta/Magneta/obj/x86/Debug/Magneta.csproj.FileListAbsolute.txt
r4001 r4024 14 14 J:\MyTemp\Osama\Magneta\Magneta\Magneta\bin\x86\Debug\Content\Osamapelin_wheedi.xnb 15 15 J:\MyTemp\Osama\Magneta\Magneta\Magneta\bin\x86\Debug\Content\Osamapelin_orkkelimokkeli.xnb 16 J:\MyTemp\Osama\Magneta\Magneta\Magneta\bin\x86\Debug\Content\Osamapeli_valloituskentta_hirvion.xnb 17 J:\MyTemp\Osama\Magneta\Magneta\Magneta\bin\x86\Debug\Content\Osamapeli_valloituskentta_pelaajan.xnb 18 J:\MyTemp\Osama\Magneta\Magneta\Magneta\bin\x86\Debug\Content\Intro.xnb 19 J:\MyTemp\Osama\Magneta\Magneta\Magneta\bin\x86\Debug\Content\Intro.wma -
2013/23/OsamaA/Magneta/Magneta/MagnetaContent/MagnetaContent.contentproj
r4001 r4024 85 85 </Compile> 86 86 </ItemGroup> 87 <ItemGroup> 88 <Compile Include="Osamapeli_valloituskentta_hirvion.png"> 89 <Name>Osamapeli_valloituskentta_hirvion</Name> 90 <Importer>TextureImporter</Importer> 91 <Processor>TextureProcessor</Processor> 92 </Compile> 93 </ItemGroup> 94 <ItemGroup> 95 <Compile Include="Osamapeli_valloituskentta_pelaajan.png"> 96 <Name>Osamapeli_valloituskentta_pelaajan</Name> 97 <Importer>TextureImporter</Importer> 98 <Processor>TextureProcessor</Processor> 99 </Compile> 100 </ItemGroup> 101 <ItemGroup> 102 <Compile Include="Intro.wav"> 103 <Name>Intro</Name> 104 <Importer>WavImporter</Importer> 105 <Processor>SongProcessor</Processor> 106 </Compile> 107 </ItemGroup> 87 108 <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 88 109 <!-- To modify your build process, add your task inside one of the targets below and uncomment it. -
2013/23/OsamaA/Magneta/Magneta/MagnetaContent/obj/x86/Debug/ContentPipeline.xml
r4001 r4024 56 56 <Time>2013-06-06T20:56:57.56567+03:00</Time> 57 57 </Item> 58 <Item> 59 <Source>Osamapeli_valloituskentta_hirvion.png</Source> 60 <Name>Osamapeli_valloituskentta_hirvion</Name> 61 <Importer>TextureImporter</Importer> 62 <Processor>TextureProcessor</Processor> 63 <Options>None</Options> 64 <Output>J:\MyTemp\Osama\Magneta\Magneta\Magneta\bin\x86\Debug\Content\Osamapeli_valloituskentta_hirvion.xnb</Output> 65 <Time>2013-06-07T10:32:23.3739033+03:00</Time> 66 </Item> 67 <Item> 68 <Source>Osamapeli_valloituskentta_pelaajan.png</Source> 69 <Name>Osamapeli_valloituskentta_pelaajan</Name> 70 <Importer>TextureImporter</Importer> 71 <Processor>TextureProcessor</Processor> 72 <Options>None</Options> 73 <Output>J:\MyTemp\Osama\Magneta\Magneta\Magneta\bin\x86\Debug\Content\Osamapeli_valloituskentta_pelaajan.xnb</Output> 74 <Time>2013-06-07T10:32:26.1860641+03:00</Time> 75 </Item> 76 <Item> 77 <Source>Intro.wav</Source> 78 <Name>Intro</Name> 79 <Importer>WavImporter</Importer> 80 <Processor>SongProcessor</Processor> 81 <Options>None</Options> 82 <Output>J:\MyTemp\Osama\Magneta\Magneta\Magneta\bin\x86\Debug\Content\Intro.xnb</Output> 83 <Extra>J:\MyTemp\Osama\Magneta\Magneta\Magneta\bin\x86\Debug\Content\Intro.wma</Extra> 84 <Time>2013-06-07T12:40:44.4233781+03:00</Time> 85 </Item> 58 86 <BuildSuccessful>true</BuildSuccessful> 59 87 <Settings>
Note: See TracChangeset
for help on using the changeset viewer.