[MY-RS] Accéder une variable chez un autre client

Pour les scripts écrits en Javascript (UnityScript). :!: Obsolète :!:
Règles du forum
Merci de respecter la NOMENCLATURE suivante pour vos TITRES de messages :

Commencez par le niveau de vos scripts
DB = Débutant
MY = Moyen
CF = Confirmé

Puis le domaine d'application
-RS = Réseau
-AL = Algorithmie

Exemple :

[DB-RS] Mouvement perso multijoueur
Avatar de l’utilisateur
Kazzad
Messages : 50
Inscription : 17 Août 2016 19:51
Localisation : France
Contact :

[MY-RS] Accéder une variable chez un autre client

Message par Kazzad » 30 Jan 2017 21:56

Bonsoir,
je m'explique: j'ai une appli serveur qui, sur demande, peut créer un serveur (Network.InitializeServer + MasterServer). De là, il apparaît dans un lobby ou des clients peuvent s'y connecter, et une fois connectés, un prefab est instancié pour représenter le joueur.
Disons que deux clients sont connectés sur le même serveur (instancié par l'appli serveur), je veux que l'appli serveur puisse récupérer une variable contenue dans un script attaché a chacun des prefabs (possédant un NetworkView).
Mon appli serveur doit donc accéder a une variable, qui se trouve sur un script qui se trouve sur un prefab qui se trouve chez un client.
Je ne sais pas si je suis très clair :/

Je voudrais savoir comment faire pour faire ça, quelque chose qui ressemblerait (je pense) a un truc du genre:

Code : Tout sélectionner

varserver = client.prefab.script.variable;
J'ai regardé un peu sur internet, j'ai surtout trouvé du C# (oui je sais faut que je quitte le JS mais pour l'instant je veux finir mon truc avant de passer à ça), et pas grand chose que j'ai vraiment compris :/

Merci d'avance pour vos réponses,
Kazzad
Ne disons pas que ça fonctionne, disons que nous n'avons pas trouvé de dysfonctionnement.

Avatar de l’utilisateur
Kazzad
Messages : 50
Inscription : 17 Août 2016 19:51
Localisation : France
Contact :

Re: [MY-RS] Accéder une variable chez un autre client

Message par Kazzad » 01 Fév 2017 23:06

Bonsoir,
j'ai réussi a trouver quelque chose qui s'approche ici et ici. J'ai donc essayé de faire ça en écrivant (en prévoyant un test en appuyant sur Y pour check):

Code : Tout sélectionner

@SyncVar
var test:boolean = true;
if(Input.GetKey(KeyCode.Y)){
	test = false;
}	
En gros, unity pétait un cable sur le @SyncVar qu'il ne connaissait apparemment pas.

J'ai ensuite testé ça:

Code : Tout sélectionner

@SyncVar(hook = "OnOwneried_hook")
var test:boolean = true;
if(Input.GetKey(KeyCode.Y)){
	test = false;
}
function OnOwneried_hook(id:int){
	Debug.Log("Sucess");
}	
Il tique toujours sur le @SyncVar..

Est ce qu'il n'existe qu'en C# ?
Si non, comment le faire fonctionner, et si non, y a t il un équivalent en JS ?

Au risque de paraître impatient et impoli, je vous demanderais de, si possible, répondre le plus rapidement possible, car le projet s'en trouve entièrement stoppé et je ne peux donc plus travailler. :/

Merci d'avance,
Kazzad
Ne disons pas que ça fonctionne, disons que nous n'avons pas trouvé de dysfonctionnement.

Verrouillé

Revenir vers « (Js) Javascript »