Raised This Month: $32 Target: $400
 8% 

ZP Knife Menu


Post New Thread Reply   
 
Thread Tools Display Modes
RBE sLayeR
Member
Join Date: Jul 2019
Location: Republic of Kosovo
Old 08-26-2019 , 11:51   Re: ZP Knife Menu
Reply With Quote #11

ok ill share it later , because i need to translate knife menu to english and to change knife models
thanks
__________________
Copy-and-Paste was programmed by programmers for programmers actually
RBE sLayeR is offline
RBE sLayeR
Member
Join Date: Jul 2019
Location: Republic of Kosovo
Old 08-26-2019 , 13:33   Re: ZP Knife Menu
Reply With Quote #12

Quote:
Originally Posted by LearninG View Post
since you got a new knife menu you should provide it , so we can add things to it.
Here you go , the command which opens knife menu is say /knife
btw this knife menu shows only before infection , after infection when i say /knife it doesnt show up , so it would be good if you change it to show whenever you want !
Attached Files
File Type: sma Get Plugin or Get Source (zombie_plague40.sma - 180 views - 429.4 KB)
File Type: sma Get Plugin or Get Source (zp_addon_knifes.sma - 169 views - 55.3 KB)
__________________
Copy-and-Paste was programmed by programmers for programmers actually
RBE sLayeR is offline
DON KHAN 1
Senior Member
Join Date: Mar 2019
Location: Pakistan
Old 08-26-2019 , 14:02   Re: ZP Knife Menu
Reply With Quote #13

Try Now:
PHP Code:
#include <amxmodx>
#include <fun>
#include <fakemeta>
#include <hamsandwich>
#include <zombieplague>
 
#define PLUGIN  "[ZP] Addon: Knifes"
#define VERSION "NEW"
#define AUTHOR  "Mr.TheFold"
 
#define VIP ADMIN_IMMUNITY
#define ADMIN ADMIN_BAN
#define BOSS ADMIN_LEVEL_A
#define Gl.ADMIN ADMIN_LEVEL_B
#define OWNER ADMIN_RCON
 
new KNIFE1_V_MODEL[] = "models/KnifeMenu/v_knife3.mdl"
new KNIFE1_P_MODEL[] = "models/KnifeMenu/p_knife3.mdl"
 
new KNIFE2_V_MODEL[] = "models/KnifeMenu/v_knife2.mdl"
new KNIFE2_P_MODEL[] = "models/KnifeMenu/p_knife2.mdl"
 
new KNIFE3_V_MODEL[] = "models/KnifeMenu/v_knife1.mdl"
new KNIFE3_P_MODEL[] = "models/KnifeMenu/p_knife1.mdl"
 
new KNIFE4_V_MODEL[] = "models/KnifeMenu/v_knife4.mdl"
new KNIFE4_P_MODEL[] = "models/KnifeMenu/p_knife4.mdl"

new KNIFE5_V_MODEL[] = "models/KnifeMenu/v_knife5.mdl"
new KNIFE5_P_MODEL[] = "models/KnifeMenu/p_knife5.mdl"

new KNIFE6_V_MODEL[] = "models/KnifeMenu/v_knife8.mdl"
new KNIFE6_P_MODEL[] = "models/KnifeMenu/p_knife8.mdl"

new KNIFE7_V_MODEL[] = "models/zp_knife_menu/v_boss_hammer.mdl"
new KNIFE7_P_MODEL[] = "models/zp_knife_menu/p_boss_hammer.mdl"

new KNIFE8_V_MODEL[] = "models/KnifeMenu/v_knife6.mdl"
new KNIFE8_P_MODEL[] = "models/KnifeMenu/p_knife6.mdl"
 
new bool:g_has_strong[33]
new 
bool:g_has_katana[33]
new 
bool:g_has_combat[33]
new 
bool:g_has_hammer[33]
new 
bool:g_has_hammer1[33]
new 
bool:g_has_hammer2[33]
new 
bool:g_has_hammer3[33]
new 
bool:g_has_hammer4[33]
 
new 
g_knife_menug_vip_knife_menu
new cvar_knock_strongcvar_jump_strongcvar_speed_strongcvar_damage_strong
new cvar_knock_katanacvar_jump_katanacvar_speed_katanacvar_damage_katana
new cvar_knock_combatcvar_jump_combatcvar_speed_combatcvar_damage_combat
new cvar_knock_hammercvar_jump_hammercvar_speed_hammercvar_damage_hammer
new cvar_knock_hammer1cvar_jump_hammer1cvar_speed_hammer1cvar_damage_hammer1
new cvar_knock_hammer2cvar_jump_hammer2cvar_speed_hammer2cvar_damage_hammer2
new cvar_knock_hammer3cvar_jump_hammer3cvar_speed_hammer3cvar_damage_hammer3
new cvar_knock_hammer4cvar_jump_hammer4cvar_speed_hammer4cvar_damage_hammer4
 
new const g_sound_knife[] = { "items/gunpickup2.wav" }
 
new const 
strong_sounds[][] =
{
        
"CSO_Knifes/strong_draw.wav",
        
"CSO_Knifes/strong_hit_01.wav",
        
"CSO_Knifes/strong_hit_02.wav",
        
"CSO_Knifes/strong_hit_wall.wav",
        
"CSO_Knifes/strong_miss.wav",
        
"CSO_Knifes/strong_stab.wav"
}
 
new const 
katana_sounds[][] =
{
        
"CSO_Knifes/katana_draw.wav",
        
"CSO_Knifes/katana_hit_01.wav",
        
"CSO_Knifes/katana_hit_02.wav",
        
"CSO_Knifes/katana_hit_wall.wav",
        
"CSO_Knifes/katana_miss.wav",
        
"CSO_Knifes/katana_stab.wav"
}
 
new const 
combat_sounds[][] =
{
        
"CSO_Knifes/combat_draw.wav",
        
"CSO_Knifes/combat_hit_01.wav",
        
"CSO_Knifes/combat_hit_02.wav",
        
"CSO_Knifes/combat_hit_wall.wav",
        
"CSO_Knifes/combat_miss.wav",
        
"CSO_Knifes/combat_stab.wav"
}
 
new const 
hammer_sounds[][] =
{
        
"CSO_Knifes/hammer_draw.wav",
        
"CSO_Knifes/hammer_hit_01.wav",
        
"CSO_Knifes/hammer_hit_02.wav",
        
"CSO_Knifes/hammer_hit_wall.wav",
        
"CSO_Knifes/hammer_miss.wav",
        
"CSO_Knifes/hammer_stab.wav"
}

new const 
hammer1_sounds[][] =
{
        
"CSO_Knifes/hammer_draw.wav",
        
"CSO_Knifes/hammer_hit_01.wav",
        
"CSO_Knifes/hammer_hit_02.wav",
        
"CSO_Knifes/hammer_hit_wall.wav",
        
"CSO_Knifes/hammer_miss.wav",
        
"CSO_Knifes/hammer_stab.wav"
}

new const 
hammer2_sounds[][] =
{
        
"CSO_Knifes/hammer_draw.wav",
        
"CSO_Knifes/hammer_hit_01.wav",
        
"CSO_Knifes/hammer_hit_02.wav",
        
"CSO_Knifes/hammer_hit_wall.wav",
        
"CSO_Knifes/hammer_miss.wav",
        
"CSO_Knifes/hammer_stab.wav"
}

new const 
hammer3_sounds[][] =
{
        
"CSO_Knifes/hammer_draw.wav",
        
"CSO_Knifes/hammer_hit_01.wav",
        
"CSO_Knifes/hammer_hit_02.wav",
        
"CSO_Knifes/hammer_hit_wall.wav",
        
"CSO_Knifes/hammer_miss.wav",
        
"CSO_Knifes/hammer_stab.wav"
}

