[Ajuda] Problema com Tag's - 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] Problema com Tag's (/showthread.php?tid=1978) |
Problema com Tag's - tileos - 24/12/2021 Olá estou com um problema nas tag's exemplo de nick: [TAG]JoaoRoberto Tenho um comando de /Presente: Código PHP: CMD:presente(playerid, params[]) Problema esta nisso aqui: só funciona quando player não possui uma tag Código PHP: if(DOF2_GetInt(pPresente, Nome(playerid)) == 1) Nesse comandos quando um player utiliza a tag [TAG] do lado do nick do jogador, quando o player digita o /Presente ele pode pegar varios presente que é somente pode pegar uma vez, quando um player não possui uma tag ele só pega uma vez, quando ele tem a tag ele consegue pegar varias vezes o presente, alguem pode me ajudar? RE: Problema com Tag's - SrBlue - 25/12/2021 opa! tente formatar o nome do jogador, como assim formatar? remova a tag para isso vamos utilizara include strlib, já que o pawn não possui função nativa de "string.find" assim como o C++/C. exemplo de uso ( documentação ) Código: new output[10][10], count; já que nosso objetivo é separar a TAG, vamos aderir a uma stock: Código: stock spliter(nameplayer[]){ fazendo assim, no trecho do seu code, o qual faz checar se o jogador utilizou o código iremos botar o tal spliter: Código: if(DOF2_GetInt(pPresente, spliter(Nome(playerid))[1]) == 1) porque spliter(G...)[1]? devido o elemento PARSE receber o texto de ANTES do ] e depois do mesmo. ficando assim nesse exemplo: spliter("[A]SemNaME")[0] // [A spliter("[A]SemNaME")[1] // SemNaME mesmo fazendo essa verificação, tens que ver setar a mesma verificação aonde escrever no arquivo o nome de quem pegou, já que vai escrever com o nome do jogador + a TAG. ou seja, devemos passar todos os nome do jogador para SEM tag onde tens Código: Nome(playerid) use Código: spliter(Nome(playerid))[1] RE: Problema com Tag's - SrBlue - 25/12/2021 lembrando, se o jogador Y utilizar e o jogador Z utilizar depois, o jogador Y poderá utilizar novamente! |