[Ajuda] Criaзгo comando /bloquear e /desbloquear
#1

No GM de Free Roam tem 2 cmds para players /goto e /trazer,queria saber como posso cria um comando para bloquear o /goto e /trazer,exemplo o cara digita /bloquear no momento que ele usa o /bloquear ninguem pode ir onde ele esta nem trazer-lo,e o desbloquear para volta ao normal
PHP код:
CMD:goto(playeridparams[])
{
    if(
PlayerInMiniGame[playerid] != MINIGAME_NONE) return SendClientMessage(playerid0xFF4500FF"Voce esta em um MiniJogo, use /sair");
    if(
IsPlayerInRace) return SendClientMessage(playerid0xFF4500FF"Voce esta em uma corrida,digite /saircorrida");
    if(
PlayerInfo[playerid][pGodMode] == 1) return SendClientMessage(playerid0xFF4500FF"God Mode Ativado,desative digitando /god");
    if(
sscanf(params"i"params[0])) return SendClientMessage(playerid0xFF4500FF"ERROR: /goto [PlayerID]");
    if(!
IsPlayerConnected(params[0])) return SendClientMessage(playerid0xFF4500FF"ERROR: Jogador desconectado");
    if(
params[0] == playerid) return SendClientMessage(playerid0xFF4500FF"ERROR: Esse jogador, й voce!");
    static 
Float:pos[3];
    
GetPlayerPos(params[0], pos[0], pos[1], pos[2]);
    
SetPlayerPosEx(playeridpos[0]+0.5pos[1]-0.5pos[2]);
    
    
SendClientMessageEx(playerid0x00FF00FF"Voce foi teleportado a {CCFF00} %s"getPlayerName(params[0]));
    
SendClientMessageEx(params[0], 0x00FF00FF"{CCFF00}%s  {00FF00}se teleportou a sua posiзгo"getPlayerName(playerid));
    return 
1;

PHP код:
CMD:trazer(playeridparams[])
{
    if(
sscanf(params"i"params[0])) return SendClientMessage(playerid0xFF4500FF"ERROR: /trazer [PlayerID]");
    if(!
IsPlayerConnected(params[0])) return SendClientMessage(playerid0xFF4500FF"ERROR: Jogador desconectado");
    if(
params[0] == playerid) return SendClientMessage(playerid0xFF4500FF"ERROR: Esse jogador,й vocк!");
    static 
Float:pos[3];
    
GetPlayerPos(playeridpos[0], pos[1], pos[2]);
    
SetVehiclePosEx(params[0], pos[0]+0.5pos[1]-0.5pos[2]);
    
SendClientMessageEx(playerid0x00FF00FF"Voce Trouxe{CCFF00} %s"getPlayerName(params[0]));
    
SendClientMessageEx(params[0], 0x00FF00FF"{CCFF00}%s  {00FF00}te trouxe a sua posiзгo"getPlayerName(playerid));
    return 
1;

Reply
#2

PHP код:
// == TOPO === //
new bool:xTravarComando MAX_PLAYERS ] ;

COMMAND:bloquear playerid )
{
    static 
i;
    for(
GetMaxPlayers()-1> -1; --i)
    {
        
xTravarComando ] = true ;
    }
    
SendClientMessage playerid, -1"Comando bloqueado" ) ;
    return 
1;
}
COMMAND:desbloquear playerid )
{
    static 
i;
    for(
GetMaxPlayers()-1> -1; --i)
    {
        
xTravarComando ] = false ;
    }
    
SendClientMessage playerid, -1"Comando desbloqueado" ) ;
    return 
1;
}

// ====== NO SEU COMANDO
    
if ( xTravarComando playerid ] == true )
        return 
SendClientMessage playerid, -1"[ ERRO ]: Comando bloqueado" ) ; 
Reply
#3

iSmirnoff o /bloquear e /desbloquear ta funcionando,mais quando eu uso /bloquear os comandos /goto e /trazer fica bloqueado pra todos,eu queria que fosse assim,um player chato ta usando /goto em mim toda hora ai eu digito /bloquear e ele nгo consegui mais ir onde eu estou
Reply
#4

pawn Код:
//Topo do GM
new Bloqueado[MAX_PLAYERS];

//Na public OnPlayerConnect

Bloqueado[id] = 0;


