GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: Sismix84 le 29 Octobre 2007, 09:12:19
-
Bonjour,
j'ai plusieurs commandes qui téléportent dans des intérieurs mais à chaque fois que je les utilisent, soit c'est la voiture qui est invisible, soit tout l'intérieure, et même parfois les 2 ;D. Alors j'aimerais soit qu'on me dise qu'elle est le problème sur mes commande, soit me les corriger.
Voiçi les commandes :
if (strcmp(cmdtext,"/lc",true) == 0)
{
if (IsPlayerInAnyVehicle(playerid))
{
SetPlayerInterior(playerid,1);
SetVehiclePos(GetPlayerVehicleID(playerid), -740.5220,485.7770,1371.8029);
} else {
SetPlayerPos(playerid, -740.5220,485.7770,1371.8029);
}
return 1;
}
EDIT (Syg) : Je n'ai laissé qu'une seule de tes commandes car elles sont toutes contruites sur le même modèle.
Merci
-
Tu n'étais pas obligé de mettre toutes tes commandes, une seule aurait suffit puisqu'elles sont toutes contruites sur le même modèle (donc j'ai fait un peu le ménage dans ton post).
Et elles ne fonctionnent pas car tu as oublié de lier le véhicule à l'intérieur en question.
La fonction à utiliser est LinkVehicleToInterior (vehicleid, interiorid); (sur le même principe que pour le joueur).
Autre chose, tu as oublié le SetPlayerInterior dans le else.
++
Syg
-
lu
sa m'interrese :P
ceci est bon??
if (strcmp(cmdtext,"/lc",true) == 0)
{
if (IsPlayerInAnyVehicle(playerid))
{
SetPlayerInterior(playerid,1);
SetVehiclePos(GetPlayerVehicleID(playerid), -740.5220,485.7770,1371.8029);
} else {
SetPlayerInterior(1)
SetPlayerPos(playerid, -740.5220,485.7770,1371.8029);
}
return 1;
}
-
Non, ce n'est pas bon, tu as oublié d'utiliser la fonction LinkVehicleToInterior.
if (strcmp(cmdtext,"/lc",true) == 0)
{
if (IsPlayerInAnyVehicle(playerid))
{
SetPlayerInterior(playerid,1);
SetVehiclePos(GetPlayerVehicleID(playerid), -740.5220,485.7770,1371.8029);
LinkVehicleToInterior (GetPlayerVehicleID(playerid), 1);
} else {
SetPlayerInterior(1)
SetPlayerPos(playerid, -740.5220,485.7770,1371.8029);
}
return 1;
}
++
Syg
-
Merci beaucoup Syg, tu me sauve la vie, ou plutôt mon script. Lol
Encore MERCI :D
-
salut, j'ai tèster les commandes, et la voiture vient bien avec moi mais par contre, l'intérieur est toujour invisible. En fait, je flote dans le ciel :blink alors je ne sais pas si c un problème avec le SetPlayerInterior(playerid,1); .
est ce qu'il y a quelque chose à changer sur cette ligne ?
-
Non ça ne vient pas de cette fonction.
Je pense que ça vient plutôt des coordonnées que tu donnes.
Pour l'intérieur 1, les coordonnées sont centrées sur (-1448, 182, 1035).
Donc utilise MED pour déterminer des coordonnées exactes.
++
Syg
-
c'est quoi MED ?
-
Map Editor !
AK NV.
-
comment je peut déterminer des coordonnées avec Map Editor ?
-
Je t'aurais bien expliquer mais mon map éditor marche pas... :(
-
j'ai trouver, merci quand même mAn
-
Re,
j'ai pris les coordonné sur MED mais il y a toujour le même problème, je roule dans du vide.
(http://www.enregistrersous.com/images/5049399620071031145930.jpg)
-
A mon avis, tu n'es pas dans le bon intérieur.
A l'aide de MED, sélectionne un objet et regarde dans quel intérieur il est et utilise cet intérieur dans les fonctions SetPlayerInterior et LinkVehicleToInterior.
++
Syg
-
ok je vais voir ça, merci Syg
++