Помогите пж

Добро пожаловать!

Зарегистрировавшись у нас, вы сможете обсуждать, делиться и отправлять личные сообщения другим участникам нашего сообщества.

Зарегистрироваться!
Пользователь
Регистрация
23 Мар 2025
Сообщения
56
Можно ли как то добавить работу ФСИН на самп мод? Если да то подскажите пожалуйста как
 
Пользователь
Регистрация
8 Фев 2025
Сообщения
37
На какой мод хочешь добавить работу ФСИН? Попробуй этот код, если выдает какую нибудь ошибку, напиши.
// Создание тюрьмы:
new jailInterior = 1; // Интерьер тюрьмы
new jailVirtualWorld = 1; // Виртуальный мир тюрьмы
new Float:jailPos[3] = {264.3952, 77.5644, 1001.0391}; // Координаты тюрьмы
// Арест игрока (этот команда у всех проектов уже есть, просто бери нужные детали и поставь на свой мод, я на всякий случай, ставлю полный код):
CMD:arrest(playerid, params[])
{
if (!IsPlayerCop(playerid)) // Проверка, что игрок — полицейский
return SCM(playerid, COLOR_RED, "Вы не являетесь сотрудником полиции.");

new targetid;
if (sscanf(params, "u", targetid))
return SCM(playerid, COLOR_WHITE, "Использование: /arrest [id игрока]");

if (!IsPlayerConnected(targetid))
return SCM(playerid, COLOR_RED, "Игрок не в сети.");

// Перемещение игрока в тюрьму
SetPlayerPos(targetid, jailPos[0], jailPos[1], jailPos[2]);
SetPlayerInterior(targetid, jailInterior);
SetPlayerVirtualWorld(targetid, jailVirtualWorld);

// Установка срока заключения
PlayerInfo[targetid][pJailTime] = 300; // 5 минут
PlayerInfo[targetid][pIsJailed] = 1;

SCM(targetid, COLOR_RED, "Вы были арестованы и отправлены в тюрьму.");
SCM(playerid, COLOR_GREEN, "Вы арестовали игрока.");
return 1;
}
// Отбытие наказания (это тоже скорее всего должно быть, просто бери нужные детали, и добавь таймер, который будет отсчитывать время заключения):
forward JailTimer(playerid);
public JailTimer(playerid)
{
if (PlayerInfo[playerid][pJailTime] > 0)
{
PlayerInfo[playerid][pJailTime]--;
new str[128];
format(str, sizeof(str), "Осталось времени: %d секунд.", PlayerInfo[playerid][pJailTime]);
SCM(playerid, COLOR_WHITE, str);
}
else
{
// Освобождение игрока
PlayerInfo[playerid][pIsJailed] = 0;
SetPlayerPos(playerid, 1529.6, -1691.2, 13.3); // Координаты выхода из тюрьмы
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
SCM(playerid, COLOR_GREEN, "Вы освобождены из тюрьмы.");
KillTimer(PlayerInfo[playerid][pJailTimer]);
}
}
// Работа в тюрьме (тоже интересная штука):
CMD:work(playerid, params[])
{
if (!PlayerInfo[playerid][pIsJailed])
return SCM(playerid, COLOR_RED, "Вы не в тюрьме.");

// Пример задания: игрок собирает ресурсы
new rand = random(100);
if (rand < 50)
{
PlayerInfo[playerid][pJailTime] -= 60; // Сокращение срока на 1 минуту
SCM(playerid, COLOR_GREEN, "Вы выполнили задание. Ваш срок сокращен на 1 минуту.");
}
else
{
SCM(playerid, COLOR_RED, "Вы не смогли выполнить задание.");
}
return 1;
}
// Побег из тюрьмы (тоже не помешает):
CMD:escape(playerid, params[])
{
if (!PlayerInfo[playerid][pIsJailed])
return SCM(playerid, COLOR_RED, "Вы не в тюрьме.");

new chance = random(100);
if (chance < 30) // 30% шанс на успешный побег
{
PlayerInfo[playerid][pIsJailed] = 0;
SetPlayerPos(playerid, 1529.6, -1691.2, 13.3); // Координаты выхода из тюрьмы
SetPlayerInterior(playerid, 0);
SetPlayerVirtualWorld(playerid, 0);
SCM(playerid, COLOR_GREEN, "Вы успешно сбежали из тюрьмы!");
}
else
{
PlayerInfo[playerid][pJailTime] += 120; // Увеличение срока на 2 минуты
SCM(playerid, COLOR_RED, "Побег не удался. Ваш срок увеличен на 2 минуты.");
}
return 1;
}
 
Сверху