//Comandos

CMD:bloquear(playerid, params[])
{
    if(/*Variavel Admin*/)
    {
        new id;
        if(sscanf(params,"u",id)) return SendClientMessage(playerid,-1,"{E75E39}[Use]: {D9D9D9} /bloquear [id]");
        Bloqueado[id] = 1;
    }
    else
    {
        SendClientMessage(playerid,-1,"{E75E39}[Servidor] {D9D9D9}Vocк nгo й da administraзгp!");
    }
    return 1;
}

CMD:desbloquear(playerid, params[])
{
    if(/*Variavel Admin*/)
    {
        new id;
        if(sscanf(params,"u",id)) return SendClientMessage(playerid,-1,"{E75E39}[Use]: {D9D9D9} /bloquear [id]");
        Bloqueado[id] = 0;
    }
    else
    {
        SendClientMessage(playerid,-1,"{E75E39}[Servidor] {D9D9D9}Vocк nгo й da administraзгp!");
    }
    return 1;
}

CMD:goto(playerid, params[])
{
    if(Bloqueado[playerid] == 1) return SendClientMessage(playerid,-1,"Vocк esta bloqueado!");
    if(PlayerInMiniGame[playerid] != MINIGAME_NONE) return SendClientMessage(playerid, 0xFF4500FF, "Voce esta em um MiniJogo, use /sair");
    if(IsPlayerInRace) return SendClientMessage(playerid, 0xFF4500FF, "Voce esta em uma corrida,digite /saircorrida");
    if(PlayerInfo[playerid][pGodMode] == 1) return SendClientMessage(playerid, 0xFF4500FF, "God Mode Ativado,desative digitando /god");
    if(sscanf(params, "i", params[0])) return SendClientMessage(playerid, 0xFF4500FF, "ERROR: /goto [PlayerID]");
    if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid, 0xFF4500FF, "ERROR: Jogador desconectado");
    if(params[0] == playerid) return SendClientMessage(playerid, 0xFF4500FF, "ERROR: Esse jogador, й voce!");
    static Float:pos[3];
    GetPlayerPos(params[0], pos[0], pos[1], pos[2]);
    SetPlayerPosEx(playerid, pos[0]+0.5, pos[1]-0.5, pos[2]);

    SendClientMessageEx(playerid, 0x00FF00FF, "Voce foi teleportado a {CCFF00} %s", getPlayerName(params[0]));
    SendClientMessageEx(params[0], 0x00FF00FF, "{CCFF00}%s  {00FF00}se teleportou a sua posiзгo", getPlayerName(playerid));
    return 1;
}

CMD:trazer(playerid, params[])
{
    if(Bloqueado[playerid] == 1) return SendClientMessage(playerid,-1,"Vocк esta bloqueado!");
    if(sscanf(params, "i", params[0])) return SendClientMessage(playerid, 0xFF4500FF, "ERROR: /trazer [PlayerID]");
    if(!IsPlayerConnected(params[0])) return SendClientMessage(playerid, 0xFF4500FF, "ERROR: Jogador desconectado");
    if(params[0] == playerid) return SendClientMessage(playerid, 0xFF4500FF, "ERROR: Esse jogador,й vocк!");
    static Float:pos[3];
    GetPlayerPos(playerid, pos[0], pos[1], pos[2]);
    SetVehiclePosEx(params[0], pos[0]+0.5, pos[1]-0.5, pos[2]);

    SendClientMessageEx(playerid, 0x00FF00FF, "Voce Trouxe{CCFF00} %s", getPlayerName(params[0]));
    SendClientMessageEx(params[0], 0x00FF00FF, "{CCFF00}%s  {00FF00}te trouxe a sua posiзгo", getPlayerName(playerid));
    return 1;
}
Reply
#5

Quote:
Originally Posted by Cleitonboy23
Посмотреть сообщение
iSmirnoff o /bloquear e /desbloquear ta funcionando,mais quando eu uso /bloquear os comandos /goto e /trazer fica bloqueado pra todos,eu queria que fosse assim,um player chato ta usando /goto em mim toda hora ai eu digito /bloquear e ele nгo consegui mais ir onde eu estou
coloca

PHP код:
if ( xTravarComando playerid ] == true )
        return 
