- Timestamp:
- 2010-08-05 15:00:11 (13 years ago)
- Location:
- 2010/31/eelaeepu/space defense 1.0
- Files:
-
- 9 added
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
2010/31/eelaeepu/space defense 1.0/Content/Content.contentproj
r1596 r1635 40 40 </Compile> 41 41 </ItemGroup> 42 <ItemGroup> 43 <Compile Include="vihollis alus5.png"> 44 <Name>vihollis alus5</Name> 45 <Importer>TextureImporter</Importer> 46 <Processor>TextureProcessor</Processor> 47 </Compile> 48 </ItemGroup> 49 <ItemGroup> 50 <Compile Include="vihollis alus9.png"> 51 <Name>vihollis alus9</Name> 52 <Importer>TextureImporter</Importer> 53 <Processor>TextureProcessor</Processor> 54 </Compile> 55 </ItemGroup> 56 <ItemGroup> 57 <Compile Include="vihollis alus12.png"> 58 <Name>vihollis alus12</Name> 59 <Importer>TextureImporter</Importer> 60 <Processor>TextureProcessor</Processor> 61 </Compile> 62 </ItemGroup> 63 <ItemGroup> 64 <Compile Include="vihollis alus2.png"> 65 <Name>vihollis alus2</Name> 66 <Importer>TextureImporter</Importer> 67 <Processor>TextureProcessor</Processor> 68 </Compile> 69 </ItemGroup> 70 <ItemGroup> 71 <Compile Include="vihollis alus 13.png"> 72 <Name>vihollis alus 13</Name> 73 <Importer>TextureImporter</Importer> 74 <Processor>TextureProcessor</Processor> 75 </Compile> 76 </ItemGroup> 77 <ItemGroup> 78 <Compile Include="vihollis alus6.png"> 79 <Name>vihollis alus6</Name> 80 <Importer>TextureImporter</Importer> 81 <Processor>TextureProcessor</Processor> 82 </Compile> 83 </ItemGroup> 84 <ItemGroup> 85 <Compile Include="vihollis alus10.png"> 86 <Name>vihollis alus10</Name> 87 <Importer>TextureImporter</Importer> 88 <Processor>TextureProcessor</Processor> 89 </Compile> 90 </ItemGroup> 91 <ItemGroup> 92 <Compile Include="vihollis alus 16.png"> 93 <Name>vihollis alus 16</Name> 94 <Importer>TextureImporter</Importer> 95 <Processor>TextureProcessor</Processor> 96 </Compile> 97 </ItemGroup> 98 <ItemGroup> 99 <Compile Include="vihollis alus8.png"> 100 <Name>vihollis alus8</Name> 101 <Importer>TextureImporter</Importer> 102 <Processor>TextureProcessor</Processor> 103 </Compile> 104 </ItemGroup> 42 105 <Import Project="$(MSBuildExtensionsPath)\Microsoft\XNA Game Studio\$(XnaFrameworkVersion)\Microsoft.Xna.GameStudio.ContentPipeline.targets" /> 43 106 <!-- To modify your build process, add your task inside one of the targets below and uncomment it. -
2010/31/eelaeepu/space defense 1.0/Peli.cs
r1596 r1635 4 4 using Jypeli.Assets; 5 5 using System.Collections.Generic; 6 using Physics2DDotNet.Ignorers; 6 7 7 8 public class Avaruuspeli : PhysicsGame … … 10 11 List<Label> valikonKohdat; 11 12 List<Weapon> aseValikko; 13 List<Weapon> vihollistenaseet = new List<Weapon>(); 14 List<PhysicsObject> viholliset = new List<PhysicsObject>(); 12 15 int valittuAse; 13 16 Weapon aseKaytossa; 14 17 ObjectIgnorer ammusIgnorer = new ObjectIgnorer(); 15 18 double aluksennopeus = 200; 16 19 … … 30 33 Level.CreateBorders(0.2, false); 31 34 Mouse.IsCursorVisible = true; 32 LuoVihollisAlukset(); 35 for (int a = 0; a < 5; a++) 36 { 37 LuoVihollisAlukset(RandomGen.NextDouble(Level.Left, Level.Right), (RandomGen.NextDouble(Level.Bottom, Level.Top))); 38 } 39 40 Timer ajastin = new Timer(); 41 ajastin.Interval = 0.1; 42 ajastin.Trigger += VihollisAlusAmpuu; 43 ajastin.Start(); 33 44 34 45 … … 37 48 void LuoAlus() 38 49 { 39 alus = new PhysicsObject( 100, 80);50 alus = new PhysicsObject(40, 50); 40 51 alus.Image = LoadImage("alus2"); 41 52 luoaseet(); … … 126 137 } 127 138 128 void luoaseet() 139 void luoaseet() 129 140 { 130 141 aseValikko = new List<Weapon>(); … … 163 174 if (kohde == alus) 164 175 return; 176 if (kohde.Tag.ToString() == "ammus") 177 { 178 kohde.Destroy(); 179 } 165 180 ammus.Destroy(); 166 181 } … … 193 208 { 194 209 195 210 196 211 } 197 212 protected override void Update(Time time) … … 205 220 alus.Angle = suunta.Angle + Angle.Degrees(90); 206 221 } 222 foreach (PhysicsObject vihu in viholliset) 223 { 224 //vihu.Angle = Angle.Degrees(Math.Atan2(alus.Y - vihu.Y, alus.X - vihu.X) * 180 / Math.PI + 90); 225 Vector suunta = alus.Position - vihu.Position; 226 vihu.Angle = suunta.Angle + Angle.Degrees(270); 227 //vihu.Angle = suunta.Angle; 228 } 207 229 208 230 } … … 214 236 { 215 237 ammus.Size *= 3; 238 ammus.Tag = "ammus"; 216 239 if (aseKaytossa.Tag.ToString() == "tykki") 217 240 { … … 221 244 } 222 245 } 223 void LuoVihollisAlukset() 224 { 225 PhysicsObject vihollisalus1 = new PhysicsObject (100, 80); 226 vihollisalus1.Image = LoadImage ("vihollis alus1"); 227 Add(vihollisalus1); 228 } 229 230 } 231 246 void LuoVihollisAlukset(double aluksenx, double alukseny) 247 { 248 PhysicsObject vihollisalus1 = new PhysicsObject(50, 40); 249 vihollisalus1.CollisionIgnorer = ammusIgnorer; 250 int aluksenTyyppi = RandomGen.NextInt(10); 251 switch (aluksenTyyppi) 252 { 253 case 0: 254 { 255 vihollisalus1.Image = LoadImage("vihollis alus1"); 256 LaserGun laserase = new LaserGun(20, 10); 257 laserase.LaserCollision = LaserOsuu; 258 laserase.IsVisible = false; 259 vihollisalus1.Add(laserase); 260 laserase.Angle = Angle.Degrees(90); 261 laserase.IsVisible = false; 262 vihollistenaseet.Add(laserase); 263 viholliset.Add(vihollisalus1); 264 265 266 break; 267 } 268 case 1: 269 { 270 vihollisalus1.Image = LoadImage("vihollis alus2"); 271 LaserGun laserase = new LaserGun(20, 10); 272 laserase.LaserCollision = LaserOsuu; 273 laserase.IsVisible = false; 274 vihollisalus1.Add(laserase); 275 laserase.Angle = Angle.Degrees(90); 276 vihollistenaseet.Add(laserase); 277 viholliset.Add(vihollisalus1); 278 break; 279 } 280 case 2: 281 { 282 vihollisalus1.Image = LoadImage("vihollis alus5"); 283 AssaultRifle pyssy = new AssaultRifle(40, 20); 284 pyssy.BulletCollision = RifleOsuu; 285 pyssy.TimeBetweenUse = new TimeSpan(4000000); 286 pyssy.IsVisible = false; 287 vihollisalus1.Add(pyssy); 288 pyssy.Angle = Angle.Degrees(90); 289 vihollistenaseet.Add(pyssy); 290 viholliset.Add(vihollisalus1); 291 break; 292 } 293 294 case 3: 295 { 296 vihollisalus1.Image = LoadImage("vihollis alus6"); 297 AssaultRifle pyssy = new AssaultRifle(40, 20); 298 pyssy.BulletCollision = RifleOsuu; 299 pyssy.TimeBetweenUse = new TimeSpan(2000000); 300 pyssy.IsVisible = false; 301 vihollisalus1.Add(pyssy); 302 pyssy.Angle = Angle.Degrees(90); 303 vihollistenaseet.Add(pyssy); 304 viholliset.Add(vihollisalus1); 305 break; 306 } 307 case 4: 308 { 309 vihollisalus1.Image = LoadImage("vihollis alus8"); 310 AssaultRifle pyssy = new AssaultRifle(40, 20); 311 pyssy.BulletCollision = RifleOsuu; 312 pyssy.TimeBetweenUse = new TimeSpan(2000000); 313 pyssy.IsVisible = false; 314 vihollisalus1.Add(pyssy); 315 pyssy.Angle = Angle.Degrees(90); 316 vihollistenaseet.Add(pyssy); 317 viholliset.Add(vihollisalus1); 318 break; 319 } 320 case 5: 321 { 322 vihollisalus1.Image = LoadImage("vihollis alus9"); 323 Cannon tykki = new Cannon(20, 10); 324 tykki.IsVisible = false; 325 vihollisalus1.Add(tykki); 326 tykki.Angle = Angle.Degrees(90); 327 tykki.TimeBetweenUse = new TimeSpan(30000000); 328 vihollistenaseet.Add(tykki); 329 viholliset.Add(vihollisalus1); 330 tykki.Power.Value = 100000; 331 tykki.CannonBallCollision = KuulaOsuu; 332 break; 333 334 } 335 case 6: 336 { 337 vihollisalus1.Image = LoadImage("vihollis alus10"); 338 Cannon tykki = new Cannon(20, 10); 339 vihollisalus1.Add(tykki); 340 tykki.TimeBetweenUse = new TimeSpan(30000000); 341 tykki.IsVisible = false; 342 tykki.Angle = Angle.Degrees(90); 343 viholliset.Add(vihollisalus1); 344 vihollistenaseet.Add(tykki); 345 tykki.Power.Value = 100000; 346 tykki.CannonBallCollision = KuulaOsuu; 347 break; 348 } 349 case 7: 350 { 351 vihollisalus1.Image = LoadImage("vihollis alus12"); 352 Cannon tykki = new Cannon(20, 10); 353 vihollisalus1.Add(tykki); 354 tykki.TimeBetweenUse = new TimeSpan(30000000); 355 tykki.IsVisible = false; 356 tykki.Angle = Angle.Degrees(90); 357 viholliset.Add(vihollisalus1); 358 vihollistenaseet.Add(tykki); 359 tykki.Power.Value = 100000; 360 tykki.CannonBallCollision = KuulaOsuu; 361 break; 362 } 363 364 case 8: 365 { 366 vihollisalus1.Image = LoadImage("vihollis alus 13"); 367 PlasmaCannon plasmaTykki = new PlasmaCannon(100, 50); 368 vihollisalus1.Add(plasmaTykki); 369 plasmaTykki.TimeBetweenUse = new TimeSpan(3000000); 370 plasmaTykki.IsVisible = false; 371 plasmaTykki.Angle = Angle.Degrees(90); 372 vihollistenaseet.Add(plasmaTykki); 373 viholliset.Add(vihollisalus1); 374 break; 375 } 376 case 9: 377 { 378 vihollisalus1.Image = LoadImage("vihollis alus 16"); 379 PlasmaCannon plasmaTykki = new PlasmaCannon(100, 50); 380 plasmaTykki.TimeBetweenUse = new TimeSpan(3000000); 381 vihollisalus1.Add(plasmaTykki); 382 plasmaTykki.IsVisible = false; 383 plasmaTykki.Angle = Angle.Degrees(90); 384 vihollistenaseet.Add(plasmaTykki); 385 viholliset.Add(vihollisalus1); 386 break; 387 } 388 default: 389 { 390 vihollisalus1.Image = LoadImage("vihollis alus9"); 391 break; 392 } 393 } 394 vihollisalus1.X = aluksenx; 395 vihollisalus1.Y = alukseny; 396 397 398 Add(vihollisalus1); 399 400 } 401 402 void LaserOsuu(PhysicsObject ammus, PhysicsObject kohde) 403 { 404 if (kohde.Tag.ToString() == "ammus") 405 return; 406 ammus.Destroy(); 407 } 408 409 void RifleOsuu(PhysicsObject ammus, PhysicsObject kohde) 410 { 411 if (kohde.Tag.ToString() == "ammus") 412 return; 413 ammus.Destroy(); 414 } 415 416 void plasmaTykkiOsuu(PhysicsObject ammus, PhysicsObject kohde) 417 { 418 if (kohde.Tag.ToString() == "ammus") 419 return; 420 ammus.Destroy(); 421 } 422 423 void VihollisAlusAmpuu(Timer sender) 424 { 425 for (int i = 0; i < vihollistenaseet.Count; i++) 426 { 427 Weapon ase = vihollistenaseet[i]; 428 PhysicsObject vihollinen = viholliset[i]; 429 430 //Vector suunta = alus.Position - ase.AbsolutePosition; 431 //vihollinen.Angle = suunta.Angle + Angle.Degrees(270); 432 if (ase is AssaultRifle) 433 { 434 PhysicsObject a = ase.Shoot(); 435 if (a != null) 436 { 437 a.Tag = "ammus"; 438 a.CollisionIgnorer = ammusIgnorer; 439 a.Size = new Vector(15, 5); 440 } 441 continue; 442 } 443 if (ase is Cannon) 444 { 445 (ase as Cannon).Power.Value = 10000; 446 } 447 PhysicsObject ammus = ase.Shoot(); 448 if (ammus != null) 449 { 450 ammus.CollisionIgnorer = ammusIgnorer; 451 ammus.Tag = "ammus"; 452 if (ase is PlasmaCannon) 453 { 454 ammus.Size *= 5; 455 } 456 457 } 458 } 459 460 } 461 462 void KuulaOsuu(PhysicsObject kuula, PhysicsObject toinen) 463 { 464 if (toinen.Tag.ToString() == "ammus") 465 return; 466 kuula.Destroy(); 467 Explosion rajahdys = new Explosion(40); 468 rajahdys.Position = kuula.Position; 469 Add(rajahdys); 470 } 471 472 473 } 474
Note: See TracChangeset
for help on using the changeset viewer.