Script Jogador.cs
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Jogador : MonoBehaviour
{
private float x;
private float z;
private Vector3 direcao;
[SerializeField]
private float velocidade;
private Animator animacao;
private Rigidbody fisica;
private void Awake() {
this.fisica = GetComponent<Rigidbody>();
this.animacao = GetComponent<Animator>();
}
private void Update() {
this.x = Input.GetAxis("Horizontal");
this.z = Input.GetAxis("Vertical");
this.direcao = new Vector3(this.x, 0f, this.z);
this.fisica.MovePosition(this.fisica.position + (this.direcao * Time.deltaTime * this.velocidade));
if (this.direcao != Vector3.zero)
{
this.animacao.SetBool("Andando", true);
} else
{
this.animacao.SetBool("Andando", false);
}
}
private void FixedUpdate() {
this.fisica.MovePosition(this.fisica.position + (this.direcao * Time.deltaTime * this.velocidade));
Ray raio = Camera.main.ScreenPointToRay(Input.mousePosition);
Debug.DrawRay(raio.origin, raio.direction, Color.red);
}
}