source: 2014/30/MitjaK/Attack to Agora/Attack to Agora/Attack to Agora/Attack to Agora/Elava.cs @ 6406

Revision 6406, 1.6 KB checked in by mikrkana, 4 years ago (diff)
RevLine 
[6334]1using System;
2using System.Collections.Generic;
3using System.Linq;
4using System.Text;
5using Jypeli;
6
7/// <summary>
8/// PlatformCharacter, jolla on elämälaskuri.
9/// </summary>
[6406]10public class Elava : PhysicsObject
[6334]11{
12    public DoubleMeter Elamat { get; private set; }
13
14    public event Action Kuoli;
15
16    public Elava(double width, double height, double elamat)
[6406]17        : base(width, height)
[6334]18    {
19        Elamat = new DoubleMeter(elamat, 0, elamat);
[6406]20        Elamat.LowerLimit += delegate
[6353]21        {
22            if (Kuoli != null) Kuoli();
23        };
[6406]24
25        KineticFriction = 0.0;
26        Restitution = 0.0;
27        CanRotate = false;
28
29        // This avoids high speeds, particularly when falling. This then avoids
30        // going through objects.
31        LinearDamping = 0.96;
32
33
[6334]34    }
35
[6402]36    public Elava(Image kuva, double elamat)
[6406]37        : this(kuva.Width, kuva.Height, elamat)
[6402]38    {
39        this.Image = kuva;
40    }
41
[6334]42    /// <summary>
43    /// Vähennetään elämiä. Vain vähentämiseen (ts. maara > 0)
44    /// </summary>
45    /// <param name="maara"></param>
46    public void Damagea(double maara)
47    {
[6353]48        if (maara < 0) return;
[6334]49
50        this.Elamat.Value -= maara;
51    }
52
53    /// <summary>
54    /// Palautetaan elämiä. Vain palauttamiseen (ts. maara > 0)
55    /// </summary>
56    /// <param name="maara"></param>
57    public void Paranna(double maara)
58    {
59        if (maara < 0) return;
60
61        this.Elamat.Value += maara;
62    }
63
64    /// <summary>
65    /// Täyttää pelaajan elämät.
66    /// </summary>
67    public void ElamatTayteen()
68    {
69        this.Elamat.Value = this.Elamat.MaxValue;
70    }
71}
Note: See TracBrowser for help on using the repository browser.