[Pedido] Comando /bloqueararmas
#1

Preciso de um comando que bloqueia um player de pegar qualquer armas

Ex:

/bloqueararmas ID TEMPO

''Vocк foi bloqueado de usar armas pelo admin FULANO por 1 hora"

Global

"Siclano foi bloqueado de usar armas pelo admin FULANO por 1 hora"

OBS: TODAS AS ARMAS!!!
Reply
#2

PHP код:
new bool:BloqueadoArmas[MAX_PLAYERS], TimerBloqueado[MAX_PLAYERS];
CMD:bloqueararmas(playeridparams[]) {
    new 
idminutos;
    if(!
IsPlayerAdmin(playerid)) 
        return 
SendClientMessage(playerid, -1"Vocк nгo tem permissгo.");
    if(
sscanf(params"ud"idminutos))
        return 
SendClientMessage(playerid, -1"Use: /BloquearArmas (id / nome) (minutos)");
    if(!
IsPlayerConnected(id))
        return 
SendClientMessage(playerid, -1"Jogador(a) nгo conectado(a).");
    if(
minutos 120 || minutos 0)
        return 
SendClientMessage(playerid, -1"Vocк pode apenas bloquear por 120 e 1 minuto(s).");
    if(
BloqueadoArmas[id] == true) {
    
        
BloqueadoArmas[id] = falseSendClientMessage(id, -1"Vocк foi desbloqueado de usar armas."), SendClientMessage(playerid, -1"Vocк desbloqueou o FULANO de usar armas."), ResetPlayerWeapons(id);
    }
    else  if(
BloqueadoArmas[id] == false) {
        
BloqueadoArmas[id] = trueSendClientMessage(id, -1"Vocк foi bloqueou de usar armas."), SendClientMessage(playerid, -1"Vocк bloqueou o FULANO de usar armas.");
        
TimerBloqueado[id] = SetTimerEx("RemoverBloqueado"60000*minutos0"i"id);
    }
    return 
true;
}
CMD:dararma(playeridparams[])
{
    new 
idarmaammo;
    if(!
IsPlayerAdmin(playerid)) 
        return 
SendClientMessage(playerid, -1"Vocк nгo tem permissгo.");
    if(
sscanf(params"udd"idarmaammo))
        return 
SendClientMessage(playerid, -1"Use: /DarArma (id / nome) (arma id) (muniзгo)");
    if(!
IsPlayerConnected(id))
        return 
SendClientMessage(playerid, -1"Jogador(a) nгo conectado(a).");
    if(
BloqueadoArmas[id] == true) {
        
ResetPlayerWeapons(id);
    }
    else if(
BloqueadoArmas[id] == false) {
        
GivePlayerWeapon(idarmaammo);
    }
    return 
true;
}
forward RemoverBloqueado(id);
public 
RemoverBloqueado(id)
{
    
SendClientMessage(id, -1"Vocк foi desbloqueado de usar armas");
    
BloqueadoArmas[id] = false;
    return 
true;

Nгo testei.
Reply
#3

Quote:
Originally Posted by NelsonC
Посмотреть сообщение
PHP код:
new bool:BloqueadoArmas[MAX_PLAYERS], TimerBloqueado[MAX_PLAYERS];
CMD:bloqueararmas(playeridparams[]) {
    new 
idminutos;
    if(!
IsPlayerAdmin(playerid)) 
        return 
SendClientMessage(playerid, -1"Vocк nгo tem permissгo.");
    if(
sscanf(params"ud"idminutos))
        return 
SendClientMessage(playerid, -1"Use: /BloquearArmas (id / nome) (minutos)");
    if(!
IsPlayerConnected(id))
        return 
SendClientMessage(playerid, -1"Jogador(a) nгo conectado(a).");
    if(
minutos 120 || minutos 0)
        return 
SendClientMessage(playerid, -1"Vocк pode apenas bloquear por 120 e 1 minuto(s).");
    if(
BloqueadoArmas[id] == true) {
    
        
BloqueadoArmas[id] = falseSendClientMessage(id, -1"Vocк foi desbloqueado de usar armas."), SendClientMessage(playerid, -1"Vocк desbloqueou o FULANO de usar armas."), ResetPlayerWeapons(id);
    }
    else  if(
BloqueadoArmas[id] == false) {
        
BloqueadoArmas[id] = trueSendClientMessage(id, -1"Vocк foi bloqueou de usar armas."), SendClientMessage(playerid, -1"Vocк bloqueou o FULANO de usar armas.");
        
TimerBloqueado[id] = SetTimerEx("RemoverBloqueado"60000*minutos0"i"id);
    }
    return 
true;
}
CMD:dararma(playeridparams[])
{
    new 
idarmaammo;
    if(!
IsPlayerAdmin(playerid)) 
        return 
SendClientMessage(playerid, -1"Vocк nгo tem permissгo.");
    if(
sscanf(params"udd"idarmaammo))
        return 
SendClientMessage(playerid, -1"Use: /DarArma (id / nome) (arma id) (muniзгo)");
    if(!
IsPlayerConnected(id))
        return 
SendClientMessage(playerid, -1"Jogador(a) nгo conectado(a).");
    if(
BloqueadoArmas[id] == true) {
        
ResetPlayerWeapons(id);
    }
    else if(
BloqueadoArmas[id] == false) {
        
GivePlayerWeapon(idarmaammo);
    }
    return 
true;
}
forward RemoverBloqueado(id);
public 
RemoverBloqueado(id)
{
    
SendClientMessage(id, -1"Vocк foi desbloqueado de usar armas");
    
BloqueadoArmas[id] = false;
    return 
true;

Nгo testei.
tem que botar alguma coisa na OnPlayerUpdate pra retirar a arma caso ele esteja com uma
Reply
#4

Quote:
Originally Posted by dimy
Посмотреть сообщение
tem que botar alguma coisa na OnPlayerUpdate pra retirar a arma caso ele esteja com uma
Nгo recomendo usar OnPlayerUpdate o mais aconselhбvel й criar um Timer no OnGameModeInit para verificar a cada 1 segundo exemplo:

PHP код:

//OnGameModeInit
SetTimer("Verificar"1000true); //1000ms=1 segundo e o "true" para ele repetir.
forward Verificar(playerid);
public 
Verificar(playerid){
    if(
ArmasBloqueadas[playerid] == true){
         
ResetPlayerWeapons(playerid);
    }
    return 
1;

Claro isso й apenas um exemplo, vocк deve adaptar.
Reply
#5

Quote:
Originally Posted by Malandrin
Посмотреть сообщение
Nгo recomendo usar OnPlayerUpdate o mais aconselhбvel й criar um Timer no OnGameModeInit para verificar a cada 1 segundo exemplo:

PHP код:

//OnGameModeInit
SetTimer("Verificar"1000true); //1000ms=1 segundo e o "true" para ele repetir.
forward Verificar(playerid);
public 
Verificar(playerid){
    if(
ArmasBloqueadas[playerid] == true){
         
ResetPlayerWeapons(playerid);
    }
    return 
1;

Claro isso й apenas um exemplo, vocк deve adaptar.
Й sйrio que vocк fez um Timer sem jogador pra depois na public colocar playerid? KKKKKKKKKKK que viagem й essa vйi
Reply
#6

Quote:
Originally Posted by Luiiiz
Посмотреть сообщение
Й sйrio que vocк fez um Timer sem jogador pra depois na public colocar playerid? KKKKKKKKKKK que viagem й essa vйi
Perdгo kkkk as vezes me confundo mas enfim, era apenas um exemplo.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)