[Ajuda] Desalgemar bugado...
#1

Queria fazer um comando para policial que dк para algemar player prуximo apenas, sу que nгo funciona...
pawn Код:
CMD:desalgemar(playerid, params[])
{
    if(CSMBR[playerid] == ROTA) // VERIFICA SE Й POLICIAL
    {
    new PTiD;
    new Float:x, Float:y, Float:z;
    if(sscanf(params, "u", PTiD)) return SendClientMessage(playerid, -1, "Uso: /desalgemar [ID]");
    if (PlayerToPoint(playerid, 2.0,  x,y,z)) return SendClientMessage(playerid, -1, "O Mesmo nao se encontra perto.");
    RemovePlayerAttachedObject(PTiD, 4);
    SetPlayerSpecialAction(PTiD, SPECIAL_ACTION_NONE);
    PlayerPlaySound(playerid, 5201, x,y,z);
    SendClientMessage(playerid, -1, "Vocк guardou sua algema."); // ( Mensagem ao Digitar )
}
    else
    {
    SendClientMessage(playerid, 0xAA3333AA, "Somente policias podem Desalgemar!");
    }
    return 1;
}
Oque estб errado? Alйm de tudo xO


:P
Reply
#2

Quote:
Originally Posted by davi54723
Посмотреть сообщение
Queria fazer um comando para policial que dк para algemar player prуximo apenas, sу que nгo funciona...
pawn Код:
CMD:desalgemar(playerid, params[])
{
    if(CSMBR[playerid] == ROTA) // VERIFICA SE Й POLICIAL
    {
    new PTiD;
    new Float:x, Float:y, Float:z;
    if(sscanf(params, "u", PTiD)) return SendClientMessage(playerid, -1, "Uso: /desalgemar [ID]");
    if (PlayerToPoint(playerid, 2.0,  x,y,z)) return SendClientMessage(playerid, -1, "O Mesmo nao se encontra perto.");
    RemovePlayerAttachedObject(PTiD, 4);
    SetPlayerSpecialAction(PTiD, SPECIAL_ACTION_NONE);
    PlayerPlaySound(playerid, 5201, x,y,z);
    SendClientMessage(playerid, -1, "Vocк guardou sua algema."); // ( Mensagem ao Digitar )
}
    else
    {
    SendClientMessage(playerid, 0xAA3333AA, "Somente policias podem Desalgemar!");
    }
    return 1;
}
Oque estб errado? Alйm de tudo xO


:P
Vocк Nгo Esta Getando As Float's das Variбveis X, Y e Z '-'...
Reply
#3

Oque eu devo fazer? :S
Reply
#4

