Changeset 5871
- Timestamp:
- 2015-06-04 16:25:01 (8 years ago)
- Location:
- 2015/23/ToukoA/HotlineVihti/FatalShot
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
2015/23/ToukoA/HotlineVihti/FatalShot/FatalShot/FatalShot.cs
r5866 r5871 25 25 AssaultRifle pelaajan1Ase3; 26 26 bool pelikaynnissa = true; 27 27 bool akkadessa = true; 28 Timer rekyylitimer = new Timer(); 28 29 PhysicsObject asetrigger; 29 30 30 31 //bool vaihdettujo = false; 31 32 32 int ammovalue = 30; 33 int ammokalashnikov = 24; 34 int ammomp5 = 30; 33 35 //int ammo2value = 150; 34 36 bool haulikkovalmiina = true; … … 49 51 TileMap kentta2 = TileMap.FromLevelAsset("kentta"); 50 52 kentta2.SetTileMethod('&', luoPahis); 53 kentta2.SetTileMethod('H', VaihdaAse); 51 54 kentta2.SetTileMethod('/', VaihdaAse2); 52 kentta2.SetTileMethod(' H', VaihdaAse3);55 kentta2.SetTileMethod('¤', VaihdaAse3); 53 56 kentta2.Execute(ruudunKoko, ruudunKoko); 54 57 55 58 Mouse.Listen(MouseButton.Left, ButtonState.Down, Ammu, "Ammu", pelaajan1Ase); 56 59 Mouse.Listen(MouseButton.Left, ButtonState.Down, Ammu3, null, pelaajan1Ase3); 60 Mouse.Listen(MouseButton.Left, ButtonState.Down, Ammu2, null, pelaajan1Ase2); 61 Mouse.Listen(MouseButton.Left, ButtonState.Released, delegate { Camera.Position = pelaaja1.Position; rekyylitimer.Stop(); }, ""); 62 Mouse.Listen(MouseButton.Left, ButtonState.Pressed, delegate { { rekyylitimer.Start(); } }, ""); 57 63 58 64 //Mouse.Listen(MouseButton.Middle, ButtonState.Pressed, VaihdaAse, "Vaihda ase"); … … 73 79 74 80 Timer hauliajastin = new Timer(); 75 hauliajastin.Interval = 0.95;81 hauliajastin.Interval = 1.1; 76 82 hauliajastin.Timeout += delegate() 77 83 { … … 81 87 hauliajastin.Start(); 82 88 89 rekyylitimer.Interval = 0.1; 90 rekyylitimer.Timeout += delegate() 91 { 92 if (akkadessa && pelaajan1Ase2.Ammo > 8) 93 { 94 Camera.X += 4; 95 Camera.Y += 4; 96 } 97 }; 83 98 84 99 Mouse.ListenMovement(0.1, Tahtaa, "Tähtää"); … … 86 101 Mouse.IsCursorVisible = true; 87 102 Camera.Follow(pelaaja1); 103 } 104 105 void VaihdaAse(Vector paikka, double leveys, double korkeus) 106 { 107 LisaaAseTrigger(paikka, leveys, korkeus, "ase", pistooli); 88 108 } 89 109 … … 120 140 } 121 141 142 /*void rekyyli() 143 { 144 rekyylitimer = new Timer(); 145 rekyylitimer.Interval = 0.1; 146 rekyylitimer.Timeout += delegate() 147 { 148 Camera.X += 1; 149 Camera.Y += 1; 150 rekyylitimer.Stop(); 151 }; 152 153 rekyylitimer.Start(); 154 }*/ 155 122 156 void Ammu3(AssaultRifle ase3) 123 157 { 124 158 PhysicsObject ammus = ase3.Shoot(); 125 159 160 //for (int i = 0; i < 10; i++) 161 //{ 162 // rekyyli(); 163 //} 164 165 126 166 if (ammus != null) 127 167 { 128 ase3.Power.DefaultValue = 350;129 ase3.FireRate = 5;168 ase3.Power.DefaultValue = 450; 169 ase3.FireRate = 10; 130 170 ammus.Size *= 0.45; 131 171 } 132 /*if (haulikkovalmiina && pelikaynnissa) 172 } 173 174 void Ammu(AssaultRifle ase) 175 { 176 if (haulikkovalmiina && pelikaynnissa) 133 177 { 134 178 for (int i = 0; i < 6; i++) 135 179 { 136 137 180 138 181 PhysicsObject hauli = new PhysicsObject(2, 2); … … 141 184 hauli.Position = pelaaja1.Position; 142 185 //Vector suunta = (Mouse.PositionOnWorld - pelaajan1Ase.AbsolutePosition); 143 Vector impulssi = Vector.FromLengthAndAngle(70000, (pelaajan1Ase.Angle + (RandomGen.NextAngle(Angle.FromDegrees(- 15), Angle.FromDegrees(15)))));186 Vector impulssi = Vector.FromLengthAndAngle(70000, (pelaajan1Ase.Angle + (RandomGen.NextAngle(Angle.FromDegrees(-25), Angle.FromDegrees(25))))); 144 187 //hauli.Angle = RandomGen.NextAngle(Angle.FromDegrees(-45), Angle.FromDegrees(45)); 145 188 Add(hauli); 146 hauli.MaximumLifetime = TimeSpan.FromSeconds(0.2 );147 AddCollisionHandler(hauli, "paha", AmmusOsui );189 hauli.MaximumLifetime = TimeSpan.FromSeconds(0.22); 190 AddCollisionHandler(hauli, "paha", AmmusOsui2); 148 191 AddCollisionHandler(hauli, "seina", CollisionHandler.DestroyObject); 149 192 … … 151 194 haulikkovalmiina = false; 152 195 } 153 }*/ 154 } 155 156 void Ammu(AssaultRifle ase) 157 { 158 /*PhysicsObject ammus = ase.Shoot(); 196 } 197 198 } 199 200 void Ammu2(AssaultRifle ase2) 201 { 202 PhysicsObject ammus = ase2.Shoot(); 203 //for (int i = 0; i < 10; i++) 204 //{ 205 // rekyyli(); 206 //} 159 207 160 208 if (ammus != null) 161 209 { 162 ase.Power.DefaultValue = 450; 163 ase.FireRate = 10; 164 165 ammus.Size *= 0.45; 166 ammus.MaximumLifetime = TimeSpan.FromSeconds(4); 167 168 }*/ 169 170 171 if (haulikkovalmiina && pelikaynnissa) 172 { 173 for (int i = 0; i < 9; i++) 174 { 175 176 177 PhysicsObject hauli = new PhysicsObject(2, 2); 178 hauli.Shape = Shape.Ellipse; 179 hauli.Color = Color.Yellow; 180 hauli.Position = pelaaja1.Position; 181 //Vector suunta = (Mouse.PositionOnWorld - pelaajan1Ase.AbsolutePosition); 182 Vector impulssi = Vector.FromLengthAndAngle(70000, (pelaajan1Ase.Angle + (RandomGen.NextAngle(Angle.FromDegrees(-35), Angle.FromDegrees(35))))); 183 //hauli.Angle = RandomGen.NextAngle(Angle.FromDegrees(-45), Angle.FromDegrees(45)); 184 Add(hauli); 185 hauli.MaximumLifetime = TimeSpan.FromSeconds(0.22); 186 AddCollisionHandler(hauli, "paha", AmmusOsui); 187 AddCollisionHandler(hauli, "seina", CollisionHandler.DestroyObject); 188 189 hauli.Push(impulssi); 190 haulikkovalmiina = false; 191 } 192 } 193 194 } 195 196 void Ammu2(LaserGun ase2) 197 { 198 PhysicsObject ammus = ase2.Shoot(); 199 200 if (ammus != null) 201 { 202 ase2.Power.DefaultValue = 1000; 203 ase2.FireRate = 1000; 204 ammus.Size *= 10; 210 ase2.Power.DefaultValue = 250; 211 ase2.FireRate = 5; 212 ammus.Size *= 0.65; 205 213 } 206 214 } … … 227 235 228 236 pelaajan1Ase2 = new AssaultRifle(30, 10); 229 pelaajan1Ase2.Ammo.Value = ammo value;237 pelaajan1Ase2.Ammo.Value = ammokalashnikov; 230 238 pelaajan1Ase2.ProjectileCollision = AmmusOsui; 231 239 //pelaaja1.Aseet.Add(pelaajan1Ase2); … … 234 242 235 243 pelaajan1Ase = new AssaultRifle(30, 10); 236 pelaajan1Ase.Ammo.Value = ammovalue; 237 pelaajan1Ase.ProjectileCollision = AmmusOsui; 244 pelaajan1Ase.ProjectileCollision = AmmusOsui2; 238 245 pelaajan1Ase.Image = pistooli; 239 246 //pelaaja1.Aseet.Add(pelaajan1Ase); … … 241 248 242 249 pelaajan1Ase3 = new AssaultRifle(30, 10); 243 pelaajan1Ase3.Ammo.Value = ammo value;244 pelaajan1Ase3.ProjectileCollision = AmmusOsui ;245 pelaajan1Ase3.Image = pistooli;250 pelaajan1Ase3.Ammo.Value = ammomp5; 251 pelaajan1Ase3.ProjectileCollision = AmmusOsui3; 252 pelaajan1Ase3.Image = mp5; 246 253 247 254 //pelaaja1.Aseet.Add(pelaajan1Ase3); 255 256 AddCollisionHandler(pelaaja1, "ase", ase); 248 257 249 258 AddCollisionHandler(pelaaja1, "ase2", ase2); … … 259 268 pelaaja1.Ase = pelaajan1Ase; 260 269 pelaaja1.Ase2 = pelaajan1Ase2; 261 //pelaaja1.Ase3 = pelaajan1Ase3;270 pelaaja1.Ase3 = pelaajan1Ase3; 262 271 Add(pelaaja1); 263 272 273 } 274 275 void ase(PhysicsObject pelaaja1, PhysicsObject ase) 276 { 277 pelaaja1.Remove(pelaajan1Ase3); 278 pelaaja1.Remove(pelaajan1Ase2); 279 280 pelaaja1.Add(pelaajan1Ase); 281 282 Mouse.ListenMovement(0.1, Tahtaa, "Tähtää"); 283 284 ase.Destroy(); 285 286 pelikaynnissa = true; 264 287 } 265 288 … … 285 308 pelaaja1.Add(pelaajan1Ase); 286 309 287 pelaajan1Ase.Ammo.Value = ammovalue;310 //pelaajan1Ase.Ammo.Value = ammo; 288 311 289 312 ase2.Destroy(); 290 313 291 314 292 315 Mouse.ListenMovement(0.1, Tahtaa, "Tähtää"); 293 316 } 294 317 … … 311 334 void luoPahis(Vector paikka, double leveys, double korkeus) 312 335 { 313 Pahis pahis = new Pahis(leveys * 0. 5, korkeus * 0.5);336 Pahis pahis = new Pahis(leveys * 0.6, korkeus * 0.6, veriLantti, mp5); 314 337 pahis.Position = paikka; 315 338 pahis.Image = pelaajanKuva; 316 pahis.Shape = Shape. Circle;339 pahis.Shape = Shape.Octagon; 317 340 318 341 FollowerBrain seuraajaAivot = new FollowerBrain(pelaaja1); … … 338 361 randomAivot.Speed = 500; 339 362 340 341 342 363 LabyrinthWandererBrain labyrinttiAivot = new LabyrinthWandererBrain(ruudunKoko); 343 364 labyrinttiAivot.Speed = 100.0; … … 361 382 void pahisAmpuu(AssaultRifle ase, Pahis pahis) 362 383 { 363 Vector suunta = (pelaaja1.Position - pahis.Position).Normalize();384 /*Vector suunta = (pelaaja1.Position - pahis.Position).Normalize(); 364 385 365 386 if (pelaaja1.Velocity == Vector.Zero) … … 384 405 ammus.MaximumLifetime = TimeSpan.FromSeconds(4); 385 406 ammus.CollisionIgnoreGroup = 1; 386 } 407 }*/ 387 408 } 388 409 … … 406 427 } 407 428 408 void AmmusOsui( PhysicsObject ammus, PhysicsObject kohde) 429 void AmmusOsui2(PhysicsObject hauli, PhysicsObject kohde) 430 { 431 hauli.Destroy(); 432 if (kohde.Tag.Equals("paha")) 433 { 434 LisaaAseTrigger(kohde.Position, ruudunKoko, ruudunKoko, "ase3", mp5); 435 436 437 438 GameObject verilantti = new GameObject(30, 30); 439 verilantti.Position = kohde.Position; 440 verilantti.Image = veriLantti; 441 Add(verilantti, -3); 442 443 //verilantti.MaxVelocity = 0; 444 //verilantti.CollisionIgnoreGroup = 1; 445 //verilantti.IgnoresCollisionResponse = true; 446 447 (kohde as Pahis).ElamaLaskuri.Value -= 3; 448 449 } 450 451 if (kohde.Tag.Equals("hyva")) 452 { 453 (kohde as Hyvis).Ase.Destroy(); 454 (kohde as Hyvis).Ase2.Destroy(); 455 (kohde as Hyvis).Ase3.Destroy(); 456 (kohde as Hyvis).Destroy(); 457 pelikaynnissa = false; 458 } 459 460 } 461 462 void AmmusOsui3( PhysicsObject ammus, PhysicsObject kohde) 409 463 { 410 464 ammus.Destroy(); … … 412 466 { 413 467 468 //LisaaAseTrigger(kohde.Position, ruudunKoko, ruudunKoko, "ase3", mp5); 414 469 415 470 Explosion rajahdys = new Explosion(5000); … … 418 473 rajahdys.Force = 100; 419 474 rajahdys.Speed = 100; 420 rajahdys.Position = kohde.Position + new Vector(3,0);475 rajahdys.Position = kohde.Position + new Vector(3, 0); 421 476 rajahdys.ShockwaveColor = new Color(10, 0, 0, 0); 422 477 Add(rajahdys); 423 424 LisaaAseTrigger(kohde.Position, ruudunKoko, ruudunKoko, "ase3", mp5);425 426 427 478 428 479 GameObject verilantti = new GameObject(30, 30); … … 435 486 //verilantti.IgnoresCollisionResponse = true; 436 487 437 (kohde as Pahis).Ase.Destroy(); 438 (kohde as Pahis).Destroy(); 488 (kohde as Pahis).ElamaLaskuri.Value -= 1; 439 489 } 440 490 … … 442 492 { 443 493 (kohde as Hyvis).Ase.Destroy(); 494 (kohde as Hyvis).Ase2.Destroy(); 495 (kohde as Hyvis).Ase3.Destroy(); 444 496 (kohde as Hyvis).Destroy(); 445 497 pelikaynnissa = false; … … 448 500 } 449 501 502 void AmmusOsui( PhysicsObject ammus, PhysicsObject kohde) 503 { 504 ammus.Destroy(); 505 if (kohde.Tag.Equals("paha")) 506 { 507 508 //LisaaAseTrigger(kohde.Position, ruudunKoko, ruudunKoko, "ase3", mp5); 509 510 Explosion rajahdys = new Explosion(5000); 511 rajahdys.Image = veriLantti; 512 rajahdys.MaxRadius = 70; 513 rajahdys.Force = 100; 514 rajahdys.Speed = 100; 515 rajahdys.Position = kohde.Position + new Vector(3, 0); 516 rajahdys.ShockwaveColor = new Color(10, 0, 0, 0); 517 Add(rajahdys); 518 519 GameObject verilantti = new GameObject(30, 30); 520 verilantti.Position = kohde.Position; 521 verilantti.Image = veriLantti; 522 Add(verilantti, -3); 523 524 //verilantti.MaxVelocity = 0; 525 //verilantti.CollisionIgnoreGroup = 1; 526 //verilantti.IgnoresCollisionResponse = true; 527 528 (kohde as Pahis).ElamaLaskuri.Value -= 3; 529 } 530 531 if (kohde.Tag.Equals("hyva")) 532 { 533 (kohde as Hyvis).Ase.Destroy(); 534 (kohde as Hyvis).Ase2.Destroy(); 535 (kohde as Hyvis).Ase3.Destroy(); 536 (kohde as Hyvis).Destroy(); 537 pelikaynnissa = false; 538 } 539 540 } 541 450 542 void liikutaP(PhysicsObject pelaaja1, Vector nopeus) 451 543 { -
2015/23/ToukoA/HotlineVihti/FatalShot/FatalShot/Hyvis.cs
r5864 r5871 38 38 } 39 39 40 /*private AssaultRifle ase3 = new AssaultRifle(10, 10);40 private AssaultRifle ase3 = new AssaultRifle(10, 10); 41 41 public AssaultRifle Ase3 42 42 { … … 51 51 } 52 52 53 private List<Weapon> aseet = new List<Weapon>();53 /*private List<Weapon> aseet = new List<Weapon>(); 54 54 public List<Weapon> Aseet 55 55 { … … 74 74 this.Ase2.Destroy(); 75 75 this.Ase.Destroy(); 76 this.Ase3.Destroy(); 76 77 this.Destroy(); 77 78 }; -
2015/23/ToukoA/HotlineVihti/FatalShot/FatalShot/Pahis.cs
r5862 r5871 9 9 class Pahis : PhysicsObject 10 10 { 11 11 12 private IntMeter elamaLaskuri = new IntMeter(3, 0, 3); 12 13 public IntMeter ElamaLaskuri { get { return elamaLaskuri; } } … … 25 26 } 26 27 27 public Pahis(double leveys, double korkeus )28 public Pahis(double leveys, double korkeus, Image kuva, Image aseenkuva) 28 29 : base(leveys, korkeus) 29 30 { 30 elamaLaskuri.LowerLimit += delegate { 31 this.Ase.Destroy(); 32 this.Destroy(); 33 }; 31 elamaLaskuri.LowerLimit += delegate { this.Tapa(kuva, aseenkuva); }; 34 32 } 33 34 35 public void Tapa(Image kuva, Image aseenkuva) 36 { 37 Explosion rajahdys = new Explosion(5000); 38 rajahdys.Image = kuva; 39 rajahdys.MaxRadius = 70; 40 rajahdys.Force = 100; 41 rajahdys.Speed = 100; 42 rajahdys.Position = this.Position + new Vector(3, 0); 43 rajahdys.ShockwaveColor = new Color(10, 0, 0, 0); 44 Game.Add(rajahdys); 45 46 PhysicsObject asetrigger = PhysicsObject.CreateStaticObject(20, 20); 47 asetrigger.IgnoresCollisionResponse = true; 48 asetrigger.Tag = "ase3"; 49 asetrigger.Position = this.Position; 50 asetrigger.Image = aseenkuva; 51 Game.Add(asetrigger,1); 52 53 this.Ase.Destroy(); 54 this.Destroy(); 55 } 56 57 /*void VaihdaAse3(Vector paikka, double leveys, double korkeus) 58 { 59 60 } 61 62 void LisaaAseTrigger(Vector paikka, double leveys, double korkeus, string tagiNimi, Image kuva) 63 { 64 PhysicsObject asetrigger = PhysicsObject.CreateStaticObject(20, 20); 65 asetrigger.IgnoresCollisionResponse = true; 66 asetrigger.Tag = tagiNimi; 67 asetrigger.Position = paikka; 68 asetrigger.Image = kuva; 69 Add(asetrigger); 70 71 72 73 }*/ 74 35 75 } -
2015/23/ToukoA/HotlineVihti/FatalShot/FatalShotContent/kentta.txt
r5864 r5871 1 1 #################################################### 2 # ........................##......#....#...&........#2 #€.......................##......#....#...&........# 3 3 #.# .&...............#...##......#....#............# 4 4 #%#......&...........#...##......#.........&.......#
Note: See TracChangeset
for help on using the changeset viewer.