new const 
hammer4_sounds[][] =
{
        
"CSO_Knifes/hammer_draw.wav",
        
"CSO_Knifes/hammer_hit_01.wav",
        
"CSO_Knifes/hammer_hit_02.wav",
        
"CSO_Knifes/hammer_hit_wall.wav",
        
"CSO_Knifes/hammer_miss.wav",
        
"CSO_Knifes/hammer_stab.wav"
}

public 
plugin_init()
{
        
register_plugin(PLUGIN VERSION AUTHOR);
        
register_cvar("zp_addon_knife"VERSIONFCVAR_SERVER);
       
        
g_knife_menu menu_create("Knife Menu","menu_handle")
        
g_vip_knife_menu menu_create("Knife Menu","menu_handle_vip")
       
        
register_clcmd("say /knife","knifemenu",ADMIN_ALL,"knife_menu")
       
        
build_menu()
        
build_menu_vip()
       
        
register_event("CurWeapon","checkWeapon","be","1=1");
       
        
register_forward(FM_EmitSound"CEntity__EmitSound");
        
register_forward(FM_PlayerPreThink"fw_PlayerPreThink");
       
        
RegisterHam(Ham_TakeDamage"player""fw_TakeDamage");
        
RegisterHam(Ham_Use"func_tank""fw_UseStationary_Post"1)
        
RegisterHam(Ham_Use"func_tankmortar""fw_UseStationary_Post"1)
        
RegisterHam(Ham_Use"func_tankrocket""fw_UseStationary_Post"1)
        
RegisterHam(Ham_Use"func_tanklaser""fw_UseStationary_Post"1)
       
        
register_message(get_user_msgid("DeathMsg"), "message_DeathMsg");
       
        
register_clcmd("zm_knife_katana""clcmd_knife")
        
register_clcmd("zm_knife_hammer""clcmd_knife")
        
register_clcmd("zm_knife_combat""clcmd_knife")
        
register_clcmd("zm_knife_strong""clcmd_knife")
        
register_clcmd("zm_knife_hammer1""clcmd_knife")
        
register_clcmd("zm_knife_hammer2""clcmd_knife")
        
register_clcmd("zm_knife_hammer3""clcmd_knife")
        
register_clcmd("zm_knife_hammer4""clcmd_knife")
       
        
cvar_jump_strong register_cvar("zp_strong_jump""340.0")
        
cvar_speed_strong register_cvar("zp_strong_speed""275.0")
        
cvar_damage_strong register_cvar("zp_strong_damage""10.0")
        
cvar_knock_strong register_cvar("zp_strong_knockback""10.0")
       
        
cvar_jump_katana register_cvar("zp_katana_jump""380.0")
        
cvar_speed_katana register_cvar("zp_katana_speed""275.0")
        
cvar_damage_katana register_cvar("zp_katana_damage""5.0")
        
cvar_knock_katana register_cvar("zp_katana_knockback""2.4")
       
        
cvar_jump_combat register_cvar("zp_combat_jump""350.0")
        
cvar_speed_combat register_cvar("zp_combat_speed""300.0")
        
cvar_damage_combat register_cvar("zp_combat_damage""5.0")
        
cvar_knock_combat register_cvar("zp_combat_knockback""2.6")
       
        
cvar_jump_hammer register_cvar("zp_hammer_jump""400.0")
        
cvar_speed_hammer register_cvar("zp_hammer_speed""325.0")
        
cvar_damage_hammer register_cvar("zp_hammer_damage""16.0")
        
cvar_knock_hammer register_cvar("zp_hammer_knockback""14.0")
        
        
cvar_jump_hammer1 register_cvar("zp_hammer1_jump""420.0")
        
cvar_speed_hammer1 register_cvar("zp_hammer1_speed""350.0")
        
cvar_damage_hammer1 register_cvar("zp_hammer1_damage""18.0")
        
cvar_knock_hammer1 register_cvar("zp_hammer1_knockback""16.0")
        
        
cvar_jump_hammer2 register_cvar("zp_hammer2_jump""440.0")
        
cvar_speed_hammer2 register_cvar("zp_hammer2_speed""375.0")
        
cvar_damage_hammer2 register_cvar("zp_hammer2_damage""20.0")
        
cvar_knock_hammer2 register_cvar("zp_hammer2_knockback""18.0")
        
        
cvar_jump_hammer3 register_cvar("zp_hammer3_jump""460.0")
        
cvar_speed_hammer3 register_cvar("zp_hammer3_speed""400.0")
        
cvar_damage_hammer3 register_cvar("zp_hammer3_damage""22.0")
        
cvar_knock_hammer3 register_cvar("zp_hammer3_knockback""20.0")
        
        
cvar_jump_hammer4 register_cvar("zp_hammer4_jump""500.0")
        
cvar_speed_hammer4 register_cvar("zp_hammer4_speed""450.0")
        
cvar_damage_hammer4 register_cvar("zp_hammer4_damage""28.0")
        
cvar_knock_hammer4 register_cvar("zp_hammer4_knockback""26.0")
}
 
public 
client_connect(id)
{
        
g_has_strong[id] = true
        g_has_katana
[id] = false
        g_has_combat
[id] = false
        g_has_hammer
[id] = false
        g_has_hammer1
[id] = false
        g_has_hammer2
[id] = false
        g_has_hammer3
[id] = false
        g_has_hammer4
[id] = false
}
 
public 
client_disconnect(id)
{
        
g_has_strong[id] = false
        g_has_katana
[id] = false
        g_has_combat
[id] = false
        g_has_hammer
[id] = false
        g_has_hammer1
[id] = false
        g_has_hammer2
[id] = false
        g_has_hammer3
[id] = false
        g_has_hammer4
[id] = false
}
 
public 
plugin_precache()
{
        
precache_model(KNIFE1_V_MODEL)
        
precache_model(KNIFE1_P_MODEL)
        
precache_model(KNIFE2_V_MODEL)
        
precache_model(KNIFE2_P_MODEL)
        
precache_model(KNIFE3_V_MODEL)
        
precache_model(KNIFE3_P_MODEL)
        
precache_model(KNIFE4_V_MODEL)
        
precache_model(KNIFE4_P_MODEL)
        
precache_model(KNIFE5_V_MODEL)
        
precache_model(KNIFE5_P_MODEL)
        
precache_model(KNIFE6_V_MODEL)
        
precache_model(KNIFE6_P_MODEL)
        
precache_model(KNIFE7_V_MODEL)
        
precache_model(KNIFE7_P_MODEL)
        
precache_model(KNIFE8_V_MODEL)
        
precache_model(KNIFE8_P_MODEL)
       
        
precache_generic("sprites/zm_knife_katana.txt")
        
precache_generic("sprites/zm_knife_hammer.txt")
        
precache_generic("sprites/zm_knife_combat.txt")
        
precache_generic("sprites/zm_knife_strong.txt")
       
        
precache_generic("sprites/CSO_Knifes/640hud7.spr")
        
precache_generic("sprites/CSO_Knifes/640hud53.spr")
        
precache_generic("sprites/CSO_Knifes/640hud38.spr")
        
precache_generic("sprites/CSO_Knifes/640hud40.spr")
       
        
precache_sound(g_sound_knife)
       
        for(new 
0sizeof strong_soundsi++)
        
precache_sound(strong_sounds[i])
       
        for(new 
0sizeof katana_soundsi++)
        
precache_sound(katana_sounds[i])
       
        for(new 
0sizeof combat_soundsi++)
        
precache_sound(combat_sounds[i])
       
        for(new 
0sizeof hammer_soundsi++)
        
precache_sound(hammer_sounds[i])
        
        for(new 
0sizeof hammer1_soundsi++)
        
precache_sound(hammer1_sounds[i])
        
        for(new 
0sizeof hammer2_soundsi++)
        
precache_sound(hammer2_sounds[i])
        
        for(new 
0sizeof hammer3_soundsi++)
        
precache_sound(hammer3_sounds[i])
        
        for(new 
0sizeof hammer4_soundsi++)
        
precache_sound(hammer4_sounds[i])
}
 
