GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: /cartman le 20 Juin 2009, 15:24:41

Titre: strcmp
Posté par: /cartman le 20 Juin 2009, 15:24:41
salut je voudrait savoir comment fair pour qu'avec une comamde le chat me disse :

vous avez crée **  de bizness
vous avez crée ** de voiture
vous avez crée ** de spawn


mes fichier son dans mes scriptfiles  le probléme c'est quil  se nome comme sa :

001.biz
001.car
001.spwn

002.biz
002.car
002.spwn
...



je voudrai donc savoir comment compter de fichier en prenent en compte son extension ?? merci


++




Titre: Re : strcmp
Posté par: Ssk le 20 Juin 2009, 21:19:27
creer un loop avec while ca t aideras un peu plus ;)
Titre: Re : strcmp
Posté par: /cartman le 20 Juin 2009, 21:32:47
mercie  :)

heu je n'est jamais crée de loop  :-[ esque quelqu'un pourais maider ??

je suis allez voirle tutos des operateur de sa-mp mais je vois pas trop comment inclure ma recherche  :-\



mercie a vs
++
Titre: Re : strcmp
Posté par: Ssk le 20 Juin 2009, 22:51:38
j ai dit une erreur utilise for c est mieux
for(new var = 0;var <= -1;var++)
{
new string[128];
format(string,128,"%03d.ton extension",var);
if(!(exist(string)))
{
format(string,128,"tu as %d biz",var);
sendclientmessage(playerid,ta couleur,string);
var =-1;
}
}
maintenant corrige les erreur car j ai tout sans pc regarde si la fonction existe belle est bien et j espere t avoir aider ;)
Titre: Re : strcmp
Posté par: /cartman le 20 Juin 2009, 23:35:14
mercie :)
for(new var = 0;var <= -1;var++)
{
new string[128];
format(string,128,"%03d.mot",var);
if(!(fexist(string)))
{
format(string,128,"tu as %d biz",var);
SendClientMessage(playerid, COLOR_jaunase,string);
var =-1;
}
}


aucune ereure masi crash a la compilation masi crach mon sa-mp server  au lancement

je vois pas trop  ???
Titre: Re : strcmp
Posté par: Ssk le 21 Juin 2009, 10:51:42
tu l as mis dans une cmd ??
sinon essaye de retirer le 03 dans le premier format
Titre: Re : strcmp
Posté par: S!m le 21 Juin 2009, 14:13:49
Salut,

vu les noms qu'il a donné à ses fichiers, il serait plus avisé de conserver le %03d par contre je serais pasé par une while loop afin d'établir le compte (comporte néanmoins un défaut)

new tmp[128], i = 0;
do
{
    i++;
    format(tmp, sizeof(tmp), "%03d.biz", i);
}
while(fexist(tmp));
//par contre ceci retourne le nombre de biz +1...
//i -=1;
//format(tmp, sizeof(tmp), "Ton serveur compte %d biz.", i);//c'est  une des possibilités, sinon il te suffit de mettre i-1 au lieu de i:
format(tmp, sizeof(tmp), "Ton serveur possède %d biz.", i-1);//comme ceci quoi

un code légèrement plus simple qui comporte néanmoins le défaut de retourner 1 de plus que le nombre de biz, si tes biz commencaient à 0 il serait poassible de la même façon (a peu près) d'arriver au bon compte

++Sim++
Titre: Re : strcmp
Posté par: /cartman le 21 Juin 2009, 16:09:31
HUUM  ok mercie j'éditerai  plus tar pour vous dire le resultat .

mais j'ai une question pourqu'oi 03  ???

++


edit:  heu sa compile niquel mais fait cracher mon sa-mp server  ( sans la modif il se lance) donc je vois pas trop  ???
Titre: Re : strcmp
Posté par: Ssk le 21 Juin 2009, 17:15:49
beh le 03 veut de faire 003 au de 3 par exemple 45 ca va etre 045 il le transforme en 3 caractere
Titre: Re : strcmp
Posté par: /cartman le 21 Juin 2009, 19:14:45
a ok je comprend mercie   sinon u ne c'est pas dous vien se crach dans se code ?
Titre: Re : strcmp
Posté par: Ssk le 21 Juin 2009, 20:34:14
essaye d lance le serv sans ce code  pour voir
Titre: Re : strcmp
Posté par: /cartman le 21 Juin 2009, 20:45:56
oui j'ai tout tester ja enlever se code de mon fs et le serve se lance trankile sa vien vraiment de lui  :dry


sinon soit cette forme il marche  :laugh

   if(strcmp(cmdtext, "/test", true) == 0)
   {




mais moi je l'utilise comme sa et sa marche pas  :-\


dcmd_test(playerid, params[])
{
    #pragma unused params



et je j'ai besoins qu'il soit comme sa  :(


Titre: Re : strcmp
Posté par: S!m le 21 Juin 2009, 23:24:33
Salut,

montre le code complet s'il-te-plait et fais un effort côté orthographe...

++Sim++
Titre: Re : strcmp
Posté par: /cartman le 21 Juin 2009, 23:46:41
et biest excatement celui que tu ma donnée  :-\
dcmd_test(playerid, params[])
{
    #pragma unused params
new tmp[128], i = 0;
do
{
   
    format(tmp, sizeof(tmp), "%03d.biz", i);
    i++;
}
while(fexist(tmp));
//par contre ceci retourne le nombre de biz +1...
//i -=1;
//format(tmp, sizeof(tmp), "Ton serveur compte %d biz.", i);//c'est  une des possibilités, sinon il te suffit de mettre i-1 au lieu de i:
format(tmp, sizeof(tmp), "Ton serveur possède %d biz.", i-1);//comme ceci quoi
SendClientMessage(playerid, COLOR_GREEN, tmp);
}
Titre: Re : strcmp
Posté par: S!m le 22 Juin 2009, 00:37:21
Salut,

si tu regarde mon code, le i++ se trouve devant le format....

p.s. les dcmd doivent retourné 1

++Sim++