Exemple #1
0
    private void Update()
    {
        float moveX = 0f;
        float moveY = 0f;

        if (Input.GetKey(KeyCode.W))
        {
            moveY = +1f;
        }
        if (Input.GetKey(KeyCode.S))
        {
            moveY = -1f;
        }
        if (Input.GetKey(KeyCode.A))
        {
            moveX = -1f;
        }
        if (Input.GetKey(KeyCode.D))
        {
            moveX = +1f;
        }

        moveDir = new Vector3(moveX, moveY).normalized;
        characterBase.PlayMoveAnim(moveDir);

        if (Input.GetKeyDown(KeyCode.Space))
        {
            isDashButtonDown = true;
        }
    }
Exemple #2
0
    private void HandleMovement()
    {
        if (pathVectorList != null)
        {
            Vector3 targetPosition = pathVectorList[currentPathIndex];
            if (Vector3.Distance(transform.position, targetPosition) > 1f)
            {
                Vector3 moveDir = (targetPosition - transform.position).normalized;

                float distanceBefore = Vector3.Distance(transform.position, targetPosition);
                characterBase.PlayMoveAnim(moveDir);
                transform.position = transform.position + moveDir * SPEED * Time.deltaTime;
            }
            else
            {
                currentPathIndex++;
                if (currentPathIndex >= pathVectorList.Count)
                {
                    StopMoving();
                    characterBase.PlayIdleAnim();
                }
            }
        }
        else
        {
            characterBase.PlayIdleAnim();
        }
    }
Exemple #3
0
    private void HandleMovement()
    {
        float moveX = 0f;
        float moveY = 0f;

        if (Input.GetKey(KeyCode.W) || Input.GetKey(KeyCode.UpArrow))
        {
            moveY = +1f;
        }
        if (Input.GetKey(KeyCode.S) || Input.GetKey(KeyCode.DownArrow))
        {
            moveY = -1f;
        }
        if (Input.GetKey(KeyCode.A) || Input.GetKey(KeyCode.LeftArrow))
        {
            moveX = -1f;
        }
        if (Input.GetKey(KeyCode.D) || Input.GetKey(KeyCode.RightArrow))
        {
            moveX = +1f;
        }

        Vector3 moveDir = new Vector3(moveX, moveY).normalized;
        bool    isIdle  = moveX == 0 && moveY == 0;

        if (isIdle)
        {
            playerBase.PlayIdleAnim();
        }
        else
        {
            playerBase.PlayMoveAnim(moveDir);
            transform.position += moveDir * SPEED * Time.deltaTime;
        }
    }
Exemple #4
0
    private void Update()
    {
        switch (state)
        {
        case State.Normal:
            float moveX = 0f;
            float moveY = 0f;

            if (Input.GetKey(KeyCode.W))
            {
                moveY = +1f;
            }
            if (Input.GetKey(KeyCode.S))
            {
                moveY = -1f;
            }
            if (Input.GetKey(KeyCode.A))
            {
                moveX = -1f;
            }
            if (Input.GetKey(KeyCode.D))
            {
                moveX = +1f;
            }

            moveDir = new Vector3(moveX, moveY).normalized;
            if (moveX != 0 || moveY != 0)
            {
                // Not idle
                lastMoveDir = moveDir;
            }
            characterBase.PlayMoveAnim(moveDir);

            if (Input.GetKeyDown(KeyCode.F))
            {
                isDashButtonDown = true;
            }

            if (Input.GetKeyDown(KeyCode.Space))
            {
                rollDir   = lastMoveDir;
                rollSpeed = 250f;
                state     = State.Rolling;
                characterBase.PlayRollAnimation(rollDir);
            }
            break;

        case State.Rolling:
            float rollSpeedDropMultiplier = 5f;
            rollSpeed -= rollSpeed * rollSpeedDropMultiplier * Time.deltaTime;

            float rollSpeedMinimum = 50f;
            if (rollSpeed < rollSpeedMinimum)
            {
                state = State.Normal;
            }
            break;
        }
    }
