14.05.2011, 20:55
(
Последний раз редактировалось Shadoww5; 14.05.2011 в 21:35.
)
PHP код:
forward Soltar(playerid);
public OnPlayerCommandText(playerid,cmdtext[])
{
if(strcmp(cmd, "/prender",true) == 0)
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, COLOR_GRAD1, "Vocк nгo estб logado na RCON !");
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, COLOR_GRAD2, "USE: /prender [id]");
new tempo = strtok(cmdtext, idx);
if(!strlen(tempo)) return SendClientMessage(playerid, COLOR_GRAD2, "USE: /prender [id]");
giveplayerid = ReturnUser(tmp);
if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid, COLOR_GRAD2, "[ERRO] Player Off-line!");
if(giveplayerid == playerid) return SendClientMessage(playerid, COLOR_GRAD2, "[ERRO] Vocк nгo pode se prender!");
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* Vocк prendeu %s!", giveplayer);
SendClientMessage(playerid, COLOR_LIGHTRED, string);
format(string, sizeof(string), "* Vocк foi colocado no Presнdio Pelo Admin %s.", sendername);
SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
GameTextForPlayer(giveplayerid, "~b~Bem Vindo a~n~~r~Prisao !", 5000, 3);
ResetPlayerWeapons(giveplayerid);
SetPlayerWantedLevel(giveplayerid, 0);
SetPlayerPos(giveplayerid, X,Y,Z); // Troque por suas coordenadas
SetTimer("Soltar",tempo*1000,false,"u",giveplayerid);
return 1;
}
return 0;
}
//OU AO EM VEZ DE COLOCAR NO ONPLAYERCOMMANDTEXT, VOCК PODERIA FAZER POR ZCMD OU DCMD:
#define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
public OnPlayerCommandText(playerid,cmdtext[])
{
dcmd_prender(6,true,cmdtext);
return 0;
}
dcmd_prender(playerid,params[])
{
new
nome1[MAX_PLAYER_NAME],
nome2[MAX_PLAYER_NAME],
string[128];
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFFF55CFF,"Vocк nгo estб logado na RCON !");
if(sscanf(params,"ud",giveplayerid,tempo)) return SendClientMessage(playerid,0xFFF55CFF,"USO: /prender [ID] [TEMPO]");
if(giveplayerid == playerid) return SendClientMessage(playerid,0xFFF55CFF,"Vocк nгo pode se prender !");
if(!IsPlayerConnected(giveplayerid)) return SendClientMessage(playerid,0xFFF55CFF,"ID INVALIDO");
ResetPlayerWeapons(giveplayerid);
GetPlayerName(giveplayerid, nome2, sizeof(nome2));
GetPlayerName(playerid, nome1, sizeof(nome1));
format(string, sizeof(string), "* Vocк prendeu %s!", nome2);
SendClientMessage(playerid, COLOR_LIGHTRED, string);
format(string, sizeof(string), "* Vocк foi colocado no Presнdio Pelo Admin %s.", sendername);
SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
GameTextForPlayer(giveplayerid, "~b~Bem Vindo a~n~~r~Prisao !", 5000, 3);
SetPlayerWantedLevel(giveplayerid, 0);
SetPlayerPos(giveplayerid, X,Y,Z); // Troque por suas coordenadas
SetTimer("Soltar",tempo*1000,false,"u",giveplayerid);
return 1;
}
//---------------------------------------- PUBLIC SOLTAR
public Soltar(playerid)
{
new
s[128],
nome[MAX_PLAYER_NAME];
GetPlayerName(playerid,nome,sizeof(nome));
GameTextForPlayer(playerid,"~p~Voce foi solto !", 5000, 3);
SetPlayerPos(playerid,XX,YY,ZZ)
for( i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerAdmin(i)) //ISTO IRБ ENVIAR UMA MENSAGEM A TODOS QUE ESTIVEREM LOGADOS NA RCON AVISANDO QUE TAL PESSOA FOI SOLTA
{
format(s,sizeof(s),"%s cumpriu sua pena e foi solto !",nome);
SendClientMessage(i,0xFFF55CFF,s);
return 1;
}
}
return 1;
}
OBSІ: XX, YY e ZZ sгo as coordenadas que ele irб quando for solto
OBSі: Estou colocando por dcmd tambйm, pois quero aprender a usб-lo. Portanto, peзo que vejam se tem algum erro e se tiver, me avisem.