SA-MP Forums Archive
[Ajuda] Nao mandar menssagem - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Nao mandar menssagem (/showthread.php?tid=341158)



[Ajuda] Nao mandar menssagem - Senhor_Azul - 09.05.2012

Falae galera,eu quero fazer o seguinte:quando um admin que й level maior que 1340,quando ele digitar /trabalhar nao aparecer a menssagem que ele esta trabalhando/jogando pro servidor inteiro.Como que eu faзo isso ?
pawn Код:
if(strcmp(cmd, "/trabalhar", true) == 0)
    {
        if(PlayerInfo[playerid][pJailed] != 0)
        {
            SendClientMessage(playerid,COLOR_YELLOW," Vocк nгo pode trabalhar na cadeia!");
            return true;
        }
        if(PlayerInfo[playerid][pAdmin] >= 1)
        {
            if(admtrampando[playerid] > 0)
            {
                admtrampando[playerid] = 0;
                GetPlayerName(playerid,sendername,sizeof(sendername));
                SendClientMessageToAll(COLOR_AZULBB, "|_______________ Administraзгo _______________|");
                format(string, 128, "{00BFFF}Admin: %s estб Jogando, Veja mais  em {E0EEE0}/admins",sendername, playerid);
                SendClientMessageToAll(0xFFFBF8AA, string);
                KillTimer(TempoAdministrador);
                SetPlayerToTeamColor(playerid);
                ResetPlayerWeaponsEx(playerid);
                SetPlayerHealth(playerid,100);
                getdate(year, month, day);
                gettime(hour,minute,second);
                format(gstring, sizeof(gstring), "%s esta jogando [%d/%d/%d - %d:%d:%d]\n", PlayerName(playerid), day, month, year, hour, minute, second);
                AdminLog(gstring);
            }
            else
            {
                admtrampando[playerid] = 1;
                GetPlayerName(playerid,sendername,sizeof(sendername));
                SendClientMessageToAll(COLOR_AZULBB, "|_______________ Administraзгo _______________|");
                format(string, 128, "{00BFFF}Admin: %s estб Trabalhando, veja mais em {E0EEE0}/admins",sendername, playerid);
                SendClientMessageToAll(0xFFFBF8AA, string);
                SetPlayerToTeamColor(playerid);
                TempoAdministrador = SetTimerEx("Administrador", 100, true, "i", playerid);
                getdate(year, month, day);
                gettime(hour,minute,second);
                format(gstring, sizeof(gstring), "%s esta trabalhando [%d/%d/%d - %d:%d:%d]\n", PlayerName(playerid), day, month, year, hour, minute, second);
                AdminLog(gstring);
           }
        }
        return true;
    }
Valeu ae a todos.


Re: [Ajuda] Nao mandar menssagem - Linow - 09.05.2012

