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
-
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.
-
À 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.
-
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)
-
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.
-
Pas de problème. Et OnPlayerRequestClass se lancera tout seul après la boite de dialogue ?
-
Bien sur.
-
Ironie ? Si non, merci beaucoup je testerai demain.
-
Normalement, oui. Sinon, tu forces son appel, puisqu'il s'agit d'une fonction comme une autre.
-
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...
-
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.