• 12 Juin 2024, 11:12:38


Auteur Sujet: Problème téléportation  (Lu 1616 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne Yann0560

  • *
  • Nouveau
  • Boujour
  • Messages: 9
    • Voir le profil
    • j'en ai pu
Problème téléportation
« le: 31 Janvier 2010, 10:23:45 »
Bonjour j'ai fais deux commandes une pour se téléporter (/sv) et l'autre pour revenir où l'on était avant d'être téléporté (/back).
Le problème c'est que quand je saisis /back il me téléporte sous la map au centre !

Mon code :

Code: (pawn) [Sélectionner]
public OnPlayerCommandText(playerid, cmdtext[])
{
new Float:X;
new Float:Y;
new Float:Z;

if(strcmp(cmdtext, "/sv", true, 10) == 0) // Quand le joueur tape /sv (spawn vehicle)
{
if(IsPlayerInAnyVehicle(playerid)) // S'il est dans un vehicule
{
                GetVehiclePos(GetPlayerVehicleID(playerid),X,Y,Z);
SetVehiclePos(GetPlayerVehicleID(playerid),1512.3362,-872.4364,62.4495); // Teleporter le vehicule
SendClientMessage(playerid, COULEUR_BLEUCIEL, "Choisis un véhicule puis saisis /back"); // Afficher ce message
return 1;
}
            GetPlayerPos(playerid,X,Y,Z);
SetPlayerInterior(playerid,0); // Mettre son interieur a 0
SetPlayerPos(playerid,1512.3362,-872.4364,62.4495); // Teleporter le joueur
SendClientMessage(playerid, COULEUR_BLEUCIEL, "Choisis un véhicule puis saisis /back"); // Afficher ce message
return 1;
}



else if(strcmp(cmdtext, "/back", true, 10) == 0) && (X != 0) && (Y != 0) && (Z != 0)
{
if(IsPlayerInAnyVehicle(playerid)) // S'il est dans un vehicule
{
SetVehiclePos(GetPlayerVehicleID(playerid),X,Y,Z); // Teleporter le vehicule
return 1;
}
SetPlayerInterior(playerid,0); // Mettre son interieur a 0
SetPlayerPos(playerid,X,Y,Z); // Teleporter le joueur
return 1;
}
return 1;
}

Merci  ;D (je suis débutant j'ai commencé tout juste hier)
C/C++/PAWN/HTML/CSS/PHP/MYSQL/BATCH PROGRAMMER
TORIBASH/SA-MP GAMER ON PC

MY CONFIG

Hors ligne ApocKalipsS

  • *
  • Gangster
  • **** | Une experience GTA IV hors du commun !
  • Messages: 1141
    • Voir le profil
Re : Problème téléportation
« Réponse #1 le: 31 Janvier 2010, 12:38:19 »
Tu dois mettre les "new Float:" En haut de ton script, pas dans OnPlayerCommandText.
« Modifié: 31 Janvier 2010, 12:44:22 par lepro49 »

Hors ligne BuBuNo

  • Radio Guingamp - Bien plus qu'une radio !
  • *
  • Grand Banditisme
  • La radio bien plus qu'une passion !
  • Messages: 840
    • Voir le profil
    • Radio Guingamp - Bien plus qu'une radio !
Re : Re : Problème téléportation
« Réponse #2 le: 31 Janvier 2010, 13:09:35 »
Tu dois mettre les "new Float:" En haut de ton script, pas dans OnPlayerCommandText.

je doute que sa change quelque chose apres je me trompe petetre  :-[
ıllıllı вυвυησ ıllıllı


Hors ligne Yann0560

  • *
  • Nouveau
  • Boujour
  • Messages: 9
    • Voir le profil
    • j'en ai pu
Re : Problème téléportation
« Réponse #3 le: 31 Janvier 2010, 13:33:48 »
j'ai trouvé un script sur le net :
http://www.gtaforums.fr/lofiversion/index.php/t2265.html

donc je crois que c'est résolu pour ce problème mais j'en ai un autre quand je tape /sv puis /nascar (une commande de téléportation) et ben ca me retéléporte à /sv.

mon nouveau code source :

Code: (pawn) [Sélectionner]
public OnPlayerCommandText(playerid, cmdtext[])
{

if(strcmp(cmdtext, "/sv", true, 10)) // Quand le joueur tape /sv (spawn vehicle)
{
    GetPlayerPos(playerid, gPositions[playerid][0], gPositions[playerid][1], gPositions[playerid][2]);
GetPlayerFacingAngle(playerid, gPositions[playerid][3]);
if(IsPlayerInAnyVehicle(playerid)) // S'il est dans un vehicule
{
SetVehiclePos(GetPlayerVehicleID(playerid),1512.3362,-872.4364,62.4495); // Teleporter le vehicule
SendClientMessage(playerid, COULEUR_BLEUCIEL, "Choisis un véhicule puis saisis /back"); // Afficher ce message
return 1;
}
           
SetPlayerInterior(playerid,0); // Mettre son interieur a 0
SetPlayerPos(playerid,1512.3362,-872.4364,62.4495); // Teleporter le joueur
SendClientMessage(playerid, COULEUR_BLEUCIEL, "Choisis un véhicule puis saisis /back"); // Afficher ce message
return 1;
}



else if(strcmp(cmdtext, "/back", true, 10) && (gPositions[playerid][0] != 0) && (gPositions[playerid][1] != 0) && (gPositions[playerid][2] != 0)) // Quand le joueur tape /back (retour depuis /sv) et que les coordonées existent
{
if(IsPlayerInAnyVehicle(playerid)) // S'il est dans un vehicule
{
SetVehiclePos(playerid, gPositions[playerid][0], gPositions[playerid][1], gPositions[playerid][2]); // Teleporter le vehicule
return 1;
}
SetPlayerInterior(playerid,0); // Mettre son interieur a 0
SetPlayerPos(playerid, gPositions[playerid][0], gPositions[playerid][1], gPositions[playerid][2]);
SetPlayerFacingAngle(playerid, gPositions[playerid][3]); // Teleporter le joueur
return 1;
}

else if(strcmp(cmdtext, "/nascar", true, 10))
{
    if(IsPlayerInAnyVehicle(playerid)) // S'il est dans un vehicule
{
    SetVehiclePos(GetPlayerVehicleID(playerid),1477.87,1515.84,10.828); // Teleporter le vehicule
SendClientMessage(playerid, COULEUR_BLEUCIEL, "Tu as été téléporté à l'aéroport de LV"); // Afficher ce message
return 1;
}
SetPlayerInterior(playerid,0); // Mettre son interieur a 0
SetPlayerPos(playerid,1477.87,1515.84,10.828); // Teleporter le joueur
SendClientMessage(playerid, COULEUR_BLEUCIEL, "Tu as été téléporté à l'aéroport de LV"); // Afficher ce message
return 1;
}

else
{
    SendClientMessage(playerid, COULEUR_ROUGE, "Commande inconnue");
}
C/C++/PAWN/HTML/CSS/PHP/MYSQL/BATCH PROGRAMMER
TORIBASH/SA-MP GAMER ON PC

MY CONFIG

Hors ligne Dark_revan

  • Serveur RPG : *¤REAL DREAM¤*
  • *
  • Bandit
  • Script Serveur RolePlay.
  • Messages: 338
    • Voir le profil
Re : Problème téléportation
« Réponse #4 le: 31 Janvier 2010, 13:41:57 »
pour identifier si le mec tape une command utilise sa pour tous : if(strcmp(cmd, "/nascar", true) == 0).

Hors ligne Yann0560

  • *
  • Nouveau
  • Boujour
  • Messages: 9
    • Voir le profil
    • j'en ai pu
Re : Problème téléportation
« Réponse #5 le: 31 Janvier 2010, 14:16:38 »
j'ai essayé mais ca me met
Code: (pawn) [Sélectionner]
error 025: function heading differs from prototype (au public)
C/C++/PAWN/HTML/CSS/PHP/MYSQL/BATCH PROGRAMMER
TORIBASH/SA-MP GAMER ON PC

MY CONFIG

Hors ligne Dark_revan

  • Serveur RPG : *¤REAL DREAM¤*
  • *
  • Bandit
  • Script Serveur RolePlay.
  • Messages: 338
    • Voir le profil
Re : Problème téléportation
« Réponse #6 le: 31 Janvier 2010, 14:29:19 »
Alors remplace else if par if ce qui revient un peu au même ( else if = ou si , if = si, else = sinon )
J'espere que cela t'aidera je pense que sa vient de sa.

Hors ligne Yann0560

  • *
  • Nouveau
  • Boujour
  • Messages: 9
    • Voir le profil
    • j'en ai pu
Re : Problème téléportation
« Réponse #7 le: 31 Janvier 2010, 14:40:43 »
ça ne change rien  :(  :wall
C/C++/PAWN/HTML/CSS/PHP/MYSQL/BATCH PROGRAMMER
TORIBASH/SA-MP GAMER ON PC

MY CONFIG

Hors ligne Dark_revan

  • Serveur RPG : *¤REAL DREAM¤*
  • *
  • Bandit
  • Script Serveur RolePlay.
  • Messages: 338
    • Voir le profil
Re : Problème téléportation
« Réponse #8 le: 31 Janvier 2010, 14:56:32 »
if(strcmp(cmd, "/sv", true) == 0) // Quand le joueur tape /sv (spawn vehicle)
{
         GetPlayerPos(playerid, gPositions[playerid][0], gPositions[playerid][1], gPositions[playerid][2]);
GetPlayerFacingAngle(playerid, gPositions[playerid][3]);
if(IsPlayerInAnyVehicle(playerid)) // S'il est dans un vehicule
{
SetVehiclePos(GetPlayerVehicleID(playerid),1512.3362,-872.4364,62.4495); // Teleporter le vehicule
SendClientMessage(playerid, COULEUR_BLEUCIEL, "Choisis un véhicule puis saisis /back"); // Afficher ce message
return 1;
}
SetPlayerInterior(playerid,0); // Mettre son interieur a 0
SetPlayerPos(playerid,1512.3362,-872.4364,62.4495); // Teleporter le joueur
SendClientMessage(playerid, COULEUR_BLEUCIEL, "Choisis un véhicule puis saisis /back"); // Afficher ce message
return 1;
}
if(strcmp(cmd, "/back", true) == 0)
{
                    if((gPositions[playerid][0] != 0) && (gPositions[playerid][1] != 0) && (gPositions[playerid][2] != 0)) // Quand le joueur tape /back (retour depuis /sv) et que les coordonées existent
                    {
if(IsPlayerInAnyVehicle(playerid)) // S'il est dans un vehicule
{
SetVehiclePos(playerid, gPositions[playerid][0], gPositions[playerid][1], gPositions[playerid][2]); // Teleporter le vehicule
return 1;
}
SetPlayerInterior(playerid,0); // Mettre son interieur a 0
SetPlayerPos(playerid, gPositions[playerid][0], gPositions[playerid][1], gPositions[playerid][2]);
SetPlayerFacingAngle(playerid, gPositions[playerid][3]); // Teleporter le joueur
return 1;
                     }
}
if(strcmp(cmd, "/nascar", true) == 0)
{
        if(IsPlayerInAnyVehicle(playerid)) // S'il est dans un vehicule
{
  SetVehiclePos(GetPlayerVehicleID(playerid),1477.87,1515.84,10.828); // Teleporter le vehicule
SendClientMessage(playerid, COULEUR_BLEUCIEL, "Tu as été téléporté à l'aéroport de LV"); // Afficher ce message
return 1;
}
SetPlayerInterior(playerid,0); // Mettre son interieur a 0
SetPlayerPos(playerid,1477.87,1515.84,10.828); // Teleporter le joueur
SendClientMessage(playerid, COULEUR_BLEUCIEL, "Tu as été téléporté à l'aéroport de LV"); // Afficher ce message
return 1;
}

ta commande /nascar marche chez moi. donc essaye sa aussi non je sais pas.

Hors ligne Yann0560

  • *
  • Nouveau
  • Boujour
  • Messages: 9
    • Voir le profil
    • j'en ai pu
Re : Problème téléportation
« Réponse #9 le: 31 Janvier 2010, 15:11:28 »
ca y est ca fonctionne merci !  :)
C/C++/PAWN/HTML/CSS/PHP/MYSQL/BATCH PROGRAMMER
TORIBASH/SA-MP GAMER ON PC

MY CONFIG

Hors ligne ApocKalipsS

  • *
  • Gangster
  • **** | Une experience GTA IV hors du commun !
  • Messages: 1141
    • Voir le profil
Re : Re : Re : Problème téléportation
« Réponse #10 le: 31 Janvier 2010, 21:13:11 »
Tu dois mettre les "new Float:" En haut de ton script, pas dans OnPlayerCommandText.

je doute que sa change quelque chose apres je me trompe petetre  :-[


Si si, j'ai tester, ça marche.
Tu les met tout en haut de ton script, en dessous des #include.

Hors ligne BuBuNo

  • Radio Guingamp - Bien plus qu'une radio !
  • *
  • Grand Banditisme
  • La radio bien plus qu'une passion !
  • Messages: 840
    • Voir le profil
    • Radio Guingamp - Bien plus qu'une radio !
Re : Re : Re : Re : Problème téléportation
« Réponse #11 le: 31 Janvier 2010, 21:26:31 »
Tu dois mettre les "new Float:" En haut de ton script, pas dans OnPlayerCommandText.

je doute que sa change quelque chose apres je me trompe petetre  :-[


Si si, j'ai tester, ça marche.
Tu les met tout en haut de ton script, en dessous des #include.
ok je te croit alors ;)
ıllıllı вυвυησ ıllıllı


Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : Problème téléportation
« Réponse #12 le: 31 Janvier 2010, 21:55:52 »
Salut,

mais attention, ça ne fonctionnera que s'il y a un seul joueur sur le serveur

dans le cas où plusieurs joueurs s'y trouvent, tu devras utiliser un tableau (Float:X[MAX_PLAYERS])

++Sim++