示例#1
0
    private void HurtHeal()
    {
        DynamicEntityComponent dynamicEntity = GetComponent <DynamicEntityComponent>();

        if (dynamicEntity == null)
        {
            return;
        }
        float health = dynamicEntity.health;

        if (health < minHealth || health > maxHealth)
        {
            return;
        }
        health += amount;
        if (health < minHealth)
        {
            health = minHealth;
        }
        if (health > maxHealth)
        {
            health = maxHealth;
        }
        float diff = health - dynamicEntity.health;

        if (diff > 0)
        {
            dynamicEntity.Heal(diff);
        }
        else if (diff < 0)
        {
            dynamicEntity.Hurt(-diff);
        }
    }
示例#2
0
 public override void Start()
 {
     rigidBody       = gameObject.GetComponent <Rigidbody>();
     entityComponent = gameObject.GetComponent <DynamicEntityComponent>();
     base.Start();
 }