public 
clcmd_knife(id)
{
        if(!
is_user_alive(id))
        return;
       
        
engclient_cmd(id"weapon_knife")
}
 
build_menu()
{
        
menu_additem(g_knife_menu"[\rÐ\w] Gravity""2")
        
menu_additem(g_knife_menu"[\rÐ\w] Speed""3")        
        
menu_additem(g_knife_menu"[\rÐ\w] Damage^n""1")
        
menu_additem(g_knife_menu"[\rÐ\w] \yVIP""4")
        
menu_additem(g_knife_menu"[\rÐ\w] \yADMIN""5")
        
menu_additem(g_knife_menu"[\rÐ\w] \yBOSS^n""6")
        
menu_additem(g_knife_menu"[\rÐ\w] \rGl.ADMIN^n""7")
        
menu_additem(g_knife_menu"[\rÐ\w] \dOWNER""8")
        
menu_setprop(g_knife_menuMPROP_PERPAGE0)
}
 
build_menu_vip()
{
        
menu_additem(g_vip_knife_menu"[\rÐ\w] Gravity""2")
        
menu_additem(g_vip_knife_menu"[\rÐ\w] Speed""3")        
        
menu_additem(g_vip_knife_menu"[\rÐ\w] Damage^n""1")
        
menu_additem(g_vip_knife_menu"[\rÐ\w] \yVIP""4")
        
menu_additem(g_vip_knife_menu"[\rÐ\w] \yADMIN""5")
        
menu_additem(g_vip_knife_menu"[\rÐ\w] \yBOSS^n""6")
        
menu_additem(g_vip_knife_menu"[\rÐ\w] \rGl.ADMIN^n""7")
        
menu_additem(g_vip_knife_menu"[\rÐ\w] \dOWNER""8")
        
menu_setprop(g_vip_knife_menuMPROP_PERPAGE0)
}
 
public 
knifemenu(id)
{
                
menu_display(id, !(get_user_flags(id) & VIP) ? g_knife_menu g_vip_knife_menu0)
}
 
public 
menu_handle_vip(idmenuitem)
{
        if(
item 0)
        return 
PLUGIN_CONTINUE
       
        
new cmd[2];
        new 
accesscallback;
        
menu_item_getinfo(menuitemaccesscmd,2,_,_callback);
        new 
choice str_to_num(cmd)
       
        switch (
choice)
        {
                case 
1buy_knife1(id)
                case 
2buy_knife2(id)
                case 
3buy_knife3(id)
                case 
4buy_knife4(id)
                case 
5buy_knife5(id)
                case 
6buy_knife6(id)
                case 
7buy_knife7(id)
                case 
8buy_knife8(id)
        }
        return 
PLUGIN_HANDLED;
}
 
public 
menu_handle(idmenuitem)
{
        if(
item 0)
        return 
PLUGIN_CONTINUE
       
        
new cmd[2];
        new 
accesscallback;
        
menu_item_getinfo(menuitemaccesscmd,2,_,_callback);
        new 
choice str_to_num(cmd)
       
        switch (
choice)
        {
                case 
1buy_knife1(id)
                case 
2buy_knife2(id)
                case 
3buy_knife3(id)
                case 
4buy_knife4(id)
                case 
5buy_knife5(id)
                case 
6buy_knife6(id)
                case 
7buy_knife7(id)
                case 
8buy_knife8(id)
        }
        return 
PLUGIN_HANDLED;
}
 
public 
buy_knife1(id)
{
        
g_has_strong[id] = true
        g_has_katana
[id] = false
        g_has_combat
[id] = false
        g_has_hammer
[id] = false
        g_has_hammer1
[id] = false
        g_has_hammer2
[id] = false
        g_has_hammer3
[id] = false
        g_has_hammer4
[id] = false
       
        set_sprite
(id)
       
        
message_begin(MSG_ONEget_user_msgid("WeapPickup"), {0,0,0}, id)
        
write_byte(29)
        
message_end()
       
        
checkWeapon(id)
       
        
engfunc(EngFunc_EmitSoundidCHAN_BODYg_sound_knife1.0ATTN_NORM0PITCH_NORM)
}
 
public 
buy_knife2(id)
{
        
g_has_strong[id] = false
        g_has_katana
[id] = true
        g_has_combat
[id] = false
        g_has_hammer
[id] = false
        g_has_hammer1
[id] = false
        g_has_hammer2
[id] = false
        g_has_hammer3
[id] = false
        g_has_hammer4
[id] = false
       
        set_sprite
(id)
       
        
message_begin(MSG_ONEget_user_msgid("WeapPickup"), {0,0,0}, id)
        
write_byte(29)
        
message_end()
       
        
checkWeapon(id)
       
        
engfunc(EngFunc_EmitSoundidCHAN_BODYg_sound_knife1.0ATTN_NORM0PITCH_NORM)
}
 
public 
buy_knife3(id)
{
        
g_has_strong[id] = false
        g_has_katana
[id] = false
        g_has_combat
[id] = true
        g_has_hammer
[id] = false
        g_has_hammer1
[id] = false
        g_has_hammer2
[id] = false
        g_has_hammer3
[id] = false
        g_has_hammer4
[id] = false
       
        set_sprite
(id)
       
        
message_begin(MSG_ONEget_user_msgid("WeapPickup"), {0,0,0}, id)
        
write_byte(29)
        
message_end()
       
        
checkWeapon(id)
       
        
engfunc(EngFunc_EmitSoundidCHAN_BODYg_sound_knife1.0ATTN_NORM0PITCH_NORM)
}
 
public 
buy_knife4(id)
{
        if (
get_user_flags(id) & VIP)
        {
                
g_has_strong[id] = false
                g_has_katana
[id] = false
                g_has_combat
[id] = false
                g_has_hammer
[id] = true
                g_has_hammer1
[id] = false
                g_has_hammer2
[id] = false
                g_has_hammer3
[id] = false
                g_has_hammer4
[id] = false
                
               
                set_sprite
(id)
               
                
message_begin(MSG_ONEget_user_msgid("WeapPickup"), {0,0,0}, id)
                
write_byte(29)
                
message_end()
               
                
checkWeapon(id)
               
                
engfunc(EngFunc_EmitSoundidCHAN_BODYg_sound_knife1.0ATTN_NORM0PITCH_NORM)
        }
        else
        {
                
knifemenu(id)
                
ChatColor(id"!g[RBE] !yThis knife !yis avliabile only for !gVIP!")
        }
       
}

public 
buy_knife5(id)
{
        if (
get_user_flags(id) & ADMIN)
        {
                
g_has_strong[id] = false
                g_has_katana
[id] = false
                g_has_combat
[id] = false
                g_has_hammer
[id] = false
                g_has_hammer1
[id] = true
                g_has_hammer2
[id] = false
                g_has_hammer3
[id] = false
                g_has_hammer4
[id] = false
                
               
                set_sprite
(id)
               
                
message_begin(MSG_ONEget_user_msgid("WeapPickup"), {0,0,0}, id)
                
write_byte(29)
                
message_end()
               
                
checkWeapon(id)
               
                
engfunc(EngFunc_EmitSoundidCHAN_BODYg_sound_knife1.0ATTN_NORM0PITCH_NORM)
        }
        else
        {
                
knifemenu(id)
                
ChatColor(id"!g[RBE] !yThis knife !yis avliabile only for !gVIP!")
        }
       
}

