[Ajuda] /Supertapa
#1

Vejam, nao tem nada de errado com o comando, apenas quero saber como coloco o comando para a mensagem aparecer apenas por perto. tipo!

pawn Код:
CMD:supertapa(playerid, params[])
{
    new name[MAX_PLAYER_NAME], ID, string[120];
    if(!IsPlayerAdmin(playerid))
    if(PlayerInfo[playerid][pAdmin] < 1) return SendClientMessage(playerid, Cor_Erro, "[ERRO]: Vocк nгo й um adiministrador ou nгo tem level.");
    if(sscanf(params, "u", ID)) return SendClientMessage(playerid, Cor_Amarelo, "[AG]: Comando Correto: /SuperTapa [ID]");
    if(!IsPlayerConnected(ID)) return 1;
    new Float:c[3];
    GetPlayerPos(ID,c[0],c[1],c[2]);
    SetPlayerPos(ID,c[0],c[1],c[2]+35);
    GetPlayerName(ID, name, sizeof(name));
    format(string, sizeof(string), "[AG]: O Adiministrador %s deu uma supertapa em %s.", pegarnome(playerid), pegarnome(ID));
    SendClientMessageToAll(Cor_Roxo, string);
    return 1;
}
Quero apenas que vejam essa mensagem pra quem esta perto de mim ou dele, e ai tб pra todos do servidor.
pawn Код:
[AG]: O Adiministrador %s deu uma supertapa em %s."
Reply
#2

pawn Код:
new Float:AdminPos[3];
GetPlayerPos(playerid, AdminPos[0], AdminPos[1], AdminPos[2]);
for(new i = 0; i < MAX_PLAYERS; i++)
{
     if(IsPlayerInRangeOfPoint(i, 50.0, AdminPos[0], AdminPos[1], AdminPos[2]))
     {
           SendClientMessage(i, string);
     }
}
Espero ter ajudado
Reply
#3

Funeral, onde coloco? Em baixo ou emcima?

Porque emcima ta o comando de /tapa e embaixo /supertapa.
Reply
#4

Em cima , topo , pois й um loop, e deve ser lido primeiramente, para depois ler o comando nй '-', ou se nгo coloque dentro do comando, tanto faz
Reply
#5

Quote:
Originally Posted by Gabriel Santana
Посмотреть сообщение
Funeral, onde coloco? Em baixo ou emcima?

Porque emcima ta o comando de /tapa e embaixo /supertapa.

As news em cima, o GetPlayerPos em baixo dos if's e o loop depois do format
Reply
#6

Formata o comando ae pra eu ver?
Porque nao posso tirar o
pawn Код:
GetPlayerPos(ID,c[0],c[1],c[2]);
e colocar isso
pawn Код:
GetPlayerPos(playerid, AdminPos[0], AdminPos[1], AdminPos[2]);
Reply
#7

Em ?
Reply
#8

Quote:
Originally Posted by Gabriel Santana
Посмотреть сообщение
Formata o comando ae pra eu ver?
Porque nao posso tirar o
pawn Код:
GetPlayerPos(ID,c[0],c[1],c[2]);
e colocar isso
pawn Код:
GetPlayerPos(playerid, AdminPos[0], AdminPos[1], AdminPos[2]);

Eu sei, coloca esse GetPlayerPos tambйm , ele vai setar a posiзгo do Admin, pra enviar a mensagem a todos Perto dele.
Reply
#9

Use esta funзгo caso precise disso mais vezes.

pawn Код:
nearMessage(playerid, color, message[], Float:distance) {
    static
        Float:x,
        Float:y,
        Float:z,
        i;
       
    GetPlayerPos(playerid, x, y, z);
    for(i = 0; i < MAX_PLAYERS; ++i) {
        if(GetPlayerVirtualWorld(i) == GetPlayerVirtualWorld(playerid)) {
            if(GetPlayerInterior(i) == GetPlayerInterior(playerid)) {
                if(IsPlayerInRangeOfPoint(i, distance, x, y, z)) {
                    SendClientMessage(i, color, message);
                }
            }
        }
    }
    return 1;
}
Exemplo de uso:

pawn Код:
CMD:supertapa(playerid, params[])
{
    new name[MAX_PLAYER_NAME], ID, string[120];
    if(!IsPlayerAdmin(playerid))
    if(PlayerInfo[playerid][pAdmin] < 1) return SendClientMessage(playerid, Cor_Erro, "[ERRO]: Vocк nгo й um adiministrador ou nгo tem level.");
    if(sscanf(params, "u", ID)) return SendClientMessage(playerid, Cor_Amarelo, "[AG]: Comando Correto: /SuperTapa [ID]");
    if(!IsPlayerConnected(ID)) return 1;
    new Float:c[3];
    GetPlayerPos(ID,c[0],c[1],c[2]);
    SetPlayerPos(ID,c[0],c[1],c[2]+35);
    GetPlayerName(ID, name, sizeof(name));
    format(string, sizeof(string), "[AG]: O Adiministrador %s deu uma supertapa em %s.", pegarnome(playerid), pegarnome(ID));
    nearMessage(ID, -1, string, 20);
    return 1;
}

Uma observaзгo: O correto й administrador e nгo adiministrador.
Reply
#10

Deu um erro:

Erro:
pawn Код:
C:\Users\Gabriel\Desktop\samp03esvr_win32\gamemodes\RPG Always Good.pwn(321) : error 035: argument type mismatch (argument 2)
Linha[321]:
pawn Код:
SendClientMessage(i, string);
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)