Raised This Month: $51 Target: $400
 12% 

plugin edit


  
 
 
Thread Tools Display Modes
Prev Previous Post   Next Post Next
Author Message
luciaus18
Senior Member
Join Date: Dec 2014
Old 01-12-2021 , 17:33   plugin edit
Reply With Quote #1

Hi! I have this vip plugin and the problem is that I don't get hp per kill/per hs. Someone can take a look?
Code:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>
#include <engine>
#define CC_COLORS_TYPE CC_COLORS_SHORT
#include <cromchat>  
#define VIP_FLAG ADMIN_LEVEL_H

static const COLOR[] = "^x04"
static const CONTACT[] = ""
new maxplayers
new gmsgSayText
new mpd, mkb, mhb
new health_add
new health_hs_add
new health_max
new nKiller
new nKiller_hp
new nHp_add
new nHp_max
new g_awp_active
new g_menu_active
new CurrentRound
new bool:HasC4[33]
new jumpnum[33] = 0
new bool:dojump[33] = false
new cvar_vip_jumps

public plugin_init()
{
    register_plugin("VIP Menu", "3.1", "nutu.")
    mpd = register_cvar("money_per_damage","3")
    mkb = register_cvar("money_kill_bonus","200")
    mhb = register_cvar("money_hs_bonus","500")
    cvar_vip_jumps = register_cvar("vip_max_jumps", "1")
    health_add = register_cvar("amx_vip_hp", "15")
    health_hs_add = register_cvar("amx_vip_hp_hs", "30")
    health_max = register_cvar("amx_vip_max_hp", "100")
    g_awp_active = register_cvar("awp_active", "1")
    g_menu_active = register_cvar("menu_active", "0")
    register_event("Damage","Damage","b")
    register_event("DeathMsg","death_msg","a")
    register_clcmd("awp","HandleCmd")
    register_clcmd("sg550","HandleCmd")
    register_clcmd("g3sg1","HandleCmd")
    register_clcmd("say /wantvip","ShowMotd")
    maxplayers = get_maxplayers()
    gmsgSayText = get_user_msgid("SayText")
    register_clcmd("say", "handle_say")
    register_cvar("amx_contactinfo", CONTACT, FCVAR_SERVER)
    register_logevent("LogEvent_RoundStart", 2, "1=Round_Start" );
    register_event("HLTV", "new_round", "a", "1=0", "2=0");
    register_event("TextMsg","Event_RoundRestart","a","2&#Game_w")
    register_event("TextMsg","Event_RoundRestart","a","2&#Game_C");
    register_event("DeathMsg", "hook_death", "a", "1>0")
}

public Damage(id)
{
    new weapon, hitpoint, attacker = get_user_attacker(id,weapon,hitpoint)
    if(attacker<=maxplayers && is_user_alive(attacker) && attacker!=id)
        if (get_user_flags(attacker) & ADMIN_LEVEL_H) 
    {
        new money = read_data(2) * get_pcvar_num(mpd)
        if(hitpoint==1) money += get_pcvar_num(mhb)
        cs_set_user_money(attacker,cs_get_user_money(attacker) + money)
    }
}

public death_msg()
{
    if(read_data(1)<=maxplayers && read_data(1) && read_data(1)!=read_data(2)) cs_set_user_money(read_data(1),cs_get_user_money(read_data(1)) + get_pcvar_num(mkb) - 300)
}

public LogEvent_RoundStart()
{
    CurrentRound++;
    new players[32], player, pnum;
    get_players(players, pnum, "a");
    for(new i = 0; i < pnum; i++)
    {
        player = players[i];
        if(is_user_alive(player) && get_user_flags(player) & ADMIN_LEVEL_H)
        {
            give_item(player, "item_assaultsuit")
            give_item(player, "item_thighpack")
            
            if (!get_pcvar_num(g_menu_active))
                return PLUGIN_CONTINUE
            if(CurrentRound <= 4)
            {
                CromChat(player, "!g[VIP] !nYou will get only the equipment in the first four rounds.")
            }
            
            if(CurrentRound >= 5)
            {
                showvipmenu(player);
            }
        }
    }
    return PLUGIN_HANDLED
}

public Event_RoundRestart()
{
    CurrentRound=0;
}

