Changeset 5129
- Timestamp:
- 2014-06-26 14:58:57 (9 years ago)
- Location:
- 2014/26/UkkoK/TasoHyppelyUkkoK
- Files:
-
- 4 added
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
2014/26/UkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK.cs
r5103 r5129 7 7 using Jypeli.Widgets; 8 8 9 10 class Vihu : PlatformCharacter 11 { 12 private IntMeter elamaLaskuri = new IntMeter(3, 0, 3); 13 public IntMeter ElamaLaskuri { get { return elamaLaskuri; } } 14 15 public Vihu(double leveys, double korkeus) 16 : base(leveys, korkeus) 17 { 18 elamaLaskuri.LowerLimit += delegate { this.Destroy(); }; 19 } 20 } 21 22 9 23 public class TasoHyppelyUkkoK : PhysicsGame 10 24 { … … 16 30 IntMeter kranuLaskuri; 17 31 32 18 33 //Image pelaajanKuva = LoadImage("sankari"); 19 // Image tahtiKuva = LoadImage("tahti");34 // Image tahtiKuva = LoadImage("tahti"); 20 35 // Image aseenKuva = LoadImage("AK-47"); 21 36 //Image moronKuva = LoadImage("Mörkö"); … … 31 46 Image Devil = LoadImage("Devil"); 32 47 Image Kolikko = LoadImage("Kolikko"); 33 // Image Dragon = LoadImage("Lohikäärme");48 // Image Dragon = LoadImage("Lohikäärme"); 34 49 Image AmmoCrate = LoadImage("AmmoCrate"); 35 36 50 Image Portti = LoadImage("Portti"); 51 52 IntMeter pisteLaskuri; 37 53 DoubleMeter elamaLaskuri; 38 54 39 55 40 56 //IntMeter ammusLaskuri; 41 57 42 58 … … 44 60 45 61 PlasmaCannon pelaajan1Ase; 62 63 int Kenttanumero = 1; 64 46 65 47 66 public override void Begin() … … 59 78 LuoElamaLaskuri(); 60 79 LuoKranuLaskuri(); 80 LuoAmmusLaskuri(); 81 LuoKolikkoLaskuri(); 61 82 62 83 Camera.Follow(pelaaja1); … … 67 88 void LuoKentta() 68 89 { 69 TileMap kentta = TileMap.FromLevelAsset("kentta 1");90 TileMap kentta = TileMap.FromLevelAsset("kentta" + Kenttanumero); 70 91 kentta.SetTileMethod('#', LisaaTaso); 71 92 kentta.SetTileMethod('*', LisaaTahti); 72 93 kentta.SetTileMethod('P', LisaaPelaaja); 73 94 kentta.SetTileMethod('V', LisaaVihollinen); 95 kentta.SetTileMethod('M', LisaaMaali); 74 96 //kentta.SetTileMethod('S', LisaaSeina); 75 97 kentta.SetTileMethod('L', LisaaLaatikko); 76 //LISÄÄ AMMUSLAATIKOT!!! 98 77 99 kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 78 100 Level.CreateBorders(); … … 109 131 AddCollisionHandler(pelaaja1, "vihollinen", TormaaViholliseen); 110 132 AddCollisionHandler(pelaaja1, "laatikko", TormaaLaatikkoon); 133 AddCollisionHandler(pelaaja1, "Maali", TormaaMaaliin); 111 134 112 135 Add(pelaaja1); … … 118 141 pelaajan1Ase.Ammo.Value = 10; 119 142 pelaajan1Ase.Ammo.LowerLimit += AmmuksetLoppuu; 120 143 121 144 122 145 … … 160 183 void TormaaTahteen(PhysicsObject hahmo, PhysicsObject tahti) 161 184 { 162 maaliAani.Play();163 MessageDisplay.Add(" Sait kolikon!");185 pisteLaskuri.Value++; 186 MessageDisplay.Add("Keräsit kolikon!"); 164 187 tahti.Destroy(); 165 188 } 189 166 190 void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 167 191 { … … 170 194 if (kohde.Tag == "vihollinen") 171 195 { 172 kohde.Destroy(); 173 MessageDisplay.Add("Ammuit vihollisen!"); 196 //kohde.Destroy(); 197 (kohde as Vihu).ElamaLaskuri.Value--; 198 MessageDisplay.Add("Ammuit vihollista!"); 174 199 } 175 200 176 201 177 202 } 178 203 … … 180 205 void AmmuAseella(PlasmaCannon ase) 181 206 { 182 PhysicsObject ammus = ase.Shoot(); 183 184 185 if (ammus != null) 186 { 187 ammus.Size *= 7; 188 ammus.Image = Salama; 189 ammus.MaximumLifetime = TimeSpan.FromSeconds(2.0); 190 } 191 207 //if (ammusLaskuri.Value > 0) 208 //{ 209 PhysicsObject ammus = ase.Shoot(); 210 211 212 if (ammus != null) 213 { 214 //ammusLaskuri.Value--; 215 ammus.Size *= 7; 216 ammus.Image = Salama; 217 ammus.MaximumLifetime = TimeSpan.FromSeconds(2.0); 218 219 } 220 //} 192 221 } 193 222 194 223 void LisaaVihollinen(Vector paikka, double leveys, double korkeus) 195 224 { 196 PlatformCharacter Vihollinen = new PlatformCharacter(leveys, korkeus);225 Vihu Vihollinen = new Vihu(leveys, korkeus); 197 226 Vihollinen.Position = paikka; 198 227 Vihollinen.Mass = 4.0; 199 228 Vihollinen.Image = Devil; 200 229 Vihollinen.Tag = "vihollinen"; 201 230 Vihollinen.CollisionIgnoreGroup = 1; 231 202 232 Add(Vihollinen); 203 233 … … 206 236 207 237 Vihollinen.Brain = tasoAivot; 208 209 210 } 238 } 239 211 240 void HeitaKranaatti(PlatformCharacter pelaaja) 212 241 { … … 219 248 kranu.Explosion.Image = rajahtavaPilvi; 220 249 kranuLaskuri.Value--; 250 kranu.CollisionIgnoreGroup = 1; 221 251 222 252 pelaaja.Throw(kranu, Angle.FromDegrees(30), 10000); … … 227 257 { 228 258 rajahdyksenKohde.Destroy(); 229 MessageDisplay.Add("Tuhosit vihollisen kranaatilla!"); 230 } 259 MessageDisplay.Add("Pilvipullosi tuhosi vihollisen!"); 260 } 261 231 262 void VihuTormaaTahteen(PhysicsObject hahmo, PhysicsObject tahti) 232 263 { 233 264 MessageDisplay.Add("Vihollinen tuhosi tähden!"); 234 265 tahti.Destroy(); 235 236 } 266 267 } 268 237 269 void LisaaSeina(Vector paikka, double leveys, double korkeus) 238 270 { … … 247 279 { 248 280 elamaLaskuri = new DoubleMeter(10); 249 elamaLaskuri.MaxValue = 5;281 elamaLaskuri.MaxValue = 10; 250 282 elamaLaskuri.LowerLimit += ElamaLoppui; 251 283 252 284 ProgressBar elamaPalkki = new ProgressBar(150, 20); 253 elamaPalkki.X = 285 elamaPalkki.X = 0; 254 286 elamaPalkki.Y = Screen.Top - 20; 255 287 elamaPalkki.BindTo(elamaLaskuri); … … 270 302 elamaLaskuri.Value--; 271 303 MessageDisplay.Add("Vihollinen vahingoitti sinua!"); 272 273 } 274 304 305 } 306 275 307 276 308 void LuoKranuLaskuri() 277 309 { 278 kranuLaskuri = new IntMeter( 5);279 280 Label pisteNaytto = new Label(); 310 kranuLaskuri = new IntMeter(3); 311 312 Label pisteNaytto = new Label(); 281 313 pisteNaytto.X = 0; 282 pisteNaytto.Y = Screen.Top - 50;314 pisteNaytto.Y = Screen.Top - 50; 283 315 pisteNaytto.TextColor = Color.LightBlue; 284 316 pisteNaytto.Color = Color.DarkBlue; 317 pisteNaytto.Title = "Pilvipulloja"; 285 318 286 319 pisteNaytto.BindTo(kranuLaskuri); … … 300 333 void TormaaLaatikkoon(PhysicsObject hahmo, PhysicsObject laatikko) 301 334 { 335 336 MessageDisplay.Add("Keräsit tarvikelaatikon!"); 337 laatikko.Destroy(); 338 kranuLaskuri.Value += 1; 339 pelaajan1Ase.Ammo.Value += 5; 340 } 341 342 343 void LuoAmmusLaskuri() 344 { 345 //ammusLaskuri = new IntMeter(pelaajan1Ase.Ammo.Value); 346 347 Label pisteNaytto = new Label(); 348 pisteNaytto.X = 0; 349 pisteNaytto.Y = Screen.Top - 100; 350 pisteNaytto.TextColor = Color.LightBlue; 351 pisteNaytto.Color = Color.DarkBlue; 352 pisteNaytto.Title = "Ammuksia"; 353 354 pisteNaytto.BindTo(pelaajan1Ase.Ammo); 355 Add(pisteNaytto); 356 } 357 358 void LisaaMaali(Vector paikka, double leveys, double korkeus) 359 { 360 PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 361 taso.Position = paikka; 362 taso.Color = Color.DarkBlue; 363 taso.Image = Portti; 364 taso.Tag = "Maali"; 365 Add(taso); 366 } 367 368 void TormaaMaaliin(PhysicsObject pelaaja1, PhysicsObject Maali) 369 { 370 if(pisteLaskuri == 44) 371 { 372 Kenttanumero++; 373 AloitaPeli(); 374 } 375 376 } 377 void LuoKolikkoLaskuri() 378 { 379 pisteLaskuri = new IntMeter(0); 380 } 302 381 303 MessageDisplay.Add("Sait tarvikelaatikon!");304 laatikko.Destroy();305 kranuLaskuri.Value += 2;306 pelaajan1Ase.Ammo.Value += 15;307 }308 309 310 311 312 382 } -
2014/26/UkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK.csproj.Debug.cachefile
r5103 r5129 15 15 Content\LohikÀÀrme.xnb 16 16 Content\AmmoCrate.xnb 17 Content\kentta2.xnb 18 Content\Portti.xnb -
2014/26/UkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/obj/x86/Debug/ContentPipeline-{F8BB567F-6D2E-4FE1-8873-A655DD95F472}.xml
r5103 r5129 36 36 <Options>None</Options> 37 37 <Output>C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\kentta1.xnb</Output> 38 <Time>2014-06-2 5T14:14:47.2035543+03:00</Time>38 <Time>2014-06-26T14:48:00.7854115+03:00</Time> 39 39 </Item> 40 40 <Item> … … 145 145 <Output>C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\AmmoCrate.xnb</Output> 146 146 <Time>2014-06-25T13:57:08.9669764+03:00</Time> 147 </Item> 148 <Item> 149 <Source>kentta2.txt</Source> 150 <Name>kentta2</Name> 151 <Importer>TextFileImporter</Importer> 152 <Processor>TextFileContentProcessor</Processor> 153 <Options>None</Options> 154 <Output>C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\kentta2.xnb</Output> 155 <Time>2014-06-26T14:48:46.1024683+03:00</Time> 156 </Item> 157 <Item> 158 <Source>Portti.png</Source> 159 <Name>Portti</Name> 160 <Importer>TextureImporter</Importer> 161 <Processor>TextureProcessor</Processor> 162 <Options>None</Options> 163 <Output>C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\Portti.xnb</Output> 164 <Time>2014-06-26T12:40:05.67121+03:00</Time> 147 165 </Item> 148 166 <BuildSuccessful>true</BuildSuccessful> -
2014/26/UkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/obj/x86/Debug/TasoHyppelyUkkoK.csproj.FileListAbsolute.txt
r5103 r5129 23 23 C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\LohikÀÀrme.xnb 24 24 C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\AmmoCrate.xnb 25 C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\kentta2.xnb 26 C:\MyTemp\UkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\TasoHyppelyUkkoK\bin\x86\Debug\Content\Portti.xnb -
2014/26/UkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/obj/x86/Debug/cachefile-{F8BB567F-6D2E-4FE1-8873-A655DD95F472}-targetpath.txt
r5103 r5129 15 15 Content\LohikÀÀrme.xnb 16 16 Content\AmmoCrate.xnb 17 Content\kentta2.xnb 18 Content\Portti.xnb -
2014/26/UkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoKContent/TasoHyppelyUkkoKContent.contentproj
r5103 r5129 151 151 </Compile> 152 152 </ItemGroup> 153 <ItemGroup> 154 <Compile Include="kentta2.txt"> 155 <Name>kentta2</Name> 156 <Importer>TextFileImporter</Importer> 157 <Processor>TextFileContentProcessor</Processor> 158 </Compile> 159 </ItemGroup> 160 <ItemGroup> 161 <Compile Include="Portti.png"> 162 <Name>Portti</Name> 163 <Importer>TextureImporter</Importer> 164 <Processor>TextureProcessor</Processor> 165 </Compile> 166 </ItemGroup> 153 167 <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 154 168 <!-- To modify your build process, add your task inside one of the targets below and uncomment it. -
2014/26/UkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoK/TasoHyppelyUkkoKContent/kentta1.txt
r5103 r5129 6 6 ############################################################################################################################################################################################################################################################################################################################################### 7 7 # # 8 # * * * * * * * * L # 9 # ############################## # 10 # # # 11 # # # 12 # *L* # * *V* * *V* L # 13 # ##### # ############### # 14 # *V* # *V* # 15 # ##### # ##### * *V* * *V* * # 16 # *V* # V*V ############### # 17 # ##### # ##### # 18 # *V* # *** # 19 # ##### # ##### # 20 # P V V L V V V V L V V V V V V L V V # 8 # # 9 # # 10 # # 11 # # 12 # * * * * * * * * L * * V * * V * V L L * * V V * V L * L * L * # 13 # ############################## ###################### ###################### # # # # # # 14 # # *V* # V # *V* # 15 # # LV * *V * *V * V ### # ##### V * ##### # 16 # *L* # ## ## ## ## ## ## * *V* * *V* L ### * # # V L ##### # 17 # ##### # ############### L # V * V * * V * V * L L * * * ##### # 18 # *V* # *V* ##### V * ##### ##### ##### ##### # # # # ##### # 19 # ##### # ##### * *V* * *V* * #### * # * * # L V # 20 # *V* # V*V ############### ## V * ##### L V * V * V ##### * V # 21 # ##### # ##### ### ** # ##### ##### ##### ##### * V # 22 # *V* # *** #### *V* * * * ##### *** # 23 # ##### # ##### ##### # ### # # # ##### # 24 # P V V L V V V L V L V V L V V V V L V V V V V V V V V V V V V M # 21 25 ###############################################################################################################################################################################################################################################################################################################################################
Note: See TracChangeset
for help on using the changeset viewer.