public 
buy_knife6(id)
{
        if (
get_user_flags(id) & BOSS)
        {
                
g_has_strong[id] = false
                g_has_katana
[id] = false
                g_has_combat
[id] = false
                g_has_hammer
[id] = false
                g_has_hammer1
[id] = false
                g_has_hammer2
[id] = true
                g_has_hammer3
[id] = false
                g_has_hammer4
[id] = false
                
               
                set_sprite
(id)
               
                
message_begin(MSG_ONEget_user_msgid("WeapPickup"), {0,0,0}, id)
                
write_byte(29)
                
message_end()
               
                
checkWeapon(id)
               
                
engfunc(EngFunc_EmitSoundidCHAN_BODYg_sound_knife1.0ATTN_NORM0PITCH_NORM)
        }
        else
        {
                
knifemenu(id)
                
ChatColor(id"!g[RBE] !yThis knife !yis avliabile only for !gADMIN!")
        }
       
}

public 
buy_knife7(id)
{
        if (
get_user_flags(id) & Gl.ADMIN)
        {
                
g_has_strong[id] = false
                g_has_katana
[id] = false
                g_has_combat
[id] = false
                g_has_hammer
[id] = false
                g_has_hammer1
[id] = false
                g_has_hammer2
[id] = false
                g_has_hammer3
[id] = true
                g_has_hammer4
[id] = false
                
               
                set_sprite
(id)
               
                
message_begin(MSG_ONEget_user_msgid("WeapPickup"), {0,0,0}, id)
                
write_byte(29)
                
message_end()
               
                
checkWeapon(id)
               
                
engfunc(EngFunc_EmitSoundidCHAN_BODYg_sound_knife1.0ATTN_NORM0PITCH_NORM)
        }
        else
        {
                
knifemenu(id)
                
ChatColor(id"!g[RBE] !yThis knife !yis avliabile only for !gADMIN!")
        }
       
}

public 
buy_knife8(id)
{
        if (
get_user_flags(id) & OWNER)
        {
                
g_has_strong[id] = false
                g_has_katana
[id] = false
                g_has_combat
[id] = false
                g_has_hammer
[id] = false
                g_has_hammer1
[id] = false
                g_has_hammer2
[id] = false
                g_has_hammer3
[id] = false
                g_has_hammer4
[id] = true
                
               
                set_sprite
(id)
               
                
message_begin(MSG_ONEget_user_msgid("WeapPickup"), {0,0,0}, id)
                
write_byte(29)
                
message_end()
               
                
checkWeapon(id)
               
                
engfunc(EngFunc_EmitSoundidCHAN_BODYg_sound_knife1.0ATTN_NORM0PITCH_NORM)
        }
        else
        {
                
knifemenu(id)
                
ChatColor(id"!g[RBE] !yThis knife !yis avliabile only for !gOWNER!")
        }
       
}
 
public 
fw_UseStationary_Post(entitycalleractivatoruse_type)
{
        if (
use_type == && is_user_connected(caller))
        
checkWeapon(caller)
}
 
public 
zp_user_infected_post(id)
{
        
set_sprite(id)
}
 
public 
checkWeapon(id)
{
        if(
get_user_weapon(id) != CSW_KNIFE)
        return;
       
        if (
g_has_strong[id] || g_has_katana[id] || g_has_combat[id] || g_has_hammer[id] || g_has_hammer1[id] || g_has_hammer2[id] || g_has_hammer3[id] || g_has_hammer4[id])
        {
                
checkModel(id)
        }
        return;
}
 
public 
checkModel(id)
{
        if (
zp_get_user_zombie(id))
        {
                
set_sprite(id)
                return;
        }
       
        if(
get_user_weapon(id) != CSW_KNIFE)
        return;
       
        if (
g_has_strong[id])
        {
                
set_pev(idpev_viewmodel2KNIFE1_V_MODEL)
                
set_pev(idpev_weaponmodel2KNIFE1_P_MODEL)
        }
        else if (
g_has_katana[id])
        {
                
set_pev(idpev_viewmodel2KNIFE2_V_MODEL)
                
set_pev(idpev_weaponmodel2KNIFE2_P_MODEL)
        }
        else if (
g_has_combat[id])
        {
                
set_pev(idpev_viewmodel2KNIFE3_V_MODEL)
                
set_pev(idpev_weaponmodel2KNIFE3_P_MODEL)
        }
        else if (
g_has_hammer[id])
        {
                
set_pev(idpev_viewmodel2KNIFE4_V_MODEL)
                
set_pev(idpev_weaponmodel2KNIFE4_P_MODEL)
        }
        else if (
g_has_hammer1[id])
        {
                
set_pev(idpev_viewmodel2KNIFE5_V_MODEL)
                
set_pev(idpev_weaponmodel2KNIFE5_P_MODEL)
        }
        else if (
g_has_hammer2[id])
        {
                
set_pev(idpev_viewmodel2KNIFE6_V_MODEL)
                
set_pev(idpev_weaponmodel2KNIFE6_P_MODEL)
        }
        else if (
g_has_hammer3[id])
        {
                
set_pev(idpev_viewmodel2KNIFE7_V_MODEL)
                
set_pev(idpev_weaponmodel2KNIFE7_P_MODEL)
        }
        else if (
g_has_hammer4[id])
        {
                
set_pev(idpev_viewmodel2KNIFE8_V_MODEL)
                
set_pev(idpev_weaponmodel2KNIFE8_P_MODEL)
        }
        
set_sprite(id)
}
 
