GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: J0liX le 28 Juillet 2009, 16:35:11

Titre: Probléme sur un FS
Posté par: J0liX le 28 Juillet 2009, 16:35:11
#include <a_samp>

forward fb1f(playerid);
forward fb2f(playerid);

new fbi1;
new fbi2;

#define FILTERSCRIPT

#if defined FILTERSCRIPT

public OnFilterScriptInit()
{
   print("\n--------------------------------------");
   print("FBI - barriere par Akira Kimura ");
   print("--------------------------------------\n");
   CreateObject(987, -1757.982300, 755.857056, 23.890625, 0.0000, 0.0000, 90.0000);
    CreateObject(987, -1792.423096, 785.014893, 23.890625, 0.0000, 0.0000, 180.0000);
    fbi1 = CreateObject(980, -1786.622559, 785.166626, 26.664017, 0.0000, 0.0000, 0.0000);
    fbi2 = CreateObject(980, -1757.875122, 750.008301, 26.664017, 0.0000, 0.0000, 270.0000);
   return 1;
}

public OnFilterScriptExit()
{
   return 1;
}

#else

main()
{
   print("\n----------------------------------");
   print(" FBI - barriere par Akira Kimura");
   print("----------------------------------\n");
}

#endif



public OnPlayerCommandText(playerid, cmdtext[])
{
   if (strcmp("/fbiport", cmdtext, true, 10) == 0)
   {
      SendClientMessage(playerid, 0xF4D00FF,"La porte est ouverte pour 7 secondes");
        SetTimerEx("fbi1f",7000, false, "i", playerid);
      MoveObject(fbi1, -1798.562012, 785.169556, 26.664017, 4);
      return 1;
   }
   if (strcmp("/fbiport2", cmdtext, true, 10) == 0)
   {
      SendClientMessage(playerid, 0xF4D00FF,"La porte est ouverte pour 7 secondes");
      SetTimerEx("fbi2f",7000, false, "i", playerid);
      MoveObject(fbi2, -1757.874878, 761.815613, 26.664017, 4);
      return 1;
   }
   return 0;
}



public fb1f()
{
    MoveObject(fbi1, -1786.622559, 785.166626, 26.664017, 4);
   return 1;
}

public fb2f()
{
    MoveObject(fbi1, -1757.875122, 750.008301, 26.664017, 4);
   return 1;
}

Voilà , j'ai un copain qui a un probléme avec ce FS.

Il voudrait savoir comment corriger tous les problémes.

Voilà , merci d'avance.
Titre: Re : Probléme sur un FS
Posté par: hardcoder le 01 Août 2009, 14:04:37
Ca serait bien de décrire le ou les problèmes..mais bon je devine que les timers ne fonctionnent pas, car ils n'appellent pas les bonnes fonctions (ya une faute dans les noms, il faut être aveugle pour pas les voir :)). Ah et pourquoi utiliser SetTimerEx si tu n'utilise aucun paramètre dans la fonction?
Titre: Re : Probléme sur un FS
Posté par: cristab le 01 Août 2009, 14:13:17
exactement relit ton code


J'en profite aussi pour rappeler certain point qui ce trouve a cette page  http://www.gtaonline.fr/forums/index.php/topic,1098.0.html (http://www.gtaonline.fr/forums/index.php/topic,1098.0.html)


Avant de poster du code - Utilisation de pastebin


Au lieu d'utiliser les balises code, merci d'utiliser la pastebin du network à cette adresse : http://pastebin.gtaonline.fr (http://pastebin.gtaonline.fr). Vous pourrez ainsi faciliter la lecture des gens qui pourront mieux vous aider ; et le forum sera moins charger de pages de code.


Une pastebin c'est quoi? 

Une pastebin est un outil de développement/debugage où vous pouvez poster des bouts de codes afin de pouvoir les montrer à d'autres codeurs pour qu'ils vous aident.


Pourquoi utiliser pastebin?

Pastebin permet une plus grande flexibilité que les balises code du forum ou autre. En effet, la pastebin est prévue pour recevoir du code, ce qui n'est pas le cas des forums. De plus, la pastebin permet d'éclairer la synthaxe de votre code, ce qui permet un débug plus rapide.


Comment utiliser pastebin?

Rendez vous sur http://pastebin.gtaonline.fr (http://pastebin.gtaonline.fr), vous vourrez une zone de texte vide, mettez votre code dans cette zone. Une fois ceci fait, choisissez votre langage de programmation : C++ pour SA:MP, LUA pour MTA, puis indiquez le nom de votre bout de code, et enfin le temps de conservation de votre bout de code.
Puis clickez sur envoyer, et vous devriez voir votre bout de code. Récupérer l'url à laquelle vous êtes et mettez là sur les forums!
N'oubliez pas de mettre les messages d'erreurs et/ou une description des problèmes de votre code afin que les gens puissent vous aider.


Apporter une correction à code déjà existant

Pour apporter une correction à un code déjà existant, rendez vous à l'url du code, modifiez le dans la zone de texte, puis clickez sur envoyer, vous devriez voir votre nouvelle page, récupérez là et donnez la à qui en a besoin.
Vous pourrez également voir la différence entre les deux bouts de codes grâce au lieu 'voir la différence'.



Bon développement ;)


J'ai l'impression que vous oublier de lire les post important
Titre: Re : Probléme sur un FS
Posté par: yah00078 le 04 Août 2009, 18:34:28
Un nouveau , on peut l'excuser mais il ne faudra pas abuser de la novicitée !
Pour le script c'est vrai il y a un probleme dans le SetTimer tu met "fbi1f" alors que au debut tu annonce "new fbi1;"
D'ailleur le timer n'a pas besoin de variable de lancement puisuqe que le conte a rebours se lance en tapant ta commande
Petit probleme !

=)
Titre: Re : Re : Probléme sur un FS
Posté par: Lychaos le 05 Août 2009, 14:26:28
Pour le script c'est vrai il y a un probleme dans le SetTimer tu met "fbi1f" alors que au debut tu annonce "new fbi1;"


Il a mit des forward fbi1f et fbi2f ^^
Titre: Re : Probléme sur un FS
Posté par: ApocKalipsS le 05 Août 2009, 14:36:00
Enlève le "playerid" dans t'es forward.

forward fb1f();
forward fb2f();
Titre: Re : Probléme sur un FS
Posté par: yah00078 le 05 Août 2009, 15:23:40
J'ai confondu  :-[ :-X ? Désolé