[AJUDA] SERVER: unknown command
#1

Olб pessoal eu coloquei esses comados para minha org no GM

pawn Код:
#define COMMAND:%1(%2)          \
            forward cmd_%1(%2); \
            public cmd_%1(%2)
COMMAND:convidar(playerid, params[])
{
    new id, idname[MAX_PLAYER_NAME], string[128]; //Cria variaveis que irгo armazenar id, nome e string
    if(pDados[playerid][Cargo] != 6) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo й lнder."); //Vк se quem digitou o comando й lнder, se nгo, returna a mensagem
    if(sscanf(params, "d", id)) return SendClientMessage(playerid, COR_ERRO, "USE: /convidar [ID]"); //Aqui estб o triunfo do sscanf! Para saber mais informaзхes leia o Tуpico
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, COR_ERRO, "Este jogador nгo estб online."); //Verifica se o "id" estб online...
    if(pDados[id][Organizacao] != 0) return SendClientMessage(playerid, COR_ERRO, "Este jogador jб estб em uma Organizaзгo."); //Verifica se o player jб estб em alguma organizaзгo, se estiver, returna a mensagem
    if(playerid == id) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo pode convidar a vocк mesmo."); //Verifica se o "id" = id de quem digitou (playerid)
    GetPlayerName(id, idname, sizeof(idname)); //Geta o nome do "id"
    format(string, sizeof(string), "Vocк convidou %s para sua Organizaзгo.", idname); //Formata a mensagem com que foi convidado
    SendClientMessage(playerid, GetPlayerColor(playerid), string); //Envia a mensagem ao lнder
    GetPlayerName(playerid, playername, sizeof(playername)); //Geta o nome de quem digitou o comando
    format(string, sizeof(string), "%s estб lhe Convidando para fazer parte da Organizaзгo: %s \nDeseja aceitar?", playername, GetOrgName(pDados[playerid][Organizacao])); //Formata um dialog com o nome de que convidou e o nome da organizaзгo
    ShowPlayerDialog(id, 666, DIALOG_STYLE_MSGBOX, "Convite para organizaзгo", string, "Sim", "Nгo"); //Cria o dialog de acordo com a "string" e a mostra para o "id"
    SetPVarInt(id, "OrgConvidado", pDados[playerid][Organizacao]); //Setando PVarInt que serб usar no OnDialogResponse
    SetPVarInt(id, "QuemConvidou", playerid); //Setando PVarInt que serб usar no OnDialogResponse
    return 1; //Returnando a 1, nunca se esqueзa!
}

COMMAND:promover(playerid, params[])
{
    new id, cargo, string[128], idname[MAX_PLAYER_NAME]; //Cria as vбriveis...
    if(pDados[playerid][Cargo] != 6) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo й lнder."); //Verifica se o player que digitou o comando й lнder
    if(sscanf(params, "dd", id, cargo)) return SendClientMessage(playerid, COR_ERRO, "USE: /promover [ID] [CARGO]"); //Aqui estб o triunfo do sscanf! Para saber mais informaзхes leia o Tуpico
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, COR_ERRO, "Este jogador nгo estб online."); //Verifica se o player que serб promovido estб online
    if(pDados[id][Organizacao] != pDados[playerid][Organizacao]) return SendClientMessage(playerid, COR_ERRO, "Este jogador nгo й da mesma Organizaзгo que vocк."); //Verifica se o "id" й da mesma organizaзгo do lнder
    if(playerid == id) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo pode promover a vocк mesmo."); //Verifica se o "id" й ele mesmo (playerid)
    if(cargo >= 1 || cargo <= 5) //Verifica se o cargo estб entre 1 a 5
    {
        pDados[id][Cargo] = cargo; //Seta o cargo do player de acordo com o "cargo" que o lнder digitou
        GetPlayerName(playerid, playername, sizeof(playername)); //Geta o nome do player que digitou o comando
        GetPlayerName(id, idname, sizeof(idname)); //Geta o nome de quem recebeu a promoзгo
        format(string, sizeof(string), "%s promoveu o membro %s para o Cargo %d.", playername, idname, cargo); //Formata a mesgaem com quem prommoveu, quem foi promovido e o cargo
        SendFamilyMessage(pDados[playerid][Organizacao], GetPlayerColor(playerid), string); //Envia a mensagem para a organizaзгo
        format(string, sizeof(string), "%s te promoveu para o Cargo %d.", playername, cargo); //Formata a mensgame...
        SendClientMessage(id, GetPlayerColor(playerid), string); //Envia a mesngaem para quem foi promovido
    }
    else //Caso o cargo nгo esta de 1 a 5, envia a mensagem abaixo:
    {
        SendClientMessage(playerid, COR_ERRO, "Cargos de 1 a 5");
        return 1;
    }
    return 1; //Returnando a 1, nunca se esqueзa!
}

