RoLex. Posted February 2, 2016 Share Posted February 2, 2016 Nume : Cristi (REAL) RoLex. (FORUM) Versiune : Cs 1.6 Descriere detaliata : vreau si eu un plugin de clase pentru BB Link to comment Share on other sites More sharing options...
Wizy. Posted February 3, 2016 Share Posted February 3, 2016 (edited) Reguli info Descriere: Acest plugin face ca cel care se conecteaza pe server sa ii apara un meniu care sa-l intrebe daca Cunoaste Regulament-ul. Plugin-ul are 3 variante. 1.Nu il cunosc. [apare un motd]. 2.Il cunosc deja[te lasa sa joci.] 3. NU vreau sa il citesc.[Kick reason.] Autor: das Faydee Sma: #include <amxmodx>#pragma semicolon 1#define PLUGIN "Plugin nou"#define VERSION "1.0"#define TASK_TIME 15.0new const MENU_NAME[ ] = "\y Cunosti regulamentul serverului \r?";new const KICK_REASON[ ] = "Ai face bine sa citesti regulile , altfel nu ai ce cauta pe server !";new const MOTD_FILE[ ] = "addons/amxmodx/configs/reguli.txt";public plugin_init( ) register_plugin( PLUGIN, VERSION, "Askhanar" );public client_connect( id ){ if( is_user_bot( id ) || is_user_hltv( id ) ) return 1; set_task( TASK_TIME, "AdvertizePlayer", id + 112233 ); return 0;}public client_disconnect( id ){ if( is_user_bot( id ) || is_user_hltv( id ) ) return 1; remove_task( id + 112233 ); return 0;}public AdvertizePlayer( id ){ id -= 112233; if( !is_user_connected( id ) ) return 1; ShowAdvertizeMenu( id , 0 ); return 0;}public ShowAdvertizeMenu( id, page ){ new menu = menu_create( MENU_NAME, "ShowAdvertizeMenuHandler" ); menu_additem( menu, "Nu , nu cunosc regulile", "1", 0 ); menu_additem( menu, "Da , cunosc deja regulile", "2", 0 ); menu_additem( menu, "Nu vreau sa le citesc", "3", 0 ); menu_setprop( menu, MPROP_EXITNAME, "" ); menu_display( id, menu, page ); }public ShowAdvertizeMenuHandler( id, menu, item ){ if( item == MENU_EXIT ) { ShowAdvertizeMenu( id, 0 ); return 1; } new data[ 6 ], iName[ 64 ]; new iaccess, callback; menu_item_getinfo( menu, item, iaccess, data, 5, iName, 63, callback ); new key = str_to_num( data ); switch( key ) { case 1: show_motd( id, MOTD_FILE ); case 2: return 1; case 3: server_cmd( "kick #%i ^"%s^"", get_user_userid( id ), KICK_REASON ); } return 0;} ! Clase Zombie Descriere: Acest plugin este unul cu rase de Zombie. 1. Schelete. 2. Asistenta Zombie 3. Moartea 4. Caine Extraterestru 5. Razboinic de Gheata 6. Dragon[admin] 7.Zombie Distrugator[Vip] Autor: eu. Sma: include <amxmodx> #include <basebuilder>#include <hamsandwich>#include <fun>#include <cstrike>/*================================================================================[Plugin Customization]=================================================================================*/// Classic Zombie Attributesnew const zclass1_name[] = { "Scheleton" }new const zclass1_info[] = { "=Echilibrat=" }new const zclass1_model[] = { "v_schelete" }new const zclass1_clawmodel[] = { "v_m_schelete" }const zclass1_health = 9000const zclass1_speed = 260const Float:zclass1_gravity = 1.0const zclass1_adminflags = ADMIN_ALL// Fast Zombie Attributesnew const zclass2_name[] = { "Asistenta Zombie" }new const zclass2_info[] = { "HP-- SP++" }new const zclass2_model[] = { "nurse" }new const zclass2_clawmodel[] = { "nurse_knife" }const zclass2_health = 6500const zclass2_speed = 328const Float:zclass2_gravity = 1.0const zclass2_adminflags = ADMIN_ALL// Jumper Zombie Attributesnew const zclass3_name[] = { "Moartea" }new const zclass3_info[] = { "HP- GR+" }new const zclass3_model[] = { "v_sat" }new const zclass3_clawmodel[] = { "v_m_sat" }const zclass3_health = 7200const zclass3_speed = 285const Float:zclass3_gravity = 0.5const zclass3_adminflags = ADMIN_ALL// Alien Dog Zombie Attributesnew const zclass4_name[] = { "Caine Extraterestru" }new const zclass4_info[] = { "HP-- GR++ SP++" }new const zclass4_model[] = { "dog" }new const zclass4_clawmodel[] = { "dogg" }const zclass4_health = 4200const zclass4_speed = 390const Float:zclass4_gravity = 0.3const zclass4_adminflags = ADMIN_ALL// Tanker Zombie Attributesnew const zclass5_name[] = { "Razboinic de Gheata" }new const zclass5_info[] = { "HP++ SP-" }new const zclass5_model[] = { "v_frost" }new const zclass5_clawmodel[] = { "v_m_frost" }const zclass5_health = 11500const zclass5_speed = 210const Float:zclass5_gravity = 1.0const zclass5_adminflags = ADMIN_ALL#define TANK_ARMOR 200// Cioara Zombie Attributesnew const zclass6_name[] = { "Dragon Zburator" }new const zclass6_info[] = { "HP--- SP+ GR +++" }new const zclass6_model[] = { "v_dragon" }new const zclass6_clawmodel[] = { "v_m_dragon" }const zclass6_health = 3000const zclass6_speed = 390const Float:zclass6_gravity = 0.155const zclass6_adminflags = ADMIN_MAP// Vip Zombie Attributesnew const zclass7_name[] = { "Zombie Distrugator" }new const zclass7_info[] = { "HP+++ SP++ GR+" }new const zclass7_model[] = { "new_viaipi" }new const zclass7_clawmodel[] = { "n_m_vip" }const zclass7_health = 13000const zclass7_speed = 328const Float:zclass7_gravity = 0.4const zclass7_adminflags = ADMIN_IMMUNITY/*============================================================================*/new g_zclass_tanker// Zombie Classes MUST be registered on plugin_precachepublic plugin_precache(){ register_plugin("[bB] Clase Zombalai", "Basebuilder v6.9", "Tirant + DanTe's update") // Register all classes bb_register_zombie_class(zclass1_name, zclass1_info, zclass1_model, zclass1_clawmodel, zclass1_health, zclass1_speed, zclass1_gravity, 0.0, zclass1_adminflags)bb_register_zombie_class(zclass2_name, zclass2_info, zclass2_model, zclass2_clawmodel, zclass2_health, zclass2_speed, zclass2_gravity, 0.0, zclass2_adminflags)bb_register_zombie_class(zclass3_name, zclass3_info, zclass3_model, zclass3_clawmodel, zclass3_health, zclass3_speed, zclass3_gravity, 0.0, zclass3_adminflags) bb_register_zombie_class(zclass4_name, zclass4_info, zclass4_model, zclass4_clawmodel, zclass4_health, zclass4_speed, zclass4_gravity, 0.0, zclass4_adminflags) g_zclass_tanker = bb_register_zombie_class(zclass5_name, zclass5_info, zclass5_model, zclass5_clawmodel, zclass5_health, zclass5_speed, zclass5_gravity, 0.0, zclass5_adminflags) bb_register_zombie_class(zclass6_name, zclass6_info, zclass6_model, zclass6_clawmodel, zclass6_health, zclass6_speed, zclass6_gravity, 0.0, zclass6_adminflags) bb_register_zombie_class(zclass7_name, zclass7_info, zclass7_model, zclass7_clawmodel, zclass7_health, zclass7_speed, zclass7_gravity, 0.0, zclass7_adminflags) }#if defined TANK_ARMORpublic plugin_init(){ RegisterHam(Ham_Spawn, "player", "ham_PlayerSpawn_Post", 1)}public ham_PlayerSpawn_Post(id){ if (!is_user_alive(id)) return ; if (bb_is_user_zombie(id) && bb_get_user_zombie_class(id) == g_zclass_tanker) { give_item(id, "item_assaultsuit"); cs_set_user_armor(id, TANK_ARMOR, CS_ARMOR_VESTHELM); }}#endif! Meniu VIP Descriere: Acest plugin face ca atunci cand scri in chat /vmenu iti apare un meniu cu diferite arme / puteri / arme cu puteri pe care le poti alege odata pe runda Autor: eu. Sma: #pragma semicolon 1 #include <amxmodx>#include <amxmisc>#include <cstrike>#include <engine>#include <fun>#include <hamsandwich>#include <fakemeta>#include <vault>#define ADMIN_BBVIP ADMIN_IMMUNITY// Define the Plugin Versionnew const VERSION[] = { "1.0" };// PREFIXnew const PREFIX[] = { "!g[ BB.NumeServer.Ro ]!n" };new const g_szKnifeBModel[] = "models/cutit_nebun.mdl";new const g_szKnifeWModel[] = "models/cutit_nebun2.mdl";new const g_szAk47Model[] = "models/dragonu_ak_47.mdl";new const g_szDeagleModel[] = "models/deagleu.mdl";new VipUsed[33];new HasSpeed;new bool:g_bHasKnifeB[33];new bool:g_bHasKnifeW[33];new bool:g_bHasAk47[33];new bool:g_bHasDeagle[33];new Float:fast_speed = 400.0;new Float:normal_speed = 250.0;//new g_pVisiblity;new mpd,/* mkb,*/ mhb;new maxplayers;public plugin_init(){ register_plugin("BaseBuilder: VIP Menu", VERSION, "anti-talent"); RegisterHam(Ham_Spawn, "player", "FwdHamSpawn_Post", 1); RegisterHam(Ham_Item_PreFrame, "player", "FwdPreFrame_Post", 1); RegisterHam(Ham_TakeDamage, "player", "FwdPlayerDamage"); //RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1); register_event("CurWeapon","event_curweapon","be","1=1"); register_clcmd("say vmenu", "cmdVmenu"); register_clcmd("say /vmenu", "cmdVmenu"); register_clcmd("say_team vmenu", "cmdVmenu"); register_clcmd("say_team /vmenu", "cmdVmenu"); register_clcmd("say /sagasgasf", "cmdBuyvip"); register_clcmd("say sagasgas", "cmdBuyvip"); register_clcmd("say_team sagasgafs", "cmdBuyvip"); register_clcmd("say_team /sagasfgsa", "cmdBuyvip"); register_clcmd("say /safasgas", "cmdPreturi"); register_clcmd("say_team /gassae", "cmdPreturi"); //g_pVisiblity = register_cvar( "km_invis", "200" ); // 255 = clearly visible set_task(480.0, "kmodmsg", 0, _, _, "b"); mpd = register_cvar("money_per_damage","3"); //mkb = register_cvar("money_kill_bonus","200"); mhb = register_cvar("money_hs_bonus","500"); register_event("Damage","Damage","b"); maxplayers = get_maxplayers(); // Ham TakeDamage register_forward( FM_CmdStart, "fw_CmdStart" ); //RegisterHam(Ham_Spawn, "player", "fwHamPlayerSpawnPost", 1);}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_IMMUNITY) { 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 FwdPlayerDamage(victim, inflictor, attacker, Float:damage, damagebits){ if(inflictor == attacker && attacker != victim && g_bHasKnifeB[ attacker ] && is_user_alive(attacker) && get_user_weapon(attacker) == CSW_KNIFE ){ SetHamParamFloat(4, damage * 3.0);} if(inflictor == attacker&& attacker != victim&& g_bHasAk47[ attacker ]&& is_user_alive(attacker)&& get_user_weapon(attacker) == CSW_AK47 ){SetHamParamFloat(4, damage * 3.0);} if(inflictor == attacker&& attacker != victim&& g_bHasDeagle[ attacker ]&& is_user_alive(attacker)&& get_user_weapon(attacker) == CSW_DEAGLE ){SetHamParamFloat(4, damage * 4.0);}}public plugin_precache(){precache_model(g_szKnifeBModel);precache_model(g_szAk47Model);precache_model(g_szKnifeWModel);precache_model(g_szDeagleModel);}public event_curweapon(id){if(g_bHasKnifeB[id] && read_data(2) == CSW_KNIFE){set_pev(id, pev_viewmodel2, g_szKnifeBModel);set_user_gravity(id, 0.5);}if(g_bHasAk47[id] && read_data(2) == CSW_AK47){set_pev(id, pev_viewmodel2, g_szAk47Model);}if(g_bHasDeagle[id] && read_data(2) == CSW_DEAGLE){set_pev(id, pev_viewmodel2, g_szDeagleModel);}}public FwdPreFrame_Post(id){if(!is_user_alive(id)){return PLUGIN_HANDLED;}if(!HasSpeed){return PLUGIN_HANDLED;}else if(HasSpeed){set_user_maxspeed(id, fast_speed);}return PLUGIN_HANDLED;}public FwdHamSpawn_Post(id){if (!is_user_alive(id))return PLUGIN_CONTINUE;HasSpeed = false;VipUsed[id] = false;g_bHasKnifeB[id] = false;g_bHasKnifeW[id] = false;g_bHasAk47[id] = false;g_bHasDeagle[id] = false;set_user_maxspeed(id, normal_speed);set_user_rendering( id, _, 0, 0, 0, _, 0 );return PLUGIN_CONTINUE;}public cmdVmenu(id){if(!(get_user_flags(id) & ADMIN_BBVIP)){client_printc(id, "%s Doar !gVIPurile !tau acces la !gMeniul de vip", PREFIX);return PLUGIN_HANDLED;}if(VipUsed[id]){client_printc(id, "%s Ti-ai luat deja ceva din !gMeniul de VIP!n in aceasta runda. !tAsteapta pana runda viitoare sa iti mai iei inca un item", PREFIX);return PLUGIN_HANDLED;}switch(cs_get_user_team(id)){case CS_TEAM_T: VipTMenu(id); case CS_TEAM_CT: VipCTMenu(id); }return PLUGIN_HANDLED;}public VipCTMenu(id){ new menu = menu_create("\yMeniu De ViP:^n\r", "VipCTMenu_handler"); menu_additem(menu, "\w+150HP si +100Armor", "1", 0); menu_additem(menu, "\wViteza", "2", 0); menu_additem(menu, "\wM249 si Deagle", "3", 0); menu_additem(menu, "\wRevive", "4", 0); menu_additem(menu, "\wSG550", "5", 0); menu_additem(menu, "\wG3SG1", "6", 0); menu_additem(menu, "\wAK 47 Auriu", "7", 0); menu_additem(menu, "\wDeagle Nebun", "8", 0); menu_additem(menu, "\wAWP cu 600 dmg", "9", 0); menu_display(id, menu);}public VipCTMenu_handler(id, menu, item){ if( item == MENU_EXIT ) { menu_destroy(menu); return PLUGIN_HANDLED; } new data[6], iName[64]; new access, callback; menu_item_getinfo(menu, item, access, data,5, iName, 63, callback); new key = str_to_num(data); switch(key) { case 1: { set_user_health(id, get_user_health(id) + 150); set_user_armor(id, get_user_armor(id) + 100); VipUsed[id] = true; client_printc(id, "%s Tocmai ai primit !g150HP!n si !g100Armor!n", PREFIX); } case 2: { VipUsed[id] = true; HasSpeed = true; set_user_maxspeed(id, fast_speed); client_printc(id, "%s Tocmai ai primit !gViteza", PREFIX); } case 3: { give_item(id, "weapon_m249"); give_item(id, "weapon_deagle"); cs_set_user_bpammo(id, CSW_M249, 200); cs_set_user_bpammo(id, CSW_DEAGLE, 100); VipUsed[id] = true; client_printc(id, "%s Tocmai ai primit un !gM249!n si un !gDeagle!n", PREFIX); } case 4: { ExecuteHamB(Ham_CS_RoundRespawn, id); VipUsed[id] = true; client_printc(id, "%s Ai fost !gReinviat", PREFIX); } case 5: { give_item(id, "weapon_sg550"); cs_set_user_bpammo(id, CSW_SG550, 200); VipUsed[id] = true; client_printc(id, "%s Tocmai ai primit un !gSG550", PREFIX); } case 6: { give_item(id, "weapon_g3sg1"); cs_set_user_bpammo(id, CSW_G3SG1, 200); VipUsed[id] = true; client_printc(id, "%s Tocmai ai primit un !gG3SG1", PREFIX); } case 7: { give_item(id, "weapon_ak47"); cs_set_user_bpammo(id, CSW_AK47, 200); set_pev(id, pev_viewmodel2, "models/dragonu_ak_47.mdl"); g_bHasAk47[id] = true; VipUsed[id] = true; client_printc(id, "%s Tocmai ai primit un !gAK-47 Auriu", PREFIX); } case 8: { give_item(id, "weapon_deagle"); cs_set_user_bpammo(id, CSW_DEAGLE, 200); set_pev(id, pev_viewmodel2, "models/deagleu.mdl"); g_bHasDeagle[id] = true; VipUsed[id] = true; client_printc(id, "%s Tocmai ai primit un !gDeagle Nebun", PREFIX); } case 9: { give_item(id, "weapon_awp"); cs_set_user_bpammo(id, CSW_AWP, 200); VipUsed[id] = true; client_printc(id, "%s Tocmai ai primit un !gAWP", PREFIX); } } menu_destroy(menu); return PLUGIN_HANDLED;}public VipTMenu(id){ new menu = menu_create("\yMeniu De ViP:^n\r", "VipTMenu_handler"); menu_additem(menu, "\wViteza", "1", 0); menu_additem(menu, "\w+5000Hp si +5000Armor", "2", 0); menu_additem(menu, "\wCutit Nebun 1", "3", 0); menu_additem(menu, "\wCutit Nebun 2", "4", 0); menu_display(id, menu);}public VipTMenu_handler(id, menu, item){ if( item == MENU_EXIT ) { menu_destroy(menu); return PLUGIN_HANDLED; } new data[6], iName[64]; new access, callback; menu_item_getinfo(menu, item, access, data,5, iName, 63, callback); new key = str_to_num(data); switch(key) { case 1: { VipUsed[id] = true; HasSpeed = true; set_user_maxspeed(id, fast_speed); client_printc(id, "%s Tocmai ai primit !gViteza", PREFIX); } case 2: { set_user_health(id, get_user_health(id) + 5000); set_user_armor(id, get_user_armor(id) + 5000); VipUsed[id] = true; client_printc(id, "%s Tocmai ai primit !g5000 HP!n si !g5000 Armura!n", PREFIX); } case 3: { set_user_health(id, get_user_health(id) + 2000); set_user_armor(id, get_user_armor(id) + 2000); set_user_maxspeed(id, fast_speed); HasSpeed = true; set_pev(id, pev_viewmodel2, "models/cutit_nebun.mdl"); g_bHasKnifeB[id] = true; VipUsed[id] = true; client_printc(id, "%s Tocmai ai primit !tViata !nsi un !gCutit Nebun", PREFIX); } case 4: { set_user_health(id, get_user_health(id) + 2500); set_user_armor(id, get_user_armor(id) + 2500); set_user_maxspeed(id, fast_speed); HasSpeed = true; set_pev(id, pev_viewmodel2, "models/cutit_nebun2.mdl"); g_bHasKnifeW[id] = true; set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 125); VipUsed[id] = true; client_printc(id, "%s Tocmai ai primit !tViata !nsi un !gCutit Nebun", PREFIX); } } menu_destroy(menu); return PLUGIN_HANDLED;}public cmdBuyvip(id){ show_motd(id, "vip.txt", "VIP");}public PrintText(id){ client_print(id, print_chat, "!t[bB.GoDpLaY.Ro] !gPentru a cumpara !tVIP !gadauga id-ul !gKinderbueno_cs .");}public cmdPreturi(id){ show_motd(id, "preturi.txt", "PRETURI"); client_printc(id, "!t[bB.GoDpLaY.Ro] !tPentru a vedea beneficiile !gVIP-ului !ntasteaza in chat !t/privilegii .");}// Colour Chatstock client_printc(const id, const input[], any:...){ new count = 1, players[32]; static msg[191]; vformat(msg, 190, input, 3); replace_all(msg, 190, "!g", "^x04"); // Green Color replace_all(msg, 190, "!n", "^x01"); // Default Color replace_all(msg, 190, "!t", "^x03"); // 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)) { message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players); write_byte(players); write_string(msg); message_end(); } }}! Health Bar Descriere: Acest plugin arata tuturor jucatoriilor deasupra capului o bara care le arata cat de multa viata au / mai au Autor: eu Sma: #include < amxmodx > #include < cstrike >#include < fakemeta >#include < hamsandwich >#define VERSION "3.0"new const HEALTH_BAR_MODEL[ ] = "sprites/barenoize.spr";new g_playerBar[ 33 ], g_isAlive[ 33 ], CsTeams: g_playerTeam[ 33 ], g_playerBot[ 33 ], g_playerMaxHealth[ 33 ], g_showHB[ 33 ];new pcvarBotSupport, pcvarShowMode, pcvarSpec, cvarSpec, cvarShowMode, cvarBotSupport;new g_maxPlayers, fwShowMode, botRegistered, msg_SayText;new g_botQuotaPointer;public plugin_init( ) {register_plugin( "Health Bar", VERSION, "Bboy Grun" );register_cvar( "Health_Bars", VERSION, FCVAR_SERVER | FCVAR_SPONLY );set_cvar_string( "Health_Bars", VERSION );register_event( "HLTV", "evNewRound", "a", "1=0", "2=0" );register_event( "DeathMsg", "evDeathMsg", "a" );register_event( "Health", "evHealth", "be" );RegisterHam( Ham_Spawn, "player", "fwHamSpawn", true );register_clcmd( "say hb", "hbHandle" );register_clcmd( "say /hb", "hbHandle" );pcvarShowMode = register_cvar( "health_ShowMode", "2" );pcvarBotSupport = register_cvar( "health_BotSupport", "1" );pcvarSpec = register_cvar( "health_ShowToSpectators", "1" );g_maxPlayers = get_maxplayers( );msg_SayText = get_user_msgid( "SayText" );g_botQuotaPointer = get_cvar_pointer( "bot_quota" );new playerBar, allocString = engfunc( EngFunc_AllocString, "env_sprite" );for( new id = 1; id <= g_maxPlayers; id ++ ){g_playerBar[ id ] = engfunc( EngFunc_CreateNamedEntity, allocString );playerBar = g_playerBar[ id ];if( pev_valid( playerBar ) ){set_pev( playerBar, pev_scale, 0.1 );engfunc( EngFunc_SetModel, playerBar, HEALTH_BAR_MODEL );}}evNewRound( );}public plugin_init_bots( id ){RegisterHamFromEntity( Ham_Spawn, id, "fwHamSpawn", 1 );fwHamSpawn( id );}public plugin_precache( ){precache_model( HEALTH_BAR_MODEL );}public client_putinserver( id ){g_isAlive[ id ] = 0;g_playerTeam[ id ] = CS_TEAM_SPECTATOR;g_playerBot[ id ] = is_user_bot( id );g_playerMaxHealth[ id ] = 0;g_showHB[ id ] = true;if( cvarBotSupport && !botRegistered && g_playerBot[ id ] && g_botQuotaPointer ){set_task( 0.4, "plugin_init_bots", id );botRegistered = 1;}}public client_disconnect( id ){g_isAlive[ id ] = 0;g_playerTeam[ id ] = CS_TEAM_UNASSIGNED;g_playerBot[ id ] = 0;g_playerMaxHealth[ id ] = 0;g_showHB[ id ] = false;}public hbHandle( id ) // [ ^4 = GREEN ] [ ^3 = Team Color ] [ ^1 = client con_color value ]{g_showHB[ id ] = !g_showHB[ id ];message_begin( MSG_ONE_UNRELIABLE, msg_SayText, .player = id );write_byte( id );write_string( g_showHB[ id ] ?"^4[ HEALTH BARS ]^3 Enabled for you^1 ! Write /hb to^4 disable^1 it":"^4[ HEALTH BARS ]^3 Disabled for you^1 ! Write /hb to^4 enable^1 it" );message_end( );}public fwAddToFullPack( es, e, ent, host, host_flags, player, p_set ){if( !player && !g_playerBot[ host ] && ( g_isAlive[ host ] || cvarSpec ) && g_showHB[ host ] ){new user;for( user = g_maxPlayers; user > 0; -- user ){if( g_playerBar[ user ] == ent ){ if( user != host && g_isAlive[ user ] && ( !g_playerBot[ user ] || cvarBotSupport ) && ( cvarShowMode == 2 || g_playerTeam[ host ] == g_playerTeam[ user ] ) ){new Float: playerOrigin[ 3 ];pev( user, pev_origin, playerOrigin );playerOrigin[ 2 ] += 30.0;set_es( es, ES_Origin, playerOrigin );}else{set_es( es, ES_Effects, EF_NODRAW );}break;}}}}public fwHamSpawn( id ){if( cvarShowMode && is_user_alive( id ) ){new Float: playerOrigin[ 3 ];pev( id, pev_origin, playerOrigin );g_isAlive[ id ] = 1;g_playerTeam[ id ] = cs_get_user_team( id );engfunc( EngFunc_SetOrigin, g_playerBar[ id ], playerOrigin );evHealth( id );}}public evDeathMsg( ){new id = read_data( 2 );g_isAlive[ id ] = 0;g_playerTeam[ id ] = cs_get_user_team( id );g_playerMaxHealth[ id ] = 0;}public evHealth( id ){new hp = get_user_health( id );if( g_playerMaxHealth[ id ] < hp ){g_playerMaxHealth[ id ] = hp;set_pev( g_playerBar[ id ], pev_frame, 99.0 );}else{set_pev( g_playerBar[ id ], pev_frame, 0.0 + ( ( ( hp - 1 ) * 100 ) / g_playerMaxHealth[ id ] ) );}}public evNewRound( ){cvarShowMode = get_pcvar_num( pcvarShowMode );cvarSpec = get_pcvar_num( pcvarSpec );new valueBotSupport = get_pcvar_num( pcvarBotSupport );if( cvarShowMode > 0 ){if( !fwShowMode ){fwShowMode = register_forward( FM_AddToFullPack, "fwAddToFullPack", true );for( new id = 1; id <= g_maxPlayers; set_pev( g_playerBar[ id ++ ], pev_effects, 0 ) ) { }}}else{if( fwShowMode ){unregister_forward( FM_AddToFullPack, fwShowMode, true );fwShowMode = 0;for( new id = 1; id <= g_maxPlayers; set_pev( g_playerBar[ id ++ ], pev_effects, EF_NODRAW ) ) { }}}if( valueBotSupport && !botRegistered ){ for( new id = 1; id <= g_maxPlayers; id ++ ){if( g_playerBot[ id ] ){plugin_init_bots( id );botRegistered = 1;break;}}}cvarBotSupport = valueBotSupport;}! Edited February 3, 2016 by das Faydee Link to comment Share on other sites More sharing options...
Recommended Posts