*================================================================================
-----------------------------------
-*- [BB] Default Zombie Classes -*-
-----------------------------------
~~~~~~~~~~~~~~~
- Description -
~~~~~~~~~~~~~~~
This plugin adds the default zombie classes from Zombie Plague
into Base Builder. All credit belongs to MeRcyLeZZ.
All classes have been balanced, but feel free to edit them if
you are not satisfied.
================================================================================*/
#include <amxmodx>
#include <basebuilder>
#include <hamsandwich>
#include <fun>
#include <cstrike>
#include <fakemeta>
#include <engine>
new bool:has_jp[33];
new const CVAR_JP_SPEED[] = "jp_speed";
/*================================================================================
[Plugin Customization]
=================================================================================*/
// Asd Zombie Attributes
new const zclass1_name[] = { "Asd Zombi" }
new const zclass1_info[] = { "asd" }
new const zclass1_model[] = { "sb_bika_zombi" }
new const zclass1_clawmodel[] = { "sb_bika_kez" }
const zclass1_health = 5000
const zclass1_speed = 360
const Float:zclass1_gravity = 1.0
const zclass1_adminflags = ADMIN_ALL
// Alap Zombie Attributes
new const zclass2_name[] = { "Alap Zombi" }
new const zclass2_info[] = { "Alap képességek" }
new const zclass2_model[] = { "subb_classic" }
new const zclass2_clawmodel[] = { "sb_kez2" }
const zclass2_health = 5000
const zclass2_speed = 260
const Float:zclass2_gravity = 1.0
const zclass2_adminflags = ADMIN_ALL
// Gyors Zombie Attributes
new const zclass3_name[] = { "Gyors Zombi" }
new const zclass3_info[] = { "Gyosran fut" }
new const zclass3_model[] = { "subb_fast" }
new const zclass3_clawmodel[] = { "sb_kez2" }
const zclass3_health = 3500
const zclass3_speed = 425
const Float:zclass3_gravity = 1.0
const zclass3_adminflags = ADMIN_ALL
// Ugro Zombie Attributes
new const zclass4_name[] = { "Ugró Zombi" }
new const zclass4_info[] = { "Nagyobb ugrás" }
new const zclass4_model[] = { "subb_jumper" }
new const zclass4_clawmodel[] = { "sb_kez2" }
const zclass4_health = 3500
const zclass4_speed = 285
const Float:zclass4_gravity = 0.5
const zclass4_adminflags = ADMIN_ALL
// Repulo Vip Zombie Attributes
new const zclass5_name[] = { "Vip repülő" }
new const zclass5_info[] = { "Csak Vipnek: /buy" }
new const zclass5_model[] = { "subb_sarkany" }
new const zclass5_clawmodel[] = { "v_knife_sarkany.mdl" }
const zclass5_health = 250
const zclass5_speed = 250
const Float:zclass5_gravity = 0.01
const Float:zclass5_knockback = 2.0
const zclass5_adminflags = ADMIN_LEVEL_H
#define SARKANY
// Headcrab Zombie Attributes
new const zclass6_name[] = { "Headcrab Zombi" }
new const zclass6_info[] = { "Kicsi és gyors" }
new const zclass6_model[] = { "subb_head" }
new const zclass6_clawmodel[] = { "headcrab_t_knife.mdl" }
const zclass6_health = 500
const zclass6_speed = 800
const Float:zclass6_gravity = 0.65
const Float:zclass6_knockback = 2.5
const zclass6_adminflags = ADMIN_ALL
// Kutya Zombie Attributes
new const zclass7_name[] = { "Kutya Zombi" }
new const zclass7_info[] = { "Kutyás" }
new const zclass7_model[] = { "subb_kutya" }
new const zclass7_clawmodel[] = { "sb_kez2" }
const zclass7_health = 4000
const zclass7_speed = 310
const Float:zclass7_gravity = 1.0
const zclass7_adminflags = ADMIN_ALL
// +18 Zombie Attributes
new const zclass8_name[] = { "+18 Zombi" }
new const zclass8_info[] = { "Csak +18" }
new const zclass8_model[] = { "subb_18" }
new const zclass8_clawmodel[] = { "sub_admin_kez" }
const zclass8_health = 3500
const zclass8_speed = 510
const Float:zclass8_gravity = 1.0
const zclass8_adminflags = ADMIN_ALL
// Kuszo Zombie Attributes
new const zclass9_name[] = { "Kuszo Zombi" }
new const zclass9_info[] = { "Lassan kuszik" }
new const zclass9_model[] = { "subb_kuszo" }
new const zclass9_clawmodel[] = { "sub_admin_kez" }
const zclass9_health = 4000
const zclass9_speed = 200
const Float:zclass9_gravity = 1.0
const Float:zclass9_knockback = 2.5
const zclass9_adminflags = ADMIN_ALL
// Brunhilda Zombie Attributes
new const zclass10_name[] = { "Brunhilda Zombi" }
new const zclass10_info[] = { "SOK hp" }
new const zclass10_model[] = { "subb_brun" }
new const zclass10_clawmodel[] = { "sub_brun_kez" }
const zclass10_health = 14000
const zclass10_speed = 100
const Float:zclass10_gravity = 1.0
const Float:zclass10_knockback = 2.5
const zclass10_adminflags = ADMIN_ALL
//Repulo Zombie Attributes
new const zclass11_name[] = { "Repülő Zombi" }
new const zclass11_info[] = { "Kicsit repül" }
new const zclass11_model[] = { "subb_rep1" }
new const zclass11_clawmodel[] = { "v_knife_sarkany.mdl" }
const zclass11_health = 900
const zclass11_speed = 350
const Float:zclass11_gravity = 0.05
const Float:zclass11_knockback = 2.5
const zclass11_adminflags = ADMIN_ALL
//Eros Zombie Attributes
new const zclass12_name[] = { "Erős Zombi" }
new const zclass12_info[] = { "Erős, gyors, hps" }
new const zclass12_model[] = { "subb_ero" }
new const zclass12_clawmodel[] = { "sb_kez2" }
const zclass12_health = 6500
const zclass12_speed = 350
const Float:zclass12_gravity = 0.5
const Float:zclass12_knockback = 2.5
const zclass12_adminflags = ADMIN_ALL
// Admin Zombie Attributes
new const zclass13_name[] = { "Admin Zombi" }
new const zclass13_info[] = { "Csak adminnak" }
new const zclass13_model[] = { "subb_admin3" }
new const zclass13_clawmodel[] = { "sub_admin_kez" }
const zclass13_health = 6500
const zclass13_speed = 500
const Float:zclass13_gravity = 0.4
const Float:zclass13_knockback = 2.5
const zclass13_adminflags = ADMIN_LEVEL_B
// Vip Ugro Zombie Attributes
new const zclass14_name[] = { "Vip Ugro" }
new const zclass14_info[] = { "Csak Vipnek: /buy" }
new const zclass14_model[] = { "subb_vip3" }
new const zclass14_clawmodel[] = { "sub_vip1_kez" }
const zclass14_health = 6000
const zclass14_speed = 350
const Float:zclass14_gravity = 0.3
const Float:zclass14_knockback = 2.5
const zclass14_adminflags = ADMIN_LEVEL_H
// Vip Tank Zombie Attributes
new const zclass15_name[] = { "Vip Tank" }
new const zclass15_info[] = { "Csak Vipnek: /buy" }
new const zclass15_model[] = { "subb_vip2" }
new const zclass15_clawmodel[] = { "sub_vip2_kez" }
const zclass15_health = 9500
const zclass15_speed = 200
const Float:zclass15_gravity = 0.75
const Float:zclass15_knockback = 2.5
const zclass15_adminflags = ADMIN_LEVEL_H
// Vip Terminator Zombie Attributes
new const zclass16_name[] = { "Vip Terminator" }
new const zclass16_info[] = { "Csak Vipnek: /buy" }
new const zclass16_model[] = { "subb_vip4" }
new const zclass16_clawmodel[] = { "sub_admin_kez" }
const zclass16_health = 4500
const zclass16_speed = 400
const Float:zclass16_gravity = 0.65
const Float:zclass16_knockback = 2.5
const zclass16_adminflags = ADMIN_LEVEL_H
// Tanker Zombie Attributes
new const zclass17_name[] = { "Tanker Zombi" }
new const zclass17_info[] = { "Sok élet" }
new const zclass17_model[] = { "subb_tanker" }
new const zclass17_clawmodel[] = { "sb_kez2" }
const zclass17_health = 6500
const zclass17_speed = 210
const Float:zclass17_gravity = 1.0
const zclass17_adminflags = ADMIN_ALL
#define TANK_ARMOR 200
/*============================================================================*/
new g_zclass_tanker
new g_zclass_sarkany
// Zombie Classes MUST be registered on plugin_precache
public plugin_precache()
{
register_plugin("[BB] Default Zombie Classes", "6.5", "Tirant")
register_cvar(CVAR_JP_SPEED , "250");
// Register all classes
bb_register_zombie_class(zclass1_name, zclass1_info, zclass1_model, zclass1_clawmodel, zclass1_health, zclass1_speed, zclass1_gravity, 0.0, zclass1_adminflags)
bb_register_zombie_class(zclass2_name, zclass2_info, zclass2_model, zclass2_clawmodel, zclass2_health, zclass2_speed, zclass2_gravity, 0.0, zclass2_adminflags)
bb_register_zombie_class(zclass3_name, zclass3_info, zclass3_model, zclass3_clawmodel, zclass3_health, zclass3_speed, zclass3_gravity, 0.0, zclass3_adminflags)
bb_register_zombie_class(zclass4_name, zclass4_info, zclass4_model, zclass4_clawmodel, zclass4_health, zclass4_speed, zclass4_gravity, 0.0, zclass4_adminflags)
g_zclass_sarkany = bb_register_zombie_class(zclass5_name, zclass5_info, zclass5_model, zclass5_clawmodel, zclass5_health, zclass5_speed, zclass5_gravity, 0.0, zclass5_adminflags)
bb_register_zombie_class(zclass6_name, zclass6_info, zclass6_model, zclass6_clawmodel, zclass6_health, zclass6_speed, zclass6_gravity, 0.0, zclass6_adminflags)
bb_register_zombie_class(zclass7_name, zclass7_info, zclass7_model, zclass7_clawmodel, zclass7_health, zclass7_speed, zclass7_gravity, 0.0, zclass7_adminflags)
bb_register_zombie_class(zclass8_name, zclass8_info, zclass8_model, zclass8_clawmodel, zclass8_health, zclass8_speed, zclass8_gravity, 0.0, zclass8_adminflags)
bb_register_zombie_class(zclass9_name, zclass9_info, zclass9_model, zclass9_clawmodel, zclass9_health, zclass9_speed, zclass9_gravity, 0.0, zclass9_adminflags)
bb_register_zombie_class(zclass10_name, zclass10_info, zclass10_model, zclass10_clawmodel, zclass10_health, zclass10_speed, zclass10_gravity, 0.0, zclass10_adminflags)
bb_register_zombie_class(zclass11_name, zclass11_info, zclass11_model, zclass11_clawmodel, zclass11_health, zclass11_speed, zclass11_gravity, 0.0, zclass11_adminflags)
bb_register_zombie_class(zclass12_name, zclass12_info, zclass12_model, zclass12_clawmodel, zclass12_health, zclass12_speed, zclass12_gravity, 0.0, zclass12_adminflags)
bb_register_zombie_class(zclass13_name, zclass13_info, zclass13_model, zclass13_clawmodel, zclass13_health, zclass13_speed, zclass13_gravity, 0.0, zclass13_adminflags)
bb_register_zombie_class(zclass14_name, zclass14_info, zclass14_model, zclass14_clawmodel, zclass14_health, zclass14_speed, zclass14_gravity, 0.0, zclass14_adminflags)
bb_register_zombie_class(zclass15_name, zclass15_info, zclass15_model, zclass15_clawmodel, zclass15_health, zclass15_speed, zclass15_gravity, 0.0, zclass15_adminflags)
bb_register_zombie_class(zclass16_name, zclass16_info, zclass16_model, zclass16_clawmodel, zclass16_health, zclass16_speed, zclass16_gravity, 0.0, zclass16_adminflags)
g_zclass_tanker = bb_register_zombie_class(zclass17_name, zclass17_info, zclass17_model, zclass17_clawmodel, zclass17_health, zclass17_speed, zclass17_gravity, 0.0, zclass17_adminflags)
}
#if defined TANK_ARMOR
public plugin_init()
{
RegisterHam(Ham_Spawn, "player", "ham_PlayerSpawn_Post", 1)
}
public ham_PlayerSpawn_Post(id)
{
if (!is_user_alive(id))
return ;
if (bb_is_user_zombie(id) && bb_get_user_zombie_class(id) == g_zclass_tanker)
{
give_item(id, "item_assaultsuit");
cs_set_user_armor(id, TANK_ARMOR, CS_ARMOR_VESTHELM);
}
}
#endif
#if defined SARKANY
public client_PreThink(id)
{
if(!is_user_alive(id) || !zp_get_user_zombie(id)) return PLUGIN_CONTINUE
if(zp_get_user_zombie_class(id) != g_zclass_sarkany) return PLUGIN_CONTINUE
new Float:fAim[3] , Float:fVelocity[3];
VelocityByAim(id , get_cvar_num(CVAR_JP_SPEED) , fAim);
if(!(get_user_button(id) & IN_JUMP))
{
fVelocity[0] = fAim[0];
fVelocity[1] = fAim[1];
fVelocity[2] = fAim[2];
set_user_velocity(id , fVelocity);
fm_set_rendering(id, kRenderFxGlowShell, 255, 0, 0, kRenderNormal, 16);
}
return PLUGIN_CONTINUE;
}
public zp_user_infected_post(id, infector)
{
if (zp_get_user_zombie_class(id) == g_zclass_sarkany)
{
client_print(id,print_chat,"[ZP] Te Sárkány Zombi vagy!")
has_jp[id] = true
}
}
// Set entity's rendering type (from fakemeta_util)
stock fm_set_rendering(entity, fx = kRenderFxNone, r = 255, g = 255, b = 255, render = kRenderNormal, amount = 16)
{
static Float:color[3]
color[0] = float(r)
color[1] = float(g)
color[2] = float(b)
set_pev(entity, pev_renderfx, fx)
set_pev(entity, pev_rendercolor, color)
set_pev(entity, pev_rendermode, render)
set_pev(entity, pev_renderamt, float(amount))
}
#endif