Иконка ресурса

reapi Level System 1.2.3

Нет прав для скачивания
Простая модульная система уровней с сохранением в базу данных.
Система уровней имеет свое небольшое API для дополнений.
Система использует свой собственный Item Manager.

Поддерживает моды:
  • Public
  • Zombie Plague 5.0
Функционал:
  • Сохранение всех данных в MySQL
  • Собственный Item Manager
  • Бонусы за достигнутые уровни
  • Авто очищение БД

Имеет поддержку:
  • CsStats MySQL by SKAJIbnEJIb
  • CSstatsX SQL by serfreeman1337


Возможности форвардов в Item Manager
  • TL_ITEM_CONTINUE - Используется когда требуется выполнить return с возвращаемым элементом
  • TL_ITEM_SHOW - Используется когда требуется показать Item в магазине
  • TL_ITEM_BLOCK - Используется когда требуется блокировка показа Item в магазине
C++:
#include <amxmodx>
#include <reapi>
#include <level_system>

#define ITEM_NAME "FULL_MONEY" // Название Item в ML формате
#define ITEM_COST 2 // Цена за Item
#define BLOCK_GIVE_MONEY 10000 // Сумма при которой не будут выдаваться деньги
#define GIVE_MONEY 16000 // Сколько денег выдать игроку

new g_ItemMoney, // Глобальная переменная для работы с Item
g_iRoundCounter; // Глобальная переменная для подсчета раундов

public plugin_init(){
    register_plugin("[Level System] Item: Full Money", PLUGIN_VERSION, "BiZaJe");

    // Хук для отлова начала/рестарта раунда
    RegisterHookChain(RG_CSGameRules_RestartRound, "@HC_CSGameRules_RestartRound_Pre", .post = false);

    // Регистрация Item в Item Manager
    g_ItemMoney = ls_item_register(ITEM_NAME, ITEM_COST);
}

@HC_CSGameRules_RestartRound_Pre()
{
    // Обнуляем счетчик если был рестарт
    if(get_member_game(m_bCompleteReset)){
        g_iRoundCounter = 0;
    }
    // В ином случае прибавляем
    g_iRoundCounter++;
}

public ls_item_buy_pre(iPlayer, iItem, Cost){
    // Блокируем показ Item в Item Manager если: Это не наш Item/Денег у игрока больше чем задано/Мало сыгранных раундов
    if(iItem != g_ItemMoney || get_member(iPlayer, m_iAccount) >= BLOCK_GIVE_MONEY || g_iRoundCounter < 3){
        return TL_ITEM_BLOCK;
    }

    // В ином случае показываем
    return TL_ITEM_SHOW;
}

public ls_item_buy_post(iPlayer, iItem, Cost){
    // Блокируем если не наш предмет
    if(iItem != g_ItemMoney){
        return;
    }
 
    // Добавляем игроку деньги
    rg_add_account(iPlayer, GIVE_MONEY);
}

say lsitem
say /lsitem
say_team lsitem
say_team /lsitem
level_system_reset - серверная команда для принудительного сброса БД

Дополнения к системе:

  1. Анти-флеш за бонусы
  2. Добавляет бонусы steam игрокам.
  3. Вампиризм за бонусы
  4. Блокировка Text/Voice Chat по уровню
  5. Показ спрайта при добавлении опыта.
Автор
BeZZyMnblй
Скачивания
6
Просмотры
284
Первый выпуск
Обновление
Оценка
0,00 звёзд 0 оценок

Другие ресурсы пользователя BeZZyMnblй

Поделиться ресурсом

Последние обновления

  1. Обновление Level System 1.2.3

    Мелкие правки Обновлено API /** The function is called at the moment of connection to the...
  2. Обновление Level System 1.2.2

    Обновлено API Добавлено детальное описание в API Обновлен запрос на создание БД. Добавлен...
  3. Обновление Level System 1.2.1

    Мелкие правки Обновлено API. // Takes away a certain amount of experiencenative...
  4. Обновление Level System 1.2

    Обновлен level_system_const.inc Добавлена возможность пропускать элементы в Item Manager...
Сверху Снизу