- /* 
- Fordította: BBk 
- */ 
-   
- #define DAMAGE_RECIEVED 
- #include <amxmodx> 
- #include <amxmisc> 
- #include <cstrike> 
- #include <fun> 
-   
- 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_menu_active 
- new CurrentRound 
- new sebesseg_knife 
- new bool:HasC4[33] 
- #define Keysrod (1<<0)|(1<<1)|(1<<9) // Keys: 1234567890 
- #if defined DAMAGE_RECIEVED 
- new g_MsgSync2 
- #endif 
-   
- public plugin_init() 
- { 
- register_plugin("VIP Eng Version", "3.0", "Dunno") 
- mpd = register_cvar("money_per_damage","0") 
- mkb = register_cvar("money_kill_bonus","0") 
- mhb = register_cvar("money_hs_bonus","0") 
- 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_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("say /wantvip","ShowMotd") 
- register_cvar("gyors_kes", "1"); //Gyors kés BE/KI kapcsolása 
- sebesseg_knife = register_cvar("kes_sebesseg", "340") //Kés sebesség 
- 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") 
- g_MsgSync = CreateHudSyncObj() 
- #if defined DAMAGE_RECIEVED 
- g_MsgSync2 = CreateHudSyncObj() 
- #endif   
- } 
-   
- public on_damage(id) 
- { 
- new attacker = get_user_attacker(id) 
-   
- #if defined DAMAGE_RECIEVED 
- // id should be connected if this message is sent, but lets check anyway 
- 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) 
- #else 
- if ( is_user_connected(attacker) && if (get_user_flags(attacker) & ADMIN_LEVEL_H) ) 
- { 
- new damage = read_data(2) 
- #endif 
- 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) 
- } 
-   
- if(get_cvar_num("gyors_kes") == 1 && get_cvar_num("vip_menu") == 1 && get_user_flags(id) & ADMIN_LEVEL_H) 
- { 
- if(get_user_weapon(id) == CSW_KNIFE) 
- { 
- new Float: sebesseg = get_pcvar_float(sebesseg_knife) 
- set_user_maxspeed(id, sebesseg) 
- } 
- } 
- }    
-   
- 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_hegrenade") 
- give_item(player, "weapon_flashbang") 
- give_item(player, "weapon_flashbang") 
- give_item(player, "weapon_smokegrenade") 
- 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, "Gyogyulas +%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) { 
- show_menu(id, Keysrod, "Ingyen VIP Fegyverek^n\w1. Scout+p228^n\w2. Scout+p228^n0. Kilepes^n", -1, "rod") // Display menu 
- } 
- public Pressedrod(id, key) { 
- /* Menu: 
- * VIP Menu 
- * 1. Get M4A1+Deagle 
- * 2. Get AK47+Deagle 
- * 0. Exit 
- */ 
- switch (key) { 
- case 0: {  
- 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_scout") 
- give_item(id,"ammo_556nato") 
- give_item(id,"ammo_556nato") 
- give_item(id,"ammo_556nato") 
- give_item(id,"weapon_p228") 
- 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,"ammo_50ae") 
- give_item(id,"ammo_50ae") 
- give_item(id,"weapon_knife") 
- give_item(id,"weapon_hegrenade") 
- give_item(id, "weapon_flashbang"); 
- give_item(id, "weapon_flashbang"); 
- give_item(id, "weapon_smokegrenade"); 
- give_item(id, "item_assaultsuit"); 
- give_item(id, "item_thighpack"); 
- client_print(id, print_center, "Kaptal Ingyen egy csomagot") 
-   
- 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; 
-   
- strip_user_weapons (id) 
- give_item(id,"weapon_scout") 
- give_item(id,"ammo_762nato") 
- give_item(id,"ammo_762nato") 
- give_item(id,"ammo_762nato") 
- give_item(id,"weapon_p228") 
- 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,"ammo_50ae") 
- give_item(id,"ammo_50ae") 
- give_item(id,"weapon_knife") 
- give_item(id,"weapon_hegrenade") 
- give_item(id, "weapon_flashbang"); 
- give_item(id, "weapon_flashbang"); 
- give_item(id, "weapon_smokegrenade"); 
- give_item(id, "item_assaultsuit"); 
- give_item(id, "item_thighpack"); 
- client_print(id, print_center, "Kaptal Ingyen egy  csomagot") 
-   
- if (HasC4[id]) 
- { 
- give_item(id, "weapon_c4"); 
- cs_set_user_plant( id ); 
- } 
- } 
- case 9: {            
- } 
- } 
- return PLUGIN_CONTINUE 
- } 
-   
- 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, "[VIP] Ird be /wantvip es latni fogod, hogyan kaphatsz VIP-t es milyen kivaltsagai vannak.") 
- } 
-   
- 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 ONLINE VIP: ",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, "Nincs jelen VIP.") 
- print_message(user, message) 
- } 
-   
- get_cvar_string("amx_contactinfo", contact, 63) 
- if(contact[0])  { 
- format(contactinfo, 111, "%s Szerver Admin csatlakozik -- %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() 
- }