Raised This Month: $ Target: $400
 0% 

all knifes added level (pls help)


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
Kvothe
Junior Member
Join Date: Oct 2018
Old 01-30-2019 , 10:42   all knifes added level (pls help)
Reply With Quote #1

This my knife menu plugins
i want all knife need level.
Please help me. My zp_buymenu native zp_get_user_level(id) & zp_set_user_level(id, value)

PHP Code:
#include <amxmodx>
#include <cstrike>
#include <engine>
#include <fakemeta>
#include <fun>
#include <hamsandwich>
#include <zombie_plague>

#define KNIFE_NAME                ARRAY_knife_name[knife]
#define KNIFE_DESC                ARRAY_knife_desc[knife]
#define KNIFE_SPEED                ARRAY_knife_speed[knife]
#define KNIFE_GRAV                ARRAY_knife_grav[knife]
#define KNIFE_JUMP                ARRAY_knife_jump[knife]
#define KNIFE_KNOCK                ARRAY_knife_knock[knife]
#define KNIFE_DMG                ARRAY_knife_dmg[knife]
#define KNIFE_PRIMATTRATE            ARRAY_knife_primattrate[knife]
#define KNIFE_SECATTRATE            ARRAY_knife_secattrate[knife]
#define KNIFE_FLAGS                ARRAY_knife_flags[knife]
#define KNIFE_HITSOUNDS                ARRAY_knife_hitsounds[knife]
#define KNIFE_SLASHSOUNDS            ARRAY_knife_slashsounds[knife]
#define KNIFE_MODEL_V                ARRAY_knife_model_v[knife]
#define KNIFE_MODEL_P                ARRAY_knife_model_p[knife]
#define KNIFE_SOUND_DEPLOY            ARRAY_knife_sound_deploy[knife]
#define KNIFE_SOUND_HIT(%1)            ARRAY_knife_sound_hit[knife][%1]
#define KNIFE_SOUND_HITWALL            ARRAY_knife_sound_hitwall[knife]
#define KNIFE_SOUND_SLASH(%1)            ARRAY_knife_sound_slash[knife][%1]
#define KNIFE_SOUND_STAB            ARRAY_knife_sound_stab[knife]
#define KNIFE_SAVED_AUTHID            ARRAY_knife_saved_authid[i]
#define KNIFE_SAVED_ID                ARRAY_knife_saved_id[i]
#define KNIFES_TOTAL                INT_knifes_total
#define KNIFES_TOTAL_SAVED            INT_knifes_total_saved
#define KNIFE_SURV                INT_knife_surv
#define KNIFE_USER(%1)                PSZ_knife{%1}

#define KNIFE_SURVIVOR                9

#define USE_STOPPED                0

#define m_pPlayer                41
#define m_flNextPrimaryAttack            46
#define m_flNextSecondaryAttack            47

#define m_pActiveItem                373

#define LINUXDIFF                5
#define LINUXDIFFWEAP                4

#define get_user_weapon_entity(%1)        get_pdata_cbase(%1, m_pActiveItem, LINUXDIFF)
#define get_weapon_owner(%1)            get_pdata_cbase(%1, m_pPlayer, LINUXDIFFWEAP)
#define get_weapon_nextprimatt(%1)        get_pdata_float(%1, m_flNextPrimaryAttack, LINUXDIFFWEAP)
#define get_weapon_nextsecatt(%1)        get_pdata_float(%1, m_flNextSecondaryAttack, LINUXDIFFWEAP)
#define set_weapon_nextprimatt(%1,%2)        set_pdata_float(%1, m_flNextPrimaryAttack, %2, LINUXDIFFWEAP)
#define set_weapon_nextsecatt(%1,%2)        set_pdata_float(%1, m_flNextSecondaryAttack, %2, LINUXDIFFWEAP)

#define register_menu(%1,%2,%3)        register_menucmd(register_menuid(%1), %2, %3)

#define MENU_KNIFES_KEYS    MENU_KEY_1 | MENU_KEY_2 | MENU_KEY_3 | MENU_KEY_4 | MENU_KEY_5 | MENU_KEY_6 | MENU_KEY_7 | MENU_KEY_8 | MENU_KEY_9 | MENU_KEY_0
#define MENU_KNIFES    "/knife"