COMMAND:demitir(playerid, params[])
{
    new id, motivo[128], string[128], idname[MAX_PLAYER_NAME]; //Criando variaveis :P
    if(pDados[playerid][Cargo] != 6) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo й lнder."); //Verifica se o player que digitou o comando й lider
    if(sscanf(params, "ds", id, motivo)) return SendClientMessage(playerid, COR_ERRO, "USE: /demitir [ID] [MOTIVO]"); //Aqui estб o triunfo do sscanf! Para saber mais informaзхes leia o Tуpico
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, COR_ERRO, "Este jogador nгo estб online."); //Verifica se quem serб demitido estб online
    if(pDados[id][Organizacao] != pDados[playerid][Organizacao]) return SendClientMessage(playerid, COR_ERRO, "Este jogador nгo й da mesma Organizaзгo que vocк."); //Verifica se o "id" й da mesma organizaзгo do lнder
    if(playerid == id) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo pode demitir a vocк mesmo."); //Verifica se o "id" й ele mesmo (playerid)
    pDados[id][Organizacao] = CIVIL; //Seta a organizaзгo do player a CIVIL
    pDados[id][Cargo] = 0; //Seta o cargo od player a 0
    GetPlayerName(playerid, playername, sizeof(playername)); //Geta o nome de quem demitiu
    GetPlayerName(id, idname, sizeof(idname)); //Geta o nome de quem foi demitido
    format(string, sizeof(string), "%s demitiu o membro %s da Organizaзгo.", playername, idname); //Formata uma mensagem com o nome de quem demitiu e quem foi demitido
    SendFamilyMessage(pDados[playerid][Organizacao], GetPlayerColor(playerid), string); //Envia a mensagem para a organizaзгo
    format(string, sizeof(string), "%s te demitiu da Organizaзгo. Motivo: %s.", playername, motivo); //Formata uma mensagem com o nome de quem demitiu e o motivo
    SendClientMessage(id, GetPlayerColor(playerid), string); //Envia a mensagem para quem foi demitido
    SpawnPlayer(id); //Spawn no nego!
    return 1; //Returnando a 1, nunca se esqueзa!
}

