Page 1 sur 1

[MY-AL] Script de téléportation réservé à un seul trajet

Publié : 17 Déc 2019 17:05
par freepl
Bonjour

J'ai 2 routes qui se rejoignent. Pour éviter que les véhicules qui suivent ces 2 routes ne s'imbriquent entre eux , j'ai un script de téléportation.
le pb vient que la zone de déclenchement ne sélectionne pas les véhicules en fonction du chemin qu'ils suivent ( le trajet dans le script). Tous ceux qui entrent dans la zone sont téléportes.
Je désire donner comme caractéristique le trajet. Et si c'est le bon trajet, le véhicule se téléporte.
ma logique, si tag VEHICULE et trajet=celui donné par l'inspector alors le véhicule se téléporte.

Voici le script avec le bug

Code : Tout sélectionner


// version 11 novembre 2015

using UnityEngine;
using System.Collections;
using System;
//gestion des teleportations de voie secondaire sur centrale
[Serializable]
public struct ZoneInsertion {
	public DetectInsertion zoneTele;
	public int pointInsertion;
}

public class GestionTeleportation : MonoBehaviour {
	
	public ZoneInsertion[] insertion;
	public GameObject newTrajet;
	public float vitesseInsertion;
	public float mEntrePoint;
	public GameObject trajet;
	
	void OnTriggerEnter(Collider other) {
		if ((other.tag == "VEHICULE")||(other.gameObject.GetComponent.trajet)) {
			
			int numZone = 0;
			
			if (insertion[0].zoneTele.voitureInsertion == false) {
				numZone = 0;
			} else if (insertion[1].zoneTele.voitureInsertion == false) {
				numZone = 1;
			} else if (insertion[2].zoneTele.voitureInsertion == false) {
				numZone = 2;
			} else {
				numZone = 3;//continue puis destruction 
			}
			
			if (numZone != 3) {
				other.gameObject.GetComponent<TrajetVl>().StopCoroutine();
				other.gameObject.GetComponent<TrajetVl>().target_Path = newTrajet;
				other.gameObject.GetComponent<TrajetVl>().kmh = vitesseInsertion;
				other.gameObject.GetComponent<TrajetVl>().kmhActuel = vitesseInsertion;
				other.gameObject.GetComponent<TrajetVl>().minTab = insertion[numZone].pointInsertion-1;
				other.gameObject.GetComponent<TrajetVl>().mEntrePoint = mEntrePoint;
				other.gameObject.GetComponent<TrajetVl>().DemrageVl();
			}
		}
	}
	// METTERE PANNEAU VITESSE 90KM/H APRES LES 3 INSERTIONS
	

 
}
le code erreur

Code : Tout sélectionner

Assets/SCRIPT/Route/GestionTeleportation.cs(24,66): error CS0119: Expression denotes a `method group', where a `variable', `value' or `type' was expected
Z002.jpg
Z002.jpg (252.66 Kio) Consulté 1244 fois
Z021.jpg
Z021.jpg (434.62 Kio) Consulté 1244 fois
Z001.jpg
Z001.jpg (314.83 Kio) Consulté 1244 fois

Re: [MY-AL] Script de téléportation réservé à un seul trajet

Publié : 17 Déc 2019 17:10
par boubouk50

Code : Tout sélectionner

other.gameObject.GetComponent.trajet
Quand même... Depuis le temps que tu fais des GetComponent