Код:
if(strcmp(cmd, "/trabalhar", true) == 0)
    {
        if(PlayerInfo[playerid][pJailed] != 0)
        {
            SendClientMessage(playerid,COLOR_YELLOW," Vocк nгo pode trabalhar na cadeia!");
            return true;
        }
        if(PlayerInfo[playerid][pAdmin] >= 1)
        {
            if(admtrampando[playerid] > 0)
            {
                admtrampando[playerid] = 0;
                if(PlayerInfo[playerid][pAdmin] >= 1340)
                { 
                        SetTimerEx("Administrador", 100, true, "i", playerid);
                        return false;
                }
                GetPlayerName(playerid,sendername,sizeof(sendername));
                SendClientMessageToAll(COLOR_AZULBB, "|_______________ Administraзгo _______________|");
                format(string, 128, "{00BFFF}Admin: %s estб Jogando, Veja mais  em {E0EEE0}/admins",sendername, playerid);
                SendClientMessageToAll(0xFFFBF8AA, string);
                KillTimer(TempoAdministrador);
                SetPlayerToTeamColor(playerid);
                ResetPlayerWeaponsEx(playerid);
                SetPlayerHealth(playerid,100);
                getdate(year, month, day);
                gettime(hour,minute,second);
                format(gstring, sizeof(gstring), "%s esta jogando [%d/%d/%d - %d:%d:%d]\n", PlayerName(playerid), day, month, year, hour, minute, second);
                AdminLog(gstring);
            }
            else
            {
                admtrampando[playerid] = 1;
                if(PlayerInfo[playerid][pAdmin] >= 1340)
                { 
                        SetTimerEx("Administrador", 100, true, "i", playerid);
                        return false;
                }
                GetPlayerName(playerid,sendername,sizeof(sendername));
                SendClientMessageToAll(COLOR_AZULBB, "|_______________ Administraзгo _______________|");
                format(string, 128, "{00BFFF}Admin: %s estб Trabalhando, veja mais em {E0EEE0}/admins",sendername, playerid);
                SendClientMessageToAll(0xFFFBF8AA, string);
                SetPlayerToTeamColor(playerid);
                TempoAdministrador = SetTimerEx("Administrador", 100, true, "i", playerid);
                getdate(year, month, day);
                gettime(hour,minute,second);
                format(gstring, sizeof(gstring), "%s esta trabalhando [%d/%d/%d - %d:%d:%d]\n", PlayerName(playerid), day, month, year, hour, minute, second);
                AdminLog(gstring);
           }
        }
        return true;
    }
Sу isso basta.

#EDIT:
Faltou colocar uma if quando ele nгo estб trabalhando.


Re: [Ajuda] Nao mandar menssagem - Senhor_Azul - 09.05.2012

Beleza,funciono,mas ele da server unknow commando.


Re: [Ajuda] Nao mandar menssagem - Linow - 09.05.2012

pawn Код:
if(strcmp(cmd, "/trabalhar", true) == 0)
    {
        if(PlayerInfo[playerid][pJailed] != 0)
        {
            SendClientMessage(playerid,COLOR_YELLOW," Vocк nгo pode trabalhar na cadeia!");
            return true;
        }
        if(PlayerInfo[playerid][pAdmin] >= 1)
        {
            if(admtrampando[playerid] > 0)
            {
                admtrampando[playerid] = 0;
                if(PlayerInfo[playerid][pAdmin] >= 1340)
                {
                        SetTimerEx("Administrador", 100, true, "i", playerid);
                }
                else
                {
                        GetPlayerName(playerid,sendername,sizeof(sendername));
                        SendClientMessageToAll(COLOR_AZULBB, "|_______________ Administraзгo _______________|");
                        format(string, 128, "{00BFFF}Admin: %s estб Jogando, Veja mais  em {E0EEE0}/admins",sendername, playerid);
                        SendClientMessageToAll(0xFFFBF8AA, string);
                        KillTimer(TempoAdministrador);
                        SetPlayerToTeamColor(playerid);
                        ResetPlayerWeaponsEx(playerid);
                        SetPlayerHealth(playerid,100);
                        getdate(year, month, day);
                        gettime(hour,minute,second);
                        format(gstring, sizeof(gstring), "%s esta jogando [%d/%d/%d - %d:%d:%d]\n", PlayerName(playerid), day, month, year, hour, minute, second);
                        AdminLog(gstring);
                }
            }
            else
            {
                admtrampando[playerid] = 1;
                if(PlayerInfo[playerid][pAdmin] >= 1340)
                {
                        SetTimerEx("Administrador", 100, true, "i", playerid);
                        return false;
                }
                else
                {
                        GetPlayerName(playerid,sendername,sizeof(sendername));
                        SendClientMessageToAll(COLOR_AZULBB, "|_______________ Administraзгo _______________|");
                        format(string, 128, "{00BFFF}Admin: %s estб Trabalhando, veja mais em {E0EEE0}/admins",sendername, playerid);
                        SendClientMessageToAll(0xFFFBF8AA, string);
                        SetPlayerToTeamColor(playerid);
                        TempoAdministrador = SetTimerEx("Administrador", 100, true, "i", playerid);
                        getdate(year, month, day);
                        gettime(hour,minute,second);
                        format(gstring, sizeof(gstring), "%s esta trabalhando [%d/%d/%d - %d:%d:%d]\n", PlayerName(playerid), day, month, year, hour, minute, second);
                        AdminLog(gstring);
                }
           }
        }
        return true;
    }
