Il y a pas longtemps j'ai eu l'idée de diviser mon jeu en 2 parties. Le serveur et le client
c'est à dire il y a 2.exe un qui s'appelle serveur et l'autre qui s'appelle client comme sa pour héberger une game il y a pas besoin d'avoir le jeu ouvert (juste le serveur qui consomme beaucoup moins de cpu)
et tout marche parfaitement bien quand je compile mon serveur que je le lance; que je rejoins le serveur avec unity editor sur la partie jeu.
sauf que quand je compile la partie jeu. que je lance l'exe ban l'exe il marche pas.
Et comme je n'ai pas de messages d'erreurs (vu que quand je lance avec l'éditeur tout marche bien) je ne sait pas ou se coince.
mais j'ai ma petite idée. je crois que c'est quand mon script pour spawn essaie de récupérer les gameobject qui servent de spawn.
le script pour spawn
Code : Tout sélectionner
var equipe : String;
public var estMort = true;
var joueur : GameObject;
var classe : String;
var menuClasse = false;
var menuEquipe = true;
var classe2 : GameObject;
var classe3 : GameObject;
var classe4 : GameObject;
var classe5 : GameObject;
var classe6 : GameObject;
var classe7 : GameObject;
var classe8 : GameObject;
var classe1 : GameObject;
var spawnBleu : Transform;
var spawnRouge : Transform;
function OnGUI(){
if (estMort == true){
if(GUI.Button(Rect(0, 0, 200, 50), "CHOISIR UNE EQUIPE")){
menuEquipe = !menuEquipe;
}
if(menuEquipe == true){
if(GUI.Button(Rect(0, 50, 200, 50), "Rouge")){
equipe = "rouge";
}
if(GUI.Button(Rect(0, 100, 200, 50), "Bleu")){
equipe = "bleu";
}
}
if(GUI.Button(Rect(200, 0, 200, 50), "CHOISIR UNE CLASSE")){
menuClasse = !menuClasse;
}
if(menuClasse == true){
spawnBleu = GameObject.FindGameObjectWithTag("spawnBleu").transform; \\ sur ces
spawnRouge = GameObject.FindGameObjectWithTag("spawnRouge").transform; \\deux lignes
if (equipe =="rouge"){
if(GUI.Button(Rect(200, 50, 200, 50), "Classe 1")){
PlayerPrefs.SetString("classe", "classe1");
joueur = Network.Instantiate(classe1, spawnRouge.transform.position, spawnRouge.transform.rotation, 0);
estMort = false;
}
if(GUI.Button(Rect(200, 100, 200, 50), "Classe 2")){
PlayerPrefs.SetString("classe", "classe2");
joueur = Network.Instantiate(classe2, spawnRouge.position, spawnRouge.rotation, 0);
estMort = false;
}
if(GUI.Button(Rect(200, 150, 200, 50), "Classe 3")){
PlayerPrefs.SetString("classe", "classe3");
joueur = Network.Instantiate(classe3, spawnRouge.position, spawnRouge.rotation, 0);
estMort = false;
}
if(GUI.Button(Rect(200, 200, 200, 50), "Classe 4")){
PlayerPrefs.SetString("classe", "classe4");
joueur = Network.Instantiate(classe4, spawnRouge.position, spawnRouge.rotation, 0);
estMort = false;
}
}
if (equipe =="bleu"){
if(GUI.Button(Rect(200, 50, 200, 50), "Classe 5")){
PlayerPrefs.SetString("classe", "classe5");
joueur = Network.Instantiate(classe5, spawnBleu.position, spawnBleu.rotation, 0);
estMort = false;
}
if(GUI.Button(Rect(200, 100, 200, 50), "Classe 6")){
PlayerPrefs.SetString("classe", "classe6");
joueur = Network.Instantiate(classe6, spawnBleu.position, spawnBleu.rotation, 0);
estMort = false;
}
if(GUI.Button(Rect(200, 150, 200, 50), "Classe 7")){
PlayerPrefs.SetString("classe", "classe7");
joueur = Network.Instantiate(classe7, spawnBleu.position, spawnBleu.rotation, 0);
estMort = false;
}
if(GUI.Button(Rect(200, 200, 200, 50), "Classe 8")){
PlayerPrefs.SetString("classe", "classe8");
joueur = Network.Instantiate(classe8, spawnBleu.position, spawnBleu.rotation, 0);
estMort = false;
}
}
}
}
if (estMort == false){
if(GUI.Button(Rect(0, 0, 200, 50), "Se sucuider")){
estMort = true;
}
}
}
function Update (){
if (estMort == true)
Network.Destroy(joueur);
}