- | Afiseaza codul
/* Plugin generated by AMXX-Studio */ #include <amxmodx> #include <fakemeta> #include <cstrike> #include <hamsandwich> #include <fun> #define PLUGIN "Vip" #define VERSION "0.1.1" #define AUTHOR "C0sm1N" #define ADMIN_VIP ADMIN_LEVEL_H new bool:g_visibil[33] new bool:g_runda[33] new bool:g_bInfiniteBullets[33]; const TASK_ID = 23232 enum { CurWeapon_IsActive = 1, // byte CurWeapon_WeaponID, // byte CurWeapon_ClipAmmo // byte } #define XO_WEAPON 4 #define m_iClip 51 #define m_iClientClip 52 #define XO_PLAYER 5 #define m_pActiveItem 373 new const g_iMaxClip[CSW_P90+1] = { -1, 13, -1, 10, 1, 7, 1, 30, 30, 1, 30, 20, 25, 30, 35, 25, 12, 20, 10, 30, 100, 8 , 30, 30, 20, 2, 7, 30, 30, -1, 50 } public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_clcmd("say /vipmenu","cmdVip"); register_clcmd("say /vip","motd"); RegisterHam(Ham_Spawn, "player", "spawnn", 1) register_logevent( "end", 2, "1=Round_End" ) register_event( "ResetHUD", "ev_ResetHud", "be" ); register_event("CurWeapon","event_curweapon","be","1=1"); register_logevent("roundstart", 2, "1=Round_Start"); } public cmdVip ( id ) { if (get_user_flags(id) & ADMIN_VIP) { cmdMenu(id); g_runda[id] = true } else { client_print(id, print_chat, "Nu ai acces la acest meniu") } } public cmdMenu ( id ) { if(!is_user_alive(id) && !is_user_connected(id) && is_user_bot(id)) return PLUGIN_HANDLED; if(g_runda[id]) { client_print(id, print_chat, "Ai folosit deja odata!") return 1; } static menu; menu = menu_create ("\r VIP","handler_vip"); menu_additem ( menu,"\w MenuVip's","1", 0 ); menu_setprop ( menu, MPROP_NUMBER_COLOR,"\y"); menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL ); menu_display ( id, menu, 0 ); return 0; } public handler_vip ( id, menu, item ) { if ( item == MENU_EXIT ) { menu_destroy ( menu ); return 1; } 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: { ArmeVip( id ) } } menu_destroy ( menu ); return 1; } public ArmeVip( id ) { static menu; menu = menu_create ("\r VIP","handler_clasic"); menu_additem ( menu,"\w M4A1","1", 0 ); menu_additem ( menu,"\w AK47","2", 0 ); menu_additem ( menu,"\w Gun","3", 0 ); menu_additem ( menu,"\w Deagle","4", 0 ); menu_additem ( menu,"\w Invizibilitate","5", 0 ); menu_additem ( menu,"\w Viteza","6", 0 ); menu_additem ( menu,"\w Gloante Infinite","7", 0 ); menu_setprop ( menu, MPROP_NUMBER_COLOR,"\y"); menu_setprop ( menu, MPROP_EXIT, MEXIT_ALL ); menu_display ( id, menu, 0 ); return 0; } public handler_clasic ( id, menu, item ) { if ( item == MENU_EXIT ) { menu_destroy ( menu ); return 1; } 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: { give_item(id,"weapon_m4a1") cs_set_user_bpammo(id,CSW_M4A1, 90) } case 2: { give_item(id,"weapon_ak47") cs_set_user_bpammo(id,CSW_AK47, 90) } case 3: { give_item(id,"weapon_m249") cs_set_user_bpammo(id,CSW_M249, 200) } case 4: { give_item(id,"weapon_deagle") cs_set_user_bpammo(id,CSW_DEAGLE, 35) } case 5: { if( !g_visibil[ id ] ) { set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 0) g_visibil[ id ] = true; } } case 6: { set_user_maxspeed(id,600.0) } case 7: { g_bInfiniteBullets[id] = true; } } menu_destroy ( menu ); return 1; } public spawnn( id ) { g_bInfiniteBullets[id] = false; if(get_user_flags(id) & ADMIN_VIP && get_user_team( id ) == 2) { give_item(id,"weapon_hegrenade") give_item(id,"weapon_flashbang") give_item(id,"weapon_smokegrenade") cs_set_user_bpammo(id, CSW_FLASHBANG, 2) } } public end( id ) { new iPlayers[32], iNum; get_players(iPlayers, iNum,"c"); for (new i = 0; i < iNum; i++) { if( g_visibil[ iPlayers[ i ] ] ) { set_user_rendering(iPlayers[ i ], kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255) g_visibil[ iPlayers[ i ] ] = false; } } g_runda[id] = false } public ev_ResetHud( id ) { set_task( 2.0, "settabscore", id + TASK_ID ); } public settabscore( taskid ) { new id = taskid - TASK_ID; if( get_user_flags( id ) & ADMIN_VIP && is_user_connected( id ) ) { message_begin( MSG_ALL, get_user_msgid( "ScoreAttrib" ) ); write_byte( id ); write_byte( 4 ); message_end( ); } } public motd( id ) { show_motd(id, "vip.txt") } public roundstart( id ) { new iPlayers[32], iNum; get_players(iPlayers, iNum,"c"); for (new i = 0; i < iNum; i++) { g_runda[ iPlayers[ i ] ] = false } } public client_putinserver( id ) { if(get_user_flags(id) & ADMIN_VIP) { new admin[32] get_user_name(id,admin,31) client_print(0, print_chat, "%s se conecteaza pe server",admin) } } public client_disconnect( id ) { if(get_user_flags(id) & ADMIN_VIP) { new admin[32] get_user_name(id,admin,31) client_print(0, print_chat, "%s a iesit dupa server!",admin) } } public event_curweapon( id ) { if( get_msg_arg_int(CurWeapon_IsActive) && g_bInfiniteBullets[id] ) { new iMaxClip = g_iMaxClip[ get_msg_arg_int( CurWeapon_WeaponID ) ] if( get_msg_arg_int(CurWeapon_ClipAmmo) < iMaxClip ) { new iWeapon = get_pdata_cbase(id, m_pActiveItem, XO_PLAYER) if( iWeapon > 0 ) { set_pdata_int(iWeapon, m_iClip, iMaxClip, XO_WEAPON) set_pdata_int(iWeapon, m_iClientClip, iMaxClip, XO_WEAPON) set_msg_arg_int(CurWeapon_ClipAmmo, ARG_BYTE, iMaxClip) } } } }
Vreau sa stiu si cum a-ti rezolvat , ca pe viitor sa imi fac singur :)