Comparer 2 string
#1

Bonsoir! J'ai un problиme pour comparer 2 string je m'explique

En faite je veux comparer 2 string en fonction du texte et non pas en fonction du nombre de caractиres, j'ai fais pas mal de recherche avec la solution йvidente mais pourtant...

Donc j'aimerais votre aide si possible

Donc pourquoi je veux faire cela, j'ai un timer avec des textdraw qui se mettent а jours toutes les secondes, mais je veux pas trop que mon script deviennent lourd donc je veux mettre des conditions que si le string du textdraw est le mкme qu'avant alors les fonctions se rй utilise pas, si le string est le mкme que avant sa servirait а rien de rй utiliser les fonctions inutilement

Si je ne suis pas assez clair faites moi le savoir

Voici mes codes

ici mes variables de "text"
Code:
new stringstats2[MAX_PLAYERS][128];
new oldstringstats2[MAX_PLAYERS][128];
Donc ici le reste, c'est censй trouver que si le oldstringstats2 est le mкme que le stringstats2 alors le reste des fonctions se rй utilise pas

Code:
format(stringstats2[i], sizeof(stringstats2), "Kills: %d ~n~Deaths: %d ~n~Ratio: %.2f ~n~Ratio Duel: %.2f",PlayerInfo[i][pKills],PlayerInfo[i][pDeaths],Float:PlayerInfo[i][pKills]/Float:PlayerInfo[i][pDeaths],Float:PlayerInfo[i][pDuelWin]/Float:PlayerInfo[i][pDuelLoose]);
		    if(!strcmp(stringstats2[i],oldstringstats2[i]))// ICI LA CONDITION est censй chercher que les string ne sont pas les mкmes 
		    {
				TextDrawSetString(textdrawstats2[i], stringstats2[i]);
			    TextDrawShowForPlayer(i,textdrawstats2[i]);
			    format(oldstringstats2[i], sizeof(oldstringstats2), "Kills: %d ~n~Deaths: %d ~n~Ratio: %.2f ~n~Ratio Duel: %.2fs",PlayerInfo[i][pKills],PlayerInfo[i][pDeaths],Float:PlayerInfo[i] [pKills]/Float:PlayerInfo[i][pDeaths],Float:PlayerInfo[i][pDuelWin]/Float:PlayerInfo[i][pDuelLoose]);
			    SendClientMessageToAll(-1,"test");
		    }
Mon soucis c'est qu'il y a un soucis au niveau de la condition ou avant, j'ai eu beau essayй de chercher ce que je veux faire ne fonctionne pas, soit sa n'utilise jamais ce qu'il y a dans la conditions " if(!strcmp(stringstats2[i],oldstringstats2[i]))" soit tout ce bloque des que les stats se changent
Reply
#2

La fonction strcmp() retourne йgalement 0 si l'une des 2 chaines de carractйres ("string") est vide
Reply
#3

Hum intйressant ! Pas mal l'info

Mais je sais d'ou vient mon problиme c'est la comparaison de string j'ai fais des test apparemment mкme comparй 2 string ne marche pas oO

Code:
new stringtest1[20],stringtest2[20];
			stringtest1 = "slt";
			stringtest2 = "slt";
		   	if(strcmp(stringtest1,stringtest2)) return SendClientMessage(playerid,-1,"Ce sont les mкmes");
Mais sa ne fonctionne pas sa ne me donne jamais mon message
Reply
#4

C'est bon j'ai rйglй sa il y avait juste а voir l'evenement OnPlayerCommand pour voir l'йrreur...

if(strcmp(string1,string2, true) == 0) // donc les 2 string sont les mкmes merci pour l'aide en tout cas!
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)