Tenta assim entгo...


Re: [Ajuda] Nao mandar menssagem - Senhor_Azul - 09.05.2012

Valeu ae,mas pra entrar em modo jogo vai normal,e pra sair ainda esta dando server unknow command.


Re: [Ajuda] Nao mandar menssagem - Linow - 09.05.2012

pawn Код:
if(strcmp(cmd, "/trabalhar", true) == 0)
    {
        if(PlayerInfo[playerid][pJailed] != 0)
        {
            SendClientMessage(playerid,COLOR_YELLOW," Vocк nгo pode trabalhar na cadeia!");
            return true;
        }
        if(PlayerInfo[playerid][pAdmin] >= 1)
        {
            if(admtrampando[playerid] > 0)
            {
                admtrampando[playerid] = 0;
                if(PlayerInfo[playerid][pAdmin] >= 1340)
                {
                        SetTimerEx("Administrador", 100, true, "i", playerid);
                }
                else
                {
                        GetPlayerName(playerid,sendername,sizeof(sendername));
                        SendClientMessageToAll(COLOR_AZULBB, "|_______________ Administraзгo _______________|");
                        format(string, 128, "{00BFFF}Admin: %s estб Jogando, Veja mais  em {E0EEE0}/admins",sendername, playerid);
                        SendClientMessageToAll(0xFFFBF8AA, string);
                        KillTimer(TempoAdministrador);
                        SetPlayerToTeamColor(playerid);
                        ResetPlayerWeaponsEx(playerid);
                        SetPlayerHealth(playerid,100);
                        getdate(year, month, day);
                        gettime(hour,minute,second);
                        format(gstring, sizeof(gstring), "%s esta jogando [%d/%d/%d - %d:%d:%d]\n", PlayerName(playerid), day, month, year, hour, minute, second);
                        AdminLog(gstring);
                }
            }
            else
            {
                admtrampando[playerid] = 1;
                if(PlayerInfo[playerid][pAdmin] >= 1340)
                {
                        SetTimerEx("Administrador", 100, true, "i", playerid);
                }
                else
                {
                        GetPlayerName(playerid,sendername,sizeof(sendername));
                        SendClientMessageToAll(COLOR_AZULBB, "|_______________ Administraзгo _______________|");
                        format(string, 128, "{00BFFF}Admin: %s estб Trabalhando, veja mais em {E0EEE0}/admins",sendername, playerid);
                        SendClientMessageToAll(0xFFFBF8AA, string);
                        SetPlayerToTeamColor(playerid);
                        TempoAdministrador = SetTimerEx("Administrador", 100, true, "i", playerid);
                        getdate(year, month, day);
                        gettime(hour,minute,second);
                        format(gstring, sizeof(gstring), "%s esta trabalhando [%d/%d/%d - %d:%d:%d]\n", PlayerName(playerid), day, month, year, hour, minute, second);
                        AdminLog(gstring);
                }
           }
        }
        return true;
    }
Foi um errinho bobo meu, agora estб funcionando.


Re: [Ajuda] Nao mandar menssagem - Senhor_Azul - 09.05.2012

