[Tutorial] Criando comandos símples - Versão de Impressão +- Portal SAMP (https://portalsamp.com) +-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5) +--- Fórum: Guias e Tutoriais (https://portalsamp.com/forumdisplay.php?fid=7) +--- Tópico: [Tutorial] Criando comandos símples (/showthread.php?tid=1237) |
Criando comandos símples - bebebeunoeduardo@gmail.com - 30/05/2021 Irei ensinar para vocês um comando útil e fácil, eu sou iniciante então se tiver erros espero que entendam. Iremos usar strcmp. O lugar para usar comandos strcmp é em OnPlayerCommandText, então iremos até ele. Iremos criar um comando símples (/vida). Primeiro iremos apertar ENTER para ir para a linha debaixo, e escrever if (!strcmp(cmdtext), "/vida", true)) e deixam do jeito que está: Código: public OnPlayerCommandText(playerid, cmdtext[]) Embaixo da { iremos colocar: if(GetPlayerMoney(playerid) >= 3000) ai no caso irá ficar assim: Código: public OnPlayerCommandText(playerid, cmdtext[]) Código: public OnPlayerCommandText(playerid, cmdtext[]) new var0[265]; String0 new var1[256]; String1 Como no site fala Uma string é um tipo especial de matriz, que é utilizado para armazenar vários caracteres para criar uma palavra ou frase ou texto de outro ser humano legível. No caso é o número de caracteres que vai ter. GetPlayerName(playerid, var1, 30); Isso será para pegar o nome do jogador que está usando o comando e colocar na mensagem. Agorá iremos adicionar os "principais" Código: public OnPlayerCommandText(playerid, cmdtext[]) Código: SendClientMessageToAll(0xFFFFFFF, var0); Código: SetPlayerHealth(playerid, 100.0); Código: } format(var0, 265, "%s {A9A9A9}Recuperou 100% de vida. {00FF00}(/Vida).",var1); format é os valores do espaços reservados seguem exatamente a mesma ordem dos parâmetros na chamada. Por Exemplo, "Eu tenho anos de idade": o % vai ser substituido por uma variável do tipo inteiro, que é a idade da pessoa. - Samp Wiki //No caso será a mensagem que será enviada para os jogadores. SendClientMessageToAll(0xFFFFFFF, var0); //SendClientMessageToAll é a função de enviar a mensagem da string para todos os jogadores, 0xFFFFFFF é a cor (pode mudar pra qualquer usa) e var0 é a função de enviar a mensagem que no caso vai ser a string. Agora pra parte final: Código: public OnPlayerCommandText(playerid, cmdtext[]) Código: { Código: SendClientMessage(playerid, 0xFFFFFFF, "{FF0000}[Erro]: {FFFFFF} Você não tem dinheiro suficiente!"); Código: } O "else" irá ser usado caso o jogador não tenha dinheiro suficiente. else tradução: se não. Depois iremos adicionar um { e dar outro ENTER SendClientMessage é para enviar a mensagem para um jogador específico. playerid no caso é o para o jogador que a mensagem será enviada. 0xFFFFFFF é a cor, da pra mudar pra qualquer uma. "{FF0000}[Erro]: {FFFFFF} Você não tem dinheiro suficiente!"); é a mensagem que irá ser enviada, vejam que há um {FF0000} e {FFFFFF} na mensagem, isso é uma cor HTML que assim vai ficar: [ERRO]: Você não tem dinheiro suficiente!"); fechando a mensagem. Fim! Eu tive que colocar como preto ali porque ia ficar invisivel mas é branco. |