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

in dev Furrien Mod 2.1

Нет прав для скачивания
Установка
  1. Скопируйте файлы .inc в директорию: amxmodx/scripting/include/
  2. Скомпилируйте плагины (инструкция).
  3. Скопируйте скомпилированные файлы .amxx в директорию: amxmodx/plugins/
  4. Пропишите .amxx в файле /amxmodx/configs/plugins.ini
  5. Содержимое папки cstrike (models, sound) аналогично поместить в папку "cstrike"
Настройки
Настройки ядра мода располагаются в конфиг-файле, который располагается по следующему пути:
cstrike/addons/amxmodx/configs/furrienmode.cfg
// ============= Настройки мода Furrien Mod =============
// Во избежание недоразумений и следующих из них проблем не применяйте никаких изменений, кроме тех, что указаны третьим аргументом в каждой строке
// Также категорически не рекомендуется удалять пробелы между первыми тремя аргументами (после // слэшей можно вносить свои изменения)
// Обращайте внимание на кавычки при внесении изменений
// При возникновении проблем проверяйте файл на наличие ошибок, описанных выше как потенциальных
//
// Ядро мода
FM_FURRIEN_SPEED = "680.0" // Скорость фуррий
FM_FURRIEN_GRAVITY = "0.405" // Гравитация фурий
FM_ALLIANCE_MODEL = "alliance" // Модель альянса (models/player/ИМЯ/ИМЯ.mdl, где ИМЯ - указанное значение)
FM_SOUND_WIN_FURRIEN = "furrien_mode/furrien_win" // Звук победы фуррий (без wav)
FM_SOUND_WIN_ALLIANCE = "furrien_mode/alliance_win" // Звук победы фуррий (без wav)
FM_VIP_FLAG = "t" // Флаг випа
FM_FOG_MODE = "ON" // Режим тумана (OFF - отключить, ON - включить)
//
// Магазин
FM_SHOP_PREFIX = "Магазин" // Префикс магазина (отображается в чате при определенных событиях)
//
// Уровни
FM_LVL_KILLS = "0 55 310 985 1705 3600 5965 8760 10870 12999" // Кол-во убийств для переходов на следующие уровни (10 уровней, через пробел)
FM_LVL_POINT_KILL = "1" // Сколько килл-поинтов давать за простое убийство
FM_LVL_POINT_KILL_HEAD = "2" // Сколько килл-поинтов давать за убийство в голову
FM_LVL_POINT_KILL_KNIFE = "3" // Сколько килл-поинтов давать за убийство ножом
FM_LVL_POINT_KILL_GRENADE = "4" // Сколько килл-поинтов давать за убийство гранатой

//
// Замораживающая граната
FM_FROST_DIST_NORMAL = "200.0" // Дистанция для обычной заморозки (юниты от эпицентра)
FM_FROST_DIST_LONG = "100.0" // Дистанция для длительной заморозки (юниты от эпицентра)
FM_FROST_TIME_NORMAL = "3.0" // Время обычной заморозки
FM_FROST_TIME_LONG = "6.0" // Время длительной заморозки
FM_FROST_SPEED_NORMAL = "50.0" // Скорость для игрока при обычной заморозке
FM_FROST_SPEED_LONG = "-1.0" // Скорость для игрока при длительной заморозке
FM_FROST_DAMAGE_NORMAL = "3.0" // Урон игроку при обычной заморозке
FM_FROST_DAMAGE_LONG = "7.0" // Урон игроку при длительной заморозке

Настройки всех предметов для магазина.
Имеют структуру: furrien_item_.sma, где "" - произвольное имя.
Код:
// 1 айтем - Мина - для альянса
new ITEM_ALLIANCE_MINE_NAME[] = "Мина"; // Имя
const ITEM_ALLIANCE_MINE_COST = 2000; // Цена
const ITEM_ALLIANCE_MINE_LIMIT = 4; // Лимит покупки на раунд
//
const MINE_DISTANCE_RADIUS = 150; // Дистанция в радиусе которого срабатывает мина
const MINE_DAMAGE_MIN = 50; // Минимальный урон от мины
const MINE_DAMAGE_MAX = 150; // Максимальный урон от мины
Остальные предметы настраиваются аналогично.

Настройки всех классов фурий..
Имеют структуру: furrien_class_.sma, где "" - произвольное имя.
Код:
new const CLASS_NAME[] = "Мерсер"; // Имя
new const CLASS_INFO[] = "Выпускает шипы перед собой [G]"; // Описание
new const CLASS_MODEL[] = "mercer"; // Модель
//
const SPIKE_COUNT = 12; // Кол-во шипов
const SPIKE_LIFETIME = 4; // Время существования шипов
const SPIKE_DAMAGE = 8; // Урон от шипов
const ABILITY_RELOAD = 18; // Перезарядка (сек)
Остальные классы настраиваются аналогично.
API
Располагается по следующему пути: cstrike/addons/amxmodx/scripting/fm_core.inc

Нативы:
  • is_user_furrien(id) - возвращает команду (фурия/альянс)
  • set_block_speed(id) - блокировка сброса скорости (для установки своей)
  • reset_block_speed(id) - разблокировка сброса скорости (для сброса установленной своей)
  • get_user_class(id) - возвращает номер текущего класса для игрока
  • set_user_class(id, iNum) - устанавливает класс игроку (iNum - идентификатор класса)
  • get_user_lvl(id) - возвращает текущий уровень игрока
  • set_user_lvl(id, iNum) - устанавливает уровень игроку (iNum - уровень)
Форварды:
  • register_class(const sName[], const sInfo[], const sModel[], iFlag) - регистрирует новый класс (возвращает идентификатор зарегистрированного героя, если всё успешно, иначе -1)
    • sName - имя класса
    • sInfo - описание класса
    • sModel - модель класса
    • iFlag - флаг доступа (get_user_flags) к классу (-1, если не нужно проверять флаг)
  • register_item(iTeam, sNameItem[], iCostItem, iLimitItem, sCallFuncItem[]) - register_item регистрирует предмет для добавления его в магазин
    • iTeam - команда, в магазин которой будет добавлен предмет (см. выше константы команд)
    • sNameItem - имя предмета, которое будет отображаться в магазине
    • iCostItem - цена предмета
    • iLimitItem - лимит покупки предмета на раунд (-1 - безлимитная покупка)
    • sCallFuncItem - имя функции-обработчика, которая будет вызвана при покупке предмета
Примеры можно посмотреть в исходниках.
Сверху Снизу