Semiclip под опредиленый флаг. |
Здравствуйте, гость Вход | Регистрация
Наши новости:
|
|
|
Semiclip под опредиленый флаг. |
csnet
|
24.12.2013, 8:26
Сообщение
|
|
|
ты сначала опредИли какой флаг
а потом используй if(get_user_flags(id) & ADMIN_ ... нужный флаг) {
Отредактировал: csnet, - 24.12.2013, 8:26
![]() go v cs:go
|
|
|
|
Original Teamplay
|
24.12.2013, 9:48
Сообщение
|
|
|
|
|
|
|
csnet
|
24.12.2013, 10:08
Сообщение
|
|
|
так напиши на какой . епрст.
![]() go v cs:go
|
|
|
|
r1nk0
|
6.1.2014, 14:01
Сообщение
|
![]() |
Нашел вип плагин где есть такая функция под определенный флаг,помогите убрать все лишнее что бы только на флаг T остался semiclip
Скрытый текст #define DAMAGE_RECIEVED #define DISTANCE 120.0 #define UPDATE_FREQ 0.2 #include <amxmodx> #include <amxmisc> #include <cstrike> #include <fun> #include <fakemeta> #include <hamsandwich> enum Color { NORMAL = 1, // clients scr_concolor cvar color GREEN, // Green Color TEAM_COLOR, // Red, grey, blue GREY, // grey RED, // Red BLUE, // Blue } new TeamName[][] = { "", "TERRORIST", "CT", "SPECTATOR" } ColorChat(id, Color:type, const msg[], {Float,Sql,Result,_}:...) { if( !get_playersnum() ) return; new message[256]; switch(type) { case NORMAL: // clients scr_concolor cvar color { message[0] = 0x01; } case GREEN: // Green { message[0] = 0x04; } default: // White, Red, Blue { message[0] = 0x03; } } vformat(message[1], 251, msg, 4); // Make sure message is not longer than 192 character. Will crash the server. message[192] = '^0'; new team, ColorChange, index, MSG_Type; if(id) { MSG_Type = MSG_ONE; index = id; } else { index = FindPlayer(); MSG_Type = MSG_ALL; } team = get_user_team(index); ColorChange = ColorSelection(index, MSG_Type, type); ShowColorMessage(index, MSG_Type, message); if(ColorChange) { Team_Info(index, MSG_Type, TeamName[team]); } } ShowColorMessage(id, type, message[]) { static bool:saytext_used; static get_user_msgid_saytext; if(!saytext_used) { get_user_msgid_saytext = get_user_msgid("SayText"); saytext_used = true; } message_begin(type, get_user_msgid_saytext, _, id); write_byte(id) write_string(message); message_end(); } Team_Info(id, type, team[]) { static bool:teaminfo_used; static get_user_msgid_teaminfo; if(!teaminfo_used) { get_user_msgid_teaminfo = get_user_msgid("TeamInfo"); teaminfo_used = true; } message_begin(type, get_user_msgid_teaminfo, _, id); write_byte(id); write_string(team); message_end(); return 1; } ColorSelection(index, type, Color:Type) { switch(Type) { case RED: { return Team_Info(index, type, TeamName[1]); } case BLUE: { return Team_Info(index, type, TeamName[2]); } case GREY: { return Team_Info(index, type, TeamName[0]); } } return 0; } FindPlayer() { new i = -1; while(i <= get_maxplayers()) { if(is_user_connected(++i)) return i; } return -1; } enum { Primary = 1 , Secondary , Knife , Grenades , C4 }; stock StripWeapons(id, Type, bool: bSwitchIfActive = true) { new iReturn; if(is_user_alive(id)) { new iEntity, iWeapon; while((iWeapon = GetWeaponFromSlot(id, Type, iEntity)) > 0) iReturn = ham_strip_user_weapon(id, iWeapon, Type, bSwitchIfActive); } return iReturn; } stock GetWeaponFromSlot( id , iSlot , &iEntity ) { if ( !( 1 <= iSlot <= 5 ) ) return 0; iEntity = 0; const m_rgpPlayerItems_Slot0 = 367; const m_iId = 43; const XO_WEAPONS = 4; const XO_PLAYER = 5; iEntity = get_pdata_cbase( id , m_rgpPlayerItems_Slot0 + iSlot , XO_PLAYER ); return ( iEntity > 0 ) ? get_pdata_int( iEntity , m_iId , XO_WEAPONS ) : 0; } stock ham_strip_user_weapon(id, iCswId, iSlot = 0, bool:bSwitchIfActive = true) { new iWeapon if( !iSlot ) { static const iWeaponsSlots[] = { -1, 2, //CSW_P228 -1, 1, //CSW_SCOUT 4, //CSW_HEGRENADE 1, //CSW_XM1014 5, //CSW_C4 1, //CSW_MAC10 1, //CSW_AUG 4, //CSW_SMOKEGRENADE 2, //CSW_ELITE 2, //CSW_FIVESEVEN 1, //CSW_UMP45 1, //CSW_SG550 1, //CSW_GALIL 1, //CSW_FAMAS 2, //CSW_USP 2, //CSW_GLOCK18 1, //CSW_AWP 1, //CSW_MP5NAVY 1, //CSW_M249 1, //CSW_M3 1, //CSW_M4A1 1, //CSW_TMP 1, //CSW_G3SG1 4, //CSW_FLASHBANG 2, //CSW_DEAGLE 1, //CSW_SG552 1, //CSW_AK47 3, //CSW_KNIFE 1 //CSW_P90 } iSlot = iWeaponsSlots[iCswId] } const XTRA_OFS_PLAYER = 5 const m_rgpPlayerItems_Slot0 = 367 iWeapon = get_pdata_cbase(id, m_rgpPlayerItems_Slot0 + iSlot, XTRA_OFS_PLAYER) const XTRA_OFS_WEAPON = 4 const m_pNext = 42 const m_iId = 43 while( iWeapon > 0 ) { if( get_pdata_int(iWeapon, m_iId, XTRA_OFS_WEAPON) == iCswId ) { break } iWeapon = get_pdata_cbase(iWeapon, m_pNext, XTRA_OFS_WEAPON) } if( iWeapon > 0 ) { const m_pActiveItem = 373 if( bSwitchIfActive && get_pdata_cbase(id, m_pActiveItem, XTRA_OFS_PLAYER) == iWeapon ) { ExecuteHamB(Ham_Weapon_RetireWeapon, iWeapon) } if( ExecuteHamB(Ham_RemovePlayerItem, id, iWeapon) ) { user_has_weapon(id, iCswId, 0) ExecuteHamB(Ham_Item_Kill, iWeapon) return 1 } } return 0 } static const COLOR[] = "^x04" //green static const CONTACT[] = "" new maxplayers new gmsgSayText new mpd, mkb, mhb new g_MsgSync 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 g_pCvar_Price_sg550; new g_pCvar_Price_AUG; new g_msgScreenFade, grenade[32], last new Float:g_gametime, g_owner #define Keysrod (1<<0)|(1<<1)|(1<<2)|(1<<9) new pcvar_Display #if defined DAMAGE_RECIEVED new g_MsgSync2 #endif new bool:g_bSemiclip[33][33]; new bool:g_bHasSemiclip[33]; new bool:g_bSemiclipEnabled; new g_iTaskId; new g_iForwardId[3]; new g_iMaxPlayers; new g_iCvar[3]; public plugin_init() { register_plugin("VIP Eng Version", "3.0", "Dunno") mpd = register_cvar("money_per_damage","5") mkb = register_cvar("money_kill_bonus","1500") mhb = register_cvar("money_hs_bonus","3000") 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", "0") g_menu_active = register_cvar("menu_active", "1") register_event("Damage","Damage","b") register_event("DeathMsg","death_msg","a") register_menucmd(register_menuid("rod"), Keysrod, "Pressedrod") 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("TextMsg","Event_RoundRestart","a","2&#Game_w") register_event("TextMsg","Event_RoundRestart","a","2&#Game_C"); register_event("DeathMsg", "hook_death", "a", "1>0") register_event("Damage", "on_damage", "b", "2!0", "3=0", "4!0") register_clcmd("say /rsv", "reset_score"); register_clcmd("say /sg550", "CmdSg550"); register_clcmd("say /aug", "CmdAug"); g_pCvar_Price_sg550 = register_cvar("sg550_price", "0"); g_pCvar_Price_AUG = register_cvar("aug_price", "0"); pcvar_Display = register_cvar("sv_rsdisplay", "1") g_MsgSync = CreateHudSyncObj() register_cvar("no_team_flash", "1") register_event("ScreenFade", "eventFlash", "be", "4=255", "5=255", "6=255", "7>199") register_event("TextMsg", "fire_in_the_hole", "b", "2&#Game_radio", "4&#Fire_in_the_hole") register_event("TextMsg", "fire_in_the_hole2", "b", "3&#Game_radio", "5&#Fire_in_the_hole") register_event("99", "grenade_throw", "b") g_msgScreenFade = get_user_msgid("ScreenFade") #if defined DAMAGE_RECIEVED g_MsgSync2 = CreateHudSyncObj() g_iCvar[0] = register_cvar( "semiclip_enabled", "1" ); g_iCvar[1] = register_cvar( "semiclip_teamclip", "1" ); g_iCvar[2] = register_cvar( "semiclip_transparancy", "1" ); register_forward( FM_Think, "fwdThink" ); register_forward( FM_ClientCommand, "fwdClientCommand" ); if( get_pcvar_num( g_iCvar[0] ) ) { g_iForwardId[0] = register_forward( FM_PlayerPreThink, "fwdPlayerPreThink" ); g_iForwardId[1] = register_forward( FM_PlayerPostThink, "fwdPlayerPostThink" ); g_iForwardId[2] = register_forward( FM_AddToFullPack, "fwdAddToFullPack_Post", 1 ); g_bSemiclipEnabled = true; } else g_bSemiclipEnabled = false; g_iMaxPlayers = get_maxplayers( ); new ent = engfunc( EngFunc_CreateNamedEntity, engfunc( EngFunc_AllocString, "info_target" ) ); set_pev( ent, pev_classname, "task_semiclip" ); set_pev( ent, pev_nextthink, get_gametime( ) + 1.01 ); g_iTaskId = ent; #endif } public on_damage(id) { new attacker = get_user_attacker(id) if ( is_user_connected(id) && is_user_connected(attacker) ) { if (get_user_flags(attacker) & ADMIN_LEVEL_H) { new damage = read_data(2) set_hudmessage(255, 0, 0, 0.45, 0.50, 2, 0.1, 4.0, 0.1, 0.1, -1) ShowSyncHudMsg(id, g_MsgSync2, "%i^n", damage) } if ( is_user_connected(attacker) && (get_user_flags(attacker) & ADMIN_LEVEL_H ) ) { new damage = read_data(2) set_hudmessage(0, 100, 200, -1.0, 0.55, 2, 0.1, 4.0, 0.02, 0.02, -1) ShowSyncHudMsg(attacker, g_MsgSync, "%i^n", damage) } } } 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,"weapon_deagle") give_item(player,"ammo_50ae") give_item(player,"ammo_50ae") give_item(player,"ammo_50ae") give_item(player,"ammo_50ae") cs_set_user_nvg(player, 1) give_item(player, "weapon_flashbang") give_item(player, "weapon_smokegrenade") give_item(player, "weapon_hegrenade") give_item(player, "weapon_flashbang") give_item(player, "item_assaultsuit") give_item(player, "item_thighpack") if (!get_pcvar_num(g_menu_active)) return PLUGIN_CONTINUE if(CurrentRound >= 3) { Showrod(player); } } } return PLUGIN_HANDLED } public Event_RoundRestart() { CurrentRound=0; } public hook_death() { // Killer id 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) // Updating Killer HP if(!(get_user_flags(nKiller) & ADMIN_LEVEL_H)) return; nKiller_hp = get_user_health(nKiller) nKiller_hp += nHp_add // Maximum HP check if (nKiller_hp > nHp_max) nKiller_hp = nHp_max set_user_health(nKiller, nKiller_hp) // Hud message "Healed +15/+30 hp" set_hudmessage(0, 255, 0, -1.0, 0.15, 0, 1.0, 1.0, 0.1, 0.1, -1) show_hudmessage(nKiller, "Healed +%d hp", nHp_add) // Screen fading 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 Showrod(id) { new CsTeams:team = cs_get_user_team(id) if (team == CS_TEAM_CT) show_menu(id, Keysrod, "Weapons:^n\w1. M4a1^n\w2.Famas^n\w3.AWP^n", -1, "rod") // Display menu if (team == CS_TEAM_T) show_menu(id, Keysrod, "Weapons:^n\w1. Ak47^n\w2.Galil^n\w3.AWP^n", -1, "rod1") // Display menu } public Pressedrod(id, key) { new CsTeams:team = cs_get_user_team(id) if (team == CS_TEAM_CT) switch (key) { case 0: { if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1) HasC4[id] = true; else HasC4[id] = false; StripWeapons(id, Primary) StripWeapons(id, Secondary); give_item(id,"weapon_m4a1") give_item(id,"ammo_556nato") give_item(id,"ammo_556nato") client_print(id, print_center, "You take m4a1.") ColorChat(id, GREEN, "[VIP]^x01 You take an^x04 M4a1^x01.") if (HasC4[id]) { give_item(id, "weapon_c4"); cs_set_user_plant( id ); } } case 1: { if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1) HasC4[id] = true; else HasC4[id] = false; StripWeapons(id, Primary) StripWeapons(id, Secondary); give_item(id,"weapon_famas") give_item(id,"ammo_556nato") give_item(id,"ammo_556nato") client_print(id,print_center,"You take famas. ") ColorChat(id, GREEN, "[VIP]^x01 Ai primit a ^x04 Famas^x01." ) 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; StripWeapons(id, Primary) StripWeapons(id, Secondary); give_item(id,"weapon_awp") give_item(id,"ammo_338magnum") give_item(id,"ammo_338magnum") client_print(id,print_center,"You take awp. ") ColorChat(id, GREEN, "[VIP]^x01 Ai primit a ^x04 AWP^x01." ) if (HasC4[id]) { give_item(id, "weapon_c4"); cs_set_user_plant( id ); } } case 9: { } } if (team == CS_TEAM_T) switch (key) { case 0: { if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1) HasC4[id] = true; else HasC4[id] = false; StripWeapons(id, Primary) StripWeapons(id, Secondary); give_item(id,"weapon_ak47") give_item(id,"ammo_762nato") give_item(id,"ammo_762nato") client_print(id,print_center,"You take ak47. " ) ColorChat(id, GREEN, "[VIP]^x01 You take a^x04 Ak47^x01.") if (HasC4[id]) { give_item(id, "weapon_c4"); cs_set_user_plant( id ); } } case 1: { if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1) HasC4[id] = true; else HasC4[id] = false; StripWeapons(id, Primary) StripWeapons(id, Secondary); give_item(id,"weapon_galil") give_item(id,"ammo_556nato") give_item(id,"ammo_556nato") client_print(id,print_center,"You take galil .") ColorChat(id, GREEN, "[VIP]^x01 You take a ^x04 Galil^x01." ) 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; StripWeapons(id, Primary) StripWeapons(id, Secondary); give_item(id,"weapon_awp") give_item(id,"ammo_338magnum") give_item(id,"ammo_338magnum") client_print(id,print_center,"You take awp. ") ColorChat(id, GREEN, "[VIP]^x01 You take a ^x04 AWP^x01." ) if (HasC4[id]) { give_item(id, "weapon_c4"); cs_set_user_plant( id ); } } case 9: { } } return PLUGIN_CONTINUE } public HandleCmd(id){ if (!get_pcvar_num(g_awp_active)) return PLUGIN_CONTINUE if(get_user_flags(id) & ADMIN_LEVEL_H) return PLUGIN_CONTINUE client_print(id, print_center, "Only vips can buy snipers.") return PLUGIN_HANDLED } public ShowMotd(id) { show_motd(id, "vip.txt") } public client_authorized(id) { set_task(30.0, "PrintText" ,id) } public PrintText(id) { client_print(id, print_chat, "Type /wantvip to see what you get when you are vip. ") } 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, "%s VIP ONLINE: ",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 VIP online.") 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() } public reset_score(id) { if( get_user_flags(id) & ADMIN_LEVEL_H) { cs_set_user_deaths(id, 0) cs_set_user_deaths(id, 0) if(get_pcvar_num(pcvar_Display) == 1) { new name[33] get_user_name(id, name, 32) client_print(0, print_chat, "VIPUL %s has reset his deaths.", name) } else { client_print(id, print_chat, "You just rest your deaths.") } } if(!(get_user_flags(id) & ADMIN_LEVEL_H)) { client_print(id,print_chat,"You have no acces to that command because you aren't vip.") } } public CmdSg550(id) { new iMoney = cs_get_user_money(id); new iPrice = get_pcvar_num(g_pCvar_Price_sg550); if( !is_user_alive(id) ) { client_print(id, print_chat, "You must be alive!"); return PLUGIN_HANDLED; } if( iMoney < iPrice ) { client_print(id, print_chat, "You need more money", iPrice); return PLUGIN_HANDLED; } if(get_user_flags(id) & ADMIN_LEVEL_H) { give_item(id, "weapon_sg550"); cs_set_user_bpammo(id, CSW_SG550 , 30); client_print(id, print_chat, "You take sg550 !", iPrice); cs_set_user_money(id, iMoney - iPrice, true); return PLUGIN_HANDLED; } if(!(get_user_flags(id) & ADMIN_LEVEL_H)) { client_print(id,print_chat,"You aren't vip.") } } public CmdAug(id) { new iMoney = cs_get_user_money(id); new iPrice = get_pcvar_num(g_pCvar_Price_AUG); if( !is_user_alive(id) ) { client_print(id, print_chat, "You must be alive."); return PLUGIN_HANDLED; } if( iMoney < iPrice ) { client_print(id, print_chat, "You need more money.", iPrice); return PLUGIN_HANDLED; } if(get_user_flags(id) & ADMIN_LEVEL_H) { give_item(id, "weapon_aug"); cs_set_user_bpammo(id, CSW_AUG, 90); client_print(id, print_chat, " You take aug !", iPrice); cs_set_user_money(id, iMoney - iPrice, true); return PLUGIN_HANDLED; } if(!(get_user_flags(id) & ADMIN_LEVEL_H)) { client_print(id,print_chat,"You aren't vip.") } } public eventFlash(id) { if(is_user_alive(id) && get_user_flags(id) & ADMIN_LEVEL_H) { new Float:gametime = get_gametime() if(gametime != g_gametime) { g_owner = get_grenade_owner() g_gametime = gametime } message_begin(MSG_ONE, g_msgScreenFade, {0,0,0}, id) write_short(1) write_short(1) write_short(1) write_byte(0) write_byte(0) write_byte(0) write_byte(255) message_end() } } public grenade_throw() { if(read_datanum() < 2) return PLUGIN_HANDLED_MAIN if(read_data(1) == 11 && (read_data(2) == 0 || read_data(2) == 1)) { add_grenade_owner(last) } return PLUGIN_CONTINUE } public fire_in_the_hole() { new name[32] read_data(3, name, 31) last = get_user_index(name) return PLUGIN_CONTINUE } public fire_in_the_hole2() { new name[32] read_data(4, name, 31) last = get_user_index(name) return PLUGIN_CONTINUE } add_grenade_owner(owner) { for(new i = 0; i < 32; i++) { if(grenade[i] == 0) { grenade[i] = owner return } } } get_grenade_owner() { new which = grenade[0] for(new i = 1; i < 32; i++) { grenade[i-1] = grenade[i] } grenade[31] = 0 return which } public fwdPlayerPreThink( plr ) { static id; if(is_user_alive(plr) && get_user_flags(plr) & ADMIN_LEVEL_H) { for( id = 1 ; id <= g_iMaxPlayers ; id++ ) { if( pev( id, pev_solid ) == SOLID_SLIDEBOX && g_bSemiclip[plr][id] && id != plr ) { set_pev( id, pev_solid, SOLID_NOT ); g_bHasSemiclip[id] = true; } } } } public fwdPlayerPostThink( plr ) { static id; if(is_user_alive(plr) && get_user_flags(plr) & ADMIN_LEVEL_H) { for( id = 1 ; id <= g_iMaxPlayers ; id++ ) { if( g_bHasSemiclip[id] ) { set_pev( id, pev_solid, SOLID_SLIDEBOX ); g_bHasSemiclip[id] = false; } } } } public fwdThink( ent ) { static i, j; static team[33]; static Float:origin[33][3]; if( ent == g_iTaskId ) { if( get_pcvar_num( g_iCvar[0] ) ) { for( i = 1 ; i <= g_iMaxPlayers ; i++ ) { if( is_user_alive( i ) ) { pev( i, pev_origin, origin[i] ); if( get_pcvar_num( g_iCvar[1] ) ) team[i] = get_user_team( i ); for( j = 1 ; j <= g_iMaxPlayers ; j++ ) { if( is_user_alive( j ) ) { if( get_pcvar_num( g_iCvar[1] ) && team[i] != team[j] ) { g_bSemiclip[i][j] = false; g_bSemiclip[j][i] = false; } else if( floatabs( origin[i][0] - origin[j][0] ) < DISTANCE && floatabs( origin[i][1] - origin[j][1] ) < DISTANCE && floatabs( origin[i][2] - origin[j][2] ) < ( DISTANCE * 2 ) ) { g_bSemiclip[i][j] = true; g_bSemiclip[j][i] = true; } else { g_bSemiclip[i][j] = false; g_bSemiclip[j][i] = false; } } } } } } set_pev( ent, pev_nextthink, get_gametime( ) + UPDATE_FREQ ); } } public fwdAddToFullPack_Post( es_handle, e, ent, host, hostflags, player, pset ) { if(is_user_alive(player) && get_user_flags(player) & ADMIN_LEVEL_H) { if( g_bSemiclip[host][ent] ) { set_es( es_handle, ES_Solid, SOLID_NOT ); // makes semiclip flawless if( get_pcvar_num( g_iCvar[2] ) == 1 ) { set_es( es_handle, ES_RenderMode, kRenderTransAlpha ); set_es( es_handle, ES_RenderAmt, 85 ); } else if( get_pcvar_num( g_iCvar[2] ) == 2 ) { set_es( es_handle, ES_Effects, EF_NODRAW ); set_es( es_handle, ES_Solid, SOLID_NOT ); } } } } public fwdClientCommand( plr ) { if( !get_pcvar_num( g_iCvar[0] ) && g_bSemiclipEnabled ) { unregister_forward( FM_PlayerPreThink, g_iForwardId[0] ); unregister_forward( FM_PlayerPostThink, g_iForwardId[1] ); unregister_forward( FM_AddToFullPack, g_iForwardId[2], 1 ); g_bSemiclipEnabled = false; } else if( get_pcvar_num( g_iCvar[0] ) && !g_bSemiclipEnabled ) { g_iForwardId[0] = register_forward( FM_PlayerPreThink, "fwdPlayerPreThink" ); g_iForwardId[1] = register_forward( FM_PlayerPostThink, "fwdPlayerPostThink" ); g_iForwardId[2] = register_forward( FM_AddToFullPack, "fwdAddToFullPack_Post", 1 ); g_bSemiclipEnabled = true; } } /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1033\\ f0\\ fs16 \n\\ par } */ А нет там только первые секунды раунда,а надо что бы всегда было :'( https://forums.alliedmods.net/showthread.php?t=215711
Отредактировал: r1nk0, - 6.1.2014, 14:08
Прикрепленные файлы:
![]() Создание и редактирование карт ($) - vk.com/id476857873
Настройка и техническое обслуживание ваших игровых серверов - vk.com/id476857873 |
|
|
|
![]() ![]() |