Funciono perfeito,+rep pra vc.Agora apareceu outra duvida,creio que nao seja muito diferente disso.Eu quero uma fazer uma excessгo tambem,mas pro anti cheat,pra quando alguma arma for dada pelo /dararma,ele nao acusar de hack,como que faz isso ?
A public do anti cheat
pawn Код:
public CheckHack()
{
    new string[128];
    new giveplayer[MAX_PLAYER_NAME];
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
        if(IsPlayerConnected(i) && gPlayerLogged[i] == 1 && !IsPlayerNPC(i) && spawnado[i] > 0)
        {
                 //Minigun
                if(GetPlayerWeapon(i) == 38)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando uma Minigun /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                //Rocket Launcher
                else if(GetPlayerWeapon(i) == 35)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando um Rocket Launcher /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }

                // Lanзa chamas
                if(GetPlayerWeapon(i) == 37)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando um Lanзa Chamas /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                // Visгo Noturna
                else if(GetPlayerWeapon(i) == 44)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "%s ANTICHEAT: %s[ID %d] estб usando uma Visгo Noturna /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                // Visгo de Calor
                else if(GetPlayerWeapon(i) == 45)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando uma Visгo de Calor /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                //Serra Eletrica
                else if(GetPlayerWeapon(i) == 9)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando uma Serra Eletrica /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                //Sawn-off
                else if(GetPlayerWeapon(i) == 26)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando uma Sawn-off /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                //Molotov
                else if(GetPlayerWeapon(i) == 18)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando um Molotov /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                //Micro Uzi
                else if(GetPlayerWeapon(i) == 28)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando uma Micro Uzi /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                //Tec 9
                else if(GetPlayerWeapon(i) == 32)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando uma TEC-9 /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                //Bazooca
                else if(GetPlayerWeapon(i) == 36)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando uma Bazooca  /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
            }
    }
    return true;
}



Re: [Ajuda] Nao mandar menssagem - Linow - 09.05.2012

pawn Код:
public CheckHack()
{
    new string[128];
    new giveplayer[MAX_PLAYER_NAME];
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
        if(IsPlayerConnected(i) && gPlayerLogged[i] == 1 && !IsPlayerNPC(i) && spawnado[i] > 0)
        {
                 //Minigun
                if(GetPlayerWeapon(i) == 38)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando uma Minigun /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                //Rocket Launcher
                else if(GetPlayerWeapon(i) == 35)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando um Rocket Launcher /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }

                // Lanзa chamas
                if(GetPlayerWeapon(i) == 37)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando um Lanзa Chamas /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                // Visгo Noturna
                else if(GetPlayerWeapon(i) == 44)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "%s ANTICHEAT: %s[ID %d] estб usando uma Visгo Noturna /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                // Visгo de Calor
                else if(GetPlayerWeapon(i) == 45)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando uma Visгo de Calor /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                //Serra Eletrica
                else if(GetPlayerWeapon(i) == 9)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando uma Serra Eletrica /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                //Sawn-off
                else if(GetPlayerWeapon(i) == 26)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando uma Sawn-off /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                //Molotov
                else if(GetPlayerWeapon(i) == 18)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando um Molotov /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                //Micro Uzi
                else if(GetPlayerWeapon(i) == 28)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando uma Micro Uzi /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                //Tec 9
                else if(GetPlayerWeapon(i) == 32)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando uma TEC-9 /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
                //Bazooca
                else if(GetPlayerWeapon(i) == 36)
                {
                GetPlayerName(i, giveplayer, sizeof(giveplayer));
                format(string, sizeof(string), "ANTICHEAT: %s[ID %d] estб usando uma Bazooca  /tv nele rapido", giveplayer,i);
                ABroadCast(COLOR_LIGHTRED,string,1);
                //ResetPlayerWeaponsEx(i);
                SetPlayerArmedWeapon(i, 0);
                }
          }
          else if(PlayerInfo[playerid][pAdmin] >= 1340)
          {
                    return true;
          }
    }
    return true;
}
Todo administrador com nivel maior de 1340, ao criar arma, ela nгo sumirб, nem mostrarб a mensagem, se quiser para todos os administradores troque:
else if(PlayerInfo[playerid][pAdmin] >= 1340)
POR
else if(PlayerInfo[playerid][pAdmin] > 0)


Re: [Ajuda] Nao mandar menssagem - Senhor_Azul - 09.05.2012

pawn Код:
C:\Users\Markos\Documents\SAMP\Rpg\gamemodes\PlayLag.pwn(44277) : error 017: undefined symbol "playerid"
Deu unefined symbol playerid


Re: [Ajuda] Nao mandar menssagem - Senhor_Azul - 09.05.2012

@Edit: a menssagem apareceu 2x,desculpa o double.