Приветствую! Взял систему бана для сервера: Клик
Хотелось бы узнать как сделать блокировку до 2038 года. Ибо дела с Unix не совсем имел.
Приветствую! Взял систему бана для сервера: Клик
Хотелось бы узнать как сделать блокировку до 2038 года. Ибо дела с Unix не совсем имел.
Без учёта високосных лет.PHP код:
GetTickCount() + (60 * 60 * 24 * 365) * 24
То есть заместо этого:
?PHP код:
unbandate2 = gettime() + days*86400;
- - - Добавлено - - -
Ещё один вопрос имеется команда /delete, для удаления аккаунта игрока, как сделать чтобы и его дом тоже продался?
- - - Добавлено - - -PHP код:
CMD:delete(playerid, params[])
{
if(PlayerInfo[playerid][pLogin] == 0) return true;
if(!IsPlayerConnected(playerid)) return true;
if(PlayerInfo[playerid][pAdmin] < 1) return true;
if(PlayerInfo[playerid][pAdmin] < 7) return SCM(playerid, COLOR_WHITE, YouCanNot);
if(dostup[playerid] != 1) return ShowPlayerDialog(playerid,2934,DIALOG_STYLE_PASSWORD,"Админ авторизация","Введите пароль\n\nПароль должен состоять из латинских букв и цифр\nразмером от 4 до 15 символов","Вход","Отмена");
if(sscanf(params,"s[64]", params[0])) return SCM(playerid,COLOR_WHITE," Введите: /delete [name_akkaunt]");
mysql_format(dbHandle, strings, 100, "SELECT * FROM `accounts` WHERE name = '%e' Limit 1", params[0]);
mysql_function_query(dbHandle, strings, true, "OnPlayerSelectDelete", "is", playerid, params[0]);
return true;
}
forward OnPlayerSelectDelete(playerid, name[]);
public OnPlayerSelectDelete(playerid, name[])
{
new rows, fields;
cache_get_data(rows, fields);
if(rows)
{
new query[128];
mysql_format(dbHandle, query, sizeof(query), "DELETE FROM `accounts` WHERE name = '%s'", name);
mysql_query(query, -1, -1, dbHandle);
SendMes(playerid,COLOR_WHITE,"Аккаунт с именем %s был успешно удален", name);
}
else SendClientMessage(playerid, COLOR_WHITE,"Ошибка: Не найдено совпадений.");
return true;
}
LoadProperty если надо:
PHP код:
stock LoadProperty()
{
mysql_function_query(dbHandle, "SELECT * FROM `house` ORDER BY `house`.`hid` ASC", true, "OnHousesLoad","");
return true;
}
Со временем накосячил, там не процессорные тики же нужны...
Если в команде надо указать год разбана, тогда в ней
days = год разбана
и затем
new Year, Month, Day;
getdate(Year, Month, Day);
unbandate2 = gettime() + (60 * 60 * 24 * 365) * (days - Year);
Никто не знает? xD
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)