Scripting VIP
Posted: 2015 Jun 02 15:15
Kaip is vip menu, pasiemu-(am) gravity,pasokam 3x kartus, paspaudziam e, ir gravity dingsta, is niekur nieko. Jeigu nesunku, sutaisykit sita, buga/klaida,
Code: Select all
include <amxmodx>#include <amxmisc>#include <cstrike> #include <fun>#include <vault>#include <engine>#include <fakemeta>#include <fakemeta_util>#include <zombieplague> #define ADMINACCESS ADMIN_LEVEL_H static const COLOR[] = "^x03"static const CONTACT[] = ""new bool:dojump[33] = false;new jumpnum[33] = 0;new maxplayersnew ammopacksnew gmsgSayTextnew gravitytnew gravityctnew const VIP_STATUS[] = "Prisijunge VIP", VIP_STATUS_N[] = "Nera prisijungusiu VIP", CONTACT_ADMIN[] = ""; public plugin_init(){ register_plugin("Zombie Plague VIP", "2.0", "Armasi") register_logevent("Round_Start", 2, "1=Round_Start") register_menucmd(register_menuid("menu_rod"), 1023, "Pressedrod") register_dictionary("zombieplaguevip.txt") register_clcmd("say /vip","ShowMotd") register_event("DeathMsg","death_msg","a") maxplayers = get_maxplayers() gmsgSayText = get_user_msgid("SayText") gmsgSayText = get_user_msgid("SayText") register_cvar( "vip_nematomumas_t", "80" ); register_cvar( "vip_nematomumas_ct", "80" ); register_cvar("vip_soviniu_paketai_t","10"); register_cvar("vip_soviniu_paketai_ct","10"); register_cvar("vip_prideti_gyvybes_t","1000"); register_cvar("vip_prideti_gyvybes_ct","100"); gravityt = register_cvar("vip_gravity_t","0.5"); gravityct = register_cvar("vip_gravity_ct","0.5"); ammopacks = register_cvar("vip_nuzudymas_ammo","4") register_cvar("vip_suolis", "2") register_cvar("vip_armor_t","100"); register_cvar("vip_armor_ct","100"); register_clcmd("say", "handle_say") register_cvar("amx_contactinfo", CONTACT, FCVAR_SERVER)} public death_msg() { if(get_user_flags(read_data(1)) & ADMINACCESS && read_data(1)<=maxplayers && read_data(1) && read_data(1)!=read_data(2)) zp_set_user_ammo_packs(read_data(1),zp_get_user_ammo_packs(read_data(1)) + get_pcvar_num(ammopacks))} public client_putinserver(id){ jumpnum[id] = 0 dojump[id] = false} public client_disconnect(id){ jumpnum[id] = 0 dojump[id] = false} 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)} public Round_Start() set_task(15.0, "Uzdelstas_meniu") public Uzdelstas_meniu(){ new players[32], pnum get_players(players, pnum, "a") for (new i = 0; i < pnum; i++) { new player = players[i] if (get_user_flags(player) & ADMINACCESS) { ShowmenuID(player) } } return PLUGIN_HANDLED} public ShowmenuID(id){ new Body[512] new CsTeams:iTeam = cs_get_user_team(id) if (iTeam == CS_TEAM_T) { add(Body, 511, "\rVIP menu: Zombems^n") add(Body, 511, "\r1. \wDaugiau gyvybiu.^n") add(Body, 511, "\r2. \wSoviniu paketai.^n") add(Body, 511, "\r3. \wMaziau matomas.^n") add(Body, 511, "\r4. \w10HP per 10sekundziu.^n") add(Body, 511, "\r5. \wMazesne gravitacija.^n") add(Body, 511, "\r6. \wSarvai.^n^n") add(Body, 511, "\r0. \wIseiti.^n") } else if (iTeam == CS_TEAM_CT) { add(Body, 511, "\rVIP menu: Zmonems^n") add(Body, 511, "\r1. \wSoviniu paketai.^n") add(Body, 511, "\r2. \wDaugiau gyvybiu.^n") add(Body, 511, "\r3. \wAnti-Infekciniai sarvai.^n") add(Body, 511, "\r4. \wMaziau matomas.^n") add(Body, 511, "\r5. \wSG550 & Deagle.^n") add(Body, 511, "\r6. \wMazesne gravitacija.^n^n") add(Body, 511, "\r0. \wIseiti.^n") } new g_Keys = (1<<0 | 1<<1 | 1<<2 | 1<<3 | 1<<4 | 1<<5| 1<<9) show_menu(id, g_Keys, Body, -1, "menu_rod") return PLUGIN_CONTINUE} public Pressedrod(id, key){ new CsTeams:iTeam = cs_get_user_team(id) switch(key) { case 0: { if (iTeam == CS_TEAM_T) { set_user_health(id, get_user_health(id)+get_cvar_num("vip_prideti_gyvybes_t")); client_print(id, print_chat, "%L", LANG_PLAYER, "ZOMBIU_GYVYBES", get_cvar_num("vip_prideti_gyvybes_t")) client_cmd(id, "spk misc/woohoo2.wav") } else if (iTeam == CS_TEAM_CT) { zp_set_user_ammo_packs(id, zp_get_user_ammo_packs(id)+get_cvar_num("vip_soviniu_paketai_ct")); client_print(id, print_chat, "%L", LANG_PLAYER, "ZMONIU_AMMO_PACKS", get_cvar_num("vip_soviniu_paketai_ct")) client_cmd(id, "spk misc/woohoo2.wav") } } case 1: { if (iTeam == CS_TEAM_T) { zp_set_user_ammo_packs(id, zp_get_user_ammo_packs(id)+get_cvar_num("vip_soviniu_paketai_t")); client_print(id, print_chat, "%L", LANG_PLAYER, "ZOMBIU_AMMO_PACKS", get_cvar_num("vip_soviniu_paketai_t")) client_cmd(id, "spk misc/woohoo2.wav") } else if (iTeam == CS_TEAM_CT) { set_user_health(id, get_user_health(id)+get_cvar_num("vip_prideti_gyvybes_ct")); client_print(id, print_chat, "%L", LANG_PLAYER, "ZMONIU_GYVYBES", get_cvar_num("vip_prideti_gyvybes_ct")) client_cmd(id, "spk misc/woohoo2.wav") } } case 2: { if (iTeam == CS_TEAM_T) { set_user_rendering(id, get_cvar_num("vip_nematomumas_t")); client_print(id, print_chat, "%L", LANG_PLAYER, "ZOMBIU_NEMATOMUMAS", get_cvar_num("vip_nematomumas_t")) client_cmd(id, "spk misc/woohoo2.wav") } else if (iTeam == CS_TEAM_CT) { set_user_armor(id, get_cvar_num("vip_armor_ct")); client_print(id, print_chat, "%L", LANG_PLAYER, "ZMONIU_SARVAI") client_cmd(id, "spk misc/woohoo2.wav") } } case 3: { if (iTeam == CS_TEAM_T) { if(is_user_alive(id)) { new hp = get_user_health(id); if(hp < 5000) { set_task(1.0,"gyvybes", id) } } client_print(id, print_chat, "%L", LANG_PLAYER, "ZOMBIU_GYVYBIU_ATSISTATYMAS") client_cmd(id, "spk misc/woohoo2.wav") } else if (iTeam == CS_TEAM_CT) { set_user_rendering(id, get_cvar_num("vip_nematomumas_ct")); client_print(id, print_chat, "%L", LANG_PLAYER, "ZMONIU_NEMATOMUMAS", get_cvar_num("vip_nematomumas_ct")) client_cmd(id, "spk misc/woohoo2.wav") } } case 4: { if (iTeam == CS_TEAM_T) { set_user_gravity(id, get_pcvar_float(gravityt)) client_print(id, print_chat, "%L", LANG_PLAYER, "ZOMBIU_GRAVITACIJA") client_cmd(id, "spk misc/woohoo2.wav") } else if (iTeam == CS_TEAM_CT) { strip_user_weapons(id) give_item(id, "weapon_hegrenade"); give_item(id, "weapon_flashbang"); give_item(id, "weapon_smokegrenade"); give_item(id,"weapon_sg550") give_item(id,"ammo_556nato") give_item(id,"ammo_556nato") give_item(id,"ammo_556nato") give_item(id,"weapon_deagle") give_item(id,"ammo_50ae") give_item(id,"ammo_50ae") give_item(id,"ammo_50ae") give_item(id,"ammo_50ae") give_item(id,"ammo_50ae") give_item(id,"weapon_knife") client_print(id, print_chat, "%L", LANG_PLAYER, "ZMONIU_GINKLAI") client_cmd(id, "spk misc/woohoo2.wav") } } case 5: { if (iTeam == CS_TEAM_T) { set_user_armor(id, get_cvar_num("vip_armor_t")); client_print(id, print_chat, "%L", LANG_PLAYER, "ZOMBIU_SARVAI") client_cmd(id, "spk misc/woohoo2.wav") } else if (iTeam == CS_TEAM_CT) { set_user_gravity(id, get_pcvar_float(gravityct)) client_print(id, print_chat, "%L", LANG_PLAYER, "ZMONIU_GRAVITACIJA") client_cmd(id, "spk misc/woohoo2.wav") } } case 9: { }} return PLUGIN_CONTINUE} public gyogyitas(id) { new hp = get_user_health(id); if(hp < 5000) { set_user_health(id, hp + 10); set_task(1.0,"gyvybes", id); } else { client_print(id, print_chat, "%L", LANG_PLAYER, "ZOMBIU_GYVYBIU_PABAIGA", hp)} return PLUGIN_HANDLED} 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) & ADMINACCESS) get_user_name(id, adminnames[count++], 31) len = format(message, 255, "%s %s: ",COLOR, VIP_STATUS) 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, "%s.", VIP_STATUS_N) print_message(user, message) } get_cvar_string("amx_contactinfo", contact, 63) if(contact[0]) { format(contactinfo, 111, "%s %s -- %s", COLOR, CONTACT_ADMIN, 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 client_PreThink(id){ if(!is_user_alive(id)) return PLUGIN_CONTINUE if(!access(id,ADMINACCESS)) return PLUGIN_CONTINUE new nbut = get_user_button(id) new obut = get_user_oldbutton(id) if((nbut & IN_JUMP) && !(get_entity_flags(id) & FL_ONGROUND) && !(obut & IN_JUMP)) { if(jumpnum[id] < get_cvar_num("vip_suolis")) { 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)) return PLUGIN_CONTINUE if(!access(id,ADMINACCESS)) 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} public ShowMotd(id){ show_motd(id, "vip.txt")} public plugin_precache() { precache_sound("misc/woohoo2.wav")}