new PSZ_knife[33 char]

new 
Float:ARRAY_knife_speed[10]
new 
Float:ARRAY_knife_grav[10]
new 
Float:ARRAY_knife_jump[10]
new 
Float:ARRAY_knife_knock[10]
new 
Float:ARRAY_knife_dmg[10]
new 
Float:ARRAY_knife_primattrate[10]
new 
Float:ARRAY_knife_secattrate[10]
new 
ARRAY_knife_flags[10]
new 
ARRAY_knife_hitsounds[10]
new 
ARRAY_knife_slashsounds[10]
new 
ARRAY_knife_name[10][64]
new 
ARRAY_knife_desc[10][64]
new 
ARRAY_knife_model_v[10][64]
new 
ARRAY_knife_model_p[10][64]
new 
ARRAY_knife_sound_deploy[10][64]
new 
ARRAY_knife_sound_hit[10][4][64]
new 
ARRAY_knife_sound_hitwall[10][64]
new 
ARRAY_knife_sound_slash[10][2][64]
new 
ARRAY_knife_sound_stab[10][64]
new 
ARRAY_knife_saved_authid[1024][32]
new 
ARRAY_knife_saved_id[1024]

new 
INT_knifes_total
new INT_knifes_total_saved
new INT_knife_surv

new Float:FL_gravity
new Float:FL_gravity_surv

public plugin_precache()
{
    
register_srvcmd("register_knife""SRVCMD__register_knife")
    
    
server_cmd("exec addons/amxmodx/configs/cso_knifes.cfg")
    
server_exec()
}

