11.07.2012, 07:28
(
Последний раз редактировалось ipsBruno; 11.07.2012 в 21:37.
)
Muitas pessoas jб passaram pelo problema de querer colocar alguйm em RCON, mas nгo querer passar a senha. Ou pela chatice de ter que estar digitando /rcon login a cada vez que conecta.
Pois bem. Criei esta biblioteca baseada em SendRconCommand:
Com este cуdigo vocк pode logar um jogador na RCON via Pawn. Sem precisar passar a senha para o jogador ou necessitar de rcon login
Cуdigo
Modo de uso:
Basta salva-la o cуdigo acima como "rcon.inc" e colocar no seu gamemode
Agora para adicionar um jogador a rcon basta:
AddPlayerRcon(jogador id)
Para deletar ele da RCON:
O comando novo para rcon estб prй-definido como:
Mas vocк pode mudar de "/ADM" para outro mexendo na include ..
Exemplo:
Em OnPlayerConnect:
Com este cуdigo. O jogador que entrar no servidor com nick "ADMINSTRADOR" serб logado automaticamente na rcon.
Se apresentar eventuais erros, estarei aqui para corrigir. Boa sorte com o uso do projeto
Espero que gostem.
Pois bem. Criei esta biblioteca baseada em SendRconCommand:
Com este cуdigo vocк pode logar um jogador na RCON via Pawn. Sem precisar passar a senha para o jogador ou necessitar de rcon login
Cуdigo
pawn Код:
#define NOVA_RCON "/adm"
#define AddPlayerRcon(%0) (SetPVarInt(%0, "rcon_ademir", 1), printf("RCON (In-Game): Player %s (%d) has logged in.",%0, g@str_getname(%0)))
#define RemovePlayerRcon(%0) (SetPVarInt(%0, "rcon_ademir", 0), printf("RCON (In-Game): Player %s (%d) has logged off.",%0, g@str_getname(%0)))
public OnPlayerCommandText(playerid, cmdtext[]) {
if(!strcmp(cmdtext, #NOVA_RCON " ", false, 5) && strlen(cmdtext) > 6 && (GetPVarInt(playerid, "rcon_ademir") || IsPlayerAdmin(playerid))) {
return SendRconCommand(cmdtext[5]), printf("RCON (In-Game): Player [%s] sent command: %s", g@str_getname(playerid), cmdtext[5]);
}
return
(
(!cmdtext[0] || (cmdtext[0] == 1 && !cmdtext[1])) ?
CallLocalFunction("c_@_OnPlayerCommandText", "ds", playerid, "\1")
: CallLocalFunction("c_@_OnPlayerCommandText", "is", playerid, cmdtext)
)
;
}
stock IsPlayerRcon(p) {
return IsPlayerAdmin(p) && GetPVarInt(p, "rcon_ademir");
}
g@str_getname(pid) {
static sname[MAX_PLAYER_NAME];
return GetPlayerName(pid, sname, MAX_PLAYER_NAME), sname;
}
#if defined _ALS_OnPlayerCommandText
#undef OnPlayerCommandText
#else
#define _ALS_OnPlayerCommandText
#endif
#define OnPlayerCommandText c_@_OnPlayerCommandText
#define IsPlayerAdmin IsPlayerRcon
forward OnPlayerCommandText(playerid, cmdtext[]);
Modo de uso:
Basta salva-la o cуdigo acima como "rcon.inc" e colocar no seu gamemode
PHP код:
#include rcon
AddPlayerRcon(jogador id)
Para deletar ele da RCON:
pawn Код:
RemovePlayerRcon(id)
Quote:
/adm COMANDO RCON SEM "/rcon " |
Exemplo:
Em OnPlayerConnect:
PHP код:
static name[MAX_PLAYER_NAME]; GetPlayerName(playerid, name, MAX_PLAYER_NAME);
if(!strcmp(name, "ADMINISTRADOR", true)) AddPlayerRcon(playerid);
Se apresentar eventuais erros, estarei aqui para corrigir. Boa sorte com o uso do projeto
Espero que gostem.