COMMAND:darlider(playerid, params[])
{
    new id, org, string[256], quemdeu[MAX_PLAYER_NAME], quemganhou[MAX_PLAYER_NAME]; //Cria vбriaveis que irб armazenar o id do lнder, a organizaзгo, o nome etc...
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, COR_ERRO, "{00E5FF}Vocк nгo estб autorizado a usar este Comando."); //Verifica se o player estб logado na RCON, se nгo, returna a mensagem
    if(sscanf(params, "ii", id, org)) return SendClientMessage(playerid, COR_ERRO, "USE: /darlider [ID] [ORGANIZAЗГO]"); //Aqui estб o triunfo do sscanf! Para saber mais informaзхes leia o Tуpico
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, COR_ERRO, "Este jogador nгo estб online."); //Verifica se o player que iria ser setado lнder estб online
    if(playerid == id) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo pode dar lider a vocк mesmo."); //Verifica se o "id" й igual ao seu (playerid)
    GetPlayerName(id, quemganhou, sizeof(quemganhou)); //Geta o nome de quem ganhou a lideanзa
    GetPlayerName(playerid, quemdeu, sizeof(quemdeu)); //Geta o nome do admin que deu o lнder
    format(string, sizeof(string), "Vocк  deu lнder da Organizaзгo %s para %s(ID: %d)", GetOrgName(org), quemganhou, id); //Formata uma mensagem com o nome de quem ganhou a lideranзa, o nome da orgnizaзгo que foi setada e o "id"
    SendClientMessage(playerid, COR_AZUL_CLARO, string); //Manda a mensgem formatada para quem digitou o comando (quem deu o lнder)
    format(string, sizeof(string), "%s(ID: %d) te deu lнder da Organizaзгo %s.", quemdeu, playerid, GetOrgName(org)); //Formata uma mensgame com quem deu a lideranзa, o "playerid" e o nome organizaзгo setada
    SendClientMessage(id, COR_AZUL_CLARO, string); //Envia a mensgaem formatada para que recebeu a lideranзa
    format(string, sizeof(string), "%s(ID: %d) й o novo lнder da Organizaзгo %s.", quemganhou, id, GetOrgName(org)); //Formata a mensagem...
    SendClientMessageToAll(COR_AZUL_CLARO, string); //Envia a mensagem para todos Online
    pDados[id][Organizacao] = org; //Seta a organizaзгo do "id"
    pDados[id][Cargo] = 6; //Seta o cargo (lideranзa) do "id"
    SpawnPlayer(id); //Spawna o player que rebeu a lideranзa
    return 1; //Returnando a 1, nunca se esqueзa!
}

COMMAND:membros(playerid)
{
    new string[128]; //Criamos variaveis que irгo armazenar o nome e mensganes formatadas
    if(pDados[playerid][Organizacao] >= 1)
    {
        SendClientMessage(playerid, 0xBFC0C2FF, "(=-=-=-=-=-=-=({FFD700}Membros Online{BFC0C2})=-=-=-=-=-=-=)");
        for(new i = 0; i < MAX_PLAYERS; i++) //Criamos um loop de acordo com o MAX_PLAYERS
        {
            if(IsPlayerConnected(i)) //Verifica se o "i" (player) do loop estб online
            {
                if(pDados[i][Organizacao] == pDados[playerid][Organizacao]) //Verifica se a organizaзгo do player (do loop) й igual a do player que digitou o comando
                {
                    GetPlayerName(i, playername, sizeof(playername)); //Geta o nome do player(loop)...
                    if(pDados[i][Cargo] <= 4) //Verifica se o player do loop e cargo 4 ou menos
                    {
                        format(string, sizeof(string), "Membro: %s, Cargo: %d", playername, pDados[i][Cargo]); //Formata uma mensgaem com o nome e cargo do player (loop)
                        SendClientMessage(playerid, GetPlayerColor(playerid), string); //Envia a mensagem do player que digitou o comando
                    }
                    else
                    {
                        if(pDados[i][Cargo] == 6) //Verifica se o player й Lнder e formata/envia uma mensagem diferente/destacada
                        {
                            format(string, sizeof(string), "Membro: %s, Cargo: Lнder", playername);
                            SendClientMessage(playerid, GetPlayerColor(playerid), string);
                        }
                        else if(pDados[i][Cargo] == 5) //Verifica se o player й Lнder e formata/envia uma mensagem diferente/destacada
                        {
                            format(string, sizeof(string), "Membro: %s, Cargo: Sub-Lнder", playername);
                            SendClientMessage(playerid, GetPlayerColor(playerid), string);
                        }
                    }
                }
            }
        }
    }
    else
    {
        SendClientMessage(playerid, COR_ERRO, "Vocк nгo pertence a nenhuma Organizaзгo.");
    }
    return 1; //Returnando a 1, nunca se esqueзa!
}