public 
SRVCMD__register_knife()
{
    new 
data[17][64]
    
read_argv(1data[0], 63)
    
read_argv(2data[1], 63)
    
read_argv(3data[2], 63)
    
read_argv(4data[3], 63)
    
read_argv(5data[4], 63)
    
read_argv(6data[5], 63)
    
read_argv(7data[6], 63)
    
read_argv(8data[7], 63)
    
read_argv(9data[8], 63)
    
read_argv(10data[9], 63)
    
read_argv(11data[10], 63)
    
read_argv(12data[11], 63)
    
read_argv(13data[12], 63)
    
read_argv(14data[13], 63)
    
read_argv(15data[14], 63)
    
read_argv(16data[15], 63)
    
read_argv(17data[16], 63)
    
    for (new 
017i++) remove_quotes(data[i])
    
    new 
knife
    
(data[9][0] == 'S') ? (knife KNIFE_SURVIVOR) : (knife KNIFES_TOTAL)
    
    
formatex(KNIFE_NAME63data[0])
    
formatex(KNIFE_DESC63data[1])
    
KNIFE_SPEED floatstr(data[2])
    
KNIFE_GRAV floatstr(data[3])
    
KNIFE_JUMP floatstr(data[4])
    
KNIFE_KNOCK floatstr(data[5])
    
KNIFE_DMG floatstr(data[6])
    
KNIFE_PRIMATTRATE floatstr(data[7])
    
KNIFE_SECATTRATE floatstr(data[8])
    if (
data[9][0] > && knife != KNIFE_SURVIVORKNIFE_FLAGS read_flags(data[9])
    
    
formatex(KNIFE_MODEL_V63data[10])
    
precache_model(KNIFE_MODEL_V)
    
formatex(KNIFE_MODEL_P63data[11])
    
precache_model(KNIFE_MODEL_P)
    
formatex(KNIFE_SOUND_DEPLOY63data[12])
    
precache_sound(KNIFE_SOUND_DEPLOY)
    if (
containi(data[13], ",") != -1)
    {
        
KNIFE_HITSOUNDS 2
        strtok
(data[13], KNIFE_SOUND_HIT(0), 63KNIFE_SOUND_HIT(1), 63',')
        
precache_sound(KNIFE_SOUND_HIT(0))
        
precache_sound(KNIFE_SOUND_HIT(1))
    }
    else
    {
        
KNIFE_HITSOUNDS 1
        formatex
(KNIFE_SOUND_HIT(0), 63data[13])
        
precache_sound(KNIFE_SOUND_HIT(0))
    }
    
formatex(KNIFE_SOUND_HITWALL63data[14])
    
precache_sound(KNIFE_SOUND_HITWALL)
    if (
containi(data[15], ",") != -1)
    {
        
KNIFE_SLASHSOUNDS 2
        strtok
(data[15], KNIFE_SOUND_SLASH(0), 63KNIFE_SOUND_SLASH(1), 63',')
        
precache_sound(KNIFE_SOUND_SLASH(0))
        
precache_sound(KNIFE_SOUND_SLASH(1))
    }
    else
    {
        
KNIFE_SLASHSOUNDS 1
        formatex
(KNIFE_SOUND_SLASH(0), 63data[15])
        
precache_sound(KNIFE_SOUND_SLASH(0))
    }
    
formatex(KNIFE_SOUND_STAB63data[16])
    
precache_sound(KNIFE_SOUND_STAB)
    
    if (
knife != KNIFE_SURVIVORKNIFES_TOTAL++
    else 
KNIFE_SURV 1
}

public 
plugin_init()
{
    
register_plugin("[CSO] Knifes""Omega""WPMG Team")
    
    
RegisterHam(Ham_Spawn"player""CPlayer__Spawn_Post"1)
    
RegisterHam(Ham_Item_Deploy"weapon_knife""CKNIFE__Deploy_Post"1)
    
RegisterHam(Ham_Use"func_tank""CStationary__Use_Post"1)
    
RegisterHam(Ham_Use"func_tankmortar",    "CStationary__Use_Post"1)
    
RegisterHam(Ham_Use"func_tankrocket",    "CStationary__Use_Post"1)
    
RegisterHam(Ham_Use"func_tanklaser""CStationary__Use_Post"1)
    
RegisterHam(Ham_Weapon_PrimaryAttack"weapon_knife",    "CKNIFE__PrimaryAttack_Post"1)
    
RegisterHam(Ham_Weapon_SecondaryAttack,    "weapon_knife",    "CKNIFE__SecondaryAttack_Post",    1)
    
RegisterHam(Ham_TakeDamage"player""CPlayer__TakeDamage")
    
RegisterHam(Ham_TakeDamage"player""CPlayer__TakeDamage_Post"1)
    
RegisterHam(Ham_Player_PreThink"player""CPlayer__PreThink")
    
    
register_forward(FM_EmitSound"CEntity__EmitSound")
    
    
register_srvcmd("load_knife""SRVCMD__load_knife")
    
register_clcmd("/knife""CMD__knife")
    
    
register_menu(MENU_KNIFESMENU_KNIFES_KEYS"MENU__Knifes")
}

public 
plugin_cfg()
{
    
server_cmd("exec addons/amxmodx/configs/zombieplague.cfg")
    
server_cmd("exec addons/amxmodx/configs/cso_knifes_saved.cfg")
    
server_exec()
    
    
FL_gravity get_cvar_float("zp_human_gravity")
    
FL_gravity_surv get_cvar_float("zp_surv_gravity")
}

public 
client_putinserver(id)
{
    
KNIFE_USER(id) = 0
    
    
new authid[32]
    
get_user_authid(idauthid31)
    
    if (
authid[5] != '_' || authid[6] == 'I'get_user_ip(idauthid311)
    
    for (new 
0KNIFES_TOTAL_SAVEDi++)
    {
        if (
equal(authidKNIFE_SAVED_AUTHID))
        {
            new 
knife KNIFE_SAVED_ID
            
(KNIFE_FLAGS 0) ? (get_user_flags(id) & KNIFE_FLAGS) ? (KNIFE_USER(id) = knife) : (KNIFE_USER(id) = 0) : (KNIFE_USER(id) = knife)
            break
        }
    }
}

public 
client_disconnect(id)
{
    new 
authid[32], i
    get_user_authid
(idauthid31)
    
    if (
authid[5] != '_' || authid[6] == 'I'get_user_ip(idauthid311)
    
    for (
0KNIFES_TOTAL_SAVEDi++)
    {
        if (
equal(authidKNIFE_SAVED_AUTHID))
        {
            
KNIFE_SAVED_ID KNIFE_USER(id)
            return
        }
    }
    
    
KNIFES_TOTAL_SAVED
    
    formatex
(KNIFE_SAVED_AUTHID31authid)
    
KNIFE_SAVED_ID KNIFE_USER(id)
    
KNIFES_TOTAL_SAVED++
}

public 
plugin_end()
{
    
delete_file("addons/amxmodx/configs/cso_knifes_saved.cfg")
    
    new 
filedata[64], i
    file 
fopen("addons/amxmodx/configs/cso_knifes_saved.cfg""at")
    
    for (
0KNIFES_TOTAL_SAVEDi++)
    {
        
formatex(data63"load_knife ^"%s^" ^"%d^"^n"KNIFE_SAVED_AUTHIDKNIFE_SAVED_ID)
        
fputs(filedata)
    }
    
    
fclose(file)
}

public 
SRVCMD__load_knife()
{
    new 
data[2][32], i
    read_argv
(1data[0], 31)
    
read_argv(2data[1], 31)
    for (
02i++) remove_quotes(data[i])
    
    
KNIFES_TOTAL_SAVED
    
    formatex
(KNIFE_SAVED_AUTHID31data[0])
    
KNIFE_SAVED_ID str_to_num(data[1])
    
KNIFES_TOTAL_SAVED++
}

public 
CPlayer__Spawn_Post(id)
{
    if (!
is_user_alive(id)) return
    if (
zp_get_user_zombie(id)) return
    
    new 
entity get_user_weapon_entity(id)
    
    if (!
is_valid_ent(entity)) return
    if (
cs_get_weapon_id(entity) != CSW_KNIFE) return
    
    
FUNC__replace_knife_models(id)
}

public 
CKNIFE__Deploy_Post(entity)
{
    if (
cs_get_weapon_id(entity) != CSW_KNIFE) return
    
    new 
id get_weapon_owner(entity)
    
    if (
zp_get_user_zombie(id)) return
    
    
FUNC__replace_knife_models(id)
}

public 
CStationary__Use_Post(entitycalleractivatoruse_type)
{
    if (
use_type != USE_STOPPED) return
    if (!
is_user_connected(caller)) return
    if (
zp_get_user_zombie(caller)) return
    if (
get_user_weapon(caller) != CSW_KNIFE) return
    
    
FUNC__replace_knife_models(caller)
}

public 
CKNIFE__PrimaryAttack_Post(entity)
{
    new 
id get_weapon_owner(entity)
    
    if (
zp_get_user_zombie(id)) return
    
    new 
knife
    
(KNIFE_SURV && zp_get_user_survivor(id)) ? (knife KNIFE_SURVIVOR) : (knife KNIFE_USER(id))
    
    
set_weapon_nextprimatt(entityget_weapon_nextprimatt(entity) * KNIFE_PRIMATTRATE)
    
set_weapon_nextsecatt(entityget_weapon_nextsecatt(entity) * KNIFE_PRIMATTRATE)
}

public 
CKNIFE__SecondaryAttack_Post(entity)
{
    new 
id get_weapon_owner(entity)
    
    if (
zp_get_user_zombie(id)) return
    
    new 
knife
    
(KNIFE_SURV && zp_get_user_survivor(id)) ? (knife KNIFE_SURVIVOR) : (knife KNIFE_USER(id))
    
    
set_weapon_nextprimatt(entityget_weapon_nextprimatt(entity) * KNIFE_SECATTRATE)
    
set_weapon_nextsecatt(entityget_weapon_nextsecatt(entity) * KNIFE_SECATTRATE)
}

public 
CPlayer__TakeDamage(victiminflictorattackerFloat:damage)
{
    if (
inflictor != attacker || victim == attacker) return
    if (!
is_user_connected(attacker)) return
    if (
zp_get_user_zombie(attacker)) return
    if (
get_user_weapon(attacker) != CSW_KNIFE) return
    
    new 
knife
    
(KNIFE_SURV && zp_get_user_survivor(attacker)) ? (knife KNIFE_SURVIVOR) : (knife KNIFE_USER(attacker))
    
    
SetHamParamFloat(4damage KNIFE_DMG)
}

public 
CPlayer__TakeDamage_Post(victiminflictorattackerFloat:damage)
{
    if (
inflictor != attacker || victim == attacker) return
    if (!
is_user_connected(attacker)) return
    if (
zp_get_user_zombie(attacker)) return
    if (
get_user_weapon(attacker) != CSW_KNIFE) return
    
    
client_print(attackerprint_center"%d"floatround(damagefloatround_floor))
    
    new 
Float:velocity[3], Float:newvelocity[3]
    
entity_get_vector(victimEV_VEC_velocityvelocity)
    
    new 
Float:victim_origin[3], Float:attacker_origin[3]
    
entity_get_vector(victimEV_VEC_originvictim_origin)
    
entity_get_vector(attackerEV_VEC_originattacker_origin)
    
    
newvelocity[0] = victim_origin[0] - attacker_origin[0]
    
newvelocity[1] = victim_origin[1] - attacker_origin[1]
    
    new 
Float:largestnum 0.0
    
    
if (<= floatcmp(floatabs(newvelocity[0]), floatabs(newvelocity[1])) <= 1)
    {
        if (
floatabs(newvelocity[0]) > 0largestnum floatabs(newvelocity[0])
    }
    else
    {
        if (
floatabs(newvelocity[1]) > 0largestnum floatabs(newvelocity[1])
    }
    
    
newvelocity[0] /= largestnum
    newvelocity
[1] /= largestnum
    
    
new knife
    
(KNIFE_SURV && zp_get_user_survivor(attacker)) ? (knife KNIFE_SURVIVOR) : (knife KNIFE_USER(attacker))
    
    
velocity[0] = newvelocity[0] * KNIFE_KNOCK 3000 get_distance_f(victim_originattacker_origin)
    
velocity[1] = newvelocity[1] * KNIFE_KNOCK 3000 get_distance_f(victim_originattacker_origin)
    if(
newvelocity[0] <= 20.0 || newvelocity[1] <= 20.0)
        
newvelocity[2] = random_float(200.0 275.0)
    
    
newvelocity[0] += velocity[0]
    
newvelocity[1] += velocity[1]
    
entity_set_vector(victimEV_VEC_velocitynewvelocity)
}

public 
CPlayer__PreThink(id)
{
    if (!
is_user_alive(id)) return
    if (
zp_get_user_zombie(id)) return
    if (
get_user_weapon(id) != CSW_KNIFE)
    {
        if (
zp_get_user_survivor(id)) set_user_gravity(idFL_gravity_surv)
        else 
set_user_gravity(idFL_gravity)
        return
    }
    
    new 
knife
    
(KNIFE_SURV && zp_get_user_survivor(id)) ? (knife KNIFE_SURVIVOR) : (knife KNIFE_USER(id))
    
    
set_user_maxspeed(idKNIFE_SPEED)
    
set_user_gravity(idKNIFE_GRAV)
    
    if (!(
entity_get_int(idEV_INT_button) & IN_JUMP)) return
    if (
entity_get_int(idEV_INT_oldbuttons) & IN_JUMP) return
    
    new 
flags entity_get_int(idEV_INT_flags)
    
    if (!(
flags FL_ONGROUND)) return
    if (
flags FL_WATERJUMP) return
    if (
entity_get_int(idEV_INT_waterlevel) > 1) return
    
    new 
Float:velocity[3]
    
entity_get_vector(idEV_VEC_velocityvelocity)
    
    
velocity[2] += KNIFE_JUMP
    entity_set_vector
(idEV_VEC_velocityvelocity)
    
entity_set_int(idEV_INT_gaitsequence6)
}

public 
CEntity__EmitSound(idchannel, const sample[], Float:volumeFloat:attnflagspitch)
{
    if (!
is_user_connected(id)) return FMRES_IGNORED
    
if (zp_get_user_zombie(id)) return FMRES_IGNORED
    
    
if (sample[8] == 'k' && sample[9] == 'n' && sample[10] == 'i')
    {
        new 
knife
        
(KNIFE_SURV && zp_get_user_survivor(id)) ? (knife KNIFE_SURVIVOR) : (knife KNIFE_USER(id))
        if (
sample[14] == 'd'emit_sound(idchannelKNIFE_SOUND_DEPLOYvolumeattnflagspitch)
        else if (
sample[14] == 'h')
        {
            if (
sample[17] == 'w'emit_sound(idchannelKNIFE_SOUND_HITWALLvolumeattnflagspitch)
            else 
emit_sound(idchannel, (KNIFE_HITSOUNDS 1) ? KNIFE_SOUND_HIT(random_num(01)) : KNIFE_SOUND_HIT(0), volumeattnflagspitch)
        }
        else
        {
            if (
sample[15] == 'l'emit_sound(idchannel, (KNIFE_SLASHSOUNDS 1) ? KNIFE_SOUND_SLASH(random_num(01)) : KNIFE_SOUND_SLASH(0), volumeattnflagspitch)
            else 
emit_sound(idchannelKNIFE_SOUND_STABvolumeattnflagspitch)
        }
        return 
FMRES_SUPERCEDE
    
}
    
    return 
FMRES_IGNORED
}

public 
CMD__knife(id)
{
    if (
zp_has_round_started() == 1) return PLUGIN_HANDLED
    
return SHOWMENU__Knifes(id)
}

public 
SHOWMENU__Knifes(id)
{
    new 
lenmenu[500], keysflags
    len 
+= formatex(menu499"\dBir bicak tipi sec:^n^n")
    
flags get_user_flags(id)
    
    for (new 
knife 0knife KNIFES_TOTALknife++)
    {
        if (
KNIFE_FLAGS)
        {
            if (
flags KNIFE_FLAGS)
            {
                
keys |= (<< knife)
                if (
KNIFE_USER(id) == knifelen += formatex(menu[len], 499 len"\r%d.\d %s %s^n"knife 1KNIFE_NAMEKNIFE_DESC)
                else 
len += formatex(menu[len], 499 len"\r%d.\w %s \r%s^n"knife 1KNIFE_NAMEKNIFE_DESC)
            }
            else
                
len += formatex(menu[len], 499 len"\d%d. %s \r%s^n"knife 1KNIFE_NAMEKNIFE_DESC)
        }
        else
        {
            
keys |= (<< knife)
            if (
KNIFE_USER(id) == knifelen += formatex(menu[len], 499 len"\r%d.\d %s %s^n"knife 1KNIFE_NAMEKNIFE_DESC)
            else 
len += formatex(menu[len], 499 len"\r%d.\w %s \w%s^n"knife 1KNIFE_NAMEKNIFE_DESC)
        }
    }
    
    
keys |= MENU_KEY_0
    len 
+= formatex(menu[len], 499 len"^n\r0.\wCikis")
    
    return 
show_menu(idkeysmenu, -1MENU_KNIFES)
}

public 
MENU__Knifes(idkey)
{
    if (
zp_has_round_started() == 1) return PLUGIN_HANDLED
    
if (key != 9)
        if (
KNIFE_USER(id) != key)
        {
            
KNIFE_USER(id) = key
            
if (is_user_alive(id) && !zp_get_user_zombie(id))
                if (
get_user_weapon(id) == CSW_KNIFE)
                    
FUNC__replace_knife_models(id)
        }
    return 
PLUGIN_HANDLED
}

public 
FUNC__replace_knife_models(id)
{
    new 
knife
    
(KNIFE_SURV && zp_get_user_survivor(id)) ? (knife KNIFE_SURVIVOR) : (knife KNIFE_USER(id))
    
    
entity_set_string(idEV_SZ_viewmodelKNIFE_MODEL_V)
    
entity_set_string(idEV_SZ_weaponmodelKNIFE_MODEL_P)

__________________


CSO ZP Turkiye 95.173.173.128:27015
Kvothe is offline
Reply



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 07:32.


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