pagalbos
Posted: 2013 Nov 18 10:28
sveiki, ka reikia parasyti i plugina, kad pasirinkimo meniu neismestu awp zemelapiuose ir panasiai? ir kad jis tarkim butu ijungtas 15 sek nuo jo ijungimo, o poto dingtu
Code: Select all
#include <amxmodx>#include <amxmisc>#include <engine>#include <hamsandwich>#include <fun>#include <cstrike> #define MaxPlayers 32 new const Float: g_flCoords[][] = { {0.50, 0.40}, {0.56, 0.44}, {0.60, 0.50}, {0.56, 0.56}, {0.50, 0.60}, {0.44, 0.56}, {0.40, 0.50}, {0.44, 0.44}} new bool: DoJump[33] = false new bool: Status[33][6] new bool: Bullet_Damage[33]new bool: Multi_Jump[33]new bool: Vampire[33] new bool:HasC4[33] new PlayerPos[MaxPlayers + 1] new JumpNUM[33] = 0 new bool: toggle_m4a1[33]new bool: toggle_ak47[33]new ginklai[33]new granatos[33] new g_MaxPlayers public plugin_init(){ register_plugin("[CP] Server Menu", "1.0", "xS The Moon") register_cvar("cpsm_advert", "1") register_cvar("cpsm_advert_time", "20.0") register_cvar("cpsm_health_kill", "5") register_cvar("cpsm_health_hs", "10") register_cvar("cpsm_maxjumps", "1") RegisterHam(Ham_Spawn, "player", "player_spawn", 1) register_clcmd("say /cp", "Main_Server_Menu") if (get_cvar_num("cpsm_advert")) { set_task(get_cvar_float("cpsm_advert_time"), "CPSM_Adv_Message", 0, _, _, "b") } register_event("DeathMsg", "Ev_DeathMsg", "a") register_event("Damage", "Ev_Damage", "b", "2>0", "3=0") g_MaxPlayers = get_maxplayers()} public client_connect(id){ DoJump[id] = false JumpNUM[id] = 0} public player_spawn(id){if(!is_user_alive(id) && get_user_flags(id) & ADMIN_LEVEL_H)return HAM_IGNOREDginklai[id] = 1granatos[id] = 1if(toggle_m4a1[id] == true && cs_get_user_hasprim(id)){ cs_set_user_bpammo(id, CSW_DEAGLE, 200) cs_set_user_bpammo(id, CSW_USP, 200) cs_set_user_bpammo(id, CSW_GLOCK18, 200) cs_set_user_bpammo(id, CSW_P228, 200) cs_set_user_bpammo(id, CSW_ELITE, 200) cs_set_user_bpammo(id, CSW_FIVESEVEN, 200) cs_set_user_bpammo(id, CSW_FAMAS, 200) cs_set_user_bpammo(id, CSW_SG552, 200) cs_set_user_bpammo(id, CSW_AK47, 200) cs_set_user_bpammo(id, CSW_M4A1, 200) cs_set_user_bpammo(id, CSW_AUG, 200) cs_set_user_bpammo(id, CSW_SCOUT, 200) cs_set_user_bpammo(id, CSW_AWP, 200) cs_set_user_bpammo(id, CSW_G3SG1, 200) cs_set_user_bpammo(id, CSW_SG550, 200) cs_set_user_bpammo(id, CSW_XM1014, 200) cs_set_user_bpammo(id, CSW_M3, 200) cs_set_user_bpammo(id, CSW_GALIL, 200) cs_set_user_bpammo(id, CSW_TMP, 200) cs_set_user_bpammo(id, CSW_P90, 200) cs_set_user_bpammo(id, CSW_MP5NAVY, 200) cs_set_user_bpammo(id, CSW_MAC10, 200) cs_set_user_bpammo(id, CSW_UMP45, 200) cs_set_user_bpammo(id, CSW_M249, 200)}else if(toggle_m4a1[id] == true){ if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1) HasC4[id] = true; else HasC4[id] = false; strip_user_weapons(id) give_item(id, "weapon_knife") give_item(id, "weapon_m4a1") cs_set_user_bpammo(id, CSW_M4A1, 200) give_item(id, "weapon_deagle") cs_set_user_bpammo(id, CSW_DEAGLE, 200) if (HasC4[id]) { give_item(id, "weapon_c4"); cs_set_user_plant( id ); }}else if(toggle_ak47[id] == true && cs_get_user_hasprim(id)){ cs_set_user_bpammo(id, CSW_DEAGLE, 200) cs_set_user_bpammo(id, CSW_USP, 200) cs_set_user_bpammo(id, CSW_GLOCK18, 200) cs_set_user_bpammo(id, CSW_P228, 200) cs_set_user_bpammo(id, CSW_ELITE, 200) cs_set_user_bpammo(id, CSW_FIVESEVEN, 200) cs_set_user_bpammo(id, CSW_FAMAS, 200) cs_set_user_bpammo(id, CSW_SG552, 200) cs_set_user_bpammo(id, CSW_AK47, 200) cs_set_user_bpammo(id, CSW_M4A1, 200) cs_set_user_bpammo(id, CSW_AUG, 200) cs_set_user_bpammo(id, CSW_SCOUT, 200) cs_set_user_bpammo(id, CSW_AWP, 200) cs_set_user_bpammo(id, CSW_G3SG1, 200) cs_set_user_bpammo(id, CSW_SG550, 200) cs_set_user_bpammo(id, CSW_XM1014, 200) cs_set_user_bpammo(id, CSW_M3, 200) cs_set_user_bpammo(id, CSW_GALIL, 200) cs_set_user_bpammo(id, CSW_TMP, 200) cs_set_user_bpammo(id, CSW_P90, 200) cs_set_user_bpammo(id, CSW_MP5NAVY, 200) cs_set_user_bpammo(id, CSW_MAC10, 200) cs_set_user_bpammo(id, CSW_UMP45, 200) cs_set_user_bpammo(id, CSW_M249, 200)}else if(toggle_ak47[id] == true){ if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1) HasC4[id] = true; else HasC4[id] = false; strip_user_weapons(id) give_item(id, "weapon_knife") give_item(id, "weapon_ak47") cs_set_user_bpammo(id, CSW_AK47, 200) give_item(id, "weapon_deagle") cs_set_user_bpammo(id, CSW_DEAGLE, 200) if (HasC4[id]) { give_item(id, "weapon_c4"); cs_set_user_plant( id ); }}if(Status[id][0] == true){ give_item(id, "weapon_flashbang") give_item(id, "weapon_flashbang") give_item(id, "weapon_smokegrenade") give_item(id, "weapon_hegrenade") give_item(id, "item_assaultsuit") give_item(id, "item_thighpack")}return HAM_IGNORED} public Ev_DeathMsg(){ new attacker = read_data(1) new Health new HP_Add if (Vampire[attacker] == true) { if ((read_data(3) == 1) && (read_data(5) == 0)) { HP_Add = get_cvar_num("cpsm_health_hs") } else { HP_Add = get_cvar_num("cpsm_health_kill") } Health = get_user_health(attacker) Health += HP_Add set_user_health(attacker, Health) set_hudmessage(0, 255, 0, -1.0, 0.15, 0, 1.0, 1.0, 0.1, 0.1, -1) show_hudmessage(attacker, "Healed +%d HP", HP_Add) message_begin(MSG_ONE, get_user_msgid("ScreenFade"), {0,0,0}, attacker) 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 Ev_Damage(victim){ if (read_data(4) || read_data(5) || read_data(6)) { new id = get_user_attacker(victim) if ((1 <= id <= g_MaxPlayers) && is_user_connected(id)) { if (Bullet_Damage[id] == true) { new iPos = ++PlayerPos[id] if (iPos == sizeof(g_flCoords)) { iPos = PlayerPos[id] = 0 } set_hudmessage(0, 100, 200, Float:g_flCoords[iPos][0], Float:g_flCoords[iPos][1], 0, 0.1, 2.5, 0.02, 0.02, -1) show_hudmessage(id, "%d", read_data(2)) } } }} public CPSM_Adv_Message(id){ print_color(id, "/y[/gCP/y] /ctrServerio Meniu/y: /gNoredamas atidaryti rasyk /y//ctrcp")} public Main_Server_Menu(id){ if (get_user_flags(id) & ADMIN_LEVEL_H) { new menu = menu_create("\d[\rCP\d] \yServerio Meniu\d:", "Server_Menu") new szMsg1[60] new szMsg2[60] new szMsg3[60] new szMsg4[60] new szMsg5[60] new szMsg6[60] format(szMsg1, 59, "\d[\rCP\d] \wGranatos/Sarvai. \yStatusas\d: \r%s.", Status[id][0] ? "\w[\yON\w]" : "\w[\rOFF\w]") format(szMsg2, 59, "\d[\rCP\d] \wBullet Damage. \yStatusas\d: \r%s.", Status[id][1] ? "\w[\yON\w]" : "\w[\rOFF\w]") format(szMsg3, 59, "\d[\rCP\d] \wMulti Jump. \yStatusas\d: \r%s.", Status[id][2] ? "\w[\yON\w]" : "\w[\rOFF\w]") format(szMsg4, 59, "\d[\rCP\d] \wM4A1 + Deagle. \yStatusas\d: \r%s.", Status[id][3] ? "\w[\yON\w]" : "\w[\rOFF\w]") format(szMsg5, 59, "\d[\rCP\d] \wAk47 + Deagle. \yStatusas\d: \r%s.", Status[id][4] ? "\w[\yON\w]" : "\w[\rOFF\w]") format(szMsg6, 59, "\d[\rCP\d] \wHP Uz Kill. \yStatusas\d: \r%s.", Status[id][5] ? "\w[\yON\w]" : "\w[\rOFF\w]") menu_additem(menu, szMsg1, "1", 0) menu_additem(menu, szMsg2, "2", 0) menu_additem(menu, szMsg3, "3", 0) menu_additem(menu, szMsg4, "4", 0) menu_additem(menu, szMsg5, "5", 0) menu_additem(menu, szMsg6, "6", 0) menu_setprop(menu, MPROP_EXIT, MEXIT_ALL) menu_display(id, menu, 0) } else { print_color(id, "/y[/gCP/y] /ctrControl Panel /gtik V.I.P'ams ir ADMIN'ams.") return }}public Server_Menu(id, menu, item){ if (item == MENU_EXIT) { menu_destroy(menu) return PLUGIN_HANDLED } if (item == 0) { if (Status[id][0]) { Status[id][0] = false granatos[id] = 0 } else if(granatos[id] == 0) { Status[id][0] = false print_color(id, "/y[/gCP/y] Palauk kito round.") } else { Status[id][0] = true give_item(id, "weapon_flashbang") give_item(id, "weapon_flashbang") give_item(id, "weapon_smokegrenade") give_item(id, "weapon_hegrenade") give_item(id, "item_assaultsuit") give_item(id, "item_thighpack") } } if (item == 1) { if (Status[id][1]) { Status[id][1] = false Bullet_Damage[id] = false } else { Status[id][1] = true Bullet_Damage[id] = true } } if (item == 2) { if (Status[id][2]) { Status[id][2] = false Multi_Jump[id] = false } else { Status[id][2] = true Multi_Jump[id] = true } } if (item == 3) { if (Status[id][3]) { Status[id][3] = false toggle_m4a1[id] = false ginklai[id] = 0 } else if(ginklai[id] == 0) { Status[id][3] = false print_color(id, "/y[/gCP/y] Palauk kito round.") } else if (Status[id][4] == true) { Status[id][3] = false toggle_m4a1[id] = false print_color(id, "/y[/gCP/y] AK47 jau ijungta.") } else { Status[id][3] = true toggle_m4a1[id] = true if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1) HasC4[id] = true; else HasC4[id] = false; strip_user_weapons(id) give_item(id, "weapon_knife") give_item(id, "weapon_m4a1") cs_set_user_bpammo(id, CSW_M4A1, 200) give_item(id, "weapon_deagle") cs_set_user_bpammo(id, CSW_DEAGLE, 200) if (HasC4[id]) { give_item(id, "weapon_c4"); cs_set_user_plant( id ); } } } if (item == 4) { if (Status[id][4]) { Status[id][4] = false toggle_ak47[id] = false ginklai[id] = 0 } else if(ginklai[id] == 0) { Status[id][4] = false print_color(id, "/y[/gCP/y] Palauk kito round.") } else if (Status[id][3] == true) { Status[id][4] = false toggle_ak47[id] = false print_color(id, "/y[/gCP/y] M4A1 jau ijungta.") } else { Status[id][4] = true toggle_ak47[id] = true if (user_has_weapon(id, CSW_C4) && get_user_team(id) == 1) HasC4[id] = true; else HasC4[id] = false; strip_user_weapons(id) give_item(id, "weapon_knife") give_item(id, "weapon_ak47") cs_set_user_bpammo(id, CSW_AK47, 200) give_item(id, "weapon_deagle") cs_set_user_bpammo(id, CSW_DEAGLE, 200) if (HasC4[id]) { give_item(id, "weapon_c4"); cs_set_user_plant( id ); } } } if (item == 5) { if (Status[id][5]) { Status[id][5] = false Vampire[id] = false } else { Status[id][5] = true Vampire[id] = true } } Main_Server_Menu(id) return PLUGIN_HANDLED} public client_PreThink(id){ if (!is_user_alive(id)) return PLUGIN_CONTINUE new nbut = get_user_button(id) new obut = get_user_oldbutton(id) if (Multi_Jump[id] == true) { if ((nbut & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(obut & IN_JUMP)) { if (JumpNUM[id] < get_cvar_num("cpsm_maxjumps")) { DoJump[id] = true JumpNUM[id]++ return PLUGIN_CONTINUE } } if ((nbut & IN_JUMP) && (get_entity_flags(id) & FL_ONGROUND)) { JumpNUM[id] = 0 return PLUGIN_CONTINUE } } return PLUGIN_CONTINUE} public client_PostThink(id){ if (!is_user_alive(id) && get_user_flags(id) & ADMIN_LEVEL_H) return PLUGIN_CONTINUE if (DoJump[id] == true) { new Float: velocity[3] entity_get_vector(id, EV_VEC_velocity, velocity) velocity[2] = random_float(265.0, 285.0) entity_set_vector(id, EV_VEC_velocity, velocity) DoJump[id] = false return PLUGIN_CONTINUE } return PLUGIN_CONTINUE} stock print_color(const id, const input[], any:...){ new count = 1, players[32] static msg[191] vformat(msg,190,input,3) replace_all(msg,190,"/g","^4");// green txt replace_all(msg,190,"/y","^1");// orange txt replace_all(msg,190,"/ctr","^3");// team txt replace_all(msg,190,"/w","^2");// team txt 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() }}