[Pedido] Comando simples rs
#1

Galera sou noobzinho no pawn ainda, mas quero aprender, eu tentei fazer um simples comando pra um GM velho aqui, mas nгo consegui.

E o seguinte: eu olhei esse comando:
pawn Код:
if(strcmp(cmd, "/setarcombustivel", true) == 0)
    {
        if(IsPlayerAdmin(playerid))
        {
            tmp = strtok(cmdtext, idx);
            new id = strval(tmp);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, 0xC4C4FFAA, "Uso: /setarcombustivel [id] [quantidade]");
                return 1;
            }
            tmp = strtok(cmdtext, idx);
            new quantidade = strval(tmp);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, 0xC4C4FFAA, "Uso: /setarcombustivel [id] [quantidade]");
                return 1;
            }
            if(!IsPlayerConnected(id))
            {
                SendClientMessage(playerid, COR_BRANCO, "(ERRO) Jogador nгo estб conectado!");
                return 1;
            }
            new str[256];
            Gasolina[id] = quantidade;
            new giveplayer[MAX_PLAYER_NAME];
            new sendername[MAX_PLAYER_NAME];
            GetPlayerName(playerid, sendername, sizeof(sendername));
            GetPlayerName(id, giveplayer, sizeof(giveplayer));
            format(str, sizeof(str), "(INFO) O admin %s setou a sua gasolina para %d", sendername, quantidade);
            SendClientMessage(id, 0x00FA9AAA, str);
            format(str, sizeof(str), "(INFO) Vocк setou a gasolina do jogador %s para %d", giveplayer, quantidade);
            SendClientMessage(playerid, 0x00FA9AAA, str);
            printf("(iSeven) O administrador %s (%d) setou a gasolina do jogador %s (%d) para %d", sendername, playerid, giveplayer, id, quantidade);
        }
        else
        {
            SendClientMessage(playerid, COR_VERMELHO, "(ERRO) Vocк nгo й um administrador");
        }
        return 1;
    }
Notou que esse comando muda um simples nomero dentro de um diretorio? ele apenas muda o "Gasolina" pra o numero desejado... Entгo eu tentei seguir o comando acima e fazer um comando para a profissгo de Instrutor: o /terrestre [id], esse comando era pra somente mudar o valor do "Terrestre=0" pra "1" mas, eu nгo conseguir fazer o comando KKK, alguйm pode fazer ? please?

Diretorio: #define DIRETORIO "contas/usuarios/%s.ini"
Mudar dentro do .ini: "Terrestre=0" pra "Terrestre=1"
Reply
#2

Por que vocк nгo usa ZCMD + SSCANF?

Й mais fбcil, mais claro e mais otimizado.

https://sampforum.blast.hk/showthread.php?tid=277842
Reply
#3

uma unica pergunta, vocк usa o sistema dini? file? ou fini? como arquivo de salvamento de seus jogadores?

@edit

a principio do comando seria isso agora й sу adapta-lo ao seu gm
pawn Код:
if(strcmp(cmd, "/terrestre", true) == 0)
    {
        if(IsPlayerAdmin(playerid))
        {
            tmp = strtok(cmdtext, idx);
            new nome[25] = strlen(tmp);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, 0xC4C4FFAA, "Uso: /terrestre [nome]");
                return 1;
            }
            tmp = strtok(cmdtext, idx);
            if(!dini_Exists(nome))
            {
                SendClientMessage(playerid, COR_BRANCO, "(ERRO) Jogador nгo existe em nosso banco de dados!");
                return 1;
            }
            new str[256];
            GetPlayerName(playerid, sendername, sizeof(sendername));
            format(nome, 25, "contas/usuarios/%s.ini", nome);
            if(dini_Int(nome, "Terrestre") == 0)
            {
                dini_IntSet(nome, "Terrestre", 1);
                format(str, sizeof(str), "(INFO) O instrutor %s setou a licenзa Terrestre de %s para positiva", sendername, nome);
                SendClientMessage(id, 0x00FA9AAA, str);
                return 1;
            }
            else if(dini_Int(nome, "Terrestre") == 1)
            {
                dini_IntSet(nome, "Terrestre", 0);
                format(str, sizeof(str), "(INFO) O instrutor %s setou a licenзa Terrestre de %s para negativa", sendername, nome);
                SendClientMessage(id, 0x00FA9AAA, str);
                return 1;
            }
        }
        else
        {
            SendClientMessage(playerid, COR_VERMELHO, "(ERRO) Vocк nгo й um administrador");
        }
        return 1;
    }
Reply
#4

Quote:
Originally Posted by hard_dalzot
Посмотреть сообщение
uma unica pergunta, vocк usa o sistema dini? file? ou fini? como arquivo de salvamento de seus jogadores?

@edit

a principio do comando seria isso agora й sу adapta-lo ao seu gm
pawn Код:
if(strcmp(cmd, "/terrestre", true) == 0)
    {
        if(IsPlayerAdmin(playerid))
        {
            tmp = strtok(cmdtext, idx);
            new nome[25] = strlen(tmp);
            if(!strlen(tmp))
            {
                SendClientMessage(playerid, 0xC4C4FFAA, "Uso: /terrestre [nome]");
                return 1;
            }
            tmp = strtok(cmdtext, idx);
            if(!dini_Exists(nome))
            {
                SendClientMessage(playerid, COR_BRANCO, "(ERRO) Jogador nгo existe em nosso banco de dados!");
                return 1;
            }
            new str[256];
            GetPlayerName(playerid, sendername, sizeof(sendername));
            format(nome, 25, "contas/usuarios/%s.ini", nome);
            if(dini_Int(nome, "Terrestre") == 0)
            {
                dini_IntSet(nome, "Terrestre", 1);
                format(str, sizeof(str), "(INFO) O instrutor %s setou a licenзa Terrestre de %s para positiva", sendername, nome);
                SendClientMessage(id, 0x00FA9AAA, str);
                return 1;
            }
            else if(dini_Int(nome, "Terrestre") == 1)
            {
                dini_IntSet(nome, "Terrestre", 0);
                format(str, sizeof(str), "(INFO) O instrutor %s setou a licenзa Terrestre de %s para negativa", sendername, nome);
                SendClientMessage(id, 0x00FA9AAA, str);
                return 1;
            }
        }
        else
        {
            SendClientMessage(playerid, COR_VERMELHO, "(ERRO) Vocк nгo й um administrador");
        }
        return 1;
    }
Eu uso dini, cara, o que mais que tem que fazer? tem que criar alguma new e talґs? deu muitos erros no code aqui.
Reply
#5

Se tiver ainda dъvidas hoje sobre isso, responde aqui no fуrum eu entro em contato contigo e te ajudo...
Reply
#6

Quote:
Originally Posted by douglasmacb
Посмотреть сообщение
Se tiver ainda dъvidas hoje sobre isso, responde aqui no fуrum eu entro em contato contigo e te ajudo...
Ae cara, ja resolvi esse problema ae, agora tenho outro problema, esse GM tem um bug mostro no /MudarNome, ja tentei resolver mas ta foda aqui, help please.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)