Comando /admmultar -
FPB_Lipos - 03.01.2013
Ae galera alguem ajuda ae, tipo queria um comando (/admmultar) que sу admins acima do level 1337 possam usar, que seja +- assim:
AdmCmd: Admins X multou o player X em R$(QUANTIA) Motivo: X
e o player multado nгo presisa usar o /aceitar multa
a multa ser cobrada altomaticamente, se ele nгo tiver a grana cobrada na multa, ele que fique sem, Alguem pode ajudar ?
Re: Comando /admmultar -
HeyHoLetsGo - 03.01.2013
pawn Код:
//TOPO:
new IdMulta[MAX_PLAYERS];
new ValorMulta[MAX_PLAYERS];
// Na callback OnPlayerCommandText
if(strcmp(cmdtext,"/admmultar",true) == 0)
{
if(NivelAdm[playerid] >= 1337) //Configura aqui com a Variavel do nivel de ADM!!!!!
{
ShowPlayerDialog(playerid,DIALOG_MULTA_ID,DIALOG_STYLE_INPUT,"Multar Player","Digite o ID do player a ser multado","CONFIRMA","Sair");
}
else
{
SendClientMessage(playerid,-1,"[ ! ] Vocк nгo й um Admin ou nгo й um Admin nivel 1337 para multar um player!");
}
}
//Na callback OnDialogResponse
if(dialogid == DIALOG_MULTA_ID)
{
if(response)
{
IdMulta[playerid] = strval(inputtext);
ShowPlayerDialog(playerid,DIALOG_MULTA_VALOR,DIALOG_STYLE_INPUT,"Multar Player","Digite o valor da multa","MULTAR","Sair");
}
}
if(dialogid == DIALOG_MULTA_VALOR)
{
if(response)
{
new NomeMultador[MAX_PLAYER_NAME],NomeMultado[MAX_PLAYER_NAME];
GetPlayerName(playerid,NomeMultador,MAX_PLAYER_NAME);
GetPlayerName(IdMulta[playerid],NomeMultado,MAX_PLAYER_NAME);
GivePlayerMoney(IdMulta[playerid],strval(inputtext));
ValorMulta[playerid] = strval(inputtext);
SendClientMessageToAll(-1,"AdmCmd: O Admin %s multou o player %s no valor de %d",NomeMultador,NomeMultado,ValorMulta[playerid]);
}
}
Taк, mas assim cara, o pessoal aqui nгo costuma dar na mгo assim oque os visitantes pedem, eu sу fiz um pra vocк aqui porque eu realmente nгo tinha nada importante a fazer. Mas mesmo assim, eu recomendo vocк comeзar a dar uma estudada em Pawn e aprender pra criar seus proprios sistemas blza manolo? (:
Aew manolo, espero ter ajudado!
Re: Comando /admmultar -
HeyHoLetsGo - 03.01.2013
@EDIT
Malz Double Post Aqui!!!
Re: Comando /admmultar -
FPB_Lipos - 03.01.2013
Код:
C:\Users\Felipe\Desktop\GTA SERVER\gamemodes\BML.pwn(1903) : error 017: undefined symbol "DIALOG_MULTA_ID"
C:\Users\Felipe\Desktop\GTA SERVER\gamemodes\BML.pwn(1908) : error 017: undefined symbol "DIALOG_MULTA_VALOR"
C:\Users\Felipe\Desktop\GTA SERVER\gamemodes\BML.pwn(1908) : error 017: undefined symbol "G_STYLE_INPUT"
C:\Users\Felipe\Desktop\GTA SERVER\gamemodes\BML.pwn(1908) : error 029: invalid expression, assumed zero
C:\Users\Felipe\Desktop\GTA SERVER\gamemodes\BML.pwn(1908) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
5 Errors.
Re: Comando /admmultar -
HeyHoLetsGo - 03.01.2013
pawn Код:
//TOPO:
#define DIALOG_MULTA_VALOR 9898
#define DIALOG_MULTA_ID 9797
new IdMulta[MAX_PLAYERS];
new ValorMulta[MAX_PLAYERS];
// Na callback OnPlayerCommandText
if(strcmp(cmdtext,"/admmultar",true) == 0)
{
if(NivelAdm[playerid] >= 1337) //Configura aqui com a Variavel do nivel de ADM!!!!!
{
ShowPlayerDialog(playerid,DIALOG_MULTA_ID,DIALOG_STYLE_INPUT,"Multar Player","Digite o ID do player a ser multado","CONFIRMA","Sair");
}
else
{
SendClientMessage(playerid,-1,"[ ! ] Vocк nгo й um Admin ou nгo й um Admin nivel 1337 para multar um player!");
}
}
//Na callback OnDialogResponse
if(dialogid == DIALOG_MULTA_ID)
{
if(response)
{
if(IsPlayerConnected(strval(inputtext)))
{
IdMulta[playerid] = strval(inputtext);
ShowPlayerDialog(playerid,DIALOG_MULTA_VALOR,DIALOG_STYLE_INPUT,"Multar Player","Digite o valor da multa","MULTAR","Sair");
}
else
{
SendClientMessage(playerid,-1,"[ ! ] Este player nгo estб connectado!");
}
}
}
if(dialogid == DIALOG_MULTA_VALOR)
{
if(response)
{
if(IsPlayerConnected(IdMulta[playerid]) // Coloquei condiзгo do player conectado aqui tambйm!
{
new NomeMultador[MAX_PLAYER_NAME],NomeMultado[MAX_PLAYER_NAME];
GetPlayerName(playerid,NomeMultador,MAX_PLAYER_NAME);
GetPlayerName(IdMulta[playerid],NomeMultado,MAX_PLAYER_NAME);
GivePlayerMoney(IdMulta[playerid],strval(inputtext));
ValorMulta[playerid] = strval(inputtext);
SendClientMessageToAll(-1,"[ ! ] O Admin %s multou o player %s no valor de %d",NomeMultador,NomeMultado,ValorMulta[playerid]);
}
else
{
SendClientMessage(playerid,-1,"[ ! ] Este player nгo estб conectado!");
}
}
}
Malz, esqueci de por essas #defines no topo... E esse erro do G_STYLE_INPUT vocк coloco errado, muda por DIALOG_STYLE_INPUT
Posta ae o resultado! (:
@EDIT
Coloquei uma condiзгo ae no code, da uma olhada marquei com //, й a condiзгo se o player estiver conectado, se ele nгo tiver vai returnar a mensagem e nгo vai dar pra multar ele! ^_^
Re: Comando /admmultar -
Jefferson Santos - 04.01.2013
pawn Код:
//Topo GM
new strmultar[256];
//OnPlayerCommandText
if(strcmp(cmd, "/admmultar", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pAdmin] >= 1)
{
SendClientMessage(playerid, 0x33CCFFAA, "Vocк nгo estб autorizado a usar o comando!");
return true;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, 0x33CCFFAA, "USE: /multar [ID] [Custo] [Razao]");
return true;
}
giveplayerid = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, 0x33CCFFAA, "USE: /multar [ID] [Custo] [Razao]");
return true;
}
if(IsPlayerConnected(giveplayerid))
{
if(IsACop(giveplayerid))
{
SendClientMessage(playerid, 0x33CCFFAA, "Vocк nгo pode multar Policiais!");
return true;
}
if(PlayerInfo[giveplayerid][pJailed] > 0)
{
SendClientMessage(playerid, 0x33CCFFAA, "Vocк nгo pode multar jogadores que estejam presos!");
return true;
}
if(giveplayerid != INVALID_PLAYER_ID)
{
if (ProxDetectorS(25.0, playerid, giveplayerid))
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, 0x33CCFFAA, "USE: /multar [ID] [Custo] [Razao]");
return true;
}
format(string, sizeof(string), "*Admin %s Vocк multou %s por R$%d, Razao: %s", PlayerName(playerid), giveplayer, moneys, (result));
SendClientMessageToAll(0x33CCFFAA, strmultar);
return true;
}
}
}
else
{
SendClientMessage(playerid, 0x33CCFFAA, "O jogador estб Offline !");
return true;
}
}
return true;
}