Вот исходный базовый код плагина: #include <amxmodx> #include <zombieplague>
new g_itemid1
public plugin_init() { register_plugin("[ZP] Extra Item: Test", "0.1", "Example") g_itemid1 = zp_register_extra_item("Infection AK-47", 85, ZP_TEAM_ZOMBIE)
}
public zp_extra_item_selected(player, itemid) { // check if the selected item matches any of our registered ones if (itemid == g_itemid1) client_print(player, print_chat, "[ZP] You have purchased My extra item 1!") }
Описания:
g_itemid1 - ID Extra Item. [ZP] Extra Item: Test - название плагина. Example - автор. 0.1- версия. My Extra Item 1- название Extra item. 3 - цена. ZP_TEAM_ZOMBIE - давать только команде Zombie. client_print(player, print_chat, "[ZP] You have purchased My extra item 1!") - действие(здесь это пишет в чат: [ZP] You have purchased My extra item 1!.
1). Чтобы этот Extra Item был только для людей, то: заменяем ZP_TEAM_ZOMBIE на ZP_TEAM_HUMAN. Чтобы этот Extra Item был для всех, то: заменяем ZP_TEAM_ZOMBIE на ZP_TEAM_ANY. 2). Если вы хотите больше чем одно действие, то должно быть типо: if (itemid == g_itemid1) { ДЕЙСТВИЕ1 ДЕЙСТВИЕ2 ... } Возможные случаи: FUN:
give_item(player, "weapon_Glock18") - дает предмет, в этом случае Glock18FS. Если хотите дать калаш, то меняете Glock18 на ak47 и т. п... Также можно дать: weapon_shield, weapon_hegrenade, weapon_smokegrenade, weapon_flashbang,item_longjump.
set_user_noclip(player, 1) - дает No Clip. set_user_noclip(player, 0) - убирает No Clip. set_user_godmode(player, 1) - дает God. set_user_godmode(player, 0) - убирает God. set_user_armor(player, 200) - дать 200 брони.(можно изменять) set_user_health(player, 200)- дать 200 жизней.(можно изменять) set_user_maxspeed(player, 400) - дать скорость 400.(можно изменять) set_user_gravity(player, 1.0) - дать гравитацию 1.0.(можно изменять) spawn(player) - respawn. set_user_footsteps(player, 1) - дать бесшумные шаги. set_user_footsteps(player, 0) - дать шумные шаги. strip_user_weapons(player) - убрать все оружие у игрока. set_user_frags(player, 10) - дать игроку 10 фрагов. Для работы этих действий, добавляем после #include это: #include CSTRIKE
cs_get_user_deaths(player) - получить смерти игрока. cs_set_user_deaths(player, 10) - дать игроку 10 смертей. Можете изменять. cs_get_user_hasprim(player) - получить, есть ли у игрока автомат или щит. cs_set_user_nvg(player, 1) - дать ночное видение. cs_set_user_nvg(player, 0) - убрать ночное видение. Для работы этих действий, добавляем после #include это: #include
CSTRIKE:
cs_get_user_deaths(player) - получить смерти игрока. cs_set_user_deaths(player, 10) - дать игроку 10 смертей. Можете изменять. cs_get_user_hasprim(player) - получить, есть ли у игрока автомат или щит. cs_set_user_nvg(player, 1) - дать ночное видение. cs_set_user_nvg(player, 0) - убрать ночное видение. Для работы этих действий, добавляем после #include это: #include
Рассмотрим на примере 1 из плагинов:
#include <amxmodx> #include <zombieplague> #include <fun>
new g_ak47
public plugin_init() { register_plugin("[ZP] Extra Item: ak47 Only", "0.1", "Valve-Life") g_knife = zp_register_extra_item("ak47 Only", 25, ZP_TEAM_HUMAN)
}
public zp_extra_item_selected(player, itemid) { if (itemid ==g_ak47) { strip_user_weapons(player) give_item(player, "weapon_ak47") } }
Теперь придумаем что-нибуть этакое для Zm.
~::Итак начнём::~
Основные параметры:
#include <amxmodx> #include <fakemeta> #include <zombieplague>
new const zclass_name[] = { "Fighter" } new const zclass_info[] = { "Special ZM" } new const zclass_model[] = { "zombie_source" } new const zclass_clawmodel[] = { "v_knife_zombie.mdl" } const zclass_health = 5000 const zclass_speed = 220 const Float:zclass_gravity = 1.0 const Float:zclass_knockback = 1.0
new g_zclassid2
public plugin_precache() { register_plugin("Special Zm (by Valve-Life)", "0.1", "Valve-Life")
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] You're using a custom zombie class!") }
Описания:
g_zclassid1 - ID Zombie Class. [ZP] Additional Zombie Classes - название плагина. Example - автор. 0.1- версия. My Zombie/U] - название класса. My Stats - описание. v_knife_zombie.mdl - моделька клешней. zombie_source - модель зомби. const zclass_health = 1800 - Жизнь ZM(а) const zclass_speed = 190 - Скорость const Float:zclass_gravity = 1.0 - Гравитация const Float:zclass_knockback = 1.0 - Отброс [U]client_print(id, print_chat, "[ZP] You're using a custom zombie class!") - действие(здесь это пишет в чат: [ZP] You're using a custom zombie class!).
Информация:
1). Если вы хотите больше чем одно действие, то должно быть типо: if (zp_get_user_zombie_class(id) == g_zclassid1) { ДЕЙСТВИЕ1 ДЕЙСТВИЕ2 <...> } 2). Возможные действия:
FUN:
give_item(id, "weapon_hegrenade") - дает предмет, в этом случае Infection Bomb. Если хотите дать LongJump, то меняете weapon_hegrenade на item_longjump и т. п.. Также можно дать: weapon_shield - щит. set_user_noclip(id, 1) - дает No Clip. set_user_noclip(id, 0) - убирает No Clip. set_user_godmode(id, 1) - дает God. set_user_godmode(id, 0) - убирает God. set_user_armor(id, 200) - дать 200 брони.(можно изменять) spawn(id) - respawn. set_user_footsteps(id, 1) - дать бесшумные шаги. set_user_footsteps(id, 0) - дать шумные шаги. strip_user_weapons(id) - убрать все оружие у игрока. set_user_frags(id, 10) - дать игроку 10 фрагов. Для работы этих действий, добавляем после #include это: #include
CSTRIKE:
cs_get_user_deaths(id) - получить смерти игрока. cs_set_user_deaths(id, 10) - дать игроку 10 смертей. Можете изменять. cs_get_user_hasprim(id) - получить, есть ли у игрока автомат или щит. cs_set_user_nvg(id, 1) - дать ночное видение. cs_set_user_nvg(id, 0) - убрать ночное видение. Для работы этих действий, добавляем после #include это: #include Вот пример плагина, в котором при классе, дается щит:
#include <amxmodx> #include <fakemeta> #include <zombieplague> #include <fun>
new const zclass_name[] = { "Shield Zombie" } new const zclass_info[] = { "Have Shield." } new const zclass_model[] = { "zombie_source" } new const zclass_clawmodel[] = { "v_knife_zombie.mdl" } const zclass_health = 2500 const zclass_speed = 225 const Float:zclass_gravity = 1.0 const Float:zclass_knockback = 1.0
new g_zclassid3
public plugin_precache() { register_plugin("[ZP] Class: Shield Zombie", "0.1", "Valve-Life")
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_zclassid3) { give_item(id, "weapon_shield") } }
|