Quote:
Originally Posted by davi54723
Посмотреть сообщение
Oque eu devo fazer? :S
Tente.
GetPlayerPos(PTid, x, y, z);
Veja \/
PHP код:
CMD:desalgemar(playeridparams[])
{
    if(
CSMBR[playerid] == ROTA// VERIFICA SE Й POLICIAL
    
{
        new 
PTiD;
        new 
Float:xFloat:yFloat:z;
        if(
sscanf(params"u"PTiD)) return SendClientMessage(playerid, -1"Uso: /desalgemar [ID]");
        
GetPlayerPos(PTiDxyz); // Editei Aqui.
        
if(PlayerToPoint(playerid2.0,  x,y,z)) return SendClientMessage(playerid, -1"O Mesmo nao se encontra perto.");
        
RemovePlayerAttachedObject(PTiD4);
        
SetPlayerSpecialAction(PTiDSPECIAL_ACTION_NONE);
        
PlayerPlaySound(playerid5201x,y,z);
        
SendClientMessage(playerid, -1"Vocк guardou sua algema."); // ( Mensagem ao Digitar )
    
}
    else
    {
        
SendClientMessage(playerid0xAA3333AA"Somente policias podem Desalgemar!");
    }
    return 
1;

Reply
#5

o.0

Agora quando eu to perto aparece : "O Mesmo nao se encontra perto."
E quando eu to longe aparece : "Vocк guardou sua algema."


Invertido...
Reply
#6

pawn Код:
CMD:desalgemar(playerid, params[]) //Comando /desalgemar
{
    if(CSMBR[playerid] == ROTA) // Verifica se ele o player й Policial
    {
        new PlayerB; //Cria a variбvel
        if(sscanf(params, "u", PlayerB)) return SendClientMessage(playerid, -1, "Uso: /desalgemar [ID]"); //Verifica se ele digitou corretamente
        if(GetDistanceBetweenPlayers(playerid, PlayerB) < 10) return SendClientMessage(playerid, -1, "O Mesmo nao se encontra perto."); //Se ele nгo tiver perto
        //Manda a mensagem informando-o que ele nгo estб perto.
        RemovePlayerAttachedObject(PlayerB, 4); //Retira as algemas do Indivнduo
        SetPlayerSpecialAction(PlayerB, SPECIAL_ACTION_NONE); //Retira as animaзхes do Indivнduo
        SendClientMessage(playerid, -1, "Vocк guardou sua algema."); //Manda a mensagem informando-o que a algema foi retirada
    }
    else return SendClientMessage(playerid, 0xAA3333AA, "Somente policiais podem desalgemar!");
    //Se nгo ele retorna uma mensagem informando-o que apenas policiais podem usar este comando.
    return 1;
}
Final do GM:

pawn Код:
stock Float:GetDistanceBetweenPlayers(playerid,playerid2) //By Slick (Edited by Sacky and Gabriel "Larcius" Cordes)
{
    if(IsPlayerConnected(playerid) && IsPlayerConnected(playerid2))
    {
        new Float:x1,Float:y1,Float:z1;
        GetPlayerPos(playerid2,x1,y1,z1);
        return GetDistanceToPoint(playerid,x1,y1,z1);
    }
    return INF_FLOAT;
}
Funзгo criada por Slick, editada por Sacky e Gabriel.
Reply
#7

C:\Users\DaviWindows\Desktop\[CSMBR] - MINEGamer - CSMALUKO!\gamemodes\GM.pwn(1644) : warning 208: function with tag result used before definition, forcing reparse
C:\Users\DaviWindows\Desktop\[CSMBR] - MINEGamer - CSMALUKO!\gamemodes\GM.pwn(1650) : error 017: undefined symbol "GetDistanceToPoint"
C:\Users\DaviWindows\Desktop\[CSMBR] - MINEGamer - CSMALUKO!\gamemodes\GM.pwn(1650) : warning 213: tag mismatch
C:\Users\DaviWindows\Desktop\[CSMBR] - MINEGamer - CSMALUKO!\gamemodes\GM.pwn(1652) : error 017: undefined symbol "INF_FLOAT"
C:\Users\DaviWindows\Desktop\[CSMBR] - MINEGamer - CSMALUKO!\gamemodes\GM.pwn(1652) : warning 213: tag mismatch
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase


2 Errors.
Reply
#8

Tenta isso
pawn Код:
CMD:desalgemar(playerid, params[])
{
    if(CSMBR[playerid] == ROTA) // VERIFICA SE Й POLICIAL
    {
        new PTiD;
        new Float:x, Float:y, Float:z;
        GetPlayerPos(playerid, x, y, z);
        if(sscanf(params, "u", PTiD)) return SendClientMessage(playerid, -1, "Uso: /desalgemar [ID]");
        if (IsPlayerInRangeOfPoint(PTiD, 2.0,  x,y,z)) return SendClientMessage(playerid, -1, "O Mesmo nao se encontra perto.");
        RemovePlayerAttachedObject(PTiD, 4);
        SetPlayerSpecialAction(PTiD, SPECIAL_ACTION_NONE);
        PlayerPlaySound(playerid, 5201, x,y,z);
        SendClientMessage(playerid, -1, "Vocк guardou sua algema."); // ( Mensagem ao Digitar )
    }
    else SendClientMessage(playerid, 0xAA3333AA, "Somente policias podem Desalgemar!");

    return 1;
}
Reply
#9

Codigo do Vini /\ So Adicionei o ! Ali \/
PHP код:
CMD:desalgemar(playeridparams[])
{
    if(
CSMBR[playerid] == ROTA// VERIFICA SE Й POLICIAL
    
{
        new 
PTiD;
        new 
Float:xFloat:yFloat:z;
        
GetPlayerPos(playeridxyz);
        if(
sscanf(params"u"PTiD)) return SendClientMessage(playerid, -1"Uso: /desalgemar [ID]");
        if(!
IsPlayerInRangeOfPoint(PTiD2.0,  x,y,z)) return SendClientMessage(playerid, -1"O Mesmo nao se encontra perto."); // - Adicionei Aqui.
        
RemovePlayerAttachedObject(PTiD4);
        
SetPlayerSpecialAction(PTiDSPECIAL_ACTION_NONE);
        
PlayerPlaySound(playerid5201x,y,z);
        
SendClientMessage(playerid, -1"Vocк guardou sua algema."); // ( Mensagem ao Digitar )
    
}
    else 
SendClientMessage(playerid0xAA3333AA"Somente policias podem Desalgemar!");

    return 
1;

Assim Mostrara a Mensagem Pro Player Quando Ele Tiver Longe do Player e Desalgemaria quando estivesse perto.
Reply
#10

Quote:
Originally Posted by DanDRT
Посмотреть сообщение
Codigo do Vini /\ So Adicionei o ! Ali \/
PHP код:
CMD:desalgemar(playeridparams[])
{
    if(
CSMBR[playerid] == ROTA// VERIFICA SE Й POLICIAL
    
{
        new 
PTiD;
        new 
Float:xFloat:yFloat:z;
        
GetPlayerPos(playeridxyz);
        if(
sscanf(params"u"PTiD)) return SendClientMessage(playerid, -1"Uso: /desalgemar [ID]");
        if(!
IsPlayerInRangeOfPoint(PTiD2.0,  x,y,z)) return SendClientMessage(playerid, -1"O Mesmo nao se encontra perto."); // - Adicionei Aqui.
        
RemovePlayerAttachedObject(PTiD4);
        
SetPlayerSpecialAction(PTiDSPECIAL_ACTION_NONE);
        
PlayerPlaySound(playerid5201x,y,z);
        
SendClientMessage(playerid, -1"Vocк guardou sua algema."); // ( Mensagem ao Digitar )
    
}
    else 
SendClientMessage(playerid0xAA3333AA"Somente policias podem Desalgemar!");
    return 
1;

Assim Mostrara a Mensagem Pro Player Quando Ele Tiver Longe do Player e Desalgemaria quando estivesse perto.
Funcionou
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)