Команда быстрого возврата на базу фракции

Активный
Статус
Сообщения
516
Лайки
32

8

месяц на сайте

Идея и назначение

Игрок фракции может вернуться на базу своей организации по команде.

Подходит для фракций полиции, мафии, банд и госструктур.


Суть реализации

1. Храним ID фракции игрока.

2. Для каждой фракции задаём координаты базы.

3. Команда /fbased телепортирует игрока по его фракции.


Реализация

Код:
new PlayerFaction[MAX_PLAYERS];


stock GetFactionBasePos(faction, &Float:x, &Float:y, &Float:z)
{
    switch(faction)
    {
        case 1: { x = 1550.0; y = -1600.0; z = 13.5; } // пример базы 1
        case 2: { x = 2200.0; y = -2300.0; z = 13.5; } // пример базы 2
        default: { x = 0.0; y = 0.0; z = 5.0; }
    }
}


CMD:fbased(playerid)
{
    if(PlayerFaction[playerid] == 0)
        return SendClientMessage(playerid, -1, "Ты не состоишь во фракции.");

    new Float:x, Float:y, Float:z;

    GetFactionBasePos(PlayerFaction[playerid], x, y, z);

    if(x == 0.0 && y == 0.0)
        return SendClientMessage(playerid, -1, "Для этой фракции база не настроена.");

    SetPlayerPos(playerid, x, y, z);

    SendClientMessage(playerid, -1, "Ты телепортировался на базу фракции.");

    return 1;
}


Дополнительные идеи

1. Ограничить команду по времени отката.

2. Запретить возврат во время погони или боя.

3. Настраивать координаты базы через конфиг или команду для лидера.
 

1 человек читают эту тему (Всего: 1, Пользователей: 0, Гостей: 1)

Сверху