Vassasssin
Умник
В общем , сделал команду /jail [id игрока] [время] [причина]
Далее в тюрьме узнаем сколько нам еще сидеть с помощью команды /time
Но мозгов на таймер не хватает , чтобы по истечению времени , который задал админ в команде , мы благополучно тпшились из тюрьмы .
PHP:
if(strcmp(cmd, "/jail", true) == 0) // тюрьма
{
if (PlayerInfo[playerid] [pAdmin]>= 2)
{
#define WHITE 0xFFFFFFFF
new tmp[128];
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF , "Введите /jail [ID игрока] [время] [причина]");
new player = strval(tmp);
if(!IsPlayerConnected(player)) return SendClientMessage(playerid,WHITE,"Игрок не онлайн");
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) return SendClientMessage(playerid, 0xFFFFFFFF , "Введите /jail [ID игрока] [время] [причина]");
new time = strval(tmp);
if(time > 180 || time < 1) return SendClientMessage(playerid,0xFFFFFFFF,"Примечание : [время] [1-180]");
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[100];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result)) return SendClientMessage(playerid, 0xFFFFFFFF , "Введите /jail [ID игрока] [время] [причина]");
new name[MAX_PLAYERS];
new getname[MAX_PLAYERS];
GetPlayerName(playerid,name, sizeof(name));
GetPlayerName(player,getname, sizeof(getname));
new string[128];
SetPlayerPos(player,102.6647,-7.0001,2.0);
SetPVarInt(player,"Jail", gettime() + (time*60) );
format(string, sizeof(string), "{FF0000}Администратор [%d] %s посадил игрока %s в тюрьму на %d минут причина : %s",playerid,name,getname,time,(result));
SendClientMessageToAll(0xFFFFFFFF,string);
return 1;
}
}
PHP:
if(strcmp(cmd, "/time", true) == 0) // проверка на время
if(GetPVarInt(playerid,"Jail") > gettime())
{
new string[128];
format(string, sizeof(string), "Вы будете находиться в тюрьме %d секунд",(GetPVarInt(playerid,"Jail") - gettime()) );
SendClientMessage(playerid,0xFFFFFFFF, string);
return 1;
}
