GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: Salif le 06 Août 2013, 20:46:03

Titre: Comment proposer le choix de la team après la connexion seulement ? (serveur DM)
Posté par: Salif le 06 Août 2013, 20:46:03
Bonjour,

Sur mon serveur DM, lors de la connexion on a le système de connexion avec en arrière plan le choix du skin et de la team avec les boutons suivant, précédent, et SPAWN (OnPlayerRequestClass).
Seulement, je voudrais que ce menu du choix de la team-skin apparaisse seulement après s'être connecté, et en attendant, afficher une imagine de Ganton ou je ne sais quoi (SetPlayerCameraPos ?).

Ma question est : Comment stopper l'apparition automatique de ce menu dès la connexion ?
Merci à vous.
Titre: Re : Comment proposer le choix de la team après la connexion seulement ? (serveur DM)
Posté par: Gzsume le 06 Août 2013, 23:35:57
À la connexion d'un joueur, dans la callback OnPlayerConnect(playerid), tu lances un timer avec comme paramètre l'identifiant du joueur (playerid). Dans ce timer, tu forces le joueur à s'observer lui-même (http://wiki.sa-mp.com/wiki/Category:Scripting_Functions#Spectating) puis tu désactives la fonction d'observateur. Le joueur va alors spawn comme s'il avait choisi la première classe disponible. Libre à toi d'agir ensuite comme tu le souhaites.
Titre: Re : Comment proposer le choix de la team après la connexion seulement ? (serveur DM)
Posté par: Salif le 06 Août 2013, 23:46:57
Oula...
Tout d'abord, pourquoi un timer ? Pourquoi s'observer soi même ? Et pourquoi faire spawn le joueur ?
Au cas où je me suis mal exprimé : Je veux que lors de la connexion, la caméra soit positionné quelque part, que le joueur entre son mot de passe, et si le mot de passe est bon on passe à la séléction de la team (OnPlayerRequestClass)
Titre: Re : Comment proposer le choix de la team après la connexion seulement ? (serveur DM)
Posté par: Gzsume le 07 Août 2013, 01:10:59
Oh, pardon. Dans ce cas, tu lances la boîte de dialogue dans la callback OnPlayerConnect avec un SetPlayerCameraPos et un SetPlayerCameraLookAt. Normalement tu devrais en avoir assez.
Titre: Re : Comment proposer le choix de la team après la connexion seulement ? (serveur DM)
Posté par: Salif le 07 Août 2013, 01:47:07
Pas de problème. Et OnPlayerRequestClass se lancera tout seul après la boite de dialogue ?
Titre: Re : Comment proposer le choix de la team après la connexion seulement ? (serveur DM)
Posté par: Infu le 07 Août 2013, 01:55:23
Bien sur.
Titre: Re : Comment proposer le choix de la team après la connexion seulement ? (serveur DM)
Posté par: Salif le 07 Août 2013, 02:06:41
Ironie ? Si non, merci beaucoup je testerai demain.
Titre: Re : Comment proposer le choix de la team après la connexion seulement ? (serveur DM)
Posté par: Gzsume le 07 Août 2013, 02:53:02
Normalement, oui. Sinon, tu forces son appel, puisqu'il s'agit d'une fonction comme une autre.
Titre: Re : Comment proposer le choix de la team après la connexion seulement ? (serveur DM)
Posté par: Salif le 07 Août 2013, 03:35:59
J'ai réussi à le faire lors de la connexion au serveur, mais j'arrive pas à le faire quand le joueur se trompe de mot de passe (on voit le menu de séléction des class) et j'arrive pas non plus à centrer la caméra sur le parc avec le lac à Glen Park...
Titre: Re : Comment proposer le choix de la team après la connexion seulement ? (serveur DM)
Posté par: Gzsume le 07 Août 2013, 05:40:40
Dans ce cas, il faudrait que tu utilises ma solution initiale mais sans désactiver le mode spectateur. Ainsi, tu peux choisir de faire spawn le joueur quand tu le souhaites, sans que cette GUI ne soit affichée.

Pour la caméra, il te suffit d'utiliser deux fonctions. SetPlayerCameraPos pour définir la position de la caméra (de là où on regarde) et SetPlayerCameraLookAt pour définir le point vers lequel l'axe de vue de la caméra regardera. Dans cette fonction, tu peux mettre les coordonnées du centre du pont au dessus du lac, et dans la première, une position plus éloignée, dans le ciel par exemple.