Portal SAMP
[Ajuda] Converte para lowercase - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] Converte para lowercase (/showthread.php?tid=4964)



Converte para lowercase - Mateus Santos - 29/01/2025

Eu fiz o teste /infoconta FuriaDevs e apareceu [SERVER]: Unknown command.
Eu acho que o problema é no 'strtolower(name)'. Não sei como corrigir.



Código:
stock strtolower(string[])
{
    for (new i = 0; i < strlen(string); i++)
    {
        if (string[i] >= 'A' && string[i] <= 'Z')
        {
            string[i] += ('a' - 'A');
        }
    }
    return string;
}

CMD:infoconta(playerid, params[])
{
LoginCheck(playerid);
LevelCheck(playerid, 1);

new name[24];
if (sscanf(params, "s[24]", name)) {
SendClientMessageLang(playerid, COLOR_RED, "Uso: /infoconta [nome]", 0);
SendClientMessageLang(playerid, COLOR_RED, "Usage: /checkstat [name]", 1);
return 1;
}
    strtolower(name);
ShowStatistics(playerid, name);
return 1;
}


print
https://i.imgur.com/KKSB2v5.png


RE: Converte para lowercase - White_Blue - 29/01/2025

(29/01/2025 00:08)Mateus Santos Escreveu: Eu fiz o teste /infoconta FuriaDevs e apareceu [SERVER]: Unknown command.
Eu acho que o problema é no 'strtolower(name)'. Não sei como corrigir.



Código:
stock strtolower(string[])
{
    for (new i = 0; i < strlen(string); i++)
    {
        if (string[i] >= 'A' && string[i] <= 'Z')
        {
            string[i] += ('a' - 'A');
        }
    }
    return string;
}

CMD:infoconta(playerid, params[])
{
LoginCheck(playerid);
LevelCheck(playerid, 1);

new name[24];
if (sscanf(params, "s[24]", name)) {
SendClientMessageLang(playerid, COLOR_RED, "Uso: /infoconta [nome]", 0);
SendClientMessageLang(playerid, COLOR_RED, "Usage: /checkstat [name]", 1);
return 1;
}
    strtolower(name);
ShowStatistics(playerid, name);
return 1;
}


print
https://i.imgur.com/KKSB2v5.png

Creio que essa função está meio overengineered.

Tente com a função:

Código PHP:
strtolower(const src[], dest[]) {
   for(new 
0strlen(src); i++) {
      if(
src[i] == '\0') break;

      
dest[i] = tolower(src[i]);
   }
   return 
1;


Obs: tolower é uma função nativa. Documentação: https://sampwiki.blast.hk/wiki/Tolower


RE: Converte para lowercase - Mateus Santos - 29/01/2025

Valeu, mano! Fiz um teste com /infoconta, apareceu agora, funciona! Resolvido.