public 
CEntity__EmitSound(idchannel, const sample[], Float:volumeFloat:attnflagspitch)
{
        if (!
is_user_connected(id))
        return 
HAM_IGNORED
       
        
if (zp_get_user_zombie(id))
        return 
HAM_IGNORED
       
        
if (sample[8] == 'k' && sample[9] == 'n' && sample[10] == 'i')
        {
               
                if (
sample[14] == 'd')
                {
                        if(
g_has_strong[id])
                        
emit_sound(idchannelstrong_sounds[0], volumeattnflagspitch)
                        if(
g_has_katana[id])
                        
emit_sound(idchannelkatana_sounds[0], volumeattnflagspitch)
                        if(
g_has_combat[id])
                        
emit_sound(idchannelcombat_sounds[0], volumeattnflagspitch)
                        if(
g_has_hammer[id])
                        
emit_sound(idchannelhammer_sounds[0], volumeattnflagspitch)
                        if(
g_has_hammer1[id])
                        
emit_sound(idchannelhammer1_sounds[0], volumeattnflagspitch)
                        if(
g_has_hammer2[id])
                        
emit_sound(idchannelhammer2_sounds[0], volumeattnflagspitch)
                        if(
g_has_hammer3[id])
                        
emit_sound(idchannelhammer3_sounds[0], volumeattnflagspitch)
                        if(
g_has_hammer4[id])
                        
emit_sound(idchannelhammer4_sounds[0], volumeattnflagspitch)
                }
                else if (
sample[14] == 'h')
                {
                        if (
sample[17] == 'w')
                        {
                                if(
g_has_strong[id])
                                
emit_sound(idchannelstrong_sounds[3], volumeattnflagspitch)
                                if(
g_has_katana[id])
                                
emit_sound(idchannelkatana_sounds[3], volumeattnflagspitch)
                                if(
g_has_combat[id])
                                
emit_sound(idchannelcombat_sounds[3], volumeattnflagspitch)
                                if(
g_has_hammer[id])
                                
emit_sound(idchannelhammer_sounds[3], volumeattnflagspitch)
                                if(
g_has_hammer1[id])
                                
emit_sound(idchannelhammer1_sounds[3], volumeattnflagspitch)
                                if(
g_has_hammer2[id])
                                
emit_sound(idchannelhammer2_sounds[3], volumeattnflagspitch)
                                if(
g_has_hammer3[id])
                                
emit_sound(idchannelhammer3_sounds[3], volumeattnflagspitch)
                                if(
g_has_hammer4[id])
                                
emit_sound(idchannelhammer4_sounds[3], volumeattnflagspitch)
                        }
                        else
                        {
                                if(
g_has_strong[id])
                                
emit_sound(idchannelstrong_sounds[random_num(1,2)], volumeattnflagspitch)
                                if(
g_has_katana[id])
                                
emit_sound(idchannelkatana_sounds[random_num(1,2)], volumeattnflagspitch)
                                if(
g_has_combat[id])
                                
emit_sound(idchannelcombat_sounds[random_num(1,2)], volumeattnflagspitch)
                                if(
g_has_hammer[id])
                                
emit_sound(idchannelhammer_sounds[random_num(1,2)], volumeattnflagspitch)
                                if(
g_has_hammer1[id])
                                
emit_sound(idchannelhammer1_sounds[random_num(1,2)], volumeattnflagspitch)
                                if(
g_has_hammer2[id])
                                
emit_sound(idchannelhammer2_sounds[random_num(1,2)], volumeattnflagspitch)
                                if(
g_has_hammer3[id])
                                
emit_sound(idchannelhammer3_sounds[random_num(1,2)], volumeattnflagspitch)
                                if(
g_has_hammer4[id])
                                
emit_sound(idchannelhammer4_sounds[random_num(1,2)], volumeattnflagspitch)
                        }
                }
                else
                {
                        if (
sample[15] == 'l')
                        {
                                if(
g_has_strong[id])
                                
emit_sound(idchannelstrong_sounds[4], volumeattnflagspitch)
                                if(
g_has_katana[id])
                                
emit_sound(idchannelkatana_sounds[4], volumeattnflagspitch)
                                if(
g_has_combat[id])
                                
emit_sound(idchannelcombat_sounds[4], volumeattnflagspitch)
                                if(
g_has_hammer[id])
                                
emit_sound(idchannelhammer_sounds[4], volumeattnflagspitch)
                                if(
g_has_hammer1[id])
                                
emit_sound(idchannelhammer1_sounds[4], volumeattnflagspitch)
                                if(
g_has_hammer2[id])
                                
emit_sound(idchannelhammer2_sounds[4], volumeattnflagspitch)
                                if(
g_has_hammer3[id])
                                
emit_sound(idchannelhammer3_sounds[4], volumeattnflagspitch)
                                if(
g_has_hammer4[id])
                                
emit_sound(idchannelhammer4_sounds[4], volumeattnflagspitch)
                        }
                        else
                        {
                                if(
g_has_strong[id])
                                
emit_sound(idchannelstrong_sounds[5], volumeattnflagspitch)
                                if(
g_has_katana[id] )
                                
emit_sound(idchannelkatana_sounds[5], volumeattnflagspitch)
                                if(
g_has_combat[id] )
                                
emit_sound(idchannelcombat_sounds[5], volumeattnflagspitch)
                                if(
g_has_hammer[id])
                                
emit_sound(idchannelhammer_sounds[5], volumeattnflagspitch)
                                if(
g_has_hammer1[id])
                                
emit_sound(idchannelhammer1_sounds[5], volumeattnflagspitch)
                                if(
g_has_hammer2[id])
                                
emit_sound(idchannelhammer2_sounds[5], volumeattnflagspitch)
                                if(
g_has_hammer3[id])
                                
emit_sound(idchannelhammer3_sounds[5], volumeattnflagspitch)
                                if(
g_has_hammer4[id])
                                
emit_sound(idchannelhammer4_sounds[5], volumeattnflagspitch)
                        }
                }
                return 
HAM_SUPERCEDE
        
}
        return 
HAM_IGNORED
}
 
