- Timestamp:
- 2013-07-24 15:04:43 (10 years ago)
- Location:
- 2013/30/NikiV/Airbattle/Airbattle
- Files:
-
- 5 added
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
2013/30/NikiV/Airbattle/Airbattle/Airbattle/Airbattle.cs
r4583 r4637 13 13 IntMeter pisteLaskuri; 14 14 ExplosionSystem rajahdys = new ExplosionSystem(LoadImage("rajahdys"), 100); 15 List<Vector> vihujenSpawnauspaikat; 16 List<Vector> hamistenSpawnauspaikat; 17 IntMeter vihulaskuri; 18 15 19 EasyHighScore topLista = new EasyHighScore(); 20 21 int[] montakoVihuaKentassa = { 20, 30, 40, 50, 70, 80, 90, 100, 110, 120, 130, 140, 150, 160, 170, 180 }; 22 int kenttaNro = 0; 23 double RUUDUN_LEVEYS = 50; 24 16 25 public override void Begin() 17 26 { 18 Aloitapeli();19 27 SetWindowSize(800, 600, false); 28 Paavalikko(); 20 29 } 21 30 … … 23 32 { 24 33 ClearAll(); 34 vihujenSpawnauspaikat = new List<Vector>(); 35 hamistenSpawnauspaikat = new List<Vector>(); 36 vihulaskuri = new IntMeter(0, 0, int.MaxValue); 37 vihulaskuri.LowerLimit += delegate 38 { 39 kenttaNro++; 40 Timer.SingleShot(2.0, delegate 41 { 42 UusiKentta(kenttaNro); 43 }); 44 }; 25 45 Add(rajahdys); 26 46 Level.Size = new Vector(800, 600); 27 SetWindowSize(800, 600, false); 28 47 29 48 LuoKentta(); 30 49 LuoPistelaskuri(); 31 50 MediaPlayer.Play("taustamusa"); 32 51 MediaPlayer.IsRepeating = true; 33 34 52 Level.Background.CreateStars(10000); 35 53 Camera.ZoomToLevel(); 54 Kontrollit(); 55 56 UusiKentta(kenttaNro); 57 } 58 59 void UusiKentta(int kenttaNro) 60 { 61 for (int i = 0; i < montakoVihuaKentassa[kenttaNro]; i++) 62 { 63 PhysicsObject vihu = Luoperusvihu(RandomGen.SelectOne(vihujenSpawnauspaikat.ToArray()), RUUDUN_LEVEYS, RUUDUN_LEVEYS); 64 vihulaskuri.Value++; 65 vihu.Destroyed += delegate { vihulaskuri.Value--; }; 66 } 67 } 68 69 private void Kontrollit() 70 { 36 71 Keyboard.Listen(Key.Space, ButtonState.Pressed, Ammu, "Ammu", alus); 37 72 … … 47 82 Keyboard.Listen(Key.Down, ButtonState.Down, LiikutaPelaajaa, null, alus, new Vector(0, -1000)); 48 83 Keyboard.Listen(Key.Down, ButtonState.Released, LiikutaPelaajaa, null, alus, Vector.Zero); 84 85 ControllerOne.Listen(Button.DPadLeft, ButtonState.Down, LiikutaPelaajaa, "Pelaaja liikkuu vasemmalle", alus, new Vector(-1000, 0)); 86 ControllerOne.Listen(Button.DPadLeft, ButtonState.Released, LiikutaPelaajaa, null, alus, Vector.Zero); 87 88 ControllerOne.Listen(Button.DPadRight, ButtonState.Down, LiikutaPelaajaa, null, alus, new Vector(1000, 0)); 89 ControllerOne.Listen(Button.DPadRight, ButtonState.Released, LiikutaPelaajaa, null, alus, Vector.Zero); 90 91 ControllerOne.Listen(Button.DPadUp, ButtonState.Down, LiikutaPelaajaa, null, alus, new Vector(0, 1000)); 92 ControllerOne.Listen(Button.DPadUp, ButtonState.Released, LiikutaPelaajaa, null, alus, Vector.Zero); 93 94 ControllerOne.Listen(Button.DPadDown, ButtonState.Down, LiikutaPelaajaa, null, alus, new Vector(0, -1000)); 95 ControllerOne.Listen(Button.DPadDown, ButtonState.Released, LiikutaPelaajaa, null, alus, Vector.Zero); 96 97 ControllerOne.Listen(Button.A, ButtonState.Pressed, Ammu, "ammu", alus); 49 98 50 99 PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); … … 69 118 Add(ammus); 70 119 AddCollisionHandler(ammus, "hämis", CollisionHandler.AddMeterValue(pisteLaskuri, 200)); 120 AddCollisionHandler(ammus, "perusvihu", CollisionHandler.AddMeterValue(pisteLaskuri, 300)); 71 121 AddCollisionHandler(ammus, AmmusOsuu); 72 122 … … 82 132 83 133 84 void PelaajaOsuu(PhysicsObject alus, PhysicsObject hamis)134 void PelaajaOsuu(PhysicsObject alus, PhysicsObject kohde) 85 135 { 86 136 alus.Destroy(); 87 137 rajahdys.AddEffect(alus.X, alus.Y, 100); 138 ControllerOne.Vibrate(1.5, 1.5, 0.0, 0.0, 1.5); 88 139 topLista.EnterAndShow(pisteLaskuri.Value); 89 140 topLista.HighScoreWindow.Closed += IkkunaSuljettu; 90 141 91 142 } 143 92 144 void IkkunaSuljettu(Window sender) 93 145 { … … 133 185 TileMap ruudut = TileMap.FromLevelAsset("kentta1"); 134 186 ruudut.SetTileMethod('a', Luoalus); 135 ruudut.SetTileMethod('h', Luohamis); 136 ruudut.Execute(50, 50); 137 } 187 ruudut.SetTileMethod('h', LisaaHamiksenPaikka); 188 ruudut.SetTileMethod('p', LisaaVihunPaikka); 189 ruudut.Execute(RUUDUN_LEVEYS, RUUDUN_LEVEYS); 190 } 191 192 138 193 void Luoalus(Vector paikka, double leveys, double korkeus) 139 194 { … … 147 202 alus.Image = aluskuva; 148 203 AddCollisionHandler(alus, "hämis", PelaajaOsuu); 149 } 204 AddCollisionHandler(alus, "perusvihu", PelaajaOsuu); 205 } 206 207 void LisaaHamiksenPaikka(Vector paikka, double leveys, double korkeus) 208 { 209 hamistenSpawnauspaikat.Add(paikka); 210 } 211 212 void LisaaVihunPaikka(Vector paikka, double leveys, double korkeus) 213 { 214 vihujenSpawnauspaikat.Add(paikka); 215 } 216 150 217 void Luohamis(Vector paikka, double leveys, double korkeus) 151 218 { … … 164 231 165 232 } 233 PhysicsObject Luoperusvihu(Vector paikka, double leveys, double korkeus) 234 { 235 PhysicsObject perusvihu = new PhysicsObject(leveys, korkeus); 236 perusvihu.Position = paikka; 237 Add(perusvihu); 238 perusvihu.CanRotate = false; 239 Image perusvihukuva = LoadImage("perusvihu"); 240 perusvihu.Image = perusvihukuva; 241 FollowerBrain seuraajanAivot = new FollowerBrain("alus"); 242 seuraajanAivot.Speed = 200; 243 seuraajanAivot.Active = true; 244 perusvihu.Brain = seuraajanAivot; 245 perusvihu.Tag = "perusvihu"; 246 return perusvihu; 247 } 248 void Paavalikko() 249 { 250 MultiSelectWindow alkuValikko = new MultiSelectWindow("", 251 "Aloita peli"); 252 Add(alkuValikko); 253 alkuValikko.AddItemHandler(0, Aloitapeli); 254 alkuValikko.Color = Color.Transparent; 255 256 } 257 258 259 260 166 261 167 262 void LuoPistelaskuri() … … 178 273 Add(pisteNaytto); 179 274 } 275 276 180 277 181 278 -
2013/30/NikiV/Airbattle/Airbattle/AirbattleContent/AirbattleContent.contentproj
r4583 r4637 122 122 </Compile> 123 123 </ItemGroup> 124 <ItemGroup> 125 <Compile Include="limaammus.png"> 126 <Name>limaammus</Name> 127 <Importer>TextureImporter</Importer> 128 <Processor>TextureProcessor</Processor> 129 </Compile> 130 </ItemGroup> 131 <ItemGroup> 132 <Compile Include="raketti.png"> 133 <Name>raketti</Name> 134 <Importer>TextureImporter</Importer> 135 <Processor>TextureProcessor</Processor> 136 </Compile> 137 </ItemGroup> 124 138 <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 125 139 <!-- To modify your build process, add your task inside one of the targets below and uncomment it. -
2013/30/NikiV/Airbattle/Airbattle/AirbattleContent/kentta1.txt
r4583 r4637 1 2 3 4 5 6 ppppppppppppppppppppppppppp 7 8 p p p p p p p p p p p p 9 pppppppppppppppppppppppppppp 10 11 12 13 14 15 hhhhhh hhhhh 1 16 2 17 … … 5 20 6 21 7 8 22 a 9 23 10 24 … … 17 31 18 32 33 19 34 20 35 … … 23 38 24 39 25 26 27 28 29 30 31 32 33 34 h h h h h h h h h h h h h 35 36 37 38 39 40 41 a 40
Note: See TracChangeset
for help on using the changeset viewer.