ai esses ficaram funcionando e os outros nгo. "os outros do GM" que usa OnPlayerCommandText"
Reply
#2

Quote:
Originally Posted by peumenezes
Посмотреть сообщение
Olб pessoal eu coloquei esses comados para minha org no GM

pawn Код:
#define COMMAND:%1(%2)          \
            forward cmd_%1(%2); \
            public cmd_%1(%2)
COMMAND:convidar(playerid, params[])
{
    new id, idname[MAX_PLAYER_NAME], string[128]; //Cria variaveis que irгo armazenar id, nome e string
    if(pDados[playerid][Cargo] != 6) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo й lнder."); //Vк se quem digitou o comando й lнder, se nгo, returna a mensagem
    if(sscanf(params, "d", id)) return SendClientMessage(playerid, COR_ERRO, "USE: /convidar [ID]"); //Aqui estб o triunfo do sscanf! Para saber mais informaзхes leia o Tуpico
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, COR_ERRO, "Este jogador nгo estб online."); //Verifica se o "id" estб online...
    if(pDados[id][Organizacao] != 0) return SendClientMessage(playerid, COR_ERRO, "Este jogador jб estб em uma Organizaзгo."); //Verifica se o player jб estб em alguma organizaзгo, se estiver, returna a mensagem
    if(playerid == id) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo pode convidar a vocк mesmo."); //Verifica se o "id" = id de quem digitou (playerid)
    GetPlayerName(id, idname, sizeof(idname)); //Geta o nome do "id"
    format(string, sizeof(string), "Vocк convidou %s para sua Organizaзгo.", idname); //Formata a mensagem com que foi convidado
    SendClientMessage(playerid, GetPlayerColor(playerid), string); //Envia a mensagem ao lнder
    GetPlayerName(playerid, playername, sizeof(playername)); //Geta o nome de quem digitou o comando
    format(string, sizeof(string), "%s estб lhe Convidando para fazer parte da Organizaзгo: %s \nDeseja aceitar?", playername, GetOrgName(pDados[playerid][Organizacao])); //Formata um dialog com o nome de que convidou e o nome da organizaзгo
    ShowPlayerDialog(id, 666, DIALOG_STYLE_MSGBOX, "Convite para organizaзгo", string, "Sim", "Nгo"); //Cria o dialog de acordo com a "string" e a mostra para o "id"
    SetPVarInt(id, "OrgConvidado", pDados[playerid][Organizacao]); //Setando PVarInt que serб usar no OnDialogResponse
    SetPVarInt(id, "QuemConvidou", playerid); //Setando PVarInt que serб usar no OnDialogResponse
    return 1; //Returnando a 1, nunca se esqueзa!
}

COMMAND:promover(playerid, params[])
{
    new id, cargo, string[128], idname[MAX_PLAYER_NAME]; //Cria as vбriveis...
    if(pDados[playerid][Cargo] != 6) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo й lнder."); //Verifica se o player que digitou o comando й lнder
    if(sscanf(params, "dd", id, cargo)) return SendClientMessage(playerid, COR_ERRO, "USE: /promover [ID] [CARGO]"); //Aqui estб o triunfo do sscanf! Para saber mais informaзхes leia o Tуpico
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, COR_ERRO, "Este jogador nгo estб online."); //Verifica se o player que serб promovido estб online
    if(pDados[id][Organizacao] != pDados[playerid][Organizacao]) return SendClientMessage(playerid, COR_ERRO, "Este jogador nгo й da mesma Organizaзгo que vocк."); //Verifica se o "id" й da mesma organizaзгo do lнder
    if(playerid == id) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo pode promover a vocк mesmo."); //Verifica se o "id" й ele mesmo (playerid)
    if(cargo >= 1 || cargo <= 5) //Verifica se o cargo estб entre 1 a 5
    {
        pDados[id][Cargo] = cargo; //Seta o cargo do player de acordo com o "cargo" que o lнder digitou
        GetPlayerName(playerid, playername, sizeof(playername)); //Geta o nome do player que digitou o comando
        GetPlayerName(id, idname, sizeof(idname)); //Geta o nome de quem recebeu a promoзгo
        format(string, sizeof(string), "%s promoveu o membro %s para o Cargo %d.", playername, idname, cargo); //Formata a mesgaem com quem prommoveu, quem foi promovido e o cargo
        SendFamilyMessage(pDados[playerid][Organizacao], GetPlayerColor(playerid), string); //Envia a mensagem para a organizaзгo
        format(string, sizeof(string), "%s te promoveu para o Cargo %d.", playername, cargo); //Formata a mensgame...
        SendClientMessage(id, GetPlayerColor(playerid), string); //Envia a mesngaem para quem foi promovido
    }
    else //Caso o cargo nгo esta de 1 a 5, envia a mensagem abaixo:
    {
        SendClientMessage(playerid, COR_ERRO, "Cargos de 1 a 5");
        return 1;
    }
    return 1; //Returnando a 1, nunca se esqueзa!
}

