Hi how are you ? I am having a problem in my player move script can you help me? I’m doing the drive for empty gameobjects in the 8 directions.
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Component;
//using UnityEngine.Vector3;
public class movimentosheroi : MonoBehaviour {
public Transform[] Direcoes;
public Transform DirecaoAtual;
public bool MoveAux;
// Use this for initialization
void Start () {
DirecaoAtual = Direcoes[4];
}
// Update is called once per frame
void Update () {
//MoveAux = false;
if (!Input.GetKeyUp("w") ||
!Input.GetKeyUp("s") ||
!Input.GetKeyUp("a") ||
!Input.GetKeyUp("d"))
{
if (Input.GetKey("w")){
//MoveAux = true ;
DirecaoAtual= Direcoes[0];
if (Input.GetKey("a"))
DirecaoAtual= Direcoes[4];
if (Input.GetKey("d"))
DirecaoAtual= Direcoes[5];
}
else{
if (Input.GetKey("s")){
//MoveAux = true ;
DirecaoAtual= Direcoes[1];
}
if (Input.GetKey("d"))
{
//MoveAux = true;
DirecaoAtual = Direcoes[7];
}
if (Input.GetKey("a"))
{
DirecaoAtual = Direcoes[5];
//MoveAux = true;
}
if (Input.GetKey("d")){
DirecaoAtual = Direcoes[2];
// MoveAux = true; }
if (Input.GetKey("a")){
DirecaoAtual = Direcoes[3];
//MoveAux = true;
}
transform.LookAt (DirecaoAtual);
if (MoveAux && Physics.Raycast(transform.position,transform,-transform.up*3))
transform.rigidbody.Velocity = transform.forward*10;
}
}
}
}
}