• 19 Avril 2024, 15:50:04


Auteur Sujet: [Résolu]Petit problème de tp  (Lu 3962 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne clement35150

  • *
  • Criminel
  • Messages: 43
    • Voir le profil
[Résolu]Petit problème de tp
« le: 10 Octobre 2014, 12:54:51 »
Voila je suis débutant dans le codage de pawn et j'ai soucie j'ai voulut crée une commande de téléportation mais quand je le compile ça me dit  error 001: expected token: ",", but found ";"
 
Vous pouvez m'aidez merci d'avance :D

                                                  La commande
     
 public OnPlayerCommandText(playerid, cmdtext[])
{
     if(strcmp("/lv", cmdtext, true) == 0)
    SetPlayerPos(playerid,(0,400.4510,2453.8079,16.5000,95.2746);
    return 1;
}


« Modifié: 11 Mars 2015, 01:53:34 par clement35150 »

Hors ligne Infu

  • *
  • Modo LS - Admin FnF
  • Messages: 3550
    • Voir le profil
Re : Petit problème de tp
« Réponse #1 le: 10 Octobre 2014, 14:33:34 »
Tu as oublié des accolades, à toi de voir où :)


Adju ♥
(-_-)



Hors ligne clement35150

  • *
  • Criminel
  • Messages: 43
    • Voir le profil
Re : Petit problème de tp
« Réponse #2 le: 10 Octobre 2014, 20:55:40 »
C'est quoi des accolades ?

Hors ligne Kiloutre

  • Nolife, nerd et geek passionné d'Ordinatique ! ^^
  • *
  • Grand Banditisme
  • Messages: 567
    • Voir le profil
Re : Petit problème de tp
« Réponse #3 le: 10 Octobre 2014, 21:01:16 »
Tu as mit une parenthèse en trop dans la fonction SetPlayerPos (après playerid)
Aussi, tu as mit trop d'argument: SetPlayerPos ne peut utiliser qu'un total de 4 arguments, tu en envoies 6, tu dois supprimer les mauvais

[/url]

Hors ligne clement35150

  • *
  • Criminel
  • Messages: 43
    • Voir le profil
Re : Petit problème de tp
« Réponse #4 le: 11 Octobre 2014, 01:55:24 »
Comment savoir quelle son arguments mauvais ?
« Modifié: 11 Octobre 2014, 02:24:59 par clement35150 »

Hors ligne Infu

  • *
  • Modo LS - Admin FnF
  • Messages: 3550
    • Voir le profil
Re : Petit problème de tp
« Réponse #5 le: 11 Octobre 2014, 11:32:16 »
Salut,

J'avais pas vu la parenthèse en trop, j'étais trop préoccupé par les accolades manquantes. Pour les arguments en trop tu peux te référer à l'article du Wiki SA-MP traduit par Kiloutre sur SetPlayerPos(). Tu comprendras son fonctionnement et donc tu verras que tu n'as pas besoin d'entrer tout ces arguments :)

++


Adju ♥
(-_-)



Hors ligne Gzsume

  • *
  • Compétent dans l'inutile
  • Messages: 2236
    • Voir le profil
Re : Petit problème de tp
« Réponse #6 le: 11 Octobre 2014, 13:03:57 »
Je précise que les accolades ne sont nécessaires qu'à partir de deux instructions dans le même bloc conditionnel. :wink:

Hors ligne Infu

  • *
  • Modo LS - Admin FnF
  • Messages: 3550
    • Voir le profil
Re : Petit problème de tp
« Réponse #7 le: 11 Octobre 2014, 13:50:47 »
Personnellement j'en ai toujours mit à chaque conditions (lorsqu'il y a évidement + d'une fonction après) sinon je n'en met pas. Donc en fait, sa commande pouvait tenir en une seule ligne si je dis pas de connerie.


Adju ♥
(-_-)



Hors ligne clement35150

  • *
  • Criminel
  • Messages: 43
    • Voir le profil
Re : Petit problème de tp
« Réponse #8 le: 11 Octobre 2014, 15:11:47 »
j'ai compiler et y a aucun erreur mais je vais in game et que je marque la commande pour me tp ça me dit quel existe pas 

Hors ligne Infu

  • *
  • Modo LS - Admin FnF
  • Messages: 3550
    • Voir le profil
Re : Petit problème de tp
« Réponse #9 le: 11 Octobre 2014, 16:22:52 »
Bon, c'est parce que tu as vraiment du mal que je te donne la réponse. Mais lis bien mes explications pour que ça ne t'arrive plus.

Voici ton code:

Code: (pawn) [Sélectionner]
public OnPlayerCommandText(playerid, cmdtext[])
{
     if(strcmp("/lv", cmdtext, true) == 0)
    SetPlayerPos(playerid,(0,400.4510,2453.8079,16.5000,95.2746);
    return 1;
}

Voici le code du wiki sa-mp:
Code: (pawn) [Sélectionner]
public OnPlayerCommandText(playerid,cmdtext[])
{
    if(!strcmp(cmdtext,"/centre",true))
    {           
        SetPlayerPos(playerid,0.0,0.0,3.0);
        return 1;
    }
    return 0;
}

Donc, revenons à ton code maintenant:
Code: (pawn) [Sélectionner]
public OnPlayerCommandText(playerid, cmdtext[]) // Ca, on y touche pas, on appelle ça une Callback.
{
     if(strcmp("/lv", cmdtext, true) == 0)  //Ca, c'est correct ça revient au même que l'exemple du wiki.
    SetPlayerPos(playerid,(0,400.4510,2453.8079,16.5000,95.2746); /*ici, tu as une parenthèse qui s'est glissé dans ton code car tu as dû mal copier tes coordonnées dans ton fichier savedpositions.txt et tu as copié 2 éléments en trop: le skin et l'angle.*/
    return 1;
}

Dans ton fichier savedpositions.txt ton code se présente comme ça:
Et pour téléporter un joueur, nous n'avons besoin que des coordonnées X, Y, Z.
En plus, il te manque des accolades (j'avais raison) pour le bon fonctionnement de ton code, regarde bien de nouveau le code du wiki:[/font]

Code: (pawn) [Sélectionner]
public OnPlayerCommandText(playerid,cmdtext[]) // Ca tu l'as, aucun problème
{ // C'est bon aussi
    if(!strcmp(cmdtext,"/centre",true)) // C'est bon aussi
    {    // Tu ne l'as pas.       
        SetPlayerPos(playerid,0.0,0.0,3.0); // Note qu'ici il y a les 3 coordonnées X, Y, Z.
        return 1; // Tu l'as.
    } // Tu ne l'as pas.
    return 0; // Tu ne l'as pas, c'est nécessaire au bon fonctionnement de tes commandes (d'où l'erreur de commande inexistante).
}// Puisqu'on ouvre l'accolade, on la referme (tu l'avais)

J'espère t'avoir aidé, et que tu as compris ce qui n'allait pas :)


Adju ♥
(-_-)



Hors ligne clement35150

  • *
  • Criminel
  • Messages: 43
    • Voir le profil
Re : Petit problème de tp
« Réponse #10 le: 11 Octobre 2014, 16:34:48 »
J'ai pareil même avec le code refait je pense pas avoir oublier quelque chose


                                             Nouveau code


public OnPlayerCommandText(playerid,cmdtext[])
{
    if(!strcmp(cmdtext,"/lv",true))
    {
        SetPlayerPos(playerid,400.4510,2453.8079,16.5000);
        return 1;
    }
    return 0;
}

Hors ligne Infu

  • *
  • Modo LS - Admin FnF
  • Messages: 3550
    • Voir le profil
Re : Petit problème de tp
« Réponse #11 le: 11 Octobre 2014, 16:36:39 »
C'est bien ça


Adju ♥
(-_-)



Hors ligne clement35150

  • *
  • Criminel
  • Messages: 43
    • Voir le profil
Re : Petit problème de tp
« Réponse #12 le: 11 Octobre 2014, 16:39:03 »
Merci mais je c'est pas pourquoi sa fonctionne toujours pas 
« Modifié: 11 Octobre 2014, 16:44:19 par clement35150 »

Hors ligne Infu

  • *
  • Modo LS - Admin FnF
  • Messages: 3550
    • Voir le profil
Re : Petit problème de tp
« Réponse #13 le: 11 Octobre 2014, 17:12:44 »
Tu as un message d'erreur en jeu ? Ou à la compilation ?


Adju ♥
(-_-)



Hors ligne clement35150

  • *
  • Criminel
  • Messages: 43
    • Voir le profil
Re : Petit problème de tp
« Réponse #14 le: 11 Octobre 2014, 18:57:05 »
A la compilation j'ai pas d'erreur et en jeux sa me dit que la commande existe pas