Je débute en programmation J'ai réussi à recopier un tuto pour l'ouvertue d'une porte coulissante.
Mon problm est que si je déplace l'animation sur le terrain et que l'axe est différent la porte s'ouvre toujours dans le même sens. Dans le test réussi elle s'ouvre en Z.... et je n'arrive pas à l'ouvrir si cela doit se faire en X. J'ai essayé d'intervertir les valeurs dans les ligne x et z mais rien n'a bougé....
j'aimerai recevoir quelques conseils pour finir mon pojet d'étude... Merci pour votre aide
Voici le Script :
Code : Tout sélectionner
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
public class TriggerPorteCoulissante : MonoBehaviour
{
public float speed;
public float maxOpenValue;
public Transform door;
public bool opening = false;
public bool closing = false;
private float currentValue = 0;
// Use this for initialization
void Start()
{
}
// Update is called once per frame
void Update(){
if (opening) OpenDoor();
if (closing) CloseDoor();
}
void OnTriggerEnter(Collider obj) {
if (obj.transform.name == "Player") {
opening = true;
closing = false;
}
}
void OnTriggerExit(Collider obj) {
if (obj.transform.name == "Player"){
opening = false;
closing = true;
}
}
void OpenDoor(){
float movement = speed * Time.deltaTime;
currentValue += movement;
if (currentValue <= maxOpenValue)
{
door.position = new Vector3(
door.position.x,
door.position.y,
door.position.z + movement
);
}
else
{
opening = false;
}
}
void CloseDoor() {
float movement = speed * Time.deltaTime;
currentValue -= movement;
if (currentValue >= 0)
{
door.position = new Vector3(
door.position.x,
door.position.y,
door.position.z - movement
);
}
else
{
closing = false;
}
}
}