A) Să fie adăugat No Flash la Flag-urile pentru Fondator şi Gold Member adică când intru pe server cu gradul de Gold Member sau Fondator să am No Flash. Atenţie No Flash, nu No Flash Team. Găsiţi în sursă ADMIN_LEVEL_G şi restul.
B) Să fie adăugat No He Damage la Flag-urile pentru Fondator şi Gold Member adică când intru pe server cu gradul de Gold Member sau Fondator să am No He Damage.
Pluginul de Editat:
- | Afiseaza codul
#include <amxmodx> #include <cstrike> #include <engine> #include <fakemeta> #include <fakemeta_util> #include <hamsandwich> #include <fun> #define PLUGIN "Furien Clasic" #define VERSION "2.0" #define AUTHOR "The Shield" #define FURIEN_GRAVITY 0.4 #define FURIEN_SPEED 750.0 #define TEAM_FURIEN 1 #define TEAM_ANTIFURIEN 2 #define TASKID_SWITCHTEAM 112233 #define VIP_GOLD_LEVEL ADMIN_LEVEL_H #define VIP_SILVER_LEVEL ADMIN_LEVEL_G #define FOUNDER_LEVEL ADMIN_IMMUNITY #if cellbits == 32 #define OFFSET_BZ 235 #else #define OFFSET_BZ 268 #endif //Shop new SuperKnifeModel_V[] = "models/FurienOldSchool/v_sk_1k.mdl" new bool: HaveSuperKnife[33] //Weapons new bool: Selected[33] //Settings new bool:MakeVisible[33], Float:Wallorigin[33][3] //Parachute #define PARACHUTE_CLASS "Parachute" new ParaENT[33]; new Menu; new cvar_gamedescription, furienspawnhp, antifurienspawnhp, removebuyzone, superknife_damage_multiplier; public plugin_cfg() { server_cmd("amx_cvar mp_playerid 2") server_cmd("amx_cvar sv_maxspeed 900") server_cmd("amx_cvar sv_restart 5") } public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) cvar_gamedescription = register_cvar("furien_gamename", "Furien Clasic") antifurienspawnhp = register_cvar("antifurien_spawnhp", "100") furienspawnhp = register_cvar("furien_spawnhp", "100") superknife_damage_multiplier = register_cvar("superknife_damage_multiplier", "2.0") //cvar_autojoin_team = register_cvar("furien_team", "5") //cvar_autojoin_class = register_cvar("furien_class", "5") register_clcmd("say shop", "CmdShopMenu") register_clcmd("say /shop", "CmdShopMenu") register_clcmd("say_team shop", "CmdShopMenu") register_clcmd("say_team /shop", "CmdShopMenu") register_clcmd("say weapons", "CmdWeaponsMenu") register_clcmd("say /weapons", "CmdWeaponsMenu") // register_clcmd("say /rs", "CmdResetScore") // register_clcmd("say_team /rs", "CmdResetScore") register_clcmd("jointeam", "CMD_BlockJoinTeam") register_clcmd("jointeam 1", "CMD_BlockJoinTeam") register_clcmd("jointeam 2", "CMD_BlockJoinTeam") register_clcmd("jointeam 3", "CMD_BlockJoinTeam") register_clcmd("chooseteam", "CMD_BlockChooseTeam") register_clcmd("say /beneficii", "CmdShowMotd") RegisterHam(Ham_Spawn, "player", "Ham_Spawn_Post", 1) RegisterHam(Ham_Touch, "weaponbox", "HAM_Touch_Weapon") RegisterHam(Ham_Touch, "armoury_entity", "HAM_Touch_Weapon") RegisterHam(Ham_Touch, "weapon_shield", "HAM_Touch_Weapon") RegisterHam(Ham_TakeDamage, "player", "SuperKnife_TakeDamage") register_forward(FM_PlayerPreThink, "Player_PreThink"); register_forward(FM_AddToFullPack, "FWD_AddToFullPack", 1); register_forward(FM_PlayerPreThink, "FWD_ParachutePreThink"); register_forward(FM_GetGameDescription, "FWD_GameDescription") register_event("SendAudio", "EVENT_TeamSwap", "a", "1=0", "2=%!MRAD_ctwin"); register_event("CurWeapon", "EVENT_CurWeapon", "be", "1=1") register_event("DeathMsg", "EVENT_Death", "a"); register_message(get_user_msgid("StatusIcon"), "MSG_StatusIcon"); register_message(get_user_msgid("TextMsg"), "MSG_TextMessage"); } public plugin_precache() { removebuyzone = register_cvar("furien_removebuyzone", "1") if(get_pcvar_num(removebuyzone)) { remove_entity_name("info_map_parameters"); remove_entity_name("func_buyzone"); new Entity = create_entity("info_map_parameters"); DispatchKeyValue(Entity, "buying", "3"); DispatchSpawn(Entity); } precache_model(SuperKnifeModel_V) } public client_connect(id) client_cmd(id, "cl_forwardspeed 999") public client_putinserver(id) client_cmd(id, "cl_forwardspeed 999") public Ham_Spawn_Post(id) { if(is_user_connected(id) && is_user_alive(id)) { strip_user_weapons(id) switch(get_user_team(id)) { case TEAM_FURIEN: { fm_give_item(id, "weapon_hegrenade") fm_give_item(id, "weapon_knife") fm_give_item(id, "weapon_flashbang") fm_give_item(id, "weapon_flashbang") set_user_footsteps(id, 1) fm_set_user_health(id, get_pcvar_num(furienspawnhp)) } case TEAM_ANTIFURIEN: { fm_give_item(id, "weapon_flashbang") fm_give_item(id, "weapon_flashbang") fm_give_item(id, "weapon_knife") set_user_footsteps(id, 0) fm_set_user_health(id, get_pcvar_num(antifurienspawnhp)) ShowWeaponsMenu(id) HaveSuperKnife[id] = false; /*fm_give_item(id, "weapon_deagle") cs_set_user_bpammo(id, CSW_DEAGLE, 254)*/ } } } } public HAM_Touch_Weapon(ent, id) { if(is_user_alive(id) && get_user_team(id) == TEAM_FURIEN && !(get_pdata_cbase(ent, 39, 4) > 0)) return HAM_SUPERCEDE return HAM_IGNORED } public SuperKnife_TakeDamage(Victim, Inflictor, Attacker, Float:Damage) { if(is_user_connected(Attacker) && is_user_alive(Attacker)) { if(get_user_weapon(Attacker) == CSW_KNIFE) { if(HaveSuperKnife[Attacker]) SetHamParamFloat(4, Damage * get_pcvar_float(superknife_damage_multiplier)) } } } /////////////////////////////////////////////////////////////////////////////////////////////// /*public CmdResetScore(id) { if(get_user_frags(id) == 0 && get_user_deaths(id) == 0) ColorChat(id, "!gScorul tau este deja!t 0-0!g !") else { for(new i = 0; i < 2; i++) { cs_set_user_deaths(id, 0); set_user_frags(id, 0); } ColorChat(id, "!gTi-ai resetat scorul !") } }*/ public CmdShopMenu(id) { if(!is_user_alive(id)) return PLUGIN_HANDLED switch(get_user_team(id)) { case TEAM_FURIEN: CmdFurienShop(id) case TEAM_ANTIFURIEN: CmdAntiFurienShop(id) } return PLUGIN_HANDLED } public CmdFurienShop(id) { if(is_user_alive(id) && get_user_team(id) == TEAM_FURIEN) { Menu = menu_create("\yFurien Shop", "CmdFurienHandler") new SuperKnife[256]; formatex(SuperKnife, sizeof(SuperKnife)-1, "Super knife - \y10000$") menu_additem(Menu, SuperKnife, "1", 0) new Health[256]; formatex(Health, sizeof(Health)-1, "50 HP - \y3000$") menu_additem(Menu, Health, "2", 0) new Armor[256]; formatex(Armor, sizeof(Armor)-1, "50 AP + Helmet - \y500$") menu_additem(Menu, Armor, "3", 0) new Grenade[256]; formatex(Grenade, sizeof(Grenade)-1, "He grenade - \y3000$") menu_additem(Menu, Grenade, "4", 0) menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL); menu_display(id, Menu, 0); } } public CmdAntiFurienShop(id) { if(is_user_alive(id) && get_user_team(id) == TEAM_ANTIFURIEN) { Menu = menu_create("\yAnti-Furien Shop", "CmdAntiFurienHandler") new Defuse[256]; formatex(Defuse, sizeof(Defuse)-1, "Defuse kit - \y500$") menu_additem(Menu, Defuse, "1", 0) new Health[256]; formatex(Health, sizeof(Health)-1, "50 HP - \y3000$") menu_additem(Menu, Health, "2", 0) new Armor[256]; formatex(Armor, sizeof(Armor)-1, "50 AP + Helmet - \y500$") menu_additem(Menu, Armor, "3", 0) new Grenade[256]; formatex(Grenade, sizeof(Grenade)-1, "He grenade - \y3000$") menu_additem(Menu, Grenade, "4", 0) menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL); menu_display(id, Menu, 0); } } public CmdFurienHandler(id, menu, item) { if(item == MENU_EXIT || !is_user_alive(id) || get_user_team(id) != 1) { menu_destroy(menu); return PLUGIN_HANDLED; } new Data[6], Name[64]; new Access, CallBack; menu_item_getinfo(menu, item, Access, Data,5, Name, 63, CallBack); new Key = str_to_num(Data); switch(Key) { case 1: { if(HaveSuperKnife[id]) client_print(id, print_center, "You already have SuperKnife!") else { new Money = cs_get_user_money(id) - 10000 if(Money < 0) client_print(id, print_center, "You have insufficient founds!") else { HaveSuperKnife[id] = true; EVENT_CurWeapon(id) cs_set_user_money(id, Money) } } } case 2: { if(get_user_health(id) >= 250) client_print(id, print_center, "You already have 250 HP!") else { new Money = cs_get_user_money(id) - 3000 if(Money < 0) client_print(id, print_center, "You have insufficient founds!") else { if(get_user_health(id) + 50 > 250) fm_set_user_health(id, 250) else fm_set_user_health(id, get_user_health(id) + 50) cs_set_user_money(id, Money) } } } case 3: { if(get_user_armor(id) >= 250) client_print(id, print_center, "You already have 250 AP!") else { new Money = cs_get_user_money(id) - 500 if(Money < 0) client_print(id, print_center, "You have insufficient founds!") else { if(get_user_armor(id) + 50 > 250) fm_set_user_armor(id, 250) else fm_set_user_armor(id, get_user_armor(id) + 50) cs_set_user_money(id, Money) } } } case 4: { if(user_has_weapon(id, CSW_HEGRENADE)) client_print(id, print_center, "You already have 250 AP!") else { new Money = cs_get_user_money(id) - 3000 if(Money < 0) client_print(id, print_center, "You have insufficient founds!") else { fm_give_item(id, "weapon_hegrenade") cs_set_user_money(id, Money) } } } } menu_destroy(menu) return PLUGIN_HANDLED } public CmdAntiFurienHandler(id, menu, item) { if(item == MENU_EXIT || !is_user_alive(id) || get_user_team(id) != 2) { menu_destroy(menu); return PLUGIN_HANDLED; } new Data[6], Name[64]; new Access, CallBack; menu_item_getinfo(menu, item, Access, Data,5, Name, 63, CallBack); new Key = str_to_num(Data); switch(Key) { case 1: { if(cs_get_user_defuse(id)) client_print(id, print_center, "You already have Defuse KIT!") else { new Money = cs_get_user_money(id) - 500 if(Money < 0) client_print(id, print_center, "You have insufficient founds!") else { cs_set_user_defuse(id, 1) cs_set_user_money(id, Money) } } } case 2: { if(get_user_health(id) >= 250) client_print(id, print_center, "You already have 250 HP!") else { new Money = cs_get_user_money(id) - 3000 if(Money < 0) client_print(id, print_center, "You have insufficient founds!") else { if(get_user_health(id) + 50 > 250) fm_set_user_health(id, 250) else fm_set_user_health(id, get_user_health(id) + 50) cs_set_user_money(id, Money) } } } case 3: { if(get_user_armor(id) >= 250) client_print(id, print_center, "You already have 250 AP!") else { new Money = cs_get_user_money(id) - 500 if(Money < 0) client_print(id, print_center, "You have insufficient founds!") else { if(get_user_armor(id) + 50 > 250) fm_set_user_armor(id, 250) else fm_set_user_armor(id, get_user_armor(id) + 50) cs_set_user_money(id, Money) } } } case 4: { if(user_has_weapon(id, CSW_HEGRENADE)) client_print(id, print_center, "You already have HE GRENADE!") else { new Money = cs_get_user_money(id) - 6000 if(Money < 0) client_print(id, print_center, "You have insufficient founds!") else { fm_give_item(id, "weapon_hegrenade") cs_set_user_money(id, Money) } } } } menu_destroy(menu) return PLUGIN_HANDLED } public CmdWeaponsMenu(id) { if(!is_user_alive(id)) { client_print(id, print_chat, "You can't select weapon when you are dead!") return 1; } else if(Selected[id]) { client_print(id, print_chat, "You have been already select weapon in this round!") return 1; } else if(get_user_team(id) != TEAM_ANTIFURIEN) { client_print(id, print_chat, "Only Anti-Furien can acces Weapons Menu!") return 1; } else ShowWeaponsMenu(id) return 1 } public ShowWeaponsMenu(id) { if(is_user_alive(id) && get_user_team(id) == TEAM_ANTIFURIEN) { Menu = menu_create("\yAnti-Furien Weapons", "CmdWeaponsHandler") menu_additem(Menu, "M4A1", "1", 0) menu_additem(Menu, "AK47", "2", 0) menu_additem(Menu, "M3", "3", 0) menu_additem(Menu, "Aug", "4", 0) menu_additem(Menu, "Famas", "5", 0) menu_additem(Menu, "MP5 Navy", "6", 0) menu_additem(Menu, "XM1014", "7", 0) menu_setprop(Menu, MPROP_EXIT, MEXIT_ALL); menu_display(id, Menu, 0); } } public ShowSecondary(id){ if(is_user_alive(id) && get_user_team(id) == TEAM_ANTIFURIEN ){ new menu = menu_create("\ySecondary Weapons", "CmdSecondaryHandler") menu_additem(menu, "USP", "1", 0 ) menu_additem(menu, "Deagle", "2", 0 ) menu_additem(menu, "Elite", "3", 0 ) menu_additem(menu, "Five Seven", "4", 0 ) menu_setprop(menu, MPROP_EXIT, MEXIT_ALL ) menu_display(id, menu, 0 ) } } public CmdWeaponsHandler(id, menu, item) { if(item == MENU_EXIT || !is_user_alive(id) || get_user_team(id) != 2) { menu_destroy(menu); return PLUGIN_HANDLED; } new Data[6], Name[64]; new Access, CallBack; menu_item_getinfo(menu, item, Access, Data,5, Name, 63, CallBack); new Key = str_to_num(Data); switch(Key) { case 1: { fm_give_item(id, "weapon_m4a1") cs_set_user_bpammo(id, CSW_M4A1, 254) Selected[id] = true; ShowSecondary(id) } case 2: { fm_give_item(id, "weapon_ak47") cs_set_user_bpammo(id, CSW_AK47, 254) Selected[id] = true; ShowSecondary(id) } case 3: { fm_give_item(id, "weapon_m3") cs_set_user_bpammo(id, CSW_M3, 254) Selected[id] = true; ShowSecondary(id) } case 4: { fm_give_item(id, "weapon_aug") cs_set_user_bpammo(id, CSW_AUG, 254) Selected[id] = true; ShowSecondary(id) } case 5: { fm_give_item(id, "weapon_famas") cs_set_user_bpammo(id, CSW_FAMAS, 254) Selected[id] = true; ShowSecondary(id) } case 6: { fm_give_item(id, "weapon_mp5navy") cs_set_user_bpammo(id, CSW_MP5NAVY, 254) Selected[id] = true; ShowSecondary(id) } case 7: { fm_give_item(id, "weapon_xm1014") cs_set_user_bpammo(id, CSW_XM1014, 254) Selected[id] = true; ShowSecondary(id) } } menu_destroy(menu) return PLUGIN_HANDLED } public CmdSecondaryHandler(id, menu, item) { if(item == MENU_EXIT || !is_user_alive(id) || get_user_team(id) != 2) { menu_destroy(menu); return PLUGIN_HANDLED; } new Data[6], Name[64]; new Access, CallBack; menu_item_getinfo(menu, item, Access, Data,5, Name, 63, CallBack); new Key = str_to_num(Data); switch(Key) { case 1: { fm_give_item(id, "weapon_usp") cs_set_user_bpammo(id, CSW_USP, 90 ) Selected[id] = true; } case 2: { fm_give_item(id, "weapon_deagle" ) cs_set_user_bpammo(id, CSW_DEAGLE, 90 ) Selected[id] = true; } case 3: { fm_give_item(id, "weapon_elite" ) cs_set_user_bpammo(id, CSW_ELITE, 90 ) Selected[id] = true; } case 4: { fm_give_item(id, "weapon_fiveseven" ) cs_set_user_bpammo(id, CSW_FIVESEVEN, 90 ) Selected[id] = true; } } menu_destroy(menu) return PLUGIN_HANDLED; } public CMD_BlockJoinTeam(id) { console_print(id, "*** Nu ai voie sa foloseti JoinTeam ! ***") return 1; } public CMD_BlockChooseTeam(id) { console_print(id, "*** Nu ai voie sa foloseti ChooseTeam ! ***") return 1; } public CmdShowMotd(id) show_motd(id, "addons/amxmodx/configs/beneficii.html") ///////////////////////////////////////////////////////////////////////// public EVENT_CurWeapon(id) { if(get_user_weapon(id) == CSW_KNIFE) { if(HaveSuperKnife[id]) set_pev(id, pev_viewmodel2, SuperKnifeModel_V) } } public EVENT_Death() { static Attacker, Victim; Attacker = read_data(1) Victim = read_data(2) HaveSuperKnife[Victim] = false; if(Victim == Attacker) return 1; if(get_user_flags(Attacker) & VIP_GOLD_LEVEL) { cs_set_user_money(Attacker, cs_get_user_money(Attacker) + 6000) fm_set_user_health(Attacker, get_user_health(Attacker) + 60) fm_set_user_armor(Attacker, get_user_armor(Attacker) + 60) } else if(get_user_flags(Attacker) & VIP_SILVER_LEVEL) { cs_set_user_money(Attacker, cs_get_user_money(Attacker) + 3000) fm_set_user_health(Attacker, get_user_health(Attacker) + 30) fm_set_user_armor(Attacker, get_user_armor(Attacker) + 30) } else if(get_user_flags(Attacker) & FOUNDER_LEVEL) { cs_set_user_money(Attacker, cs_get_user_money(Attacker) + 7000) fm_set_user_health(Attacker, get_user_health(Attacker) + 70) fm_set_user_armor(Attacker, get_user_armor(Attacker) + 70) } else { if(get_user_team(Victim) == 2) cs_set_user_money(Attacker, cs_get_user_money(Attacker) + 1200) else if(get_user_team(Victim) == 1) cs_set_user_money(Attacker, cs_get_user_money(Attacker) + 1500) } return 1; } public EVENT_TeamSwap() { new iPlayers[32], iNum; get_players(iPlayers, iNum, "ch"); if(iNum) { new id; for(--iNum; iNum >= 0; iNum--) { id = iPlayers[iNum]; BeginDelayedTeamChange(id); } } } public BeginDelayedTeamChange(id) { switch(id) { case 1..6: set_task(0.1, "ChangeUserTeamWithDelay", id + TASKID_SWITCHTEAM); case 7..13: set_task(0.2, "ChangeUserTeamWithDelay", id + TASKID_SWITCHTEAM); case 14..20: set_task(0.3, "ChangeUserTeamWithDelay", id + TASKID_SWITCHTEAM); case 21..26: set_task(0.4, "ChangeUserTeamWithDelay", id + TASKID_SWITCHTEAM); case 27..32: set_task(0.5, "ChangeUserTeamWithDelay", id + TASKID_SWITCHTEAM); } } public ChangeUserTeamWithDelay(id) { id -= TASKID_SWITCHTEAM; if(!is_user_connected(id)) return 1; switch(cs_get_user_team(id)) { case CS_TEAM_T:cs_set_user_team(id, CS_TEAM_CT); case CS_TEAM_CT:cs_set_user_team(id, CS_TEAM_T); } return 0; } ///////////////////////////////////////////////////////////////////////////////// public MSG_TextMessage() { static TextMsg[22]; get_msg_arg_string(2, TextMsg, charsmax(TextMsg)) if(equal(TextMsg, "#Terrorists_Win")) { client_print(0, print_center, "The Furiens have won this round!") return PLUGIN_HANDLED; } else if(equal(TextMsg, "#CTs_Win")) { client_print(0, print_center, "The Anti-Furiens have won this round!") return PLUGIN_HANDLED; } else if(equal(TextMsg, "#Bomb_Defused")) { client_print(0, print_center, "The Anti-Furiens have won this round!") return PLUGIN_HANDLED; } else if(equal(TextMsg, "#Target_Bombed")) { client_print(0, print_center, "The Furiens have won this round!") return PLUGIN_HANDLED; } else if(equal(TextMsg, "#Target_Saved")) { client_print(0, print_center, "The Anti-Furiens have won this round!") return PLUGIN_HANDLED; } return PLUGIN_CONTINUE; } /////////////////////////////////////////////////////////////////////////////////////////////// public Player_PreThink(id) { if(is_user_connected(id)) { if(get_user_team(id) == TEAM_FURIEN) { if(pev(id, pev_gravity) > FURIEN_GRAVITY && pev(id, pev_gravity) > 0.1) set_pev(id, pev_gravity, FURIEN_GRAVITY) if(pev(id, pev_maxspeed) < FURIEN_SPEED && pev(id, pev_maxspeed) > 1.0) { set_pev(id, pev_maxspeed, FURIEN_SPEED) set_user_footsteps(id, 1) } } } } public FWD_AddToFullPack(es, e, ent, host, host_flags, player, p_set) { if(is_user_connected(ent) && is_user_connected(host) && is_user_alive(ent)) { if(is_user_alive(host) && get_user_team(ent) == 1 && get_user_team(host) == 1 || !is_user_alive(host) && get_user_team(ent) == 1 && pev(host, pev_iuser2) == ent || get_user_team(ent) == 1 && pev(ent, pev_maxspeed) <= 1.0) { set_es(es, ES_RenderFx, kRenderFxNone); set_es(es, ES_RenderMode, kRenderTransTexture); set_es(es, ES_RenderAmt, 255); } else if(get_user_team(ent) == 1) { set_es(es, ES_RenderFx, kRenderFxNone); set_es(es, ES_RenderMode, kRenderTransTexture); static Float:Origin[3] pev(ent, pev_origin, Origin) if(get_user_weapon(ent) == CSW_KNIFE && !MakeVisible[ent] && fm_get_speed(ent) <= 5 || get_user_weapon(ent) == CSW_KNIFE && !MakeVisible[ent] && Origin[0] == Wallorigin[ent][0] && Origin[1] == Wallorigin[ent][1] && Origin[2] == Wallorigin[ent][2]) set_es(es, ES_RenderAmt, 0); else set_es(es, ES_RenderAmt, 255); } } } public FWD_ParachutePreThink(id) { if(is_user_alive(id) && get_user_team(id) == TEAM_ANTIFURIEN) { new Float:FallSpeed = -50.0; new Float:Frame; new Button = pev(id, pev_button); new OldButton = pev(id, pev_oldbuttons); new Flags = pev(id, pev_flags); if(ParaENT[id] > 0 &&(Flags & FL_ONGROUND)) { if(pev(ParaENT[id],pev_sequence) != 2) { set_pev(ParaENT[id], pev_sequence, 2); set_pev(ParaENT[id], pev_gaitsequence, 1); set_pev(ParaENT[id], pev_frame, 0.0); set_pev(ParaENT[id], pev_fuser1, 0.0); set_pev(ParaENT[id], pev_animtime, 0.0); return; } pev(ParaENT[id],pev_fuser1, Frame); Frame += 2.0; set_pev(ParaENT[id],pev_fuser1,Frame); set_pev(ParaENT[id],pev_frame,Frame); if(Frame > 254.0) { engfunc(EngFunc_RemoveEntity, ParaENT[id]); ParaENT[id] = 0; } else { engfunc(EngFunc_RemoveEntity, ParaENT[id]); ParaENT[id] = 0; } return; } if(Button & IN_USE) { new Float:Velocity[3]; pev(id, pev_velocity, Velocity); if(Velocity[2] < 0.0) { if(ParaENT[id] <= 0) { ParaENT[id] = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, "info_target")); if(ParaENT[id] > 0) { set_pev(ParaENT[id],pev_classname, PARACHUTE_CLASS); set_pev(ParaENT[id], pev_aiment, id); set_pev(ParaENT[id], pev_owner, id); set_pev(ParaENT[id], pev_movetype, MOVETYPE_FLY); set_pev(ParaENT[id], pev_sequence, 0); set_pev(ParaENT[id], pev_gaitsequence, 1); set_pev(ParaENT[id], pev_frame, 0.0); set_pev(ParaENT[id], pev_fuser1, 0.0); } } if(ParaENT[id] > 0) { set_pev(id, pev_sequence, 3); set_pev(id, pev_gaitsequence, 1); set_pev(id, pev_frame, 1.0); set_pev(id, pev_framerate, 1.0); Velocity[2] = (Velocity[2] + 40.0 < FallSpeed) ? Velocity[2] + 40.0 : FallSpeed; set_pev(id, pev_velocity, Velocity); if(pev(ParaENT[id],pev_sequence) == 0) { pev(ParaENT[id],pev_fuser1, Frame); Frame += 1.0; set_pev(ParaENT[id],pev_fuser1,Frame); set_pev(ParaENT[id],pev_frame,Frame); if(Frame > 100.0) { set_pev(ParaENT[id], pev_animtime, 0.0); set_pev(ParaENT[id], pev_framerate, 0.4); set_pev(ParaENT[id], pev_sequence, 1); set_pev(ParaENT[id], pev_gaitsequence, 1); set_pev(ParaENT[id], pev_frame, 0.0); set_pev(ParaENT[id], pev_fuser1, 0.0); } } } } else if(ParaENT[id] > 0) { engfunc(EngFunc_RemoveEntity, ParaENT[id]); ParaENT[id] = 0; } } else if((OldButton & IN_USE) && ParaENT[id] > 0) { engfunc(EngFunc_RemoveEntity, ParaENT[id]); ParaENT[id] = 0; } } } public FWD_GameDescription() { static GameName[32] get_pcvar_string(cvar_gamedescription, GameName, 31) forward_return(FMV_STRING, GameName) return FMRES_SUPERCEDE } /////////////////////////////////////////////////////////////////////////////////////////////// public MSG_StatusIcon(msg_id, msg_dest, id) { static Attrib Attrib = get_msg_arg_int(2) if(Attrib == (1<<1)) set_msg_arg_int(2, ARG_BYTE, 0) new Icon[8]; get_msg_arg_string(2, Icon, 7); if(get_pcvar_num(removebuyzone)) { static const BuyZone[] = "buyzone"; if(equal(Icon, BuyZone)) { set_pdata_int(id, OFFSET_BZ, get_pdata_int(id, OFFSET_BZ, 5) & ~(1 << 0), 5); return PLUGIN_HANDLED; } } return PLUGIN_CONTINUE; } stock ColorChat(const id, const input[], any:...) { new count = 1, players[32]; static msg[191]; vformat(msg, 190, input, 3); replace_all(msg, 190, "!g", "^4"); replace_all(msg, 190, "!y", "^1"); replace_all(msg, 190, "!t", "^3"); 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(); } } } }
Dacă nu puteţi să adăugaţi ce am cerut în acest plugin puteţi crea altele însă să fie pentru acele niveluri. Măcar modificările să le puteţi face, Mulţumesc.