public hook_death()
{
    nKiller = read_data(1)
    
    if ( (read_data(3) == 1) && (read_data(5) == 0) )
    {
        nHp_add = get_pcvar_num (health_hs_add)
    }
    else
        nHp_add = get_pcvar_num (health_add)
    nHp_max = get_pcvar_num (health_max)
    if(!(get_user_flags(nKiller) & ADMIN_LEVEL_H))
        return;
    
    nKiller_hp = get_user_health(nKiller)
    nKiller_hp += nHp_add
    if (nKiller_hp > nHp_max) nKiller_hp = nHp_max
    set_user_health(nKiller, nKiller_hp)
    set_hudmessage(0, 255, 0, -1.0, 0.15, 0, 1.0, 1.0, 0.1, 0.1, -1)
    show_hudmessage(nKiller, "+%d HP", nHp_add)
    message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, nKiller)
    write_short(1<<10)
    write_short(1<<10)
    write_short(0x0000)
    write_byte(0)
    write_byte(0)
    write_byte(200)
    write_byte(75)
    message_end()
    
}

public client_PreThink(id)
{
    if(!is_user_alive(id))
    {
        return PLUGIN_HANDLED;
    }
    
    new nbut = get_user_button(id)
    new obut = get_user_oldbutton(id)
    
    if((nbut & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(obut & IN_JUMP))
    {
        if(get_user_flags(id) & VIP_FLAG)
        {
            if(jumpnum[id] < get_pcvar_num(cvar_vip_jumps))
            {
                dojump[id] = true
                jumpnum[id]++
                return PLUGIN_CONTINUE;
            }
        }
    }
    
    if((nbut & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND))
    {
        jumpnum[id] = 0
        return PLUGIN_CONTINUE;
    }
    
    return PLUGIN_CONTINUE;
}

public client_PostThink(id)
{
    if(!is_user_alive(id))
    {
        return PLUGIN_CONTINUE;
    }
    
    if(get_user_flags(id) & VIP_FLAG)
    {
        if(dojump[id] == true)
        {
            new Float:velocity[3]
            entity_get_vector(id,EV_VEC_velocity, velocity)
            velocity[2] = random_float(265.0,285.0)
            entity_set_vector(id,EV_VEC_velocity, velocity)
            dojump[id] = false
            return PLUGIN_CONTINUE;
        }
    }
    
    return PLUGIN_CONTINUE;
}

public showvipmenu(id) {
    new menu = menu_create ("\yFREE \rVIP \yGUNS MENU", "vipmenuheadler");
    menu_additem(menu, "\wGet M4A1+DEAGLE+EQUIPMENT \r[GRENADES/ARRMOR]", "1");
    menu_additem(menu, "\wGet AK47+DEAGLE+EQUIPMENT \r[GRENADES/ARRMOR]", "2");
    menu_additem(menu, "\wGet GALIL+DEAGLE+EQUIPMENT \r[GRENADES/ARRMOR]", "3");
    menu_additem(menu, "\wGet FAMAS+DEAGLE+EQUIPMENT \r[GRENADES/ARRMOR]", "4");
    menu_additem(menu, "\wGet XM1014+DEAGLE+EQUIPMENT \r[GRENADES/ARRMOR]", "5");
    
    menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
    menu_display(id, menu, 0 );
    set_task(0.1,"task",id)
}
public closemenu( id ) 
{ 
    client_cmd(id,"slot10") 
} 
public task(id) 
{ 
    set_task(10.0,"closemenu",id) 
} 
public vipmenuheadler(id, menu, item) {
    if(item == MENU_EXIT || !is_user_alive(id)) {
        menu_destroy(menu);
        return PLUGIN_HANDLED;
    }
    new data [6], szName [64];
    new access, callback;
    menu_item_getinfo (menu, item, access, data,charsmax (data), szName,charsmax (szName), callback);
    new key = str_to_num (data);
    
    switch (key) {
        case 1: { 
            if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
                HasC4[id] = true;
            else
                HasC4[id] = false;
            
            strip_user_weapons (id)
            give_item(id,"weapon_m4a1")
            give_item(id,"weapon_deagle")
            give_item(id,"weapon_knife")
            give_item(id,"weapon_hegrenade")
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_smokegrenade");
            give_item(id, "item_assaultsuit");
            give_item(id, "item_thighpack");
            cs_set_user_bpammo(id, CSW_M4A1,90);
            cs_set_user_bpammo(id, CSW_DEAGLE, 35);
            
            if (HasC4[id])
            {
                give_item(id, "weapon_c4");
                cs_set_user_plant( id );
            }
        }
        case 2: { 
            if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
                HasC4[id] = true;
            else
                HasC4[id] = false;
            
            strip_user_weapons (id)
            give_item(id,"weapon_ak47")
            give_item(id,"weapon_deagle")
            give_item(id,"weapon_knife")
            give_item(id,"weapon_hegrenade")
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_smokegrenade");
            give_item(id, "item_assaultsuit");
            give_item(id, "item_thighpack");
            cs_set_user_bpammo(id, CSW_AK47,90);
            cs_set_user_bpammo(id, CSW_DEAGLE, 35);
            
            if (HasC4[id])
            {
                give_item(id, "weapon_c4");
                cs_set_user_plant( id );
            }
        }
        case 3: { 
            if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
                HasC4[id] = true;
            else
                HasC4[id] = false;
            
            strip_user_weapons (id)
            give_item(id,"weapon_galil")
            give_item(id,"weapon_deagle")
            give_item(id,"weapon_knife")
            give_item(id,"weapon_hegrenade")
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_smokegrenade");
            give_item(id, "item_assaultsuit");
            give_item(id, "item_thighpack");
            cs_set_user_bpammo(id, CSW_GALIL,90);
            cs_set_user_bpammo(id, CSW_DEAGLE, 35);
            
            if (HasC4[id])
            {
                give_item(id, "weapon_c4");
                cs_set_user_plant( id );
            }
        }
        case 4: { 
            if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
                HasC4[id] = true;
            else
                HasC4[id] = false;
            
            strip_user_weapons (id)
            give_item(id,"weapon_famas")
            give_item(id,"weapon_deagle")
            give_item(id,"weapon_knife")
            give_item(id,"weapon_hegrenade")
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_smokegrenade");
            give_item(id, "item_assaultsuit");
            give_item(id, "item_thighpack");
            cs_set_user_bpammo(id, CSW_FAMAS, 90);
            cs_set_user_bpammo(id, CSW_DEAGLE, 35);
            
            if (HasC4[id])
            {
                give_item(id, "weapon_c4");
                cs_set_user_plant( id );
            }
        }
        case 5: { 
            if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)
                HasC4[id] = true;
            else
                HasC4[id] = false;
            
            strip_user_weapons (id)
            give_item(id,"weapon_xm1014")
            give_item(id,"weapon_deagle")
            give_item(id,"weapon_knife")
            give_item(id,"weapon_hegrenade")
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_flashbang");
            give_item(id, "weapon_smokegrenade");
            give_item(id, "item_assaultsuit");
            give_item(id, "item_thighpack");
            cs_set_user_bpammo(id, CSW_XM1014,32);
            cs_set_user_bpammo(id, CSW_DEAGLE, 35);
            
            if (HasC4[id])
            {
                give_item(id, "weapon_c4");
                cs_set_user_plant( id );
            }
        }
        case 9: {             
        }
    }
    menu_destroy (menu);
    return PLUGIN_HANDLED;
}