COMMAND:demitir(playerid, params[])
{
    new id, motivo[128], string[128], idname[MAX_PLAYER_NAME]; //Criando variaveis :P
    if(pDados[playerid][Cargo] != 6) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo й lнder."); //Verifica se o player que digitou o comando й lider
    if(sscanf(params, "ds", id, motivo)) return SendClientMessage(playerid, COR_ERRO, "USE: /demitir [ID] [MOTIVO]"); //Aqui estб o triunfo do sscanf! Para saber mais informaзхes leia o Tуpico
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, COR_ERRO, "Este jogador nгo estб online."); //Verifica se quem serб demitido estб online
    if(pDados[id][Organizacao] != pDados[playerid][Organizacao]) return SendClientMessage(playerid, COR_ERRO, "Este jogador nгo й da mesma Organizaзгo que vocк."); //Verifica se o "id" й da mesma organizaзгo do lнder
    if(playerid == id) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo pode demitir a vocк mesmo."); //Verifica se o "id" й ele mesmo (playerid)
    pDados[id][Organizacao] = CIVIL; //Seta a organizaзгo do player a CIVIL
    pDados[id][Cargo] = 0; //Seta o cargo od player a 0
    GetPlayerName(playerid, playername, sizeof(playername)); //Geta o nome de quem demitiu
    GetPlayerName(id, idname, sizeof(idname)); //Geta o nome de quem foi demitido
    format(string, sizeof(string), "%s demitiu o membro %s da Organizaзгo.", playername, idname); //Formata uma mensagem com o nome de quem demitiu e quem foi demitido
    SendFamilyMessage(pDados[playerid][Organizacao], GetPlayerColor(playerid), string); //Envia a mensagem para a organizaзгo
    format(string, sizeof(string), "%s te demitiu da Organizaзгo. Motivo: %s.", playername, motivo); //Formata uma mensagem com o nome de quem demitiu e o motivo
    SendClientMessage(id, GetPlayerColor(playerid), string); //Envia a mensagem para quem foi demitido
    SpawnPlayer(id); //Spawn no nego!
    return 1; //Returnando a 1, nunca se esqueзa!
}

