Changeset 7479 for 2016/25/SaanaR/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1.cs
- Timestamp:
- 2016-06-21 15:54:06 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
2016/25/SaanaR/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1/Tasohyppelypeli1.cs
r7472 r7479 10 10 { 11 11 const double nopeus = 200; 12 const double hyppyNopeus = 750;12 const double hyppyNopeus = 850; 13 13 const int RUUDUN_KOKO = 40; 14 14 15 15 PlatformCharacter pelaaja1; 16 16 int kolikoidenMaara = 0; 17 string[] kentat = new string[] { "kentta1", "kentta2", "kentta3" }; 18 int kenttaMenossa = 0; 17 19 Image pelaajanKuva = LoadImage("kärpänen"); 18 20 Image tahtiKuva = LoadImage("Piste"); 19 21 Image AmpiaisenKuva = LoadImage("Ampiainen"); 20 22 21 SoundEffect maaliAani = LoadSoundEffect("maali"); 23 SoundEffect maaliAani = LoadSoundEffect("Kolikko"); 24 SoundEffect hyppyAani = LoadSoundEffect("hyppy"); 22 25 Image pilvenreunat = LoadImage("Pilvi"); 23 26 public override void Begin() 27 { 28 LuoAlkuvalikko(); 29 } 30 void LuoAlkuvalikko () 31 { 32 MultiSelectWindow alkuValikko = new MultiSelectWindow("Pelin alkuvalikko", 33 "Aloita peli", "Lopeta"); 34 Add(alkuValikko); 35 alkuValikko.AddItemHandler(0, AloitaPeli); 36 alkuValikko.AddItemHandler(1, Exit); 37 alkuValikko.Color = Color.BlueGray; 38 } 39 void AloitaPeli () 24 40 { 25 41 Gravity = new Vector(0, -1000); … … 32 48 Camera.StayInLevel = true; 33 49 } 34 50 void LisaaAse (Vector paikka, double leveys, double korkeus) 51 { 52 PhysicsObject ase = new PhysicsObject(leveys, korkeus); 53 ase.Position = paikka; 54 ase.Tag = "ase"; 55 Add(ase); 56 } 35 57 void LuoKentta() 36 58 { 37 TileMap kentta = TileMap.FromLevelAsset( "kentta1");59 TileMap kentta = TileMap.FromLevelAsset(kentat[kenttaMenossa]); 38 60 kentta.SetTileMethod('#', LisaaTaso); 39 61 kentta.SetTileMethod('*', LisaaTahti); 40 62 kentta.SetTileMethod('A', LisaaAmpiainen); 41 63 kentta.SetTileMethod('N', LisaaPelaaja); 64 kentta.SetTileMethod('-', LisaaAse); 42 65 kentta.Execute(RUUDUN_KOKO, RUUDUN_KOKO); 43 66 Level.CreateBorders(); … … 60 83 PhysicsObject taso = PhysicsObject.CreateStaticObject(leveys, korkeus); 61 84 taso.Position = paikka; 85 taso.Shape = Shape.FromImage(pilvenreunat); 86 taso.Image = pilvenreunat; 62 87 taso.Color = Color.White; 63 taso.Shape = Shape.FromImage(pilvenreunat); 88 89 64 90 Add(taso); 65 91 } … … 72 98 tahti.Image = tahtiKuva; 73 99 tahti.Tag = "Piste"; 100 kolikoidenMaara++; 74 101 Add(tahti); 75 102 } … … 83 110 AddCollisionHandler(pelaaja1, "Piste", TormaaTahteen); 84 111 AddCollisionHandler(pelaaja1, "ampiainen", TörmääAmpiaiseen); 112 AddCollisionHandler(pelaaja1, "ase", OtaAse); 113 85 114 Add(pelaaja1); 115 } 116 void OtaAse (PhysicsObject pelaaja, PhysicsObject ase) 117 { 118 pelaaja1.Weapon = new AssaultRifle(20, 10); 119 ase.Destroy(); 120 pelaaja1.Weapon.ProjectileCollision = AmmusOsui; 121 } 122 void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 123 { 124 ammus.Destroy(); 125 if (kohde.Tag.Equals("ampiainen")) kohde.Destroy(); 86 126 } 87 127 void TörmääAmpiaiseen (PhysicsObject pelaaja, PhysicsObject ampiainen) … … 110 150 ControllerOne.Listen(Button.DPadRight, ButtonState.Down, Liikuta, "Pelaaja liikkuu oikealle", pelaaja1, nopeus); 111 151 ControllerOne.Listen(Button.A, ButtonState.Pressed, Hyppaa, "Pelaaja hyppää", pelaaja1, hyppyNopeus); 152 Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Ammu", pelaaja1); 112 153 113 154 PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); … … 118 159 hahmo.Walk(nopeus); 119 160 } 161 void AmmuAseella(PlatformCharacter pelaaja) 162 { 163 PhysicsObject ammus = pelaaja.Weapon.Shoot(); 164 165 if (ammus != null) 166 { 167 //ammus.Size *= 3; 168 //ammus.Image = ... 169 //ammus.MaximumLifetime = TimeSpan.FromSeconds(2.0); 170 } 171 } 120 172 121 173 void Hyppaa(PlatformCharacter hahmo, double nopeus) 122 174 { 123 175 hahmo.Jump(nopeus); 176 hyppyAani.Play(); 124 177 } 125 178 … … 129 182 MessageDisplay.Add("You get the coin!"); 130 183 tahti.Destroy(); 184 kolikoidenMaara--; 185 186 if (kolikoidenMaara <= 00) SiirrySeuraavaanKenttaan(); 131 187 } 188 void SiirrySeuraavaanKenttaan () 189 { 190 ClearAll(); 191 kenttaMenossa++; 192 if (kenttaMenossa >= kentat.Length) LuoAlkuvalikko(); 193 AloitaPeli(); 194 } 195 132 196 }
Note: See TracChangeset
for help on using the changeset viewer.