public HandleCmd(id){
    if (!get_pcvar_num(g_awp_active))
        return PLUGIN_CONTINUE
    if(get_user_flags(id) & ADMIN_LEVEL_H) 
        return PLUGIN_CONTINUE
    CromChat(id, "!g[VIP] !nFor buying Snipers !g(AWP, SG550, G3SG1)!n you must be a !gVIP Player.")
    return PLUGIN_HANDLED
}

public ShowMotd(id)
{
    show_motd(id, "vip.txt")
}

public handle_say(id) {
    new said[192]
    read_args(said,192)
    if( ( containi(said, "who") != -1 && containi(said, "admin") != -1 ) || contain(said, "/vips") != -1 )
        set_task(0.1,"print_adminlist",id)
    return PLUGIN_CONTINUE
}

public print_adminlist(user) 
{
    new adminnames[33][32]
    new message[256]
    new contactinfo[256], contact[112]
    new id, count, x, len
    
    for(id = 1 ; id <= maxplayers ; id++)
        if(is_user_connected(id))
        if(get_user_flags(id) & ADMIN_LEVEL_H)
        get_user_name(id, adminnames[count++], 31)
    
    len = format(message, 255, "%sONLINE VIPS: ",COLOR)
    if(count > 0) {
        for(x = 0 ; x < count ; x++) {
            len += format(message[len], 255-len, "%s%s ", adminnames[x], x < (count-1) ? ", ":"")
            if(len > 96 ) {
                print_message(user, message)
                len = format(message, 255, "%s ",COLOR)
            }
        }
        print_message(user, message)
    }
    else {
        len += format(message[len], 255-len, "There's no online VIP.")
        print_message(user, message)
    }
    
    get_cvar_string("amx_contactinfo", contact, 63)
    if(contact[0])  {
        format(contactinfo, 111, "%s Contact Server Admin -- %s", COLOR, contact)
        print_message(user, contactinfo)
    }
}

print_message(id, msg[]) {
    message_begin(MSG_ONE, gmsgSayText, {0,0,0}, id)
    write_byte(id)
    write_string(msg)
    message_end()
}

/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1063\\ f0\\ fs16 \n\\ par }
*/
luciaus18 is offline
 



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 13:10.


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