Exemple #5
0
    private void HandleMovement()
    {
        if (Vector3.Distance(transform.position, targetPosition) > 1f)
        {
            Vector3 moveDir = (targetPosition - transform.position).normalized;

            playerBase.PlayMoveAnim(moveDir);
            transform.position += moveDir * SPEED * Time.deltaTime;
        }
        else
        {
            playerBase.PlayIdleAnim();
        }
    }
Exemple #6
0
    private void FixedUpdate()
    {
        bool isIdle = moveDir.x == 0 && moveDir.y == 0;

        if (isIdle)
        {
            playerBase.PlayIdleAnim();
        }
        else
        {
            playerBase.PlayMoveAnim(moveDir);
            //transform.position += moveDir * SPEED * Time.deltaTime;
            playerRigidbody2D.MovePosition(transform.position + moveDir * SPEED * Time.fixedDeltaTime);
        }
    }
Exemple #7
0
    private void Update()
    {
        Vector3 moveDir = Vector3.zero;

        if (waypointList != null && waypointList.Count > 0 && waypointIndex < waypointList.Count)
        {
            moveDir             = (waypointList[waypointIndex] - transform.position).normalized;
            transform.position += moveDir * MOVE_SPEED * Time.deltaTime;

            float reachedWaypointDistance = .1f;
            if (Vector3.Distance(transform.position, waypointList[waypointIndex]) < reachedWaypointDistance)
            {
                waypointIndex++;
            }
        }

        characterBase.PlayMoveAnim(moveDir);
    }
Exemple #8
0
    private void FixedUpdate()
    {
        rigidbody2D.velocity = velocityVector * moveSpeed;

        characterBase.PlayMoveAnim(velocityVector);
    }
Exemple #9
0
 private void Update()
 {
     transform.position += velocityVector * moveSpeed * Time.deltaTime;
     characterBase.PlayMoveAnim(velocityVector);
 }
 private void Start()
 {
     playerBase.PlayMoveAnim(Vector2.right);
 }
Exemple #11
0
 public void PlayMoveAnim(Vector3 moveDir)
 {
     characterAimBase.PlayMoveAnim(moveDir);
     playerBase.PlayMoveAnim(moveDir);
 }
    private void Update()
    {
        switch (state)
        {
        case State.Normal:
            float moveX = 0f;
            float moveZ = 0f;

            if (Input.GetKey(KeyCode.W) || Input.GetKey(KeyCode.UpArrow))
            {
                moveZ = +1f;
            }
            if (Input.GetKey(KeyCode.S) || Input.GetKey(KeyCode.DownArrow))
            {
                moveZ = -1f;
            }
            if (Input.GetKey(KeyCode.A) || Input.GetKey(KeyCode.LeftArrow))
            {
                moveX = -1f;
            }
            if (Input.GetKey(KeyCode.D) || Input.GetKey(KeyCode.RightArrow))
            {
                moveX = +1f;
            }

            moveDir = new Vector3(moveX, 0f, moveZ).normalized;
            if (moveX != 0 || moveZ != 0)
            {
                // Not idle
                lastMoveDir = moveDir;
            }
            //Vector2 moveDirVector2 = new Vector2(moveDir.x, moveDir.z);
            characterBase.PlayMoveAnim(moveDir);

            if (Input.GetKeyDown(KeyCode.F))
            {
                isDashButtonDown = true;
            }

            if (Input.GetKeyDown(KeyCode.Space))
            {
                rollDir   = lastMoveDir;
                rollSpeed = 40f;
                state     = State.Rolling;
                characterBase.PlayRollAnimation(rollDir);
            }
            break;

        case State.Rolling:
            float rollSpeedDropMultiplier = 5f;
            rollSpeed -= rollSpeed * rollSpeedDropMultiplier * Time.deltaTime;

            float rollSpeedMinimum = MOVE_SPEED;
            if (rollSpeed < rollSpeedMinimum)
            {
                state = State.Normal;
            }
            break;

        case State.Busy:
            break;
        }
    }