Simple Public VIP

Šiame forume pateikti tikrintojų patvirtinti pluginai.
User avatar
laimiukas3
Moderatorius
Posts: 4569
Joined: 2012 Aug 03 01:12
Skype: laimiukas3
Location: Vilnius
Contact:

Re: Simple Public VIP

Post by laimiukas3 »

ir kodel menu neduoda pridetu nauju ginklu pasiringti ?

Code: Select all

#include <amxmodx>#include <amxmisc>#include <cstrike>#include <fakemeta_util>#include <fun>#include <hamsandwich> #if AMXX_VERSION_NUM < 183    #include <dhudmessage>#endif #define PLUGIN "Simple VIP"#define VERSION "4.3"#define AUTHOR "ArtHa" #define VIP ADMIN_LEVEL_H#define REMOVE_MENU 20.05#define TID_REMOVE 2551 new CurrentRoundnew bool:HasC4[33]new bool:gShopVipmenu = truenew bool:gAwpBlock;new bool:gVipmenuActive[33];new grenades, pistols, armor, vipmenu_weapon4new vipinfo, vip_motdnew show_received, bulletdmg_vip, received_vip, g_visible, bulletdmg_typenew Float: Yv[ 33 ]new Float: Ya[ 33 ]new g_pHp[ 3 ], chat_messagenew awp_vip, cvar_player, awp_block, awp_limitnew vip_check, fall_damage // VIP MENU WEAPONSnew weapon[8]#define CSW_WEAPON1 CSW_M4A1#define CSW_WEAPON2 CSW_AK47#define CSW_WEAPON3 CSW_FAMAS#define CSW_WEAPON4 CSW_AWP#define CSW_WEAPON5 CSW_GALI#define CSW_WEAPON6 CSW_AUG#define CSW_WEAPON7 CSW_MP5NAVY  #define CSW_GUN CSW_DEAGLE#define CSW_GUN1 CSW_GLOCK18#define CSW_GUN2 CSW_USP#define CSW_GUN3 CSW_DEAGLE public plugin_init(){    register_plugin(PLUGIN, VERSION, AUTHOR)    register_dictionary("simple_vip.txt")        register_logevent("logevent_round_end", 2, "1=Round_End")      register_event( "TextMsg","round_restart","a","2&#Game_C", "2&#Game_W" );    register_concmd( "amx_roundrestart", "restartnumber", ADMIN_KICK );    RegisterHam( Ham_Spawn, "player", "FnHamSpawn", 1 )        new configsdir[64], file[132]    get_configsdir(configsdir, 63)        format(file, 131, "%s/blockedmaps.ini", configsdir)     load_maps(file)        register_cvar("vipmenu_round","2")        pistols = register_cvar("vipmenu_pistols","1")    grenades = register_cvar("vipmenu_grenades","1")    armor = register_cvar("vipmenu_armor","1")    vipmenu_weapon4 = register_cvar("vipmenu_weapon4","1")        register_clcmd("say /noriuvip", "motd")    vipinfo = register_cvar("vipinfo_website", "http://amxmodx.lt/viewtopic.php?f=12&t=5707")    vip_motd = register_cvar("vipmenu_motd","1")        register_event("Damage", "on_damage", "b", "2!0", "3=0", "4!0")    show_received = register_cvar("show_received","1")    bulletdmg_vip = register_cvar("bulletdmg_vip","1")    received_vip = register_cvar("receivedmg_vip","1")    g_visible = register_cvar("visible_player","1")    bulletdmg_type = register_cvar("bullet_damage_type","2")        register_event( "DeathMsg", "Event_DeathMsg", "a" )    g_pHp[ 0 ] = register_cvar( "amx_vip_hpadd", "10" )    g_pHp[ 1 ] = register_cvar( "amx_vip_hsadd", "20" )    g_pHp[ 2 ] = register_cvar( "amx_vip_hpmax", "100" )        chat_message = register_cvar( "amx_hpbonus_msg", "2" )        register_event("CurWeapon", "event_CurWeapon", "be")    awp_vip = register_cvar( "amx_vip_awp", "1" )    awp_limit = register_cvar( "amx_awp_limit", "1" )    awp_block = register_cvar( "amx_awp_block", "1" )    cvar_player = register_cvar("na_players_count", "10")     vip_check = register_cvar( "amx_vip_check", "1" )    register_clcmd("say", "handle_say")        RegisterHam(Ham_TakeDamage, "player", "OnCBasePlayer_TakeDamage")    fall_damage = register_cvar( "amx_no_falldmg", "1" )     weapon[0] = register_cvar( "amx_weapon1_ammo", "90" )    weapon[1] = register_cvar( "amx_weapon2_ammo", "90" )    weapon[2] = register_cvar( "amx_weapon3_ammo", "90" )    weapon[3] = register_cvar( "amx_weapon4_ammo", "30" )    weapon[4] = register_cvar( "amx_gun_ammo", "35" )    weapon[5] = register_cvar( "amx_gun1_ammo", "120" )    weapon[6] = register_cvar( "amx_gun2_ammo", "100" )    weapon[7] = register_cvar( "amx_gun3_ammo", "35" )} public logevent_round_end(){    CurrentRound++;} public plugin_cfg(){    new cfgdir[32];    get_configsdir(cfgdir, charsmax(cfgdir));        server_cmd("exec %s/simple_vip.cfg", cfgdir);} public load_maps(path[]){    new szMapname[64], szMap[64]    new file = fopen(path, "rt")     if(!file)    {        server_print("Nepavyko rasti blockedmaps.ini failo!")        return PLUGIN_HANDLED    }     new iSize = file_size(path, 1);     for(new i = 0, iLen; i < iSize; i++)    {        read_file(path, i, szMapname, charsmax(szMapname), iLen);         if(equal(szMapname[0], "") || equal(szMapname[0], ";"))        {            continue;        }                get_mapname(szMap, 63)        if(equali(szMap, szMapname))        {            gShopVipmenu = false;            break;        }    }    fclose(file);    return PLUGIN_CONTINUE} public round_restart(){    CurrentRound = 1;    return PLUGIN_HANDLED;} public restartnumber( id, level, cid ){    if( !cmd_access( id, level, cid, 1 ) )        return PLUGIN_HANDLED;        CurrentRound = 1;    return PLUGIN_HANDLED;} public FnHamSpawn(id){    if(is_user_alive(id))    {        if(gShopVipmenu)        {            gVipmenuActive[id] = false                        if(CurrentRound >= get_cvar_num( "vipmenu_round" ) )            {                if(get_user_flags(id) & VIP )                {                    if(task_exists(TID_REMOVE+id))                        remove_task(TID_REMOVE+id)                                            gVipmenuActive[id] = true                    set_task(REMOVE_MENU, "close_menu", TID_REMOVE+id )                    vipmenu(id);                }            }                        if(get_pcvar_num(pistols) == 1 && CurrentRound <= get_cvar_num( "vipmenu_round" ))            {                if(get_user_flags(id) & VIP )                {                    if(task_exists(TID_REMOVE+id))                        remove_task(TID_REMOVE+id)                                            gVipmenuActive[id] = true                    set_task(REMOVE_MENU, "close_menu", TID_REMOVE+id )                    vipmenu2(id)                }            }        }    }} public close_menu(tid){    static id    id = tid-TID_REMOVE        if(gVipmenuActive[id])    {        client_cmd(id, "slot10" )        gVipmenuActive[id] = false        ChatColor(id, "%L", id, "CLOSED" )    }} public vipmenu(id) {    new buffer[1024];    formatex(buffer, charsmax(buffer), "%L", LANG_PLAYER, "VIPMENU");                   new menu = menu_create(buffer, "menu_handler");        formatex(buffer, charsmax(buffer), "%L", id, "WEAPONS1");    menu_additem(menu, buffer, "1", 0);        formatex(buffer, charsmax(buffer), "%L", id, "WEAPONS2");    menu_additem(menu, buffer, "2", 0);        formatex(buffer, charsmax(buffer), "%L", id, "WEAPONS3");    menu_additem(menu, buffer, "3", 0);        if(get_pcvar_num(vipmenu_weapon4) == 1)    {        formatex(buffer, charsmax(buffer), "%L", id, "WEAPONS4");        menu_additem(menu, buffer, "4", 0);    }            menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)    menu_display(id, menu, 0); } public vipmenu2(id) {    new buffer[1024];    formatex(buffer, charsmax(buffer), "%L", LANG_PLAYER, "VIPMENU");                   new menu = menu_create(buffer, "menu_handler");        formatex(buffer, charsmax(buffer), "%L", id, "GUN1");    menu_additem(menu, buffer, "5", 0);        formatex(buffer, charsmax(buffer), "%L", id, "GUN2");    menu_additem(menu, buffer, "6", 0);        formatex(buffer, charsmax(buffer), "%L", id, "GUN3");    menu_additem(menu, buffer, "7", 0);        menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)    menu_display(id, menu, 0); } public menu_handler(id, menu, item){    if( item == MENU_EXIT )    {        give_items(id);        gVipmenuActive[id] = false;        menu_destroy(menu);        return PLUGIN_HANDLED;    }        new data[6], iName[64];    new acess, callback;       menu_item_getinfo(menu, item, acess, data,6, iName, 63, callback);    new key = str_to_num(data);        switch(key)    {           case 1: { give_weapons(id, CSW_WEAPON1, get_pcvar_num( weapon[ 0 ] ), CSW_GUN, get_pcvar_num( weapon[ 4 ] )); }        case 2: { give_weapons(id, CSW_WEAPON2, get_pcvar_num( weapon[ 1 ] ), CSW_GUN, get_pcvar_num( weapon[ 4 ] )); }        case 3: { give_weapons(id, CSW_WEAPON3, get_pcvar_num( weapon[ 2 ] ), CSW_GUN, get_pcvar_num( weapon[ 4 ] )); }        case 4: { give_weapons(id, CSW_WEAPON4, get_pcvar_num( weapon[ 3 ] ), CSW_GUN, get_pcvar_num( weapon[ 4 ] )); }        case 5: { give_weapon(id, CSW_GUN1, get_pcvar_num( weapon[ 5 ] )); }        case 6: { give_weapon(id, CSW_GUN2, get_pcvar_num( weapon[ 6 ] )); }                case 7: { give_weapon(id, CSW_GUN3, get_pcvar_num( weapon[ 7 ] )); }    }        gVipmenuActive[id] = false;    menu_destroy(menu);    return PLUGIN_HANDLED;} public give_weapons(id, prim, ammo1, sec, ammo2){    HasC4[id] = (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)        new weapon[32]    strip_user_weapons (id)    get_weaponname(prim, weapon, 31)    give_item(id,weapon)    cs_set_user_bpammo(id, prim, ammo1)     get_weaponname(sec, weapon, 31)    give_item(id,weapon)    cs_set_user_bpammo(id, sec, ammo2)     give_item(id,"weapon_knife")        if(HasC4[id])    {        give_item(id, "weapon_c4")        cs_set_user_plant( id )    }        give_items(id)} public give_weapon(id, sec, ammo){    HasC4[id] = (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)     new weapon[32]    strip_user_weapons (id)    get_weaponname(sec, weapon, 31)    give_item(id,weapon)    cs_set_user_bpammo(id, sec, ammo)     give_item(id,"weapon_knife")        if (HasC4[id])    {        give_item(id, "weapon_c4")        cs_set_user_plant( id )    }        give_items(id)} give_items(id){    if(is_user_alive(id))    {        if(get_pcvar_num(grenades) == 1)        {            give_item(id, "weapon_hegrenade");            give_item(id, "weapon_smokegrenade");            give_item(id, "weapon_flashbang");            cs_set_user_bpammo(id, CSW_FLASHBANG, 2);        }                if(get_pcvar_num(armor) == 1)        {            give_item(id, "item_assaultsuit");            if(get_user_team(id) == 2)                give_item(id, "item_thighpack");        }    }} public motd(id){    if(get_pcvar_num(vip_motd) == 1)        Link( id, "%s" )} stock Link( id, url[] ){    static html[ 128 ]    new site[64]    get_pcvar_string(vipinfo, site, charsmax(site))        format( html, 127, "<html><head><META HTTP-EQUIV=^"Refresh^" CONTENT=^"0; URL=%s^"></head><body bgcolor=^"black^" scroll=^"yes^"><a href=^"%s^">VIP privilegijos</a></body></html>", site, url, url, url )     show_motd( id, html, "Pirkti VIP" )} public on_damage(id) {     static attacker; attacker = get_user_attacker(id)    static damage; damage = read_data(2)        if(get_pcvar_num(show_received) == 1)    {        if(get_pcvar_num(received_vip) == 1)        {            if( get_user_flags(id) & VIP )             {                if(get_pcvar_num(bulletdmg_type) == 1)                {                    set_hudmessage(255, 0, 0, 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)                     ShowSyncHudMsg(id, CreateHudSyncObj(), "%L^n", id, "MINUS_DAMAGE", damage)                }                                else                {                    set_dhudmessage( 255,0,0, 0.45, Yv[ id ], 1, 0.1, 4.0, 0.1, 0.1)                    show_dhudmessage(id, "%L^n", id, "MINUS_DAMAGE", damage)                                        Yv[ id ] += 0.05                    set_task( 3.0, "RestartdHudPos1", id )                }            }        }         else        {            if(get_pcvar_num(bulletdmg_type) == 1)            {                set_hudmessage(255, 0, 0, 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)                 ShowSyncHudMsg(id, CreateHudSyncObj(), "%L^n", id, "MINUS_DAMAGE", damage)            }             else            {                set_dhudmessage( 255,0,0, 0.45, Yv[ id ], 1, 0.1, 4.0, 0.1, 0.1)                show_dhudmessage(id, "%L^n", id, "MINUS_DAMAGE", damage)                                Yv[ id ] += 0.05                set_task( 3.0, "RestartdHudPos1", id )            }        }    }     if(is_user_connected(attacker))     {        if(get_pcvar_num(bulletdmg_vip) == 1)        {            if( get_user_flags(attacker) & VIP )            {                if(get_pcvar_num(g_visible) == 1)                {                    if(fm_is_ent_visible(attacker,id))                    {                        if(get_pcvar_num(bulletdmg_type) == 1)                        {                            set_hudmessage(0, 255, 0, 0.55, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)                             ShowSyncHudMsg(attacker, CreateHudSyncObj(), "%L^n", attacker, "PLIUS_DAMAGE", damage)                        }                                                else if(get_pcvar_num(bulletdmg_type) == 2)                        {                            set_dhudmessage( 0,255,0, 0.55, Ya[ attacker ], 1, 0.1, 4.0, 0.1, 0.1)                            show_dhudmessage(attacker, "%L^n", attacker, "PLIUS_DAMAGE", damage)                            Ya[ attacker ] += 0.05                            set_task( 3.0, "RestartdHudPos2", attacker )                        }                    }                }                                else                {                    if(get_pcvar_num(bulletdmg_type) == 1)                    {                        set_hudmessage(0, 255, 0, 0.55, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)                         ShowSyncHudMsg(attacker, CreateHudSyncObj(), "%L^n", attacker, "PLIUS_DAMAGE", damage)                    }                     else if(get_pcvar_num(bulletdmg_type) == 2)                    {                        set_dhudmessage( 0,255,0, 0.55, Ya[ attacker ], 1, 0.1, 4.0, 0.1, 0.1)                        show_dhudmessage(attacker, "%L^n", attacker, "PLIUS_DAMAGE", damage)                        Ya[ attacker ] += 0.05                        set_task( 3.0, "RestartdHudPos2", attacker )                    }                }            }        }                else if(get_pcvar_num(bulletdmg_vip) == 2)        {            if(get_pcvar_num(g_visible) == 1)            {                if(fm_is_ent_visible(attacker,id))                {                    if(get_pcvar_num(bulletdmg_type) == 1)                    {                        set_hudmessage(0, 255, 0, 0.55, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)                         ShowSyncHudMsg(attacker, CreateHudSyncObj(), "%L^n", attacker, "PLIUS_DAMAGE", damage)                    }                     else if(get_pcvar_num(bulletdmg_type) == 2)                    {                        set_dhudmessage( 0,255,0, 0.55, Ya[ attacker ], 1, 0.1, 4.0, 0.1, 0.1)                        show_dhudmessage(attacker, "%L^n", attacker, "PLIUS_DAMAGE", damage)                        Ya[ attacker ] += 0.05                        set_task( 3.0, "RestartdHudPos2", attacker )                    }                }            }             else            {                if(get_pcvar_num(bulletdmg_type) == 1)                {                    set_hudmessage(0, 255, 0, 0.55, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)                     ShowSyncHudMsg(attacker, CreateHudSyncObj(), "%L^n", attacker, "PLIUS_DAMAGE", damage)                }                 else if(get_pcvar_num(bulletdmg_type) == 2)                {                    set_dhudmessage( 0,255,0, 0.55, Ya[ attacker ], 1, 0.1, 4.0, 0.1, 0.1)                    show_dhudmessage(attacker, "%L^n", attacker, "PLIUS_DAMAGE", damage)                    Ya[ attacker ] += 0.05                    set_task( 3.0, "RestartdHudPos2", attacker )                }            }        }    }} public RestartdHudPos1( id ){    Yv[ id ] = 0.50} public RestartdHudPos2( id ){    Ya[ id ] = 0.55} public client_putinserver( id ){    Ya[ id ] = 0.45    Yv[ id ] = 0.50} public Event_DeathMsg( ){    new iKiller = read_data( 1 )    new iVictim = read_data( 2 )    new HeadShot = read_data( 3 )        if( get_user_team( iKiller ) == get_user_team( iVictim ) )        return        if( iKiller && iVictim != iKiller && get_user_flags(iKiller) & VIP )    {        static maxhp, hp        maxhp = get_pcvar_num( g_pHp[ 2 ] )        hp = get_user_health( iKiller )                if( hp != maxhp )        {            new BonusHp;            if( HeadShot ) BonusHp = get_pcvar_num( g_pHp[ 1 ] )            else BonusHp = get_pcvar_num( g_pHp[ 0 ] )                        if( hp + BonusHp > maxhp )            {                set_user_health( iKiller, maxhp )                                if(get_pcvar_num(chat_message) == 1)                    ChatColor(iKiller, "%L", iKiller, "HP_BONUS", maxhp - hp )                                    else if(get_pcvar_num(chat_message) == 2)                {                    set_dhudmessage( 0,255,0, -1.0, 0.15, 1, 1.0, 1.0, 0.1, 0.2)                    show_dhudmessage(iKiller, "%L", iKiller, "HP_BONUS", maxhp - hp )                }               }             else            {                set_user_health( iKiller, hp + BonusHp )                                if(get_pcvar_num(chat_message) == 1)                    ChatColor(iKiller, "%L", iKiller, "HP_BONUS", BonusHp )                                    else if(get_pcvar_num(chat_message) == 2)                {                    set_dhudmessage( 0,255,0, -1.0, 0.15, 1, 1.0, 1.0, 0.1, 0.2)                    show_dhudmessage(iKiller, "%L", iKiller, "HP_BONUS", BonusHp )                }            }        }    }   } public event_CurWeapon(id){    new szMapname[64]    get_mapname(szMapname, 63)        if( containi(szMapname, "cs_max") != -1 || containi(szMapname, "2x2") != -1 || containi(szMapname, "fy_") != -1 || containi(szMapname, "aim_") != -1 || containi(szMapname, "mini") != -1)        gAwpBlock = true            if(containi(szMapname, "awp"))    {        switch(read_data(2))        {            case CSW_AWP, CSW_SG550, CSW_G3SG1:            {                if(get_pcvar_num(awp_block) == 1 && gAwpBlock)                {                    client_cmd(id, "drop")                    ChatColor(id, "%L", id, "AWP_BLOCK" )                }                                if(get_pcvar_num(awp_limit) == 1 && get_playersnum() < get_pcvar_num(cvar_player)) // psychical code                {                    client_cmd(id, "drop")                    ChatColor(id, "%L", id, "AWP_LIMIT", get_pcvar_num(cvar_player) )                }                                if(get_pcvar_num(awp_vip) == 1 && (!(get_user_flags(id) & VIP)))                {                    client_cmd(id, "drop")                    ChatColor(id, "%L", id, "AWP_DROP" )                }            }        }    }} public handle_say(id){    new said[192]    read_args(said,192)     if(get_pcvar_num(vip_check) == 1)    {        if(containi(said, "/vip") != -1 )            show_vip(id)    }     return PLUGIN_CONTINUE} public show_vip(user) {    new adminnames[32][33]    new message[256]    new id, count, x, len        new players[32], playersnum    get_players(players, playersnum, "ch")    for(--playersnum; playersnum >= 0; playersnum--)    {        id = players[playersnum]        if(get_user_flags(id) & VIP)        {            get_user_name(id, adminnames[count++], charsmax(adminnames[]))        }    }     len = formatex(message, charsmax(message), "^3Prisijunge VIP:^4 ", user)    if(count > 0)     {        for(x = 0 ; x < count ; x++)         {            len += formatex(message[len], charsmax(message)-len, "^1%s%s", adminnames[x], x < (count-1) ? ", ":".")            if(len > 96)             {                ChatColor(user, message)                len = format(message, 255, "^4")            }        }        ChatColor(user, message)    }    else    {        len += copy(message[len], charsmax(message)-len, "^3Nera prisijungusiu^4 VIP")        ChatColor(user, message)    }} public OnCBasePlayer_TakeDamage( id, iInflictor, iAttacker, Float:flDamage, bitsDamageType ){    if( bitsDamageType & DMG_FALL )    {        if(get_pcvar_num(fall_damage) == 1)        {            if( get_user_flags(id) & VIP )            {                return HAM_SUPERCEDE            }        }                else if(get_pcvar_num(fall_damage) == 2)        {            return HAM_SUPERCEDE        }    }    return HAM_IGNORED} stock ChatColor(const id, const input[], any:...){    new count = 1, players[32]    static msg[192]    vformat(msg, 191, input, 3)       replace_all(msg, 191, "!g", "^4") // Green Color    replace_all(msg, 191, "!y", "^1") // Default Color    replace_all(msg, 191, "!t", "^3") // Team Color       if (id) players[0] = id; else get_players(players, count, "ch")    {        for (new i = 0; i < count; i++)        {            if (is_user_connected(players[i]))            {                message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])                write_byte(players[i]);                write_string(msg);                message_end();            }        }    }}
Image
Image
Image