public 
fw_PlayerPreThink(id)
{
        if(!
is_user_alive(id) || zp_get_user_zombie(id))
        return 
FMRES_IGNORED
       
        
new temp[2], weapon get_user_weapon(idtemp[0], temp[1])
       
        if (
weapon == CSW_KNIFE && g_has_strong[id])
        {
                
set_user_maxspeed(id,get_pcvar_float(cvar_speed_strong))
               
                if ((
pev(idpev_button) & IN_JUMP) && !(pev(idpev_oldbuttons) & IN_JUMP))
                {
                        new 
flags pev(idpev_flags)
                        new 
waterlvl pev(idpev_waterlevel)
                       
                        if (!(
flags FL_ONGROUND))
                        return 
FMRES_IGNORED
                       
                        
if (flags FL_WATERJUMP)
                        return 
FMRES_IGNORED
                       
                        
if (waterlvl 1)
                        return 
FMRES_IGNORED
                       
                        
new Float:fVelocity[3]
                        
pev(idpev_velocityfVelocity)
                       
                        
fVelocity[2] += get_pcvar_num(cvar_jump_strong)
                       
                        
set_pev(idpev_velocityfVelocity)
                        
set_pev(idpev_gaitsequence6)
                }
        }
       
        if(
weapon == CSW_KNIFE && g_has_katana[id])
        {
                
set_user_maxspeed(id,get_pcvar_float(cvar_speed_katana))
               
                if ((
pev(idpev_button) & IN_JUMP) && !(pev(idpev_oldbuttons) & IN_JUMP))
                {
                        new 
flags pev(idpev_flags)
                        new 
waterlvl pev(idpev_waterlevel)
                       
                        if (!(
flags FL_ONGROUND))
                        return 
FMRES_IGNORED
                       
                        
if (flags FL_WATERJUMP)
                        return 
FMRES_IGNORED
                       
                        
if (waterlvl 1)
                        return 
FMRES_IGNORED
                       
                        
new Float:fVelocity[3]
                        
pev(idpev_velocityfVelocity)
                       
                        
fVelocity[2] += get_pcvar_num(cvar_jump_katana)
                       
                        
set_pev(idpev_velocityfVelocity)
                        
set_pev(idpev_gaitsequence6)
                }
        }
       
        if(
weapon == CSW_KNIFE && g_has_combat[id])
        {
                if ((
pev(idpev_button) & IN_JUMP) && !(pev(idpev_oldbuttons) & IN_JUMP))
                {
                        new 
flags pev(idpev_flags)
                        new 
waterlvl pev(idpev_waterlevel)
                       
                        if (!(
flags FL_ONGROUND))
                        return 
FMRES_IGNORED
                       
                        
if (flags FL_WATERJUMP)
                        return 
FMRES_IGNORED
                       
                        
if (waterlvl 1)
                        return 
FMRES_IGNORED
                       
                        
new Float:fVelocity[3]
                        
pev(idpev_velocityfVelocity)
                       
                        
fVelocity[2] += get_pcvar_num(cvar_jump_combat)
                       
                        
set_pev(idpev_velocityfVelocity)
                        
set_pev(idpev_gaitsequence6)
                }
               
                
set_user_maxspeed(id,get_pcvar_float(cvar_speed_combat))
        }
        if (
weapon == CSW_KNIFE && g_has_hammer[id])
        {
                if ((
pev(idpev_button) & IN_JUMP) && !(pev(idpev_oldbuttons) & IN_JUMP))
                {
                        new 
flags pev(idpev_flags)
                        new 
waterlvl pev(idpev_waterlevel)
                       
                        if (!(
flags FL_ONGROUND))
                        return 
FMRES_IGNORED
                       
                        
if (flags FL_WATERJUMP)
                        return 
FMRES_IGNORED
                       
                        
if (waterlvl 1)
                        return 
FMRES_IGNORED
                       
                        
new Float:fVelocity[3]
                        
pev(idpev_velocityfVelocity)
                       
                        
fVelocity[2] += get_pcvar_num(cvar_jump_hammer)
                       
                        
set_pev(idpev_velocityfVelocity)
                        
set_pev(idpev_gaitsequence6)
                }
               
                
set_user_maxspeed(idget_pcvar_float(cvar_speed_hammer))
        }
        if (
weapon == CSW_KNIFE && g_has_hammer1[id])
        {
                if ((
pev(idpev_button) & IN_JUMP) && !(pev(idpev_oldbuttons) & IN_JUMP))
                {
                        new 
flags pev(idpev_flags)
                        new 
waterlvl pev(idpev_waterlevel)
                       
                        if (!(
flags FL_ONGROUND))
                        return 
FMRES_IGNORED
                       
                        
if (flags FL_WATERJUMP)
                        return 
FMRES_IGNORED
                       
                        
if (waterlvl 1)
                        return 
FMRES_IGNORED
                       
                        
new Float:fVelocity[3]
                        
pev(idpev_velocityfVelocity)
                       
                        
fVelocity[2] += get_pcvar_num(cvar_jump_hammer1)
                       
                        
set_pev(idpev_velocityfVelocity)
                        
set_pev(idpev_gaitsequence6)
                }
               
                
set_user_maxspeed(idget_pcvar_float(cvar_speed_hammer1))
        }
        if (
weapon == CSW_KNIFE && g_has_hammer2[id])
        {
                if ((
pev(idpev_button) & IN_JUMP) && !(pev(idpev_oldbuttons) & IN_JUMP))
                {
                        new 
flags pev(idpev_flags)
                        new 
waterlvl pev(idpev_waterlevel)
                       
                        if (!(
flags FL_ONGROUND))
                        return 
FMRES_IGNORED
                       
                        
if (flags FL_WATERJUMP)
                        return 
FMRES_IGNORED
                       
                        
if (waterlvl 1)
                        return 
FMRES_IGNORED
                       
                        
new Float:fVelocity[3]
                        
pev(idpev_velocityfVelocity)
                       
                        
fVelocity[2] += get_pcvar_num(cvar_jump_hammer2)
                       
                        
set_pev(idpev_velocityfVelocity)
                        
set_pev(idpev_gaitsequence6)
                }
               
                
set_user_maxspeed(idget_pcvar_float(cvar_speed_hammer2))
        }
        if (
weapon == CSW_KNIFE && g_has_hammer3[id])
        {
                if ((
pev(idpev_button) & IN_JUMP) && !(pev(idpev_oldbuttons) & IN_JUMP))
                {
                        new 
flags pev(idpev_flags)
                        new 
waterlvl pev(idpev_waterlevel)
                       
                        if (!(
flags FL_ONGROUND))
                        return 
FMRES_IGNORED
                       
                        
if (flags FL_WATERJUMP)
                        return 
FMRES_IGNORED
                       
                        
if (waterlvl 1)
                        return 
FMRES_IGNORED
                       
                        
new Float:fVelocity[3]
                        
pev(idpev_velocityfVelocity)
                       
                        
fVelocity[2] += get_pcvar_num(cvar_jump_hammer3)
                       
                        
set_pev(idpev_velocityfVelocity)
                        
set_pev(idpev_gaitsequence6)
                }
               
                
set_user_maxspeed(idget_pcvar_float(cvar_speed_hammer3))
        }
        if (
weapon == CSW_KNIFE && g_has_hammer4[id])
        {
                if ((
pev(idpev_button) & IN_JUMP) && !(pev(idpev_oldbuttons) & IN_JUMP))
                {
                        new 
flags pev(idpev_flags)
                        new 
waterlvl pev(idpev_waterlevel)
                       
                        if (!(
flags FL_ONGROUND))
                        return 
FMRES_IGNORED
                       
                        
if (flags FL_WATERJUMP)
                        return 
FMRES_IGNORED
                       
                        
if (waterlvl 1)
                        return 
FMRES_IGNORED
                       
                        
new Float:fVelocity[3]
                        
pev(idpev_velocityfVelocity)
                       
                        
fVelocity[2] += get_pcvar_num(cvar_jump_hammer4)
                       
                        
set_pev(idpev_velocityfVelocity)
                        
set_pev(idpev_gaitsequence6)
                }
               
                
set_user_maxspeed(idget_pcvar_float(cvar_speed_hammer4))
        }
        return 
FMRES_IGNORED
}
 
public 
fw_TakeDamage(victiminflictorattackerFloat:damagedamage_type)
{
        if(!
is_user_connected(attacker))
        return 
HAM_IGNORED
       
        
if(zp_get_user_zombie(attacker))
        return 
HAM_IGNORED
       
        
if(get_user_weapon(attacker) == CSW_KNIFE)
        {
               
                if (
g_has_strong[attacker])
                {
                        
SetHamParamFloat(4damage get_pcvar_float(cvar_damage_strong))
                       
                        new 
Float:vec[3];
                        new 
Float:oldvelo[3];
                        
pev(victimpev_velocityoldvelo);
                        
create_velocity_vector(victim attacker vec);
                        
vec[0] += oldvelo[0] + get_pcvar_float(cvar_knock_strong);
                        
vec[1] += oldvelo[1] + 0;
                        
set_pev(victimpev_velocityvec);
                }
                else if (
g_has_katana[attacker])
                {
                        
SetHamParamFloat(4damage get_pcvar_float(cvar_damage_katana))
                       
                        new 
Float:vec[3];
                        new 
Float:oldvelo[3];
                        
pev(victimpev_velocityoldvelo);
                        
create_velocity_vector(victim attacker vec);
                        
vec[0] += oldvelo[0] + get_pcvar_float(cvar_knock_katana);
                        
vec[1] += oldvelo[1] + 0;
                        
set_pev(victimpev_velocityvec);
                }
                else if (
g_has_combat[attacker])
                {
                        
SetHamParamFloat(4damage get_pcvar_float(cvar_damage_combat))
                       
                        new 
Float:vec[3];
                        new 
Float:oldvelo[3];
                        
pev(victimpev_velocityoldvelo);
                        
create_velocity_vector(victim attacker vec);
                        
vec[0] += oldvelo[0] + get_pcvar_float(cvar_knock_combat);
                        
vec[1] += oldvelo[1] + 0;
                        
set_pev(victimpev_velocityvec);
                }
                else if (
g_has_hammer[attacker])
                {
                        
SetHamParamFloat(4damage get_pcvar_float(cvar_damage_hammer))
                       
                        new 
Float:vec[3];
                        new 
Float:oldvelo[3];
                        
pev(victimpev_velocityoldvelo);
                        
create_velocity_vector(victim attacker vec);
                        
vec[0] += oldvelo[0] + get_pcvar_float(cvar_knock_hammer);
                        
vec[1] += oldvelo[1] + 0;
                        
set_pev(victimpev_velocityvec);
                }
                else if (
g_has_hammer1[attacker])
                {
                        
SetHamParamFloat(4damage get_pcvar_float(cvar_damage_hammer1))
                       
                        new 
Float:vec[3];
                        new 
Float:oldvelo[3];
                        
pev(victimpev_velocityoldvelo);
                        
create_velocity_vector(victim attacker vec);
                        
vec[0] += oldvelo[0] + get_pcvar_float(cvar_knock_hammer1);
                        
vec[1] += oldvelo[1] + 0;
                        
set_pev(victimpev_velocityvec);
                }
                else if (
g_has_hammer2[attacker])
                {
                        
SetHamParamFloat(4damage get_pcvar_float(cvar_damage_hammer2))
                       
                        new 
Float:vec[3];
                        new 
Float:oldvelo[3];
                        
pev(victimpev_velocityoldvelo);
                        
create_velocity_vector(victim attacker vec);
                        
vec[0] += oldvelo[0] + get_pcvar_float(cvar_knock_hammer2);
                        
vec[1] += oldvelo[1] + 0;
                        
set_pev(victimpev_velocityvec);
                }
                else if (
g_has_hammer3[attacker])
                {
                        
SetHamParamFloat(4damage get_pcvar_float(cvar_damage_hammer3))
                       
                        new 
Float:vec[3];
                        new 
Float:oldvelo[3];
                        
pev(victimpev_velocityoldvelo);
                        
create_velocity_vector(victim attacker vec);
                        
vec[0] += oldvelo[0] + get_pcvar_float(cvar_knock_hammer3);
                        
vec[1] += oldvelo[1] + 0;
                        
set_pev(victimpev_velocityvec);
                }
                else if (
g_has_hammer4[attacker])
                {
                        
SetHamParamFloat(4damage get_pcvar_float(cvar_damage_hammer4))
                       
                        new 
Float:vec[3];
                        new 
Float:oldvelo[3];
                        
pev(victimpev_velocityoldvelo);
                        
create_velocity_vector(victim attacker vec);
                        
vec[0] += oldvelo[0] + get_pcvar_float(cvar_knock_hammer4);
                        
vec[1] += oldvelo[1] + 0;
                        
set_pev(victimpev_velocityvec);
                }
                
more_blood(victim)
        }
        return 
HAM_IGNORED
}
 