COMMAND:darlider(playerid, params[])
{
    new id, org, string[256], quemdeu[MAX_PLAYER_NAME], quemganhou[MAX_PLAYER_NAME]; //Cria vбriaveis que irб armazenar o id do lнder, a organizaзгo, o nome etc...
    if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, COR_ERRO, "{00E5FF}Vocк nгo estб autorizado a usar este Comando."); //Verifica se o player estб logado na RCON, se nгo, returna a mensagem
    if(sscanf(params, "ii", id, org)) return SendClientMessage(playerid, COR_ERRO, "USE: /darlider [ID] [ORGANIZAЗГO]"); //Aqui estб o triunfo do sscanf! Para saber mais informaзхes leia o Tуpico
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, COR_ERRO, "Este jogador nгo estб online."); //Verifica se o player que iria ser setado lнder estб online
    if(playerid == id) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo pode dar lider a vocк mesmo."); //Verifica se o "id" й igual ao seu (playerid)
    GetPlayerName(id, quemganhou, sizeof(quemganhou)); //Geta o nome de quem ganhou a lideanзa
    GetPlayerName(playerid, quemdeu, sizeof(quemdeu)); //Geta o nome do admin que deu o lнder
    format(string, sizeof(string), "Vocк  deu lнder da Organizaзгo %s para %s(ID: %d)", GetOrgName(org), quemganhou, id); //Formata uma mensagem com o nome de quem ganhou a lideranзa, o nome da orgnizaзгo que foi setada e o "id"
    SendClientMessage(playerid, COR_AZUL_CLARO, string); //Manda a mensgem formatada para quem digitou o comando (quem deu o lнder)
    format(string, sizeof(string), "%s(ID: %d) te deu lнder da Organizaзгo %s.", quemdeu, playerid, GetOrgName(org)); //Formata uma mensgame com quem deu a lideranзa, o "playerid" e o nome organizaзгo setada
    SendClientMessage(id, COR_AZUL_CLARO, string); //Envia a mensgaem formatada para que recebeu a lideranзa
    format(string, sizeof(string), "%s(ID: %d) й o novo lнder da Organizaзгo %s.", quemganhou, id, GetOrgName(org)); //Formata a mensagem...
    SendClientMessageToAll(COR_AZUL_CLARO, string); //Envia a mensagem para todos Online
    pDados[id][Organizacao] = org; //Seta a organizaзгo do "id"
    pDados[id][Cargo] = 6; //Seta o cargo (lideranзa) do "id"
    SpawnPlayer(id); //Spawna o player que rebeu a lideranзa
    return 1; //Returnando a 1, nunca se esqueзa!
}

COMMAND:membros(playerid)
{
    new string[128]; //Criamos variaveis que irгo armazenar o nome e mensganes formatadas
    if(pDados[playerid][Organizacao] >= 1)
    {
        SendClientMessage(playerid, 0xBFC0C2FF, "(=-=-=-=-=-=-=({FFD700}Membros Online{BFC0C2})=-=-=-=-=-=-=)");
        for(new i = 0; i < MAX_PLAYERS; i++) //Criamos um loop de acordo com o MAX_PLAYERS
        {
            if(IsPlayerConnected(i)) //Verifica se o "i" (player) do loop estб online
            {
                if(pDados[i][Organizacao] == pDados[playerid][Organizacao]) //Verifica se a organizaзгo do player (do loop) й igual a do player que digitou o comando
                {
                    GetPlayerName(i, playername, sizeof(playername)); //Geta o nome do player(loop)...
                    if(pDados[i][Cargo] <= 4) //Verifica se o player do loop e cargo 4 ou menos
                    {
                        format(string, sizeof(string), "Membro: %s, Cargo: %d", playername, pDados[i][Cargo]); //Formata uma mensgaem com o nome e cargo do player (loop)
                        SendClientMessage(playerid, GetPlayerColor(playerid), string); //Envia a mensagem do player que digitou o comando
                    }
                    else
                    {
                        if(pDados[i][Cargo] == 6) //Verifica se o player й Lнder e formata/envia uma mensagem diferente/destacada
                        {
                            format(string, sizeof(string), "Membro: %s, Cargo: Lнder", playername);
                            SendClientMessage(playerid, GetPlayerColor(playerid), string);
                        }
                        else if(pDados[i][Cargo] == 5) //Verifica se o player й Lнder e formata/envia uma mensagem diferente/destacada
                        {
                            format(string, sizeof(string), "Membro: %s, Cargo: Sub-Lнder", playername);
                            SendClientMessage(playerid, GetPlayerColor(playerid), string);
                        }
                    }
                }
            }
        }
    }
    else
    {
        SendClientMessage(playerid, COR_ERRO, "Vocк nгo pertence a nenhuma Organizaзгo.");
    }
    return 1; //Returnando a 1, nunca se esqueзa!
}

