Перейти к содержанию
Авторизация  
Vladimir_Kulkov

Простая система голода на mxINI

Рекомендуемые сообщения

Vladimir_Kulkov

Доброго времени суток!
И сегодня я бы хотел представить вам свою систему голода.
Данная система стоит у меня на сервере, работает нормально.
К самой системе:
в enum pInfo добавьте такие строчки как:

pHunger,//Голод
pPaek,//Сух.паёк

В OnGameModeInit кидаем таймер который будет вызывать паблик с системой голода. (20000 - 20сек. заменить на свою)

SetTimer("HungerSystem",20000,1);
SetTimer("CheckStat",5000,1);

После чего где-то после GameModeInit вставьте

forward HungerSystem(playerid);
public HungerSystem(playerid)
{
        PlayerInfo[playerid][pHunger] --;
        if(PlayerInfo[playerid][pHunger] == -1)//Это что бы кол-во голода не уходило в минус
        {
        PlayerInfo[playerid][pHunger] ++;
        }
        return 1;
}

Ну и должно быть логично, что хп должно отниматься же, так что вставляем сразу после HungerSystem ещё такой public(Отнимает ХП каждые 5 сек если переменная голода = 0)

public CheckStat(playerid)
{
        if(PlayerInfo[playerid][pHunger] == 0)
        {
        new Float:HP;
    GetPlayerHealth(playerid, HP);
    SetPlayerHealth(playerid, HP-5);
        }
        return 1;
}

И делаем простую команду что бы есть

        if (strcmp("/eat", cmdtext, true, 10) == 0)
        {
        if(PlayerInfo[playerid][pPaek] >= 1)
        {
        PlayerInfo[playerid][pPaek] --;
        PlayerInfo[playerid][pHunger] += 40;
        SendClientMessage(playerid, COLOR_GREEN, "Вы съели сух.паёк! Сытность пополнена на 40.");
        return 1;
        }
        else { SendClientMessage(playerid, COLOR_RED, "У вас нету сух.пайка!"); }
        return 1;
        }

Вот и всё вроде бы. Если будут баги пишите в теме, отвечу.
Автор сего чуда: Я. (Lanzo)
Внимание! Если вы собрались куда-то этот бред копировать, укажите что я автор :)

Изменено пользователем Vladimir_Kulkov

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.