voila j'ai 2 script (dans 2 objet différents) et je veux que ma variable "A" dans le "ScriptA" soit valable dans mon "scriptB"
je m'explique j'ai un chargeur au sol, je veux que quand le joueur passe sur celui-ci un nombre de munition donné s’intègre dans ma variable "munition" du "scriptA"
sachant que la fonction OnTriggerEnter(objetInfo : collider) se trouve dans le "scriptB"
je vous affiche mes 2 script si cela peut vous être utile
ScriptA
Code : Tout sélectionner
#pragma strict
var objetForce = 1000;
static var vieHero = 100;
var distanceTir = 100;
var fireRate = 0.5;
var damage : float;
var chargeur : float;
var munition : float;
var tirOui : boolean;
var skinHUD : GUISkin;
var sonTir : AudioClip;
var impact : GameObject;
var chargeurActuel : float;
var DD : float;
var Rec : float;
function OnGUI() {
GUI.skin = skinHUD;
GUI.Label(Rect(Screen.width-100,Screen.height-50,100,25),chargeur+ "/" +munition);
GUI.Label(Rect(Screen.width-1000,Screen.height-50,100,25),"Vie : " + vieHero);
if (chargeur < 1){
GUI.Label(Rect(Screen.width-500,Screen.height-50,100,25),"Rechargez");
}
}
function Start(){//tout ce qui se trouve dans cette fonction est lue à chaque lancement du jeu
}
function Update () {//tout se qui dans cette fonction et lu a chaque image seconde
if(Input.GetButton("Fire1")&& tirOui==true&&chargeur>0){
Fire();//si on peut tirailance la fonction fire
if(chargeur<=0&& munition>0){//si on ne peut pas tirer, verifier si il faut recharger l'arme
}
chargeurActuel = chargeur;
DD = 30-parseInt(chargeurActuel);
Rec = parseInt(munition) + parseInt(chargeurActuel);
}
if(Input.GetButton("Recharge")&& tirOui==true&&chargeur<=0){
Recharge ();
}
}//fin update
function Fire (){//...........................................fire..Mise emplace du tir ...........................................................
//lance l'animation pour le tire
transform.Find("CZ805").animation.CrossFade("shoot");
audio.PlayOneShot(sonTir);
chargeur-=1;//enlève une balle dans le chargeur
FireoneShot () ;//lance la fonction qui definie où la balle touche
tirOui=false;//On ne peut plus tirer
yield WaitForSeconds (0.1);
tirOui=true;
}//...........................................................................................................................................
function FireoneShot (){
var direction =transform.TransformDirection(Vector3.forward);
var hit :RaycastHit;
if(Physics.Raycast(transform.position,direction,hit,distanceTir)){
var tempRot=Quaternion.FromToRotation(Vector3.up,hit.normal);
Instantiate(impact,hit.point,tempRot);
if(hit.rigidbody){
hit.rigidbody.AddForce(objetForce*direction);
}
}
}//fin de la fonction fireoneshot ........................................
function Recharge (){//fonction qui permet de recharger son arme
if(munition<=0 && chargeur<=0){
GUI.Label(Rect(Screen.width-300,Screen.height-50,100,25),"VIDE");
tirOui=false;
}
else{
transform.Find("CZ805").animation.CrossFade("reload");// Animation rechargement
if (munition>=30){
chargeur+=30;
munition-= parseInt(DD);
chargeur+=30;
if(chargeur>30){
chargeur=30;
}
}
}
}
Code : Tout sélectionner
#pragma strict
function OnTriggerEnter(objetInfo : Collider){
if (objetInfo.gameObject.tag == "mag");
{
GUI.Label(Rect(Screen.width-300,Screen.height-50,100,25),"ADD");
Destroy(objetInfo.gameObject);
}
}
}
PS: si vous voyez des erreurs je suis preneur (on sait jamais )