Code : Tout sélectionner
using System.Collections;
using UnityEngine;
public class PalyerController : MonoBehaviour
{
private CharacterController controller;
private Vector3 direction;
public float forwardSpeed;
public float maxspeed;
private int desiredLane = 1;//0 :left 1:middle 2:right
public float laneDistance = 4; //la distance
public bool gameStarted = true;
void Start()
{
gameStarted = true;
controller = GetComponent<CharacterController>();
}
// Update is called once per frame
void Update()
{
if(gameStarted == true)
{
if (forwardSpeed < maxspeed)
forwardSpeed += 0.1f * Time.deltaTime;
direction.z = forwardSpeed;
if (SwipeManager.swipeRight)
{
desiredLane++;
if (desiredLane == 3)
desiredLane = 2;
}
if (SwipeManager.swipeLeft)
{
desiredLane--;
if (desiredLane == -1)
desiredLane = 0;
}
Vector3 targetPosition = transform.position.z * transform.forward + transform.position.y * transform.up;
if (desiredLane == 0)
{
targetPosition += Vector3.left * laneDistance;
}
else if (desiredLane == 2)
{
targetPosition += Vector3.right * laneDistance;
}
if (transform.position == targetPosition)
return;
Vector3 diff = targetPosition - transform.position;
Vector3 moveDir = diff.normalized * 25 * Time.deltaTime;
if (moveDir.sqrMagnitude < diff.sqrMagnitude)
controller.Move(moveDir);
else
controller.Move(diff);
}
}
private void FixedUpdate()
{
if(gameStarted == true)
{
controller.Move(direction * Time.fixedDeltaTime);
}
}
private void OnControllerColliderHit(ControllerColliderHit hit)
{
if (hit.transform.tag == "obstacle")
{
PlayerManager.gameOver = true;
gameStarted = false;
}
}
}
comment je pourrais faire pour déplacer ce bout de scripts dans update sans avoir de problème ?
(j'ai eu des problèmes comme que la voiture n'avance que quand je change de ligne et encore d'autres problèmes)
merci de vos réponses en avance.