User avatar
ArtHa123
Flooderis arba specialistas
Posts: 738
Joined: 2014 Feb 19 18:40

Re: Simple Public VIP

Post by ArtHa123 »

laimiukas3 wrote:ir kodel menu neduoda pridetu nauju ginklu pasiringti ?

Code: Select all

#include <amxmodx>#include <amxmisc>#include <cstrike>#include <fakemeta_util>#include <fun>#include <hamsandwich> #if AMXX_VERSION_NUM < 183    #include <dhudmessage>#endif #define PLUGIN "Simple VIP"#define VERSION "4.3"#define AUTHOR "ArtHa" #define VIP ADMIN_LEVEL_H#define REMOVE_MENU 20.05#define TID_REMOVE 2551 new CurrentRoundnew bool:HasC4[33]new bool:gShopVipmenu = truenew bool:gAwpBlock;new bool:gVipmenuActive[33];new grenades, pistols, armor, vipmenu_weapon4new vipinfo, vip_motdnew show_received, bulletdmg_vip, received_vip, g_visible, bulletdmg_typenew Float: Yv[ 33 ]new Float: Ya[ 33 ]new g_pHp[ 3 ], chat_messagenew awp_vip, cvar_player, awp_block, awp_limitnew vip_check, fall_damage // VIP MENU WEAPONSnew weapon[8]#define CSW_WEAPON1 CSW_M4A1#define CSW_WEAPON2 CSW_AK47#define CSW_WEAPON3 CSW_FAMAS#define CSW_WEAPON4 CSW_AWP#define CSW_WEAPON5 CSW_GALI#define CSW_WEAPON6 CSW_AUG#define CSW_WEAPON7 CSW_MP5NAVY  #define CSW_GUN CSW_DEAGLE#define CSW_GUN1 CSW_GLOCK18#define CSW_GUN2 CSW_USP#define CSW_GUN3 CSW_DEAGLE public plugin_init(){    register_plugin(PLUGIN, VERSION, AUTHOR)    register_dictionary("simple_vip.txt")        register_logevent("logevent_round_end", 2, "1=Round_End")      register_event( "TextMsg","round_restart","a","2&#Game_C", "2&#Game_W" );    register_concmd( "amx_roundrestart", "restartnumber", ADMIN_KICK );    RegisterHam( Ham_Spawn, "player", "FnHamSpawn", 1 )        new configsdir[64], file[132]    get_configsdir(configsdir, 63)        format(file, 131, "%s/blockedmaps.ini", configsdir)     load_maps(file)        register_cvar("vipmenu_round","2")        pistols = register_cvar("vipmenu_pistols","1")    grenades = register_cvar("vipmenu_grenades","1")    armor = register_cvar("vipmenu_armor","1")    vipmenu_weapon4 = register_cvar("vipmenu_weapon4","1")        register_clcmd("say /noriuvip", "motd")    vipinfo = register_cvar("vipinfo_website", "http://amxmodx.lt/viewtopic.php?f=12&t=5707")    vip_motd = register_cvar("vipmenu_motd","1")        register_event("Damage", "on_damage", "b", "2!0", "3=0", "4!0")    show_received = register_cvar("show_received","1")    bulletdmg_vip = register_cvar("bulletdmg_vip","1")    received_vip = register_cvar("receivedmg_vip","1")    g_visible = register_cvar("visible_player","1")    bulletdmg_type = register_cvar("bullet_damage_type","2")        register_event( "DeathMsg", "Event_DeathMsg", "a" )    g_pHp[ 0 ] = register_cvar( "amx_vip_hpadd", "10" )    g_pHp[ 1 ] = register_cvar( "amx_vip_hsadd", "20" )    g_pHp[ 2 ] = register_cvar( "amx_vip_hpmax", "100" )        chat_message = register_cvar( "amx_hpbonus_msg", "2" )        register_event("CurWeapon", "event_CurWeapon", "be")    awp_vip = register_cvar( "amx_vip_awp", "1" )    awp_limit = register_cvar( "amx_awp_limit", "1" )    awp_block = register_cvar( "amx_awp_block", "1" )    cvar_player = register_cvar("na_players_count", "10")     vip_check = register_cvar( "amx_vip_check", "1" )    register_clcmd("say", "handle_say")        RegisterHam(Ham_TakeDamage, "player", "OnCBasePlayer_TakeDamage")    fall_damage = register_cvar( "amx_no_falldmg", "1" )     weapon[0] = register_cvar( "amx_weapon1_ammo", "90" )    weapon[1] = register_cvar( "amx_weapon2_ammo", "90" )    weapon[2] = register_cvar( "amx_weapon3_ammo", "90" )    weapon[3] = register_cvar( "amx_weapon4_ammo", "30" )    weapon[4] = register_cvar( "amx_gun_ammo", "35" )    weapon[5] = register_cvar( "amx_gun1_ammo", "120" )    weapon[6] = register_cvar( "amx_gun2_ammo", "100" )    weapon[7] = register_cvar( "amx_gun3_ammo", "35" )} public logevent_round_end(){    CurrentRound++;} public plugin_cfg(){    new cfgdir[32];    get_configsdir(cfgdir, charsmax(cfgdir));        server_cmd("exec %s/simple_vip.cfg", cfgdir);} public load_maps(path[]){    new szMapname[64], szMap[64]    new file = fopen(path, "rt")     if(!file)    {        server_print("Nepavyko rasti blockedmaps.ini failo!")        return PLUGIN_HANDLED    }     new iSize = file_size(path, 1);     for(new i = 0, iLen; i < iSize; i++)    {        read_file(path, i, szMapname, charsmax(szMapname), iLen);         if(equal(szMapname[0], "") || equal(szMapname[0], ";"))        {            continue;        }                get_mapname(szMap, 63)        if(equali(szMap, szMapname))        {            gShopVipmenu = false;            break;        }    }    fclose(file);    return PLUGIN_CONTINUE} public round_restart(){    CurrentRound = 1;    return PLUGIN_HANDLED;} public restartnumber( id, level, cid ){    if( !cmd_access( id, level, cid, 1 ) )        return PLUGIN_HANDLED;        CurrentRound = 1;    return PLUGIN_HANDLED;} public FnHamSpawn(id){    if(is_user_alive(id))    {        if(gShopVipmenu)        {            gVipmenuActive[id] = false                        if(CurrentRound >= get_cvar_num( "vipmenu_round" ) )            {                if(get_user_flags(id) & VIP )                {                    if(task_exists(TID_REMOVE+id))                        remove_task(TID_REMOVE+id)                                            gVipmenuActive[id] = true                    set_task(REMOVE_MENU, "close_menu", TID_REMOVE+id )                    vipmenu(id);                }            }                        if(get_pcvar_num(pistols) == 1 && CurrentRound <= get_cvar_num( "vipmenu_round" ))            {                if(get_user_flags(id) & VIP )                {                    if(task_exists(TID_REMOVE+id))                        remove_task(TID_REMOVE+id)                                            gVipmenuActive[id] = true                    set_task(REMOVE_MENU, "close_menu", TID_REMOVE+id )                    vipmenu2(id)                }            }        }    }} public close_menu(tid){    static id    id = tid-TID_REMOVE        if(gVipmenuActive[id])    {        client_cmd(id, "slot10" )        gVipmenuActive[id] = false        ChatColor(id, "%L", id, "CLOSED" )    }} public vipmenu(id) {    new buffer[1024];    formatex(buffer, charsmax(buffer), "%L", LANG_PLAYER, "VIPMENU");                   new menu = menu_create(buffer, "menu_handler");        formatex(buffer, charsmax(buffer), "%L", id, "WEAPONS1");    menu_additem(menu, buffer, "1", 0);        formatex(buffer, charsmax(buffer), "%L", id, "WEAPONS2");    menu_additem(menu, buffer, "2", 0);        formatex(buffer, charsmax(buffer), "%L", id, "WEAPONS3");    menu_additem(menu, buffer, "3", 0);        if(get_pcvar_num(vipmenu_weapon4) == 1)    {        formatex(buffer, charsmax(buffer), "%L", id, "WEAPONS4");        menu_additem(menu, buffer, "4", 0);    }            menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)    menu_display(id, menu, 0); } public vipmenu2(id) {    new buffer[1024];    formatex(buffer, charsmax(buffer), "%L", LANG_PLAYER, "VIPMENU");                   new menu = menu_create(buffer, "menu_handler");        formatex(buffer, charsmax(buffer), "%L", id, "GUN1");    menu_additem(menu, buffer, "5", 0);        formatex(buffer, charsmax(buffer), "%L", id, "GUN2");    menu_additem(menu, buffer, "6", 0);        formatex(buffer, charsmax(buffer), "%L", id, "GUN3");    menu_additem(menu, buffer, "7", 0);        menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)    menu_display(id, menu, 0); } public menu_handler(id, menu, item){    if( item == MENU_EXIT )    {        give_items(id);        gVipmenuActive[id] = false;        menu_destroy(menu);        return PLUGIN_HANDLED;    }        new data[6], iName[64];    new acess, callback;       menu_item_getinfo(menu, item, acess, data,6, iName, 63, callback);    new key = str_to_num(data);        switch(key)    {           case 1: { give_weapons(id, CSW_WEAPON1, get_pcvar_num( weapon[ 0 ] ), CSW_GUN, get_pcvar_num( weapon[ 4 ] )); }        case 2: { give_weapons(id, CSW_WEAPON2, get_pcvar_num( weapon[ 1 ] ), CSW_GUN, get_pcvar_num( weapon[ 4 ] )); }        case 3: { give_weapons(id, CSW_WEAPON3, get_pcvar_num( weapon[ 2 ] ), CSW_GUN, get_pcvar_num( weapon[ 4 ] )); }        case 4: { give_weapons(id, CSW_WEAPON4, get_pcvar_num( weapon[ 3 ] ), CSW_GUN, get_pcvar_num( weapon[ 4 ] )); }        case 5: { give_weapon(id, CSW_GUN1, get_pcvar_num( weapon[ 5 ] )); }        case 6: { give_weapon(id, CSW_GUN2, get_pcvar_num( weapon[ 6 ] )); }                case 7: { give_weapon(id, CSW_GUN3, get_pcvar_num( weapon[ 7 ] )); }    }        gVipmenuActive[id] = false;    menu_destroy(menu);    return PLUGIN_HANDLED;} public give_weapons(id, prim, ammo1, sec, ammo2){    HasC4[id] = (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)        new weapon[32]    strip_user_weapons (id)    get_weaponname(prim, weapon, 31)    give_item(id,weapon)    cs_set_user_bpammo(id, prim, ammo1)     get_weaponname(sec, weapon, 31)    give_item(id,weapon)    cs_set_user_bpammo(id, sec, ammo2)     give_item(id,"weapon_knife")        if(HasC4[id])    {        give_item(id, "weapon_c4")        cs_set_user_plant( id )    }        give_items(id)} public give_weapon(id, sec, ammo){    HasC4[id] = (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1)     new weapon[32]    strip_user_weapons (id)    get_weaponname(sec, weapon, 31)    give_item(id,weapon)    cs_set_user_bpammo(id, sec, ammo)     give_item(id,"weapon_knife")        if (HasC4[id])    {        give_item(id, "weapon_c4")        cs_set_user_plant( id )    }        give_items(id)} give_items(id){    if(is_user_alive(id))    {        if(get_pcvar_num(grenades) == 1)        {            give_item(id, "weapon_hegrenade");            give_item(id, "weapon_smokegrenade");            give_item(id, "weapon_flashbang");            cs_set_user_bpammo(id, CSW_FLASHBANG, 2);        }                if(get_pcvar_num(armor) == 1)        {            give_item(id, "item_assaultsuit");            if(get_user_team(id) == 2)                give_item(id, "item_thighpack");        }    }} public motd(id){    if(get_pcvar_num(vip_motd) == 1)        Link( id, "%s" )} stock Link( id, url[] ){    static html[ 128 ]    new site[64]    get_pcvar_string(vipinfo, site, charsmax(site))        format( html, 127, "<html><head><META HTTP-EQUIV=^"Refresh^" CONTENT=^"0; URL=%s^"></head><body bgcolor=^"black^" scroll=^"yes^"><a href=^"%s^">VIP privilegijos</a></body></html>", site, url, url, url )     show_motd( id, html, "Pirkti VIP" )} public on_damage(id) {     static attacker; attacker = get_user_attacker(id)    static damage; damage = read_data(2)        if(get_pcvar_num(show_received) == 1)    {        if(get_pcvar_num(received_vip) == 1)        {            if( get_user_flags(id) & VIP )             {                if(get_pcvar_num(bulletdmg_type) == 1)                {                    set_hudmessage(255, 0, 0, 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)                     ShowSyncHudMsg(id, CreateHudSyncObj(), "%L^n", id, "MINUS_DAMAGE", damage)                }                                else                {                    set_dhudmessage( 255,0,0, 0.45, Yv[ id ], 1, 0.1, 4.0, 0.1, 0.1)                    show_dhudmessage(id, "%L^n", id, "MINUS_DAMAGE", damage)                                        Yv[ id ] += 0.05                    set_task( 3.0, "RestartdHudPos1", id )                }            }        }         else        {            if(get_pcvar_num(bulletdmg_type) == 1)            {                set_hudmessage(255, 0, 0, 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)                 ShowSyncHudMsg(id, CreateHudSyncObj(), "%L^n", id, "MINUS_DAMAGE", damage)            }             else            {                set_dhudmessage( 255,0,0, 0.45, Yv[ id ], 1, 0.1, 4.0, 0.1, 0.1)                show_dhudmessage(id, "%L^n", id, "MINUS_DAMAGE", damage)                                Yv[ id ] += 0.05                set_task( 3.0, "RestartdHudPos1", id )            }        }    }     if(is_user_connected(attacker))     {        if(get_pcvar_num(bulletdmg_vip) == 1)        {            if( get_user_flags(attacker) & VIP )            {                if(get_pcvar_num(g_visible) == 1)                {                    if(fm_is_ent_visible(attacker,id))                    {                        if(get_pcvar_num(bulletdmg_type) == 1)                        {                            set_hudmessage(0, 255, 0, 0.55, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)                             ShowSyncHudMsg(attacker, CreateHudSyncObj(), "%L^n", attacker, "PLIUS_DAMAGE", damage)                        }                                                else if(get_pcvar_num(bulletdmg_type) == 2)                        {                            set_dhudmessage( 0,255,0, 0.55, Ya[ attacker ], 1, 0.1, 4.0, 0.1, 0.1)                            show_dhudmessage(attacker, "%L^n", attacker, "PLIUS_DAMAGE", damage)                            Ya[ attacker ] += 0.05                            set_task( 3.0, "RestartdHudPos2", attacker )                        }                    }                }                                else                {                    if(get_pcvar_num(bulletdmg_type) == 1)                    {                        set_hudmessage(0, 255, 0, 0.55, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)                         ShowSyncHudMsg(attacker, CreateHudSyncObj(), "%L^n", attacker, "PLIUS_DAMAGE", damage)                    }                     else if(get_pcvar_num(bulletdmg_type) == 2)                    {                        set_dhudmessage( 0,255,0, 0.55, Ya[ attacker ], 1, 0.1, 4.0, 0.1, 0.1)                        show_dhudmessage(attacker, "%L^n", attacker, "PLIUS_DAMAGE", damage)                        Ya[ attacker ] += 0.05                        set_task( 3.0, "RestartdHudPos2", attacker )                    }                }            }        }                else if(get_pcvar_num(bulletdmg_vip) == 2)        {            if(get_pcvar_num(g_visible) == 1)            {                if(fm_is_ent_visible(attacker,id))                {                    if(get_pcvar_num(bulletdmg_type) == 1)                    {                        set_hudmessage(0, 255, 0, 0.55, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)                         ShowSyncHudMsg(attacker, CreateHudSyncObj(), "%L^n", attacker, "PLIUS_DAMAGE", damage)                    }                     else if(get_pcvar_num(bulletdmg_type) == 2)                    {                        set_dhudmessage( 0,255,0, 0.55, Ya[ attacker ], 1, 0.1, 4.0, 0.1, 0.1)                        show_dhudmessage(attacker, "%L^n", attacker, "PLIUS_DAMAGE", damage)                        Ya[ attacker ] += 0.05                        set_task( 3.0, "RestartdHudPos2", attacker )                    }                }            }             else            {                if(get_pcvar_num(bulletdmg_type) == 1)                {                    set_hudmessage(0, 255, 0, 0.55, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1)                     ShowSyncHudMsg(attacker, CreateHudSyncObj(), "%L^n", attacker, "PLIUS_DAMAGE", damage)                }                 else if(get_pcvar_num(bulletdmg_type) == 2)                {                    set_dhudmessage( 0,255,0, 0.55, Ya[ attacker ], 1, 0.1, 4.0, 0.1, 0.1)                    show_dhudmessage(attacker, "%L^n", attacker, "PLIUS_DAMAGE", damage)                    Ya[ attacker ] += 0.05                    set_task( 3.0, "RestartdHudPos2", attacker )                }            }        }    }} public RestartdHudPos1( id ){    Yv[ id ] = 0.50} public RestartdHudPos2( id ){    Ya[ id ] = 0.55} public client_putinserver( id ){    Ya[ id ] = 0.45    Yv[ id ] = 0.50} public Event_DeathMsg( ){    new iKiller = read_data( 1 )    new iVictim = read_data( 2 )    new HeadShot = read_data( 3 )        if( get_user_team( iKiller ) == get_user_team( iVictim ) )        return        if( iKiller && iVictim != iKiller && get_user_flags(iKiller) & VIP )    {        static maxhp, hp        maxhp = get_pcvar_num( g_pHp[ 2 ] )        hp = get_user_health( iKiller )                if( hp != maxhp )        {            new BonusHp;            if( HeadShot ) BonusHp = get_pcvar_num( g_pHp[ 1 ] )            else BonusHp = get_pcvar_num( g_pHp[ 0 ] )                        if( hp + BonusHp > maxhp )            {                set_user_health( iKiller, maxhp )                                if(get_pcvar_num(chat_message) == 1)                    ChatColor(iKiller, "%L", iKiller, "HP_BONUS", maxhp - hp )                                    else if(get_pcvar_num(chat_message) == 2)                {                    set_dhudmessage( 0,255,0, -1.0, 0.15, 1, 1.0, 1.0, 0.1, 0.2)                    show_dhudmessage(iKiller, "%L", iKiller, "HP_BONUS", maxhp - hp )                }               }             else            {                set_user_health( iKiller, hp + BonusHp )                                if(get_pcvar_num(chat_message) == 1)                    ChatColor(iKiller, "%L", iKiller, "HP_BONUS", BonusHp )                                    else if(get_pcvar_num(chat_message) == 2)                {                    set_dhudmessage( 0,255,0, -1.0, 0.15, 1, 1.0, 1.0, 0.1, 0.2)                    show_dhudmessage(iKiller, "%L", iKiller, "HP_BONUS", BonusHp )                }            }        }    }   } public event_CurWeapon(id){    new szMapname[64]    get_mapname(szMapname, 63)        if( containi(szMapname, "cs_max") != -1 || containi(szMapname, "2x2") != -1 || containi(szMapname, "fy_") != -1 || containi(szMapname, "aim_") != -1 || containi(szMapname, "mini") != -1)        gAwpBlock = true            if(containi(szMapname, "awp"))    {        switch(read_data(2))        {            case CSW_AWP, CSW_SG550, CSW_G3SG1:            {                if(get_pcvar_num(awp_block) == 1 && gAwpBlock)                {                    client_cmd(id, "drop")                    ChatColor(id, "%L", id, "AWP_BLOCK" )                }                                if(get_pcvar_num(awp_limit) == 1 && get_playersnum() < get_pcvar_num(cvar_player)) // psychical code                {                    client_cmd(id, "drop")                    ChatColor(id, "%L", id, "AWP_LIMIT", get_pcvar_num(cvar_player) )                }                                if(get_pcvar_num(awp_vip) == 1 && (!(get_user_flags(id) & VIP)))                {                    client_cmd(id, "drop")                    ChatColor(id, "%L", id, "AWP_DROP" )                }            }        }    }} public handle_say(id){    new said[192]    read_args(said,192)     if(get_pcvar_num(vip_check) == 1)    {        if(containi(said, "/vip") != -1 )            show_vip(id)    }     return PLUGIN_CONTINUE} public show_vip(user) {    new adminnames[32][33]    new message[256]    new id, count, x, len        new players[32], playersnum    get_players(players, playersnum, "ch")    for(--playersnum; playersnum >= 0; playersnum--)    {        id = players[playersnum]        if(get_user_flags(id) & VIP)        {            get_user_name(id, adminnames[count++], charsmax(adminnames[]))        }    }     len = formatex(message, charsmax(message), "^3Prisijunge VIP:^4 ", user)    if(count > 0)     {        for(x = 0 ; x < count ; x++)         {            len += formatex(message[len], charsmax(message)-len, "^1%s%s", adminnames[x], x < (count-1) ? ", ":".")            if(len > 96)             {                ChatColor(user, message)                len = format(message, 255, "^4")            }        }        ChatColor(user, message)    }    else    {        len += copy(message[len], charsmax(message)-len, "^3Nera prisijungusiu^4 VIP")        ChatColor(user, message)    }} public OnCBasePlayer_TakeDamage( id, iInflictor, iAttacker, Float:flDamage, bitsDamageType ){    if( bitsDamageType & DMG_FALL )    {        if(get_pcvar_num(fall_damage) == 1)        {            if( get_user_flags(id) & VIP )            {                return HAM_SUPERCEDE            }        }                else if(get_pcvar_num(fall_damage) == 2)        {            return HAM_SUPERCEDE        }    }    return HAM_IGNORED} stock ChatColor(const id, const input[], any:...){    new count = 1, players[32]    static msg[192]    vformat(msg, 191, input, 3)       replace_all(msg, 191, "!g", "^4") // Green Color    replace_all(msg, 191, "!y", "^1") // Default Color    replace_all(msg, 191, "!t", "^3") // Team Color       if (id) players[0] = id; else get_players(players, count, "ch")    {        for (new i = 0; i < count; i++)        {            if (is_user_connected(players[i]))            {                message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])                write_byte(players[i]);                write_string(msg);                message_end();            }        }    }}
Todėl, kad jų nėra pridėtų.