ai esses ficaram funcionando e os outros nгo. "os outros do GM" que usa OnPlayerCommandText"
Isso acontece pois o ZCMD nгo bate com o STRCMP
Irei te ensinar como converter comandos de STRCMP para ZCMD:
Basta trocar isso:
pawn Код:
if (strcmp("/comando", cmdtext, true, 10) == 0)
Por:
pawn Код:
CMD:comando(playerid)
Se o comando tiver params basta usar:
pawn Код:
CMD:comando(playerid, params)





@EDIT
Ou pode usar isso:
https://sampforum.blast.hk/showthread.php?tid=331410
Reply
#3

oks vlw pelo link й bom pra mim aprender ou CidadeNovaRP tem como tu ajeitar o negocio de salvar pra mim eu uso a incluide <Dini> que quando eu botei a <DOF2> deu erro
Reply
#4

ou como faзo pra converter CMD:demitir(playerid, params[]) para strcmp ?
Reply
#5

alguйm ai ?
Reply
#6

Quote:
Originally Posted by peumenezes
Посмотреть сообщение
ou como faзo pra converter CMD:demitir(playerid, params[]) para strcmp ?
Pra que isso ? '-'
pawn Код:
new cmd[156], idx;
cmd = strtok(cmdtext, idx);
if(strcmp(cmd,"/demitir", true) == 0)
Reply
#7

nгo tendi humildadeforever
Reply
#8

eu fiz assim

pawn Код:
if(strcmp("/demitir", cmdtext, true) == 0)
{
    new id, motivo[128], string[128], idname[MAX_PLAYER_NAME], params[128]; //Criando variaveis :P
    if(pDados[playerid][Cargo] != 6) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo й lнder."); //Verifica se o player que digitou o comando й lider
    if(sscanf(params, "ds", id, motivo)) return SendClientMessage(playerid, COR_ERRO, "USE: /demitir [ID] [MOTIVO]"); //Aqui estб o triunfo do sscanf! Para saber mais informaзхes leia o Tуpico
    if(!IsPlayerConnected(id)) return SendClientMessage(playerid, COR_ERRO, "Este jogador nгo estб online."); //Verifica se quem serб demitido estб online
    if(pDados[id][Organizacao] != pDados[playerid][Organizacao]) return SendClientMessage(playerid, COR_ERRO, "Este jogador nгo й da mesma Organizaзгo que vocк."); //Verifica se o "id" й da mesma organizaзгo do lнder
    if(playerid == id) return SendClientMessage(playerid, COR_ERRO, "Vocк nгo pode demitir a vocк mesmo."); //Verifica se o "id" й ele mesmo (playerid)
    pDados[id][Organizacao] = CIVIL; //Seta a organizaзгo do player a CIVIL
    pDados[id][Cargo] = 0; //Seta o cargo od player a 0
    GetPlayerName(playerid, playername, sizeof(playername)); //Geta o nome de quem demitiu
    GetPlayerName(id, idname, sizeof(idname)); //Geta o nome de quem foi demitido
    format(string, sizeof(string), "%s demitiu o membro %s da Organizaзгo.", playername, idname); //Formata uma mensagem com o nome de quem demitiu e quem foi demitido
    SendFamilyMessage(pDados[playerid][Organizacao], GetPlayerColor(playerid), string); //Envia a mensagem para a organizaзгo
    format(string, sizeof(string), "%s te demitiu da Organizaзгo. Motivo: %s.", playername, motivo); //Formata uma mensagem com o nome de quem demitiu e o motivo
    SendClientMessage(id, GetPlayerColor(playerid), string); //Envia a mensagem para quem foi demitido
    SpawnPlayer(id); //Spawn no nego!
    return 1; //Returnando a 1, nunca se esqueзa!
}

mais agora todo comando que eu uso da SERVER: unknown command
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)