SendClientMessage playerid, -1"[ ERRO ]: Comando bloqueado" ) ; 
no seu comando nй
Reply
#6

Cidiei eu queria que o comando fosse usado por players nгo admins.
PHP код:
Fulano digita /bloquear

Cigano digita 
/goto Fulano
SendClientMessage
(..... esse jogador esta bloqueado e vocк nгo podera se teleporta atй ele
PHP код:
Fulano digita /desbloquear

Cigano digita 
/goto Fulano
SendClientMessage
..(.....{CCFF00}%s  {00FF00}se teleportou a sua posiзгo
Reply
#7

Quote:
Originally Posted by iSmirnoff
Посмотреть сообщение
coloca

PHP код:
if ( xTravarComando playerid ] == true )
        return 
SendClientMessage playerid, -1"[ ERRO ]: Comando bloqueado" ) ; 
no seu comando nй
eu ja coloquei,mais o problema й que se 1 unico jogador usa /bloquear, o /goto e o /trazer fica bloqueado pra todo o server
Reply
#8

pronto

PHP код:
// == TOPO === //
new bool:xTravarComando MAX_PLAYERS ] ;
COMMAND:bloquear playeridparams [ ] )
{
    if ( 
isnull params ) )
        return 
SendClientMessage playerid, -1"[ USE ]: /bloquear [ID]" ) ;
    
xTravarComando strval params ) ] = true ;
    
SendClientMessage playerid, -1"Comando bloqueado" ) ;
    return 
1;
}
COMMAND:desbloquear playeridparams [ ] )
{
    if ( 
isnull params ) )
        return 
SendClientMessage playerid, -1"[ USE ]: /desbloquear [ID]" ) ;
        
    
xTravarComando strval params ) ] = false ;
    
SendClientMessage playerid, -1"Comando desbloqueado" ) ;
    return 
1;
}
// ====== NO SEU COMANDO
    
if ( xTravarComando playerid ] == true )
        return 
SendClientMessage playerid, -1"[ ERRO ]: Comando bloqueado" ) ; 
Reply
#9

deu os seguindos erros
PHP код:
C:\Users\Cleiton\Desktop\eXtremeFR 2013x ES\gamemodes\extremefreeroam2013xES.pwn(17667) : error 035argument type mismatch (argument 2)
C:\Users\Cleiton\Desktop\eXtremeFR 2013x ES\gamemodes\extremefreeroam2013xES.pwn(17669) : error 017undefined symbol "params"
C:\Users\Cleiton\Desktop\eXtremeFR 2013x ES\gamemodes\extremefreeroam2013xES.pwn(17669) : error 029invalid expressionassumed zero
C
:\Users\Cleiton\Desktop\eXtremeFR 2013x ES\gamemodes\extremefreeroam2013xES.pwn(17669) : error 017undefined symbol "params"
C:\Users\Cleiton\Desktop\eXtremeFR 2013x ES\gamemodes\extremefreeroam2013xES.pwn(17669) : fatal error 107too many error messages on one line 
Linhas
PHP код:
COMMAND:bloquear playerid )
{
    if ( 
isnull params ) ) 
Reply
#10

Quote:
Originally Posted by Cleitonboy23
Посмотреть сообщение
deu os seguindos erros
PHP код:
C:\Users\Cleiton\Desktop\eXtremeFR 2013x ES\gamemodes\extremefreeroam2013xES.pwn(17667) : error 035argument type mismatch (argument 2)
C:\Users\Cleiton\Desktop\eXtremeFR 2013x ES\gamemodes\extremefreeroam2013xES.pwn(17669) : error 017undefined symbol "params"
C:\Users\Cleiton\Desktop\eXtremeFR 2013x ES\gamemodes\extremefreeroam2013xES.pwn(17669) : error 029invalid expressionassumed zero
C
:\Users\Cleiton\Desktop\eXtremeFR 2013x ES\gamemodes\extremefreeroam2013xES.pwn(17669) : error 017undefined symbol "params"
C:\Users\Cleiton\Desktop\eXtremeFR 2013x ES\gamemodes\extremefreeroam2013xES.pwn(17669) : fatal error 107too many error messages on one line 
Linhas
PHP код:
COMMAND:bloquear playerid )
{
    if ( 
isnull params ) ) 
Tenta de novo editei lб em cima, erro meu :/ esqueci do params
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)