[V4.2]
Galimybė pakeisti duodamu ginklu ammo CVAR pagalba.
Galimybė pakeisti duodamus ginklus
Image

ewal
Ar jis surinks 50 žinučių?
Posts: 32
Joined: 2016 Aug 20 12:58

Re: Simple Public VIP

Post by ewal »

Gal žinot kame bėda? Įdėjau visus failus į serverį, parašiau simple_vip.amxx į plugins.ini failą, bet serveryje nieko neveikia, nei vipmenu nei komandos tokios kaip /vip ir t..t...


P.s buvau uždėjęs bit flag

User avatar
ArtHa123
Flooderis arba specialistas
Posts: 738
Joined: 2014 Feb 19 18:40

Re: Simple Public VIP

Post by ArtHa123 »

ewal wrote:Gal žinot kame bėda? Įdėjau visus failus į serverį, parašiau simple_vip.amxx į plugins.ini failą, bet serveryje nieko neveikia, nei vipmenu nei komandos tokios kaip /vip ir t..t...


P.s buvau uždėjęs bit flag
Senas amxmodx.

https://www.supergames.lt/topic/256264- ... try1840201
Patirtis 1 metai vien su CS:GO, CSS ir CS 1.6 patirtis 2 metai.

Jeigu dviejų metų patirtis su 1.6, tai pagrindinius turėtum žinoti, įdomu kokias paslaugas tu ten parduodi. :asian:
Image

