GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: HeyC le 31 Octobre 2008, 11:46:59
-
Salut, (je ne savais pas comment formulé mon titre).
Regardé "SetPlayerPos(playerid,2567.52,-1294.59,1063.25);", ça doit me teleporté dans le Big Smoke's Crack Palace.
Mais ça me teleporte dans l'air près du Big Smoke's Crack Palace.
Pouvez-vous m'aidez ?
-
Tu veux téléporter un joueur dans un bâtiment ?
Si c'est ça, il me semble que tu dois utiliser SetPlayerInterior(playerid, interior).
http://wiki.sa-mp.com/wiki/SetPlayerInterior (http://wiki.sa-mp.com/wiki/SetPlayerInterior)
Pour ton bâtiment :
Interior : Big Smoke's Crack Palace
Universe ID : 2
X : 2567.52
Y : -1294.59
Z : 1063.25
Description : Crack Laboratory
Singleplayer : Mission "End of the Line", after that opened for visit
PS : Pour connaitre l'ID d'un bâtiment, quand tu es à l'interieur : Tape /interior
Si tu ne peux pas, tu peux toujours aller voir à cette adresse : http://wiki.sa-mp.com/wiki/InteriorIDs (http://wiki.sa-mp.com/wiki/InteriorIDs)
-
Mais comment on rentre dans le batiment "Big Smoke's Crack Palace" ?
-
Et bien dans ta commande de téléportation, avant de faire SetPlayerPos(playerid, X,Y,Z); tu ajoute SetPlayerInterior(playerid, ID);
Dans ton cas, l'ID Interior est 2, comme je te l'ai écris.
Donc tu met SetPlayerInterior(playerid, 2);
-
Sa ne marche pas, ça me teleporte dans les airs ???
-
Ah je crois savoir, il doit s'agir d'une erreur dans les coordonnées Z, ça ne m'a que peu étonné au debut mais 1000 d'altitude, c'est quand même beaucoup.
Après si celà ne vient pas de là, je crains ne pas pouvoir t'aider davantage...
-
J'ai changé les coordonnés Z en 30.0, 50.0, 100.0. & j'ai pas trouvé
-
Ok, je vais vérifier ça.
Quand tu as modifié les coordonnées d'altitude (Z), tu réapparaissais toujours au même endroit dans les airs ?
Ou tu pouvais observer un changement ?
-
J'ai testé sur mon serveur, la commande fonctionne parfaitement.
(pour ta téléportation, n'utilise pas la commande /crack car elle est déjà utiliser pour une animation[vactions] sauf si tu n'utilise pas ce script)
Commande :
if (strcmp(cmdtext, "/labocrack", true) == 0)
{
SetPlayerInterior(playerid, 2);
SetPlayerPos(playerid,2567.52,-1294.59,1063.25);
SendClientMessage(playerid, COLOR_ORANGE,"Tu a été téléporté au Laboratoire de Crack de BS");
GameTextForPlayer(playerid,"~w~Bienvenue au Laboratoire de Crack",2500,5);
return 1;
}
-
Merci, ça marche.
-
De rien, mais as-tu trouvé d'où venait le problème ?