public 
message_DeathMsg(msg_idmsg_destid)
{
        static 
szTruncatedWeapon[33], iattackerivictim
       
        get_msg_arg_string
(4szTruncatedWeaponcharsmax(szTruncatedWeapon))
       
        
iattacker get_msg_arg_int(1)
        
ivictim get_msg_arg_int(2)
       
        if(!
is_user_connected(iattacker) || iattacker == ivictim)
        return 
PLUGIN_CONTINUE
       
        
if (!zp_get_user_zombie(iattacker))
        {
                if(
equal(szTruncatedWeapon"knife") && get_user_weapon(iattacker) == CSW_KNIFE)
                {
                        if(
g_has_strong[iattacker])
                        
set_msg_arg_string(4"strong")
                }
               
                if(
equal(szTruncatedWeapon"knife") && get_user_weapon(iattacker) == CSW_KNIFE)
                {
                        if(
g_has_katana[iattacker])
                        
set_msg_arg_string(4"hatchet")
                }
               
                if(
equal(szTruncatedWeapon"knife") && get_user_weapon(iattacker) == CSW_KNIFE)
                {
                        if(
g_has_combat[iattacker])
                        
set_msg_arg_string(4"mastercombat")
                }
               
                if(
equal(szTruncatedWeapon"knife") && get_user_weapon(iattacker) == CSW_KNIFE)
                {
                        if(
g_has_hammer[iattacker])
                        
set_msg_arg_string(4"hammer")
                }
               
                if(
equal(szTruncatedWeapon"knife") && get_user_weapon(iattacker) == CSW_KNIFE)
                {
                        if(
g_has_hammer[iattacker])
                        
set_msg_arg_string(4"hammer1")
                }
               
                if(
equal(szTruncatedWeapon"knife") && get_user_weapon(iattacker) == CSW_KNIFE)
                {
                        if(
g_has_hammer[iattacker])
                        
set_msg_arg_string(4"hammer2")
                }
               
                if(
equal(szTruncatedWeapon"knife") && get_user_weapon(iattacker) == CSW_KNIFE)
                {
                        if(
g_has_hammer[iattacker])
                        
set_msg_arg_string(4"hammer3")
                }
               
                if(
equal(szTruncatedWeapon"knife") && get_user_weapon(iattacker) == CSW_KNIFE)
                {
                        if(
g_has_hammer[iattacker])
                        
set_msg_arg_string(4"hammer4")
                }
               
                if(
equal(szTruncatedWeapon"knife") && get_user_weapon(iattacker) == CSW_KNIFE)
                {
                        if(!
g_has_strong[iattacker] && !g_has_katana[iattacker] && !g_has_combat[iattacker] && !g_has_hammer[iattacker] && !g_has_hammer1[iattacker] && !g_has_hammer2[iattacker] && !g_has_hammer3[iattacker] && !g_has_hammer4[iattacker] && !zp_get_user_zombie(iattacker))
                        
set_msg_arg_string(4"knife")
                }
        }
        if (
zp_get_user_zombie(iattacker))
        {
                if(
equal(szTruncatedWeapon"knife") && get_user_weapon(iattacker) == CSW_KNIFE)
                {
                        if(
g_has_strong[iattacker] || g_has_katana[iattacker] || g_has_combat[iattacker] || g_has_hammer[iattacker] || g_has_hammer1[iattacker] || g_has_hammer2[iattacker] || g_has_hammer3[iattacker] || g_has_hammer4[iattacker])
                        
set_msg_arg_string(4"Claws")
                }
        }
        return 
PLUGIN_CONTINUE
}
 
