Система простых уровней игрока

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

8

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

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

Игрок получает опыт за определенные действия и повышает уровень.

Подходит для RPG серверов и прогрессии персонажа.


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

1. Храним уровень и опыт игрока.

2. Добавляем опыт при убийстве, завершении квеста и т.д.

3. При достижении порога опыта повышаем уровень и сбрасываем опыт.


Реализация

Код:
new PlayerLevel[MAX_PLAYERS];
new PlayerExp[MAX_PLAYERS];


stock GivePlayerExp(playerid, amount)
{
    PlayerExp[playerid] += amount;

    if(PlayerExp[playerid] >= 100)
    {
        PlayerExp[playerid] -= 100;
        PlayerLevel[playerid]++;
        SendClientMessage(playerid, -1, "Ты получил новый уровень.");
    }
}


CMD:mystats(playerid)
{
    new msg[64];

    format(msg, sizeof msg, "Твой уровень: %d, опыт: %d/100.", PlayerLevel[playerid], PlayerExp[playerid]);
    SendClientMessage(playerid, -1, msg);

    return 1;
}


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

1. Разные формулы роста опыта.

2. Бонусы за повышение уровня, например деньги или скиллы.

3. Хранение прогресса в базе данных.
 

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

Сверху