Esempio n. 1
0
    // Update is called once per frame
    protected virtual void Update()
    {
        if (IsStop)
        {
            return;
        }

        if (IsGroupMode)
        {
            GroupModeUpdate();
            return;
        }

        if (NowTarget == null)
        {
            NextTargetSearch();
            return;
        }

        if (!Damaged.isHitted)
        {
            MoveAdvanceToTarget(NowTarget, MoveSpeed);
        }

        if (IsAttackMode && (!IsAttacking))
        {
            ChangeAttackToRange();
        }

        IntervalTimeUpdate();
        HitLog.CheckEnd();
    }
Esempio n. 2
0
    // Update is called once per frame
    protected override void Update()
    {
        if (IsEscape)
        {
            MoveAdvanceToTarget(NowTarget, MoveSpeed);
            HitLog.CheckEnd();
            return;
        }

        NowTarget = TargetPlayer;
        if (NowTarget == null)
        {
            return;
        }

        // 攻撃を喰らっていなくて、かつ移動出来る状態なら
        if (!Damaged.isHitted && (!IsStop))
        {
            MoveAdvanceToTarget(NowTarget, MoveSpeed);
        }

        if (IsAttackMode && (!IsAttacking))
        {
            ChangeAttackToRange();
        }

        HitLog.CheckEnd();
    }
Esempio n. 3
0
    void GroupModeUpdate()
    {
        if (!Damaged.isHitted)
        {
            MoveAdvanceToTarget(NowTarget, MoveSpeed);
        }

        IntervalTimeUpdate();
        HitLog.CheckEnd();
    }