Пример #1
0
 public void UpdateDisplay(Sc_Creature creature)
 {
     statValueText.text = creature.GetState(thisStat).Value + "/" + creature.GetState(thisStat).MaxValue;
     if (statBar != null)
     {
         statBar.maxValue = creature.GetState(thisStat).MaxValue;
         statBar.value    = creature.GetState(thisStat).Value;
     }
 }
Пример #2
0
    IEnumerator Attack(Sc_Creature target)
    {
        yield return(new WaitForSeconds(1));

        anim.SetTrigger("Attack");
        yield return(new WaitForSeconds(0.1f));

        float computeDamages = GetAttack.Value - target.GetDefense.Value;

        if (computeDamages > 0)
        {
            target.ModifyHealth(-computeDamages);
            target.transform.DOShakePosition(0.1f, 0.8f);
        }
        else
        {
            target.transform.DOShakePosition(0.1f, 0.15f);
        }

        Sc_EventManager.instance.onUpdateStats.Invoke();
        yield return(new WaitForSeconds(1));

        transform.DOMoveX(basePos.x, animSpeed);
    }
Пример #3
0
 public override void StartAttack(Sc_Creature target)
 {
     transform.DOMoveX(basePos.x + 1, animSpeed);
     base.StartAttack(target);
 }
Пример #4
0
 public virtual void StartAttack(Sc_Creature target)
 {
     StartCoroutine(Attack(target));
 }