ewal
Ar jis surinks 50 žinučių?
Posts: 32
Joined: 2016 Aug 20 12:58

Re: Simple Public VIP

Post by ewal »

??? Ten ne mano acc :D kaip gali but senas amxmodx jei sukuriau serveri 5min atgal pagal pamoka kuri sitam forume yra

User avatar
laimiukas3
Moderatorius
Posts: 4569
Joined: 2012 Aug 03 01:12
Skype: laimiukas3
Location: Vilnius
Contact:

Re: Simple Public VIP

Post by laimiukas3 »

ewal wrote:??? Ten ne mano acc :D kaip gali but senas amxmodx jei sukuriau serveri 5min atgal pagal pamoka kuri sitam forume yra
na jis tikrai senas paziurek amxmodx.org dev build tada daryk isvadas
amxx version parasyk tada paliginsi ka jau kalbet apie apie dproto kuris jau seniausia nera atnaujinamas :)
Image
Image
Image

ewal
Ar jis surinks 50 žinučių?
Posts: 32
Joined: 2016 Aug 20 12:58

Re: Simple Public VIP

Post by ewal »

Kokius butent pluginus reikia atsinaujinti?

Aka
Flooderis arba specialistas
Posts: 549
Joined: 2015 May 07 00:53
Skype: cs-banga.help
Location: Kaunas

Re: Simple Public VIP

Post by Aka »

Kaip sumazinti bullet damage skaicius?

Terror
Senbūvis
Posts: 1086
Joined: 2015 Feb 27 19:29
Location: Alytus

Re: Simple Public VIP

Post by Terror »

Aka wrote:Kaip sumazinti bullet damage skaicius?
per .sma dhud keist i hud problema ?

User avatar
ArtHa123
Flooderis arba specialistas
Posts: 738
Joined: 2014 Feb 19 18:40

Re: Simple Public VIP

Post by ArtHa123 »

Aka wrote:Kaip sumazinti bullet damage skaicius?
Cvar pagalba.
Image

Post Reply

Who is online

Users browsing this forum: No registered users and 15 guests