stock create_velocity_vector(victim,attacker,Float:velocity[3])
{
        if(!
zp_get_user_zombie(victim) || !is_user_alive(attacker))
        return 
0;
       
        new 
Float:vicorigin[3];
        new 
Float:attorigin[3];
        
pev(victimpev_origin vicorigin);
        
pev(attackerpev_origin attorigin);
       
        new 
Float:origin2[3]
        
origin2[0] = vicorigin[0] - attorigin[0];
        
origin2[1] = vicorigin[1] - attorigin[1];
       
        new 
Float:largestnum 0.0;
       
        if(
floatabs(origin2[0])>largestnumlargestnum floatabs(origin2[0]);
        if(
floatabs(origin2[1])>largestnumlargestnum floatabs(origin2[1]);
       
        
origin2[0] /= largestnum;
        
origin2[1] /= largestnum;
       
        if (
g_has_strong[attacker])
        {
                
velocity[0] = ( origin2[0] * get_pcvar_float(cvar_knock_strong) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
                
velocity[1] = ( origin2[1] * get_pcvar_float(cvar_knock_strong) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
        }
        else if (
g_has_katana[attacker])
        {
                
velocity[0] = ( origin2[0] * get_pcvar_float(cvar_knock_katana) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
                
velocity[1] = ( origin2[1] * get_pcvar_float(cvar_knock_katana) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
        }
        else if (
g_has_combat[attacker])
        {
                
velocity[0] = ( origin2[0] * get_pcvar_float(cvar_knock_combat) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
                
velocity[1] = ( origin2[1] * get_pcvar_float(cvar_knock_combat) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
        }
        else if (
g_has_hammer[attacker])
        {
                
velocity[0] = ( origin2[0] * get_pcvar_float(cvar_knock_hammer) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
                
velocity[1] = ( origin2[1] * get_pcvar_float(cvar_knock_hammer) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
        }
        
        else if (
g_has_hammer1[attacker])
        {
                
velocity[0] = ( origin2[0] * get_pcvar_float(cvar_knock_hammer1) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
                
velocity[1] = ( origin2[1] * get_pcvar_float(cvar_knock_hammer1) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
        }
        
        else if (
g_has_hammer2[attacker])
        {
                
velocity[0] = ( origin2[0] * get_pcvar_float(cvar_knock_hammer2) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
                
velocity[1] = ( origin2[1] * get_pcvar_float(cvar_knock_hammer2) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
        }
        
        else if (
g_has_hammer3[attacker])
        {
                
velocity[0] = ( origin2[0] * get_pcvar_float(cvar_knock_hammer3) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
                
velocity[1] = ( origin2[1] * get_pcvar_float(cvar_knock_hammer3) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
        }
        
        else if (
g_has_hammer4[attacker])
        {
                
velocity[0] = ( origin2[0] * get_pcvar_float(cvar_knock_hammer4) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
                
velocity[1] = ( origin2[1] * get_pcvar_float(cvar_knock_hammer4) * 10000 ) / floatround(get_distance_f(vicoriginattorigin));
        }
       
        if(
velocity[0] <= 20.0 || velocity[1] <= 20.0)
        
velocity[2] = random_float(200.0 275.0);
       
        return 
1;
}
 
more_blood(id)
{
        static 
iOrigin[3]
        
get_user_origin(idiOrigin)
       
        
message_begin(MSG_PVSSVC_TEMPENTITYiOrigin)
        
write_byte(TE_BLOODSTREAM)
        
write_coord(iOrigin[0])
        
write_coord(iOrigin[1])
        
write_coord(iOrigin[2]+10)
        
write_coord(random_num(-360360))
        
write_coord(random_num(-360360))
        
write_coord(-10)
        
write_byte(70)
        
write_byte(random_num(50100))
        
message_end()
       
        for (new 
04j++)
        {
                
message_begin(MSG_PVSSVC_TEMPENTITYiOrigin)
                
write_byte(TE_WORLDDECAL)
                
write_coord(iOrigin[0]+random_num(-100100))
                
write_coord(iOrigin[1]+random_num(-100100))
                
write_coord(iOrigin[2]-36)
                
write_byte(random_num(190197))
                
message_end()
        }
}
 
public 
sprite(const player, const string_msg[], byte_1byte_2byte_3byte_4byte_5byte_6byte_7byte_8)
{
        
message_beginMSG_ONEget_user_msgid("WeaponList"), .player player );
        {
                
write_string(string_msg);
                
write_byte(byte_1);
                
write_byte(byte_2);
                
write_byte(byte_3);
                
write_byte(byte_4);
                
write_byte(byte_5);
                
write_byte(byte_6);
                
write_byte(byte_7);
                
write_byte(byte_8);
        }
        
message_end();
}
 
public 
set_sprite(id)
{
        if(!
is_user_alive(id))
        {
                return;
        }
       
        if(
zp_get_user_zombie(id))
        {
                
sprite(id"weapon_knife", -1, -1, -1, -121290)
                return;
        }
       
        if(
g_has_strong[id])
        {
                
sprite(id"zm_knife_strong", -1, -1, -1, -121290)
                return;
        }
       
        if(
g_has_katana[id])
        {
                
sprite(id"zm_knife_katana", -1, -1, -1, -121290)
                return;
        }
       
        if(
g_has_combat[id])
        {
                
sprite(id"zm_knife_combat", -1, -1, -1, -121290)
                return;
        }
       
        if(
g_has_hammer[id])
        {
                
sprite(id"zm_knife_hammer", -1, -1, -1, -121290)
                return;
        }
        if(
g_has_hammer1[id])
        {
                
sprite(id"zm_knife_hammer1", -1, -1, -1, -121290)
                return;
        }
        if(
g_has_hammer2[id])
        {
                
sprite(id"zm_knife_hammer2", -1, -1, -1, -121290)
                return;
        }
        if(
g_has_hammer3[id])
        {
                
sprite(id"zm_knife_hammer3", -1, -1, -1, -121290)
                return;
        }
        if(
g_has_hammer4[id])
        {
                
sprite(id"zm_knife_hammer4", -1, -1, -1, -121290)
                return;
        }
}
 
stock ChatColor(const id, const input[], any:...)
{
        new 
count 1players[32]
        static 
msg[191]
        
vformat(msg190input3)
       
        
replace_all(msg190"!g""^4")
        
replace_all(msg190"!y""^1")
        
replace_all(msg190"!team""^3")
       
        if (
idplayers[0] = id; else get_players(playerscount"ch")
        {
                for (new 
0counti++)
                {
                        if (
is_user_connected(players[i]))
                        {
                                
message_begin(MSG_ONE_UNRELIABLEget_user_msgid("SayText"), _players[i]);
                                
write_byte(players[i]);
                                
write_string(msg);
                                
message_end();
                        }
                }
        }

__________________
Facebook
My YouTube
Ro{Y}aL WarLanD CommuniTy
Selling Zombie CSO 4.3 Money System Mod
DON KHAN 1 is offline
RBE sLayeR
Member
Join Date: Jul 2019
Location: Republic of Kosovo
Old 08-27-2019 , 06:09   Re: ZP Knife Menu
Reply With Quote #14

Didnt work DON KHAN 1

EDIT : NOW WORKING
__________________
Copy-and-Paste was programmed by programmers for programmers actually

Last edited by RBE sLayeR; 08-28-2019 at 03:55.
RBE sLayeR is offline
RBE sLayeR
Member
Join Date: Jul 2019
Location: Republic of Kosovo
Old 08-27-2019 , 06:11   Re: ZP Knife Menu
Reply With Quote #15

Quote:
Originally Posted by LearninG View Post
since you got a new knife menu you should provide it , so we can add things to it.
could you check them i sent them here



on zombieplague40.sma add knife menu to auto show after primary and secondary weapon menu
__________________
Copy-and-Paste was programmed by programmers for programmers actually

Last edited by RBE sLayeR; 08-28-2019 at 03:58. Reason: knife menu fixed , now only need to make it auto show after choosing weapons on round start
RBE sLayeR is offline
RBE sLayeR
Member
Join Date: Jul 2019
Location: Republic of Kosovo
Old 08-28-2019 , 06:21   Re: ZP Knife Menu
Reply With Quote #16

bump !!
__________________
Copy-and-Paste was programmed by programmers for programmers actually
RBE sLayeR is offline
Old 08-28-2019, 06:28
LearninG
This message has been deleted by LearninG.
edon1337
Penguin Enthusiast
Join Date: Jun 2016
Location: Macedonia
Old 08-28-2019 , 08:03   Re: ZP Knife Menu
Reply With Quote #17

Quote:
Originally Posted by RBE sLayeR View Post
bump !!
You can't bump within 1 day, you must wait at least 14 days.
__________________
edon1337 is offline
DON KHAN 1
Senior Member
Join Date: Mar 2019
Location: Pakistan
Old 08-28-2019 , 12:43   Re: ZP Knife Menu
Reply With Quote #18

RBE Player the knife menu is fixed now need to make it auto shower when new round start.

i have a idea same as learning idea but it will open in the new round and u won't be able to choose weapons and u need to use M and open guns menu again.
__________________
Facebook
My YouTube
Ro{Y}aL WarLanD CommuniTy
Selling Zombie CSO 4.3 Money System Mod
DON KHAN 1 is offline
RBE sLayeR
Member
Join Date: Jul 2019
Location: Republic of Kosovo
Old 08-28-2019 , 14:08   Re: ZP Knife Menu
Reply With Quote #19

Quote:
Originally Posted by DON KHAN 1 View Post
won't be able to choose weapons and u need to use M and open guns menu again.
It would be good if first show buy primary weapon menu , then secondary weapon menu , then knife menu !!
if you add it can you tell me the code which was needed in case if i need this again
__________________
Copy-and-Paste was programmed by programmers for programmers actually
RBE sLayeR is offline
DadoDz
Junior Member
Join Date: Jul 2021
Old 10-04-2021 , 11:26   Re: ZP Knife Menu
Reply With Quote #20

Hello! Help me Please
mismatch (argument 3)
mismatch (argument 1)
when i compile
DadoDz is offline
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 01:20.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode