Пример #1
0
    // Update is called once per frame
    private void Update()
    {
        _timer += Time.deltaTime;
        if (!(_timer > 1))
        {
            return;
        }

        _timer = 0;
        if (MyState == Monster2State.LookingForGold)
        {
            if (NearestGoldBag() == null)
            {
                return;
            }
            _groundMovingB.Move(NearestGoldBag().transform.position);
        }
        else
        {
            _groundMovingB.Move(EscapePosition);
            if (transform.position == EscapePosition && MyState == Monster2State.Escaping)
            {
                MyState = Monster2State.LookingForGold;
            }
        }
    }
Пример #2
0
 // Use this for initialization
 private void Start()
 {
     _groundMovingB = GetComponent <GroundMovingB>();
     EscapePosition = transform.position;
     MyState        = Monster2State.LookingForGold;
     _animator      = GetComponentInChildren <Animator>();
     Hp             = 2;
     Experience     = 612;
     Malus          = 15;
 }
Пример #3
0
    private IEnumerator Steal(Collider collision)
    {
        var asi = _animator.GetCurrentAnimatorStateInfo(0);

        yield return(new WaitForSeconds(asi.length + asi.normalizedTime));

        Game.GameManager.LoseExperience(Malus);
        MyState = Monster2State.Escaping;
        if (collision != null)
        {
            Destroy(collision.gameObject);
        }
    }