[Ajuda] Strings Comparaзхes
#1

Abaixo o code com problema.
Код:
if(strcmp(nomeclan, DOF2_GetString(arquivo2, "NomeClan"), true) == 0)
				{
					SendClientMessage(playerid, COR_GRAD2, "Jб tem um Clan com esse nome, Troque-o!");
					DOF2_RemoveFile(arquivo2);
					return 1;
				}
Sempre aparece que existe um clan com o mesmo nome mesmo nгo existindo, eu tenho o mesmo code em um gamemode que nгo usa zcmd, e la funciona perfeitamente.

Comando Inteiro
Код:
CMD:criarclan(playerid, params[])
{
	new nomeclan[64], tagclan[6], stringclan[128];
    if(sscanf(params, "s[6]s[64]", tagclan, nomeclan)) return SendClientMessage(playerid, -1, " Use: /criarclan [TAG] [Nome] ");
    if(PlayerInfo[playerid][pLevel] <= 49) return SendClientMessage(playerid,azul,"Seu Lvl deve ser maior que 50 para poder criar um Clan!");
    format(stringclan, sizeof(stringclan), "{00688B}[SERVER CLAN]:{FFFFFF} [{00688B}%s{FFFFFF}] [{00688B}%s{FFFFFF}] Criado Com Sucesso Por %s", tagclan, nomeclan, GetName(playerid));
    SendClientMessageToAll(-1, stringclan);
    for(new count = 1;count<MAX_CLANS;count++)
	{
		format(fileZ, sizeof(fileZ),"Clans/Clan_%d.ini",count);
		if(!DOF2_FileExists(fileZ))
		{
			for(new x = 1; x < MAX_CLANS; x++)
			{
		   	 	new arquivo2[128];
				format(arquivo2, sizeof(arquivo2), "Clans/Clan_%d.ini",x);
				if(strcmp(nomeclan, DOF2_GetString(arquivo2, "NomeClan"), true) == 0)
				{
					SendClientMessage(playerid, COR_GRAD2, "Jб tem um Clan com esse nome, Troque-o!");
					DOF2_RemoveFile(arquivo2);
					return 1;
				}
			}
			if(strcmp(InfoClan[count][Lider],"Ninguem",true)==0)
			{
				ConviteInfoClan(GetName(playerid), count, 6);
			}
			PlayerInfo[playerid][pClan] = count;
			PlayerInfo[playerid][pLClan] = count;
			strmid(InfoClan[count][NomeClan], "Ninguem", 0, strlen("Ninguem"), 255);
			DOF2_SetString(fileZ,"NomeClan",(nomeclan));
			DOF2_SetString(fileZ,"TagClan",(tagclan));
			DOF2_SaveFile();
			return 1;
		}
	}
    return 1;
}
Reply
#2

tente fazer isso
PHP код:
if(strcmp(nomeclanDOF2_GetString(arquivo2"NomeClan"), true) == && strlen(nomeclan) > 0)
{
            
SendClientMessage(playeridCOR_GRAD2"Jб tem um Clan com esse nome, Troque-o!");
            
DOF2_RemoveFile(arquivo2);
            return 
1;

o strlen irб verificar se contem caracteres no nome do clг, caso nгo haja a comparaзгo e verdadeira
Reply
#3

Quote:
Originally Posted by biell
Посмотреть сообщение
tente fazer isso
PHP код:
if(strcmp(nomeclanDOF2_GetString(arquivo2"NomeClan"), true) == && strlen(nomeclan) > 0)
{
            
SendClientMessage(playeridCOR_GRAD2"Jб tem um Clan com esse nome, Troque-o!");
            
DOF2_RemoveFile(arquivo2);
            return 
1;

o strlen irб verificar se contem caracteres no nome do clг, caso nгo haja a comparaзгo e verdadeira
Continua Parando Ai.
Reply
#4

Quote:
Originally Posted by dudu_Insane
Посмотреть сообщение
Continua Parando Ai.
Cara, o cуdigo se torna complicado, recomendo que organize-o com arrays muito melhor para trabalhar, nгo lк o arquivo o tempo todo e o cуdigo fica muito mais rapido.
Vocк terб menos problemas

#topic
como se trata de um valor MAX, vocк pode nгo estar lendo nada
portanto
PHP код:
format(arquivo2sizeof(arquivo2), "Clans/Clan_%d.ini",x);
if(
strcmp(nomeclanDOF2_GetString(arquivo2"NomeClan"), true) == && strlen(nomeclan) &&strlen(DOF2_GetString(arquivo2"NomeClan")) ) 
Reply
#5

Quote:
Originally Posted by biell
Посмотреть сообщение
Cara, o cуdigo se torna complicado, recomendo que organize-o com arrays muito melhor para trabalhar, nгo lк o arquivo o tempo todo e o cуdigo fica muito mais rapido.
Vocк terб menos problemas
Tava Organizadinho, mas ai deu o bug, fui tentando resolver e deu que ficou assim, e mesmo assim nao pegou kk.

@Topic, agora estб passando, mesmo existindo um nome igual..
Reply
#6

Quote:
Originally Posted by dudu_Insane
Посмотреть сообщение
Continua Parando Ai.
Quote:
Originally Posted by dudu_Insane
Посмотреть сообщение
Tava Organizadinho, mas ai deu o bug, fui tentando resolver e deu que ficou assim, e mesmo assim nao pegou kk.

@Topic, agora estб passando, mesmo existindo um nome igual..
perdгo, sempre que tive problemas com comparaзгo era na questгo dos caracteres, mas acho que se vocк organizar em arrays sua vida vai melhorar kkkk, se eu encontrar uma soluзгo dou edit
Reply
#7

Mano olha como faz uma verificaзгo de arquivo
PHP код:
    format(arquivo2sizeof(arquivo2), "Clans/Clan_%d.ini",x);
    if(
DOF2_FileExists(arquivo2))
    {
         
SendClientMessage(playeridCOR_GRAD2"Jб tem um Clan com esse nome, Troque-o!");
           return 
1;
    } 
@EDIT nгo se faz comparaзгo onde se vai verificar a existencia de um arquivo !
Reply
#8

Quote:
Originally Posted by lucas_mdr1235
Посмотреть сообщение
Mano olha como faz uma verificaзгo de arquivo
PHP код:
    format(arquivo2sizeof(arquivo2), "Clans/Clan_%d.ini",x);
    if(
DOF2_FileExists(arquivo2))
    {
         
SendClientMessage(playeridCOR_GRAD2"Jб tem um Clan com esse nome, Troque-o!");
           return 
1;
    } 
@EDIT nгo se faz comparaзгo onde se vai verificar a existencia de um arquivo !
Nem se quer percebi isso kkk, como fiz minha include estou meio afastado de DOF2
Reply
#9

Quote:
Originally Posted by lucas_mdr1235
Посмотреть сообщение
Mano olha como faz uma verificaзгo de arquivo
PHP код:
    format(arquivo2sizeof(arquivo2), "Clans/Clan_%d.ini",x);
    if(
DOF2_FileExists(arquivo2))
    {
         
SendClientMessage(playeridCOR_GRAD2"Jб tem um Clan com esse nome, Troque-o!");
           return 
1;
    } 
@EDIT nгo se faz comparaзгo onde se vai verificar a existencia de um arquivo !
Ai eu iria comparar o ID...

@EDIT Valeu galera resolvi, o erro acontecia, pq nгo tinha todos os arquivos dos clans criados, ai o DOF2 pegava um valor vazio, e mostrava ser igual (o pq nгo sei)... Assim que coloquei todos os arquivos ele comeзou a funcionar normalmente..
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)