Changeset 7938 for 2016/27/AnttiN
- Timestamp:
- 2016-07-07 11:29:54 (6 years ago)
- Location:
- 2016/27/AnttiN/SalainenTehtävä/SalainenTehtävä
- Files:
-
- 5 added
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
2016/27/AnttiN/SalainenTehtävä/SalainenTehtävä/SalainenTehtävä/SalainenTehtävä.cs
r7911 r7938 15 15 const int RUUDUN_KOKO = 40; 16 16 17 IntMeter voimaMittari; 18 int kenttaNRO = 1; 19 const int maxKentat = 1; 17 20 PhysicsObject pelaaja1; 18 21 … … 27 30 Image TykkiKuva = LoadImage("Tykki"); 28 31 29 AssaultRifle pelaajan1Ase;32 AssaultRifle tykkiAse; 30 33 31 34 SoundEffect maaliAani = LoadSoundEffect("maali"); … … 33 36 public override void Begin() 34 37 { 38 ClearAll(); 39 LuoPaavalikko(); 40 } 41 42 void LuoPaavalikko() 43 { 44 MultiSelectWindow alkuValikko = new MultiSelectWindow("Pelin alkuvalikko", 45 "Pelaa", "Lopeta"); 46 Add(alkuValikko); 47 alkuValikko.AddItemHandler(0, Pelaa); 48 alkuValikko.AddItemHandler(1, Exit); 49 } 50 51 void Pelaa() 52 { 53 MultiSelectWindow alkuValikko = new MultiSelectWindow("Valitse kenttä", 54 "Kenntä 1", "Takaisin"); 55 Add(alkuValikko); 56 alkuValikko.AddItemHandler(0, delegate { AloitaPeli(1); }); 57 alkuValikko.AddItemHandler(1, LuoPaavalikko); 58 59 } 60 61 void AloitaPeli(int kentta) 62 { 63 this.kenttaNRO = kentta; 35 64 IsMouseVisible = true; 36 65 LuoKentta(); 66 LuoTahtiLaskuri(); 37 67 LisaaNappaimet(); 38 68 … … 44 74 void LuoKentta() 45 75 { 46 TileMap kentta = TileMap.FromLevelAsset("kentta 1");76 TileMap kentta = TileMap.FromLevelAsset("kentta"+kenttaNRO); 47 77 kentta.SetTileMethod('#', LisaaTaso); 48 78 kentta.SetTileMethod('*', LisaaTahti); … … 58 88 } 59 89 90 void LuoTahtiLaskuri() 91 { 92 voimaMittari = new IntMeter(0,0,3); 93 voimaMittari.UpperLimit += VoimaMittariTaynna; 94 95 ProgressBar voimaPalkki = new ProgressBar(150, 50); 96 voimaPalkki.X = Screen.Right - 250; 97 voimaPalkki.Y = Screen.Bottom + 100; 98 voimaPalkki.BindTo(voimaMittari); 99 voimaPalkki.Image = LoadImage("harmaatTahdet"); 100 voimaPalkki.BarImage = LoadImage("kultaisetTahdet"); 101 Add(voimaPalkki); 102 103 } 104 105 void VoimaMittariTaynna() 106 { 107 MessageDisplay.Add("Keräsit kaikki kolme tähteä!"); 108 } 109 60 110 void LisaaTaso(Vector paikka, double leveys, double korkeus) 61 111 { … … 87 137 Add(pelaaja1); 88 138 pelaaja1.LinearDamping = 0.9; 139 pelaaja1.Tag = "pelaaja"; 89 140 pelaaja1.CanRotate = false; 90 141 91 pelaajan1Ase = new AssaultRifle(30, 10);92 pelaajan1Ase.Power.MaxValue = 50;93 pelaajan1Ase.FireRate = 1;94 pelaajan1Ase.ProjectileCollision = AmmusOsui;95 pelaaja1.Add( pelaajan1Ase);142 tykkiAse = new AssaultRifle(30, 10); 143 tykkiAse.Power.MaxValue = 50; 144 tykkiAse.FireRate = 1; 145 tykkiAse.ProjectileCollision = AmmusOsui; 146 pelaaja1.Add(tykkiAse); 96 147 97 148 … … 158 209 tykki.Position = paikka; 159 210 tykki.Image = TykkiKuva; 160 tykki.Tag = "Tykk ki";211 tykki.Tag = "Tykki"; 161 212 Add(tykki); 213 214 AssaultRifle tykkiAse = new AssaultRifle(30, 10); 215 tykkiAse.IsVisible = false; 216 tykkiAse.Power.MaxValue = 50; 217 tykkiAse.FireRate = 0.5; 218 tykkiAse.ProjectileCollision = AmmusOsuiPelaajaan; 219 tykki.Add(tykkiAse); 220 221 Timer tykkiAjastin = new Timer(); 222 tykkiAjastin.Interval = 0.5; 223 tykkiAjastin.Timeout += delegate 224 { 225 AmmuAseella(tykkiAse); 226 }; 227 tykkiAjastin.Start(); 228 229 tykki.Destroyed += delegate { tykkiAjastin.Stop(); }; 162 230 163 231 Label pisteNaytto = new Label(); … … 178 246 Keyboard.Listen(Key.Up, ButtonState.Down, Liikuta, "Pelaaja liikkuu ylöspäin", pelaaja1, new Vector(0, nopeus)); 179 247 Keyboard.Listen(Key.Down, ButtonState.Down, Liikuta, "pelaaja liikkuu alaspäin", pelaaja1, new Vector(0, -nopeus)); 180 Mouse.Listen(MouseButton.Left, ButtonState.Down, AmmuAseella, "Ammu", pelaajan1Ase);248 Mouse.Listen(MouseButton.Left, ButtonState.Down, AmmuAseella, "Ammu", tykkiAse); 181 249 Mouse.ListenMovement(0.1, Tahtaa, "Tähtää aseella"); 182 250 … … 187 255 ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, new Vector(-nopeus, 0)); 188 256 ControllerOne.Listen(Button.DPadRight, ButtonState.Down, Liikuta, "Liikkuu oikealle", pelaaja1, new Vector(nopeus, 0)); 189 ControllerOne.Listen(Button.A, ButtonState.Down, AmmuAseella, "Ammu", pelaajan1Ase);257 ControllerOne.Listen(Button.A, ButtonState.Down, AmmuAseella, "Ammu", tykkiAse); 190 258 ControllerOne.ListenAnalog(AnalogControl.RightStick, 0.1, Tahtaa2, "Liikuta pelaajaa tattia pyörittämällä."); 191 259 … … 195 263 void Tahtaa2(AnalogState tatinTila) 196 264 { 197 pelaajan1Ase.Angle = tatinTila.StateVector.Angle;265 tykkiAse.Angle = tatinTila.StateVector.Angle; 198 266 } 199 267 … … 210 278 MessageDisplay.Add("Keräsit tähden!"); 211 279 tahti.Destroy(); 280 voimaMittari.Value += 1; 212 281 } 213 282 214 283 void TormaaLaskeutumiseen(PhysicsObject hahmo, PhysicsObject Laskeutuminen) 215 284 { 285 216 286 MessageDisplay.Add("Läpäisit tason"); 217 287 Timer.SingleShot(1, Voitit); 218 288 } 219 289 … … 226 296 ((SahkoansaTykki)kohde).ElamaLaskuri.Value -= 10; 227 297 } 228 229 }230 231 void AmmusOsui2(PhysicsObject ammus, PhysicsObject kohde)232 {233 ammus.Destroy();234 298 if (kohde.Tag.ToString() == "Tykki") 235 299 { 300 236 301 ((Tykki)kohde).ElamaLaskuri.Value -= 10; 237 302 238 303 } 304 } 305 306 void AmmusOsuiPelaajaan(PhysicsObject ammus, PhysicsObject kohde) 307 { 308 ammus.Destroy(); 309 if (kohde.Tag.ToString() == "pelaaja") 310 { 311 TuhoaPelaaja(pelaaja1, ammus); 312 } 239 313 240 314 } … … 242 316 void Tahtaa(AnalogState hiirenLiike) 243 317 { 244 Vector suunta = (Mouse.PositionOnWorld - pelaajan1Ase.AbsolutePosition).Normalize();245 pelaajan1Ase.Angle = suunta.Angle;318 Vector suunta = (Mouse.PositionOnWorld - tykkiAse.AbsolutePosition).Normalize(); 319 tykkiAse.Angle = suunta.Angle; 246 320 } 247 321 void AmmuAseella(AssaultRifle ase) … … 253 327 ammus.Size *= 1; 254 328 //ammus.Image = ... 255 ammus.MaximumLifetime = TimeSpan.FromSeconds(20 .0);329 ammus.MaximumLifetime = TimeSpan.FromSeconds(200.0); 256 330 } 257 331 } … … 271 345 ClearAll(); 272 346 Level.Background.Color = Color.Black; 273 MultiSelectWindow alkuValikko = new MultiSelectWindow("Hävisit pelin","Aloita alusta", "Lopeta"); 274 Add(alkuValikko); 275 alkuValikko.AddItemHandler(0, Begin); 276 alkuValikko.AddItemHandler(1, Exit); 277 } 347 MultiSelectWindow havioValikko = new MultiSelectWindow("Hävisit pelin", "Aloita alusta", "Päävalikko", "Lopeta"); 348 Add(havioValikko); 349 havioValikko.AddItemHandler(0, delegate { AloitaPeli(kenttaNRO); }); 350 havioValikko.AddItemHandler(1, LuoPaavalikko); 351 havioValikko.AddItemHandler(2, Exit); 352 } 353 354 void Voitit() 355 { 356 ClearAll(); 357 Level.Background.Color = Color.Black; 358 MultiSelectWindow voittoValikko = new MultiSelectWindow("Taso suoritettu", "Pelaa uudelleen", "Päävalikko","Seuraava kenttä", "Lopeta"); 359 Add(voittoValikko); 360 voittoValikko.AddItemHandler(0, delegate { AloitaPeli(kenttaNRO); }); 361 voittoValikko.AddItemHandler(1, LuoPaavalikko); 362 voittoValikko.AddItemHandler(2, delegate { if (!(kenttaNRO < maxKentat)) LuoPaavalikko(); AloitaPeli(kenttaNRO += 1); }); 363 voittoValikko.AddItemHandler(3, Exit); 364 365 } 366 278 367 } 279 368 -
2016/27/AnttiN/SalainenTehtävä/SalainenTehtävä/SalainenTehtävä/SalainenTehtävä.csproj.Debug.cachefile
r7911 r7938 12 12 Content\Rajahdys.xnb 13 13 Content\Tykki.xnb 14 Content\harmaatTahdet.xnb 15 Content\kultaisetTahdet.xnb -
2016/27/AnttiN/SalainenTehtävä/SalainenTehtävä/SalainenTehtävä/obj/x86/Debug/ContentPipeline-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}.xml
r7911 r7938 119 119 <Time>2016-07-06T14:10:30.3215692+03:00</Time> 120 120 </Item> 121 <Item> 122 <Source>harmaatTahdet.png</Source> 123 <Name>harmaatTahdet</Name> 124 <Importer>TextureImporter</Importer> 125 <Processor>TextureProcessor</Processor> 126 <Options>None</Options> 127 <Output>C:\MyTemp\AnttiN\SalainenTehtävä\SalainenTehtävä\SalainenTehtävä\bin\x86\Debug\Content\harmaatTahdet.xnb</Output> 128 <Time>2016-07-07T10:43:20.8191983+03:00</Time> 129 </Item> 130 <Item> 131 <Source>kultaisetTahdet.png</Source> 132 <Name>kultaisetTahdet</Name> 133 <Importer>TextureImporter</Importer> 134 <Processor>TextureProcessor</Processor> 135 <Options>None</Options> 136 <Output>C:\MyTemp\AnttiN\SalainenTehtävä\SalainenTehtävä\SalainenTehtävä\bin\x86\Debug\Content\kultaisetTahdet.xnb</Output> 137 <Time>2016-07-07T10:47:32.4173983+03:00</Time> 138 </Item> 121 139 <BuildSuccessful>true</BuildSuccessful> 122 140 <Settings> -
2016/27/AnttiN/SalainenTehtävä/SalainenTehtävä/SalainenTehtävä/obj/x86/Debug/SalainenTehtävä.csproj.FileListAbsolute.txt
r7911 r7938 20 20 C:\MyTemp\AnttiN\SalainenTehtÀvÀ\SalainenTehtÀvÀ\SalainenTehtÀvÀ\bin\x86\Debug\Content\Rajahdys.xnb 21 21 C:\MyTemp\AnttiN\SalainenTehtÀvÀ\SalainenTehtÀvÀ\SalainenTehtÀvÀ\bin\x86\Debug\Content\Tykki.xnb 22 C:\MyTemp\AnttiN\SalainenTehtÀvÀ\SalainenTehtÀvÀ\SalainenTehtÀvÀ\bin\x86\Debug\Content\harmaatTahdet.xnb 23 C:\MyTemp\AnttiN\SalainenTehtÀvÀ\SalainenTehtÀvÀ\SalainenTehtÀvÀ\bin\x86\Debug\Content\kultaisetTahdet.xnb -
2016/27/AnttiN/SalainenTehtävä/SalainenTehtävä/SalainenTehtävä/obj/x86/Debug/cachefile-{FB1067CC-FEED-45F1-8CB8-8F3DD59AB260}-targetpath.txt
r7911 r7938 12 12 Content\Rajahdys.xnb 13 13 Content\Tykki.xnb 14 Content\harmaatTahdet.xnb 15 Content\kultaisetTahdet.xnb -
2016/27/AnttiN/SalainenTehtävä/SalainenTehtävä/SalainenTehtäväContent/SalainenTehtäväContent.contentproj
r7911 r7938 130 130 </Compile> 131 131 </ItemGroup> 132 <ItemGroup> 133 <Compile Include="harmaatTahdet.png"> 134 <Name>harmaatTahdet</Name> 135 <Importer>TextureImporter</Importer> 136 <Processor>TextureProcessor</Processor> 137 </Compile> 138 </ItemGroup> 139 <ItemGroup> 140 <Compile Include="kultaisetTahdet.png"> 141 <Name>kultaisetTahdet</Name> 142 <Importer>TextureImporter</Importer> 143 <Processor>TextureProcessor</Processor> 144 </Compile> 145 </ItemGroup> 132 146 <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 133 147 <!-- 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.