Changeset 6283 for 2015/26/ohjaajat/HillbillyRun/HillbillyRun/HillbillyRun/HillbillyRun/HillbillyRun.cs
- Timestamp:
- 2015-06-24 18:31:58 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
2015/26/ohjaajat/HillbillyRun/HillbillyRun/HillbillyRun/HillbillyRun/HillbillyRun.cs
r6280 r6283 24 24 */ 25 25 26 #region Improvement 27 public abstract class Improvement : PlatformCharacter26 #region Improvement 27 public abstract class Improvement : PlatformCharacter 28 28 { 29 private List<Animation> animations; 30 public List<Animation> Animations 31 { 32 get { return animations; } 33 set { animations = value; } 34 } 29 public List<Animation> Animations { get; set; } 35 30 36 31 protected Improvement(double width, double height) … … 43 38 { 44 39 get { return owner; } 45 set { 40 set { owner = value; } 46 41 } 47 42 private HillBilly owner; … … 51 46 52 47 //Luokka maajussien erikoisuuksille. 53 public class MilkImprovement : Improvement48 public class MilkImprovement : Improvement 54 49 { 55 50 … … 62 57 63 58 public MilkImprovement(double width, double height) 64 : base(width, height)59 : base(width, height) 65 60 { 66 61 … … 79 74 } 80 75 81 private Improvement improvement; 82 public Improvement Improvement 83 { 84 set { improvement = value;} 85 get { return improvement; } 86 } 76 public Improvement Improvement { get; set; } 87 77 88 78 public void GainImprovement(Improvement improvement) … … 98 88 public void UseImprovement(Improvement improvement) 99 89 { 100 this.PlayAnimation(improvement.Animations[1]); 101 improvement.DoTheThing(); 90 if (Animation != improvement.Animations[1]) 91 { 92 this.PlayAnimation(improvement.Animations[1], improvement.DoTheThing); 93 } 102 94 } 103 95 … … 479 471 crawly.Tag = ""; 480 472 flame.Destroy(); 473 RemoveCollisionHandlers(crawly); 481 474 }); 482 475 } … … 623 616 } 624 617 625 public void CreateMilkParticles(HillBilly billy) //TODO: Tiny particles. 626 { 627 PhysicsObject milkParticle = new PhysicsObject(20, 20); 628 milkParticle.Position = billy.Position; 629 milkParticle.Tag = "milkparticle"; 630 Add(milkParticle); 618 public void CreateMilkParticles(HillBilly billy) 619 { 620 for (int i = 0; i < 10; i++) 621 { 622 const double maxLife = 1.0; 623 PhysicsObject milkParticle = new PhysicsObject(10, 10, Shape.Circle); 624 milkParticle.Color = new Color(255, 255, 255, 128); 625 milkParticle.Position = billy.Position + new Vector(0, -30); 626 milkParticle.IgnoresCollisionResponse = true; 627 milkParticle.Tag = "milkparticle"; 628 milkParticle.LifetimeLeft = TimeSpan.FromSeconds(maxLife); 629 Add(milkParticle); 630 631 // Väri muuttuu läpinäkyväksi. 632 var fadeTimer = new Timer { Interval = 0.05 }; 633 fadeTimer.Timeout += delegate 634 { 635 byte c = 255; 636 milkParticle.Color = new Color(c, c, c, (byte)(128 * milkParticle.LifetimeLeft.TotalSeconds / maxLife)); 637 }; 638 fadeTimer.Start(); 639 milkParticle.Destroyed += fadeTimer.Stop; 640 641 // Random lentonopeus. 642 var rx = RandomGen.NextDouble(-50, 50); 643 var ry = RandomGen.NextDouble(-50, 50); 644 milkParticle.Hit(new Vector(billy.FacingDirection.GetVector().X * (200 + rx), 300 + ry)); 645 } 631 646 } 632 647 633 648 private void UseImprovement(HillBilly player) 634 649 { 635 if (player.Improvement == null)636 { 637 player.Jump(200); //TODO: CRY ALL THE TEARS 650 if (player.Improvement == null) 651 { 652 player.Jump(200); //TODO: CRY ALL THE TEARS :'( 638 653 return; 639 654 }
Note: See TracChangeset
for help on using the changeset viewer.