Как сделать свой класс для Zombie Plague мода!?
Я,собираюсь показать Вам, как сделать простой класс зомби!
Мы будет делать Класс Зомби под названием "Gravity Zombie" он будет иметь низкую силу гравитации.
Шаг 1.
Создаем новый плагин под названием zp_gravity_zombie.sma
Подключаем необходимые нам файлы для новго класса ZombiePlague
Code
#include <amxmodx>
#include <zombieplague>
Шаг 2.
Добавляем в плагин необходимые для нового класса атрибуты.
Code
new const zclass_name[] = { "Gravity Zombie" } // имя
new const zclass_info[] = { "Low grav -HP" } // описание
new const zclass_model[] = { "zombie_Source" } // модель
new const zclass_clawmodel[] = { "v_knife_zombie.mdl" } // модель оружия
const zclass_health = 800 // здоровье
const zclass_speed = 200 // скорость
const Float:zclass_gravity = 0.4 // гравитация
const Float:zclass_knockback = 0.6 // подскок (knockback)
Шаг 3.
Создаем новый идентификатор класса
Code
// Class IDs
new g_zclassid1
Шаг 4.
Регистрируем новый класс (без этого новый класс не появится)
Code
// Классы зомби необходимо всегда регистрировать в plugin_precache
public plugin_precache()
{
register_plugin("[ZP] Zombie Class: Gravity Zombie", "1.0", "Zombie")
// Регистрация класса и инициализация ID для дальнейшего использования
g_zclassid1 = zp_register_zombie_class(zclass_name, zclass_info, zclass_model, zclass_clawmodel, zclass_health, zclass_speed, zclass_gravity, zclass_knockback)
}
Шаг 5.
Теперь отобразим действие на примере обычной распечатки в чат, когда игрок выбирает новый класс.
Code
public zp_user_infected_post ( id, infector )
{
if (zp_get_user_zombie_class(id) == g_zclassid1)
{
client_print(id, print_chat, "[ZP] Вы выбрали новый класс Gravity Zombie")
}
}
Шаг 6.
Компилируем на плагин.
Полный код плагина,который должен получиться:
Code
#include <amxmodx>
#include <zombieplague>
new const zclass_name[] = { "Gravity Zombie" } // имя
new const zclass_info[] = { "Low grav -HP" } // описание
new const zclass_model[] = { "zombie_Source" } // модель
new const zclass_clawmodel[] = { "v_knife_zombie.mdl" } // модель оружия
const zclass_health = 800 // здоровье
const zclass_speed = 200 // скорость
const Float:zclass_gravity = 0.4 // гравитация
const Float:zclass_knockback = 0.6 // подскок (knockback)
// Class IDs
new g_zclassid1
// Классы зомби необходимо всегда регистрировать в plugin_precache
public plugin_precache()
{
register_plugin("[ZP] Zombie Class: Gravity Zombie", "1.0", "Zombie")
// Регистрация класса и инициализация ID для дальнейшего использования
g_zclassid1 = zp_register_zombie_class(zclass_name, zclass_info, zclass_model, zclass_clawmodel, zclass_health, zclass_speed, zclass_gravity, zclass_knockback)
}
public zp_user_infected_post ( id, infector )
{
if (zp_get_user_zombie_class(id) == g_zclassid1)
{
client_print(id, print_chat, "[ZP] Вы выбрали новый класс Gravity Zombie")
}
}
Источник статьи: