Changeset 3888
- Timestamp:
- 2012-11-17 16:11:46 (11 years ago)
- Location:
- 2012/10-20/NicoA-K/Tasohyppelypeli1
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
2012/10-20/NicoA-K/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1.cs
r3877 r3888 17 17 PlatformCharacter pelaaja1; 18 18 //PhysicsObject pelaaja1; 19 20 List<Label> valikonKohdat; 19 21 20 22 Image pelaajanKuva = LoadImage("hhaamu"); … … 27 29 Image trollikarkki = LoadImage ("trollikarkki"); 28 30 Image lippu = LoadImage("lippu"); 31 Image ammuus = LoadImage("ammus"); 29 32 30 33 SoundEffect maaliAani = LoadSoundEffect("maali"); … … 34 37 public override void Begin() 35 38 { 39 IsMouseVisible = true; 40 41 MultiSelectWindow alkuValikko = new MultiSelectWindow("Pelin alkuvalikko", 42 "Aloita peli", "Ohjeet", "Lopeta"); 43 44 Add(alkuValikko); 45 46 alkuValikko.AddItemHandler(0, AloitaPeli); 47 alkuValikko.AddItemHandler(1, Ohjeet); 48 alkuValikko.AddItemHandler(2, Exit); 49 } 50 51 void Ohjeet() 52 { 53 54 } 55 56 void Valikko() 57 { 58 ClearAll(); 59 60 valikonKohdat = new List<Label>(); 61 62 Label kohta1 = new Label("Aloita peli"); 63 kohta1.Position = new Vector(0, 40); 64 valikonKohdat.Add(kohta1); 65 66 Label kohta2 = new Label("Ohjeet"); 67 kohta2.Position = new Vector(0, 0); 68 valikonKohdat.Add(kohta2); 69 70 Label kohta3 = new Label("Lopeta peli"); 71 kohta3.Position = new Vector(0, -40); 72 valikonKohdat.Add(kohta3); 73 74 foreach (Label valikonKohta in valikonKohdat) 75 { 76 Add(valikonKohta); 77 } 78 79 Mouse.ListenOn(kohta1, MouseButton.Left, ButtonState.Pressed, AloitaPeli, null); 80 Mouse.ListenOn(kohta2, MouseButton.Left, ButtonState.Pressed, Ohjeet, null); 81 Mouse.ListenOn(kohta3, MouseButton.Left, ButtonState.Pressed, Exit, null); 82 Mouse.ListenMovement(1.0, ValikossaLiikkuminen, null); 83 84 } 85 86 void AloitaPeli() 87 { 88 IsMouseVisible = false; 89 36 90 Gravity = new Vector(0, -1000); 37 91 … … 57 111 kentta.SetTileMethod('K', LisaaTrollikarkki); 58 112 kentta.SetTileMethod('M', LisaaTrolleri); 113 kentta.SetTileMethod('L', LisaaLippu); 59 114 60 115 kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 61 116 Level.CreateBorders(); 62 Level.Background.CreateGradient(Color. White, Color.SkyBlue);117 Level.Background.CreateGradient(Color.Gray, Color.White); 63 118 } 64 119 … … 88 143 pelaaja1.Mass = 4.0; 89 144 pelaaja1.Image = pelaajanKuva; 145 146 pelaaja1.Weapon = new AssaultRifle (30, 10) ; 147 pelaaja1.Weapon.Ammo.Value = 1000; 148 pelaaja1.Weapon.ProjectileCollision = AmmusOsui; 149 pelaaja1.Weapon.IsVisible = false; 150 90 151 AddCollisionHandler(pelaaja1, "tahti", TormaaTahteen); 91 152 AddCollisionHandler(pelaaja1, "pahis", TormaaPahikseen); … … 103 164 104 165 Keyboard.Listen(Key.Left, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 105 Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, nopeus); 106 Keyboard.Listen(Key.Up, ButtonState.Down, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 166 Keyboard.Listen(Key.Right, ButtonState.Down, Liikuta, "Liikkuu oikealle", pelaaja1, nopeus); 167 Keyboard.Listen(Key.Up, ButtonState.Down, Hyppaa, "Pelaaja lentää", pelaaja1, hyppyNopeus); 168 169 Keyboard.Listen(Key.A, ButtonState.Down, Liikuta, "Liikkuu vasemmalle", pelaaja1, -nopeus); 170 Keyboard.Listen(Key.D, ButtonState.Down, Liikuta, "Liikkuu oikealle", pelaaja1, nopeus); 171 Keyboard.Listen(Key.W, ButtonState.Down, Hyppaa, "Pelaaja lentää", pelaaja1, hyppyNopeus); 172 173 Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Ammu", pelaaja1); 107 174 108 175 ControllerOne.Listen(Button.Back, ButtonState.Pressed, Exit, "Poistu pelistä"); … … 110 177 ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, Liikuta, "Pelaaja liikkuu vasemmalle", pelaaja1, -nopeus); 111 178 ControllerOne.Listen(Button.DPadRight, ButtonState.Down, Liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus); 112 ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 179 ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja lentää", pelaaja1, hyppyNopeus); 180 113 181 114 182 PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); … … 167 235 void TormaaPahikseen(PhysicsObject hahmo, PhysicsObject pahis) 168 236 { 169 //maaliAani.Play();170 237 MessageDisplay.Add("AU!"); 171 238 pisteLaskuri.Value -= 1; … … 251 318 void LisaaTrolleri(Vector paikka, double leveys, double korkeus) 252 319 { 253 PhysicsObject trolleri = PhysicsObject.CreateStaticObject(200, 200); 254 trolleri.IgnoresCollisionResponse = true; 320 Trolleri trolleri = new Trolleri(200, 200); 321 trolleri.IgnoresCollisionResponse = false; 322 trolleri.IgnoresGravity = true; 255 323 trolleri.Position = paikka; 256 324 trolleri.Image = trollikuva; 257 325 trolleri.Tag = "trolleri"; 258 326 Add(trolleri); 327 328 329 RandomMoverBrain satunnaisAivot = new RandomMoverBrain(100); 330 satunnaisAivot.Active = true; 331 satunnaisAivot.ChangeMovementSeconds = 3; 332 trolleri.Brain = satunnaisAivot; 259 333 } 260 334 … … 262 336 void TormaaTrolleriin(PhysicsObject hahmo, PhysicsObject trolleri) 263 337 { 264 //maaliAani.Play();265 338 MessageDisplay.Add("GAME OVER!"); 266 pisteLaskuri.Value -= 10000; 339 pisteLaskuri.Value -= 10000; 340 } 341 342 void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 343 { 344 if (kohde.Tag.Equals("tahti")) return; 345 if (kohde.Tag.Equals("trolleri")) AmmusOsuiTrolleriin(ammus, (Trolleri)kohde); 346 ammus.Destroy(); 347 } 348 349 void AmmusOsuiTrolleriin(PhysicsObject ammus, Trolleri kohde) 350 { 351 kohde.elamaLaskuri.Value--; 352 } 353 354 void AmmuAseella(PlatformCharacter pelaaja) 355 { 356 PhysicsObject ammus = pelaaja.Weapon.Shoot(); 357 358 359 if (ammus != null) 360 { 361 ammus.Size *= 3; 362 ammus.Image = ammuus; 363 ammus.MaximumLifetime = TimeSpan.FromSeconds(1.0); 364 } 365 366 } 367 368 class Trolleri : PhysicsObject 369 { 370 public IntMeter elamaLaskuri = new IntMeter(10, 0, 100); 371 //public int Elamat = 5; 372 373 public Trolleri(double leveys, double korkeus) 374 : base(leveys, korkeus) 375 { 376 elamaLaskuri.LowerLimit += delegate { this.Destroy(); }; 377 } 378 379 } 380 381 void ValikossaLiikkuminen(AnalogState hiirenTila) 382 { 383 foreach (Label kohta in valikonKohdat) 384 { 385 if (Mouse.IsCursorOn(kohta)) 386 { 387 kohta.TextColor = Color.Red; 388 } 389 else 390 { 391 kohta.TextColor = Color.Black; 392 } 393 394 } 395 396 } 397 398 void LisaaLippu(Vector paikka, double leveys, double korkeus) 399 { 400 PhysicsObject Lippu = PhysicsObject.CreateStaticObject(leveys, korkeus); 401 Lippu.IgnoresCollisionResponse = true; 402 Lippu.Position = paikka; 403 Lippu.Image = lippu; 404 Lippu.Tag = "lippu"; 405 Add(Lippu); 267 406 } 268 407 -
2012/10-20/NicoA-K/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1.csproj.Debug.cachefile
r3877 r3888 12 12 Content\lippu.xnb 13 13 Content\kentta1.xnb 14 Content\ammus.xnb -
2012/10-20/NicoA-K/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1Content/Tasohyppelypeli1Content.contentproj
r3877 r3888 122 122 </Compile> 123 123 </ItemGroup> 124 <ItemGroup /> 124 <ItemGroup> 125 <Compile Include="ammus.png"> 126 <Name>ammus</Name> 127 <Importer>TextureImporter</Importer> 128 <Processor>TextureProcessor</Processor> 129 </Compile> 130 </ItemGroup> 125 131 <ItemGroup> 126 132 <Compile Include="lippu.png"> -
2012/10-20/NicoA-K/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1Content/kentta1.txt
r3877 r3888 1 1 ####################################SSS########SSSS####SSSS####SSS########################SSSSS######### 2 # # #P #TTTT T K T TTT TT TT T T T T T T T T 3 # * #P # TTTT TTTTT TT TT T T TTT T T T T T T 2 # # #P #TTTT T K T TTT TT TT T T T T T T T T # 3 # * #P # TTTT TTTTT TT TT T T TTT T T T T T T # 4 4 ## ## * #P PP # TTT T T TTT T T T T TT T T T TTTTTTTTTT TTTTTTTTTTT# 5 5 # # #P P #T T T TTTTT T TT TT T # … … 12 12 # #### ## P # T TTT TT T T TT T TTT TTT T T # 13 13 # # * ? P # # TTTTTTT T TTTT T T T TT T TT TT T # 14 # 15 ###S######S####TT######################################T#####TT######## #########TTTTTT T##########T#16 # ************************************* # T17 # P* * * * * * * * * * * * * * T18 # ************************************* #P P P P P P P P P P P P P P T19 # P* * * * * * * * * * * * * * T20 # ************************************** # T21 #PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT T TTTTT14 #LN # # P # TTTTTTTTTTT T T K T T # 15 ###S######S####TT######################################T#####TT######## #########TTTTTT############# 16 # ************************************* S # 17 # P* * * * * * * * * * * * * * # 18 # ************************************* #P P P P P P P P P P P P P P # 19 # P* * * * * * * * * * * * * * # 20 # ************************************** # # 21 #PPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT####### 22 22 #*********************************************************************************T T 23 23 #*********************************************************************************TT T -
2012/10-20/NicoA-K/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1Content/obj/x86/Debug/Tasohyppelypeli1Content.contentproj.FileListAbsolute.txt
r3877 r3888 4 4 C:\Users\Nico\Desktop\Tasohyppely\Tasohyppelypeli1\Tasohyppelypeli1Content\obj\x86\Debug\ResolveAssemblyReference.cache 5 5 E:\Tasohyppely\Tasohyppelypeli1\Tasohyppelypeli1Content\obj\x86\Debug\ResolveAssemblyReference.cache 6 C:\MyTemp\ohjelmointikerho\NicoA-K\Tasohyppelypeli1\Tasohyppelypeli1\Tasohyppelypeli1Content\obj\x86\Debug\ResolveAssemblyReference.cache
Note: See TracChangeset
for help on using the changeset viewer.