• 08 Juillet 2025, 07:47:07


Auteur Sujet: petit prob de téléportation  (Lu 2834 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne R@f

  • *
  • GTAOnline Addict
  • Messages: 4655
    • Voir le profil
petit prob de téléportation
« le: 24 Juin 2007, 17:29:39 »
boujour tout le monde,

sa fait 2 mois que j ai plus scripté donc j ai oublier quelques truc, j aimerai bien faire un téléport avec véhicule mais il y a trop d erreurs après. Est-ce que quelqu un pourrai m aider SVP

else if(strcmp(cmdtext, "/drift", true)==0){
if(IsPlayerInAnyVehicule(playerid)){
new Float:X;
new Float:Y;
new Float:Z;
new VehiculeID;
GetPlayerPos(playerid, X, Y, Z);
VehiculeID = GetPlayerVehiculeID(playerid);
SetVehiculePos(playerid, -2391.5022,-588.6610,132.7190);

} else {
new Float:X;
new Float:Y;
new Float:Z;
new VehiculeID;
GetPlayerPos(playerid, X, Y, Z);
SetPlayerPos(playerid, -2391.5022,-588.6610,132.7190);
GameTextForPlayer(playerid, "~g~un petit mountain drift ?", 3000, 3);
return 1;

}

merci d avance

Hors ligne Cliss

  • *
  • Bandit
  • Messages: 335
    • Voir le profil
Re : petit prob de téléportation
« Réponse #1 le: 24 Juin 2007, 20:16:08 »
Essaies ça :
if (strcmp(cmdtext, "/drift", true) == 0)
{
if(IsPlayerInAnyVehicle(playerid))
{
new VehicleID;
VehicleID = GetPlayerVehicleID(playerid);
                RemovePlayerFromVehicle(playerid);
                SetPlayerPos(-2391.5022,-588.6610,132.7190);
SetVehiclePos(-2391.5022,-588.6610,132.7190);
GameTextForPlayer(playerid,"~g~un petit mountain drift ?", 3000, 3);
}
    else
{
SetPlayerPos(playerid, -2391.5022,-588.6610,132.7190);
                GameTextForPlayer(playerid,"~g~un petit mountain drift ?", 3000, 3);
    }
    return 1;
}
cya

GuiGui

  • Invité
Re : petit prob de téléportation
« Réponse #2 le: 24 Juin 2007, 20:51:08 »
Salut

Cliss permet moi de te corriger  :D

if (strcmp(cmdtext, "/drift", true) == 0)
{
if(IsPlayerInAnyVehicle(playerid))
{
new VehicleID;
VehicleID = GetPlayerVehicleID(playerid);
                RemovePlayerFromVehicle(playerid);
                SetPlayerPos(playerid,-2391.5022,-588.6610,132.7190);
SetVehiclePos(VehicleID,-2391.5022,-588.6610,132.7190);
GameTextForPlayer(playerid,"~g~un petit mountain drift ?", 3000, 3);
}
    else
{
SetPlayerPos(playerid, -2391.5022,-588.6610,132.7190);
                GameTextForPlayer(playerid,"~g~un petit mountain drift ?", 3000, 3);
    }
    return 1;
}

Hors ligne R@f

  • *
  • GTAOnline Addict
  • Messages: 4655
    • Voir le profil
Re : petit prob de téléportation
« Réponse #3 le: 25 Juin 2007, 16:43:30 »
merci les gars, je vais essayer

Hors ligne R@f

  • *
  • GTAOnline Addict
  • Messages: 4655
    • Voir le profil
Re : petit prob de téléportation
« Réponse #4 le: 25 Juin 2007, 17:58:53 »
j ai essayer, sa marche a moitier bien, le véhicule se téléporte avec moi, mais je suis pas dedans ....

GuiGui

  • Invité
Re : petit prob de téléportation
« Réponse #5 le: 25 Juin 2007, 18:56:16 »
Oui c'est dû à RemovePlayerFromVehicle. A mon avis avex le code que t'a donné cliss, tu dois te retrouvé en dessou de la voiture  ::)

Ce que tu peux faire c'est peut-être modifier légèrement les positions de SetPlayerPos(playerid,-2391.5022,-588.6610,132.7190) comme ca tu te retrouvera à côté de ta voiture.

Sinon tu n'as qu'à faire une commande de téléportation basique. Tu te téléportera dans ta voiture.

Hors ligne Syg

  • Expert programmeur C/C++/PAWN
  • *
  • The GTAOnline Jesus
  • Messages: 3908
    • Voir le profil
Re : petit prob de téléportation
« Réponse #6 le: 26 Juin 2007, 15:37:22 »
Solution plus jolie :
1 - Tu enleves la ligne RemovePlayerFromVehicle qui ne sert à rien.
2 - Après la ligne SetVehiclePos, tu ajoutes la ligne suivante :
         PutPlayerInVehicle (playerid, VehicleID, 0);

Note : Dans le cas où le joueur est passager du véhicule, il deviendra conducteur (et le conducteur, je sais pas ce qu'il devient)
         Je crois pas qu'il soit possible (facilement) de savoir si un joueur est conducteur ou passager.
Courtesy of GtaManiac

Hors ligne R@f

  • *
  • GTAOnline Addict
  • Messages: 4655
    • Voir le profil
Re : petit prob de téléportation
« Réponse #7 le: 26 Juin 2007, 16:02:22 »
merci beaucoup les gars

Hors ligne Cliss

  • *
  • Bandit
  • Messages: 335
    • Voir le profil
Re : petit prob de téléportation
« Réponse #8 le: 26 Juin 2007, 23:26:16 »
omfg la commande RemovePlayerFromVehicule elle sert a faire sortir le gars de la voiture -> Sinon bug de SA-MP (peut étre plus avec la 0.2.1)
Le perso aparait correctement et même si il était dessous -> random.
cya

Hors ligne At1x

  • *
  • Criminel
  • Messages: 28
    • Voir le profil
Re : petit prob de téléportation
« Réponse #9 le: 27 Juin 2007, 15:49:28 »
Tout d'abord Salut all :).
Bon euh pourquoi utiliser un RemovePlayerFromVehicle ? sa sert a rien pour teleporter le gars et sa voiture, bon je vous corrige sa en utilisant un bout de mon script de stunt :

if(strcmp(cmdtext,"/drift",true)==0){ // /drift
        new State=GetPlayerState(playerid);
if(IsPlayerInAnyVehicle(playerid)) {
    if(State==PLAYER_STATE_DRIVER) {
new vid;
vid=GetPlayerVehicleID(playerid);
LinkVehicleToInterior(vid,0);
SetVehiclePos(vid,-2391.5022,-588.6610,132.7190);
RemovePlayerFromVehicle(playerid);
GameTextForPlayer(playerid,"~w~Bon Drift",3000,5);
} else if(State==PLAYER_STATE_PASSENGER) {
    GameTextForPlayer(playerid,"Impossible si vous etes passager",3000,5);
}
} else {
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,-2391.5022,-588.6610,132.7190);
    GameTextForPlayer(playerid,"~w~Bon Drift",3000,5);
}
return 1;
}

Voila j'espère que sa pourra vous aider, sur ce au revoir.
At1x
« Modifié: 27 Juin 2007, 16:33:29 par At1x »