Changeset 4023 for 2013/23/AkuK
- Timestamp:
- 2013-06-07 13:26:49 (10 years ago)
- Location:
- 2013/23/AkuK/FysiikkaPeli3/FysiikkaPeli3
- Files:
-
- 2 added
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
2013/23/AkuK/FysiikkaPeli3/FysiikkaPeli3/FysiikkaPeli3/FysiikkaPeli3.cs
r3983 r4023 9 9 public class FysiikkaPeli3 : PhysicsGame 10 10 { 11 EasyHighScore topLista = new EasyHighScore(); 12 IntMeter pisteLaskuri; 13 AssaultRifle pelaajan1Ase; 11 14 Image taustaKuva = LoadImage("tausta5"); 12 13 15 16 List<Vector> rottienspawnit = new List<Vector>(); 14 17 DoubleMeter elamaLaskuri; 15 18 … … 18 21 public override void Begin() 19 22 { 20 21 22 // TODO: Kirjoita ohjelmakoodisi tähän 23 24 PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 25 23 24 26 25 LuoAlkuValikko(); 27 26 27 28 28 29 29 … … 35 35 { 36 36 37 MultiSelectWindow alkuValikko = new MultiSelectWindow("P elin alkuvalikko","Start Game", "Help", "Quit");37 MultiSelectWindow alkuValikko = new MultiSelectWindow("Plague Survival Beta","Start Game", "Help", "Quit"); 38 38 Keyboard.Listen(Key.Escape, ButtonState.Pressed,Exit, "Lopeta peli"); 39 39 … … 42 42 alkuValikko.AddItemHandler(1,Help); 43 43 alkuValikko.AddItemHandler(2, Exit); 44 44 45 45 46 46 } 47 47 void AloitaPeli() 48 { LuoKentta(); 49 48 { 49 rottienspawnit.Clear(); 50 LuoKentta(); 51 LuoPistelaskuri(); 50 52 51 53 … … 57 59 void Help() 58 60 { 59 61 MessageDisplay.Add("Move with arrow keys, Press space to shoot and Press A and D to Rotate Gun"); 62 LuoAlkuValikko(); 63 64 65 60 66 61 67 } … … 87 93 88 94 ruudut.SetTileMethod(Color.FromHexCode("F7FF1E"), LuoRotta); 89 95 ruudut.SetTileMethod(Color.FromHexCode("0026FF"), LisaaSpawner); 90 96 ruudut.Execute(20, 20); 91 97 LuoElamanLaskuri(); 92 98 Level.Background.Image = taustaKuva; 93 99 Level.Background.TileToLevel(); 94 100 Timer ajastin = new Timer(); 101 ajastin.Interval = 1.5; 102 ajastin.Timeout += Lisaarottia; 103 ajastin.Start(); 95 104 96 105 } … … 118 127 AddCollisionHandler(Pelaaja1, "health", PelaajaParanee); 119 128 Pelaaja1.Tag = "pelaaja"; 120 121 122 129 pelaajan1Ase = new AssaultRifle(30, 10); 130 Keyboard.Listen (Key.A, ButtonState.Down,LiikutaAsetta,null, pelaajan1Ase,5.0); 131 Keyboard.Listen(Key.D, ButtonState.Down, LiikutaAsetta, null, pelaajan1Ase, -5.0); 132 133 134 Pelaaja1.Add(pelaajan1Ase); 135 136 pelaajan1Ase.Ammo.Value = 1000; 137 138 PhoneBackButton.Listen(ConfirmExit, "Lopeta peli"); 139 pelaajan1Ase.ProjectileCollision = AmmusOsui; 140 Keyboard.Listen(Key.Space, ButtonState.Down, AmmuAseella, "Ammu", pelaajan1Ase); 123 141 } 124 142 … … 167 185 seuraajaAivot.Speed = 300; 168 186 seuraajaAivot.DistanceFar = 600; 169 seuraajaAivot.DistanceClose = 200;187 seuraajaAivot.DistanceClose = 0; 170 188 seuraajaAivot.StopWhenTargetClose = true; 171 189 … … 183 201 Lepakko.Image = Leppakko; 184 202 Add(Lepakko); 185 RandomMoverBrain satunnaisAivot = new RandomMoverBrain(200); 186 satunnaisAivot.ChangeMovementSeconds = 3; 187 satunnaisAivot.WanderRadius = 200; 188 189 Lepakko.Brain = satunnaisAivot; 203 204 FollowerBrain seuraajaAivot = new FollowerBrain("pelaaja"); 205 seuraajaAivot.Speed = 400; 206 seuraajaAivot.DistanceFar = 600; 207 seuraajaAivot.DistanceClose = 0; 208 seuraajaAivot.StopWhenTargetClose = true; 209 Lepakko.Brain = seuraajaAivot; 190 210 Lepakko.Position = paikka; 191 211 192 212 193 213 Lepakko.Tag = "pahis"; 194 195 196 197 214 198 215 … … 204 221 { 205 222 206 elamaLaskuri = new DoubleMeter( 10);207 elamaLaskuri.MaxValue = 10;223 elamaLaskuri = new DoubleMeter(30); 224 elamaLaskuri.MaxValue = 30; 208 225 elamaLaskuri.LowerLimit += ElamaLoppui; 209 226 … … 244 261 if (elamaLaskuri.Value == 0) 245 262 Pelaaja1.Destroy(); 263 246 264 247 265 248 266 249 267 … … 261 279 Pelaaja1.Destroy(); 262 280 263 281 264 282 265 283 } … … 270 288 271 289 Potion.Destroy(); 272 273 274 } 290 pisteLaskuri.Value += 1; 291 292 } 293 294 295 void AmmusOsui(PhysicsObject ammus, PhysicsObject kohde) 296 { 297 if (kohde.Tag.ToString() == "rotta") kohde.Destroy(); 298 if (kohde.Tag.ToString() == "pahis") kohde.Destroy(); 299 pisteLaskuri.Value += 5; 300 ammus.Destroy(); 301 302 303 } 304 305 306 307 void AmmuAseella(AssaultRifle ase) 308 { 309 PhysicsObject ammus = ase.Shoot(); 310 311 if(ammus != null) 312 ammus.LifetimeLeft = TimeSpan.FromSeconds(1.0); 313 314 315 316 317 } 318 319 void LiikutaAsetta(AssaultRifle ase,double kulma) 320 { 321 322 ase.Angle += Angle.FromDegrees(kulma); 323 324 325 326 327 } 328 329 void LuoPistelaskuri() 330 { 331 332 pisteLaskuri = new IntMeter(0); 333 334 Label pisteNaytto = new Label(); 335 pisteNaytto.X = Screen.Left + 100; 336 pisteNaytto.Y = Screen.Top - 100; 337 pisteNaytto.TextColor = Color.Black; 338 pisteNaytto.Color = Color.White; 339 340 pisteNaytto.BindTo(pisteLaskuri); 341 Add(pisteNaytto); 342 pisteNaytto.Title = "Current score"; 343 pisteLaskuri.Reset(); 344 } 345 346 347 void Lisaarottia() 348 { 349 PhysicsObject Rotta = new PhysicsObject(30, 30); 350 Image Rottga = LoadImage("Rottqa"); 351 Rotta.Image = Rottga; 352 Add(Rotta); 353 Rotta.Tag = "rotta"; 354 Rotta.Position = rottienspawnit[RandomGen.NextInt(rottienspawnit.Count)]; 355 FollowerBrain seuraajaAivot = new FollowerBrain("pelaaja"); 356 seuraajaAivot.Speed = 300; 357 seuraajaAivot.DistanceFar = 600; 358 seuraajaAivot.DistanceClose = 0; 359 seuraajaAivot.StopWhenTargetClose = true; 360 361 Rotta.Brain = seuraajaAivot; 362 363 364 } 365 366 void LisaaSpawner( Vector paikka, double leveys, double korkeus) 367 { 368 rottienspawnit.Add(paikka); 369 GameObject spawni = new GameObject(50, 50); 370 Image Spawni1 = LoadImage("Spawni1"); 371 spawni.Image = Spawni1; 372 } 373 374 275 375 } -
2013/23/AkuK/FysiikkaPeli3/FysiikkaPeli3/FysiikkaPeli3Content/FysiikkaPeli3Content.contentproj
r3983 r4023 171 171 </Compile> 172 172 </ItemGroup> 173 <ItemGroup> 174 <Compile Include="Spawni1.png"> 175 <Name>Spawni1</Name> 176 <Importer>TextureImporter</Importer> 177 <Processor>TextureProcessor</Processor> 178 </Compile> 179 </ItemGroup> 180 <ItemGroup> 181 <Folder Include="NewFolder1\" /> 182 </ItemGroup> 173 183 <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 174 184 <!-- 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.