GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: kiki67100 le 24 Août 2007, 22:00:50
-
Salut tout le monde,
Voila j'ai un probleme, j'ai fait une commande pour que quand la personne tape la commande /new la personne se téléporte dans un garage et quand elle a choisie sa voiture elle teleporte a son endroit dorigine, mais le probleme quand je tape /new je suis bien teleporte mais quand je choisi un vehicule je suis teleporte mais sans le vehicule :wall . Voila le script en question http://rafb.net/p/OjZgoW17.html
Voila j'espere que vous pouriez-maidé :D merci
@+
Kevin
-
1 - Ton code ne compilera pas puisque tes tableaux garage, X, Y et Z sont définis dans la fonction OnGameModeInit et que tu les utilisent dans OnPlayerCommandeText et dans OnPlayerEnterVehicle.
Donc déplace les lignes qui déclarent tes tableaux à l'extérieur de toute fonction (juste après les lignes d'include) pour en faire des variables globales utilisables partout dans ton script (et qui conserve leur valeur même quand on change de fonction).
A ce sujet, je rappelle encore une fois qu'une variable ne peut être utilisé que dans le bloc où elle à été déclarée. Et attention aux variables locales qui masquent (shadow) les variables globales (variable déclarée dans un bloc avec le même nom qu'un variable déclarée en dehors de tout bloc). Le compilateur mettra un warning mais compilera quand même et la variable utilisée sera la variable locale.
2 - Tu fais un strcmp sur la variable cmd, c'est plutôt cmdtext qu'il faut utiliser
3 - La valeur de garage[playerid] n'est jamais remise à zéro, donc le joueur n'a droit qu'à un seul /new (mais c'est peut-être ce que tu veux)
4 - Tu n'est pas obligé d'utiliser les variables x, y et z, tu peux directement mettre les tableaux X, Y et Z dans l'appel à GetPlayerPos :
GetPlayerPos(playerid,X[playerid], Y[playerid], Z[playerid]);
Sinon, pour moi, ton code fonctionne.
++
Syg
-
Salut,
Merci de ta reponse,
mais en fait j'ai Déclarer les variable comme tu la dit c'est pendant la mis en page du code sur no-paste que j'ai pas fait attention
Pour en revenir a mon code j'ai bien fait mais quand je choisi un vehicule le personne a même pas le temp de rentré dedans(des que jappui entrer) Le personnage et téléporté a son endroit dorigine Mais sans son vehicule :wall Vue que sa marche chez toi alors la je vois pas je remis le code le bon :) http://rafb.net/p/dvs5SI15.html
Merci
@++
Kevin
-
Essais avec OnPlayerStateChange, je crois qu'on a fait comme ça sur Lstunt.
-
VOila,
Merci i_pwn_you sa marche parfaitement 8) J'ai posté le code sur pastbin pour la prochaine personne qui a le même problème http://pastebin.gtaonline.fr/pastebin.php?show=46
Voilou voilouu
Merci encore pour seux qui mon aidé :)
@++
Kevin