| Helló Scripterek!
 Nagy feladat! Aki meg csinálja nem megy el üres kézzel!
 
 Ehez az MW2 -es módhoz kéne írni egy vip rendszert, hogy a vip több xp-t kapjon, és cvarral lehessen állítani (vipxp).
 
 Mód sma:
 
 Kód: #include <amxmodx>
 #include <amxmisc>
 #include <fun>
 #include <cstrike>
 #include <fakemeta>
 #include <engine>
 #include <hamsandwich>
 #include <nvault>
  
  
 #define PLUGIN "Call of Duty: MW Mod"
 #define VERSION "1.0"
 #define AUTHOR "QTM_Peyote,johnC,GranTorino"
  
 #define STANDARD_FAST 250.0
  
 #define TASK_SHOW_INFORMATION 672
 #define TASK_RAISE 704
 #define TASK_TRAINING_SANITARY 736
 #define TASK_SHOW_ADVERTISEMENT 768
 #define TASK_SET_FAST 832
  
 //#define BOT 1
  
  
  
 new SyncHudObj;
 new SyncHudObj2;
 new SyncHudObj3;
 new g_msg_screenfade;
  
 new sprite_white;
 new sprite_blast;
  
 new g_vault;
  
 new podkladajacy;
 new disarming;
  
 new experience_for_murder;
 new experience_for_bomb;
  
 new Clothing_CT[4][]={"sas","gsg9","urban","gign"};
 new Clothing_Terro[4][]={"arctic","leet","guerilla","terror"};
  
 new const maxAmmo[31]={0,52,0,90,1,32,1,100,90,1,120,100,100,90,90,90,100,120,30,120,200,32,90,120,90,2,35,90,90,0,100};
 new const maxClip[31] = { -1, 13, -1, 10,  1,  7,  1,  30, 30,  1,  30,  20,  25, 30, 35, 25,  12,  20, 
 10,  30, 100,  8, 30,  30, 20,  2,  7, 30, 30, -1,  50 };
  
 new information_item_player[33][2];
 new const names_objects[][] = 
 {
     "Nincs", 
     "Tamado Csizmak", //1
     "Dupla Melleny", //2
     "Megerositett melleny", //3
     "Veteran Kes", //4
     "Meglepetes Tamadas", //5
     "Nindzsa Kopeny", //6 
     "Morfium", //7
     "Kommando Kes", //8
     "Ke'm szemuveg",
     "Titokzatos Granat",
     "Nindzsa Lab", //11
     "Titokzatos Katona", //12
     "AWP Sniper",//13
     "Adrenalin",//14
     "Rambo",//15
     "Egeszseges Edzes",//16
     "NASA Melleny",//17
     "Edzett Veteran",//18
     "Elsosegely csomag",//19
     "Recoil Eliminator",//20
     "Titan Toltenyek",//21
     "Ezres Toltenyek",//22
     "Recoil Szamlalo",//23
     "SWAT Shield",//24
     "Edzett Ujonc",//25
     "Relective Fegyverzet",//26
     "Kapitanyi Feljegyzesek",//27
     "Jet Modul"
     
 };
  
 new const descriptions_objects[][] = {"Egy ellenseg megolese utan kapsz targyat!", 
     "Halk Futas", 
     "Csokkenti a becsapodo sebzeseket",
     "Csokkenti a becsapodo sebzeseket", 
     "Sokkal erosebb szuras kessel",
     "A hatulrol eltalalt ellenfel, 2x nagyobb sebzest kap az atlagtol", 
     "Reszben lathatatlanna tesz teged",
     "1/3 esely az ujraeledesre ha megolnek",
     "Azonnali oles a kessel",
     "1/3 eselyt kapsz hogy granattal azonnali halalt okozz.",
     "Azonnali oles HE granattal",
     "2x tudsz ugrani a levegoben",
     "A seruleseid csokkennek 1/3-hoz. 1/3-hoz eselyed van arra, hogy megvakitsd az ellenseget",
     "Azonnali oles AWP-vel",
     "Minden Frag utan, kapsz +50 HP-t",
     "Minden Frag utan, full tarat es +20 HP-t kapsz",
     "Visszakapsz 10 HP-t 3 masodpercenkent",
     "+500 Armor",
     "Kapsz minden korben 100 HP-t, viszont lassaban futsz",
     "Nyomj E betut HP tolteshez",
     "No recoil",
     "+15 Sebzes",
     "+25 Sebzes",
     "A recoil-od alacsony",
     "A targyak nem hatraltatnak teged.",
     "Minden korben +50 HP-t kapsz és lassabban futsz",
     "1/3 eselyed arra hogy visszaveri a ka'rod",
     "Immunis leszel minden egyes korben 3 golyora",
     "Nyomj CTRL-t és SPACE-t a modul hasznalatahoz, 4 masodpercenkent toltodik ujra a modul"
 };
  
 new g_szAuthID[33][34];
 new class_player[33];
 new level_player[33] = 1;
 new experience_player[33];
  
 new nowa_class_player[33];
  
 new const experience_level[] = 
 {
     0,35,140,315,560,875,1260,1715,2240,2835,3500,4235,5040,5915,6860,7875,8960,10115,11340,12635,14000,15435,16940,18515,20160,21875,23660,25515,27440,29435,31500,33635,35840,38115,40460,42875,45360,47915,50540,53235,56000,58835,61740,64715,67760,70875,
     74060,77315,80640,84035,87500,91035,94640,98315,102060,105875,109760,113715,117740,121835,126000,130235,134540,138915,143360,147875,152460,157115,161840,166635,171500,176435,181440,186515,191660,196875,202160,207515,212940,218435,224000,229635,235340,241115,246960,252875,258860,
     264915,271040,277235,283500,289835,296240,302715,309260,315875,322560,329315,336140,343035,350000,357035,364140
 };
  
 new punkty_player[33];
 new zdrowie_player[33];
 new inteligencja_player[33];
 new wytrzymalosc_player[33];
 new Float:redukcja_obrazen_player[33];
 new kondycja_player[33];
 new maksymalne_zdrowie_player[33];
 new Float:fast_player[33];
  
 new bool:gracz_resetuje[33];
  
 enum { NONE = 0, Sniper, Commando, Sharpshooter, Protector, Medic, FireSupport, Sapper, Demolitions, Rusher, Rambo };
 new const zdrowie_klasy[] = { 0, 120, 130, 110, 250, 150, 100, 100, 130, 100, 130};
 new const Float:fast_klasy[] = {0.0, 1.2, 1.35, 0.8, 0.8, 1.0, 1.0, 1.0, 1.0, 1.45 , 1.15};
 new const pancerz_klasy[] = { 0, 100, 100, 100, 200, 100, 0, 100, 100, 0, 150};
 new const names_klas[][] = {"Nincs",
     "Meszerlovesz",
     "Commandos",
     "Gyorstuzer",
     "Protector",
     "Medic",
     "Support",
     "Aknazo",
     "Robbanto",
     "Elit",
     "Rambo"
 };
  
 new const descriptions_klas[][] = {"Nincs",
     "Felszereles: AWP, Deagle & Scout, 120hp. 1/3-hoz eselyed kessel valo azonnali olesre. 110 Gyorsasag, 100 Amor.",
     "Felszereles: Deagle, 130hp. Azonnali kes oles (csak jobb egergomb), 135 Gyorsasag, 100 Armor",
     "Felszereles: AK47, M4A1 & 110hp. 80 Gyorsasag, 100 Armor",
     "Felszereles: M249, 250hp & Osszes granat, Immunis az aknara, 200 Armor",
     "Felszereles: UMP45, 150hp. Elsosegely csomag, 100 Armor",
     "Felszereles: MP5, 100 hp, 2 raketa, Extra talalati pontok / talalat",
     "Felszereles: P90, 100hp, Kapsz 3 aknat, 100 Armor",
     "Felszereles: AUG, 130 hp, Osszes granat, Dinamitot kapsz ami teruleti karokat okoz, 100 Armor",
     "Felszereles: M3, 100 hp, 145 Gyorsasag",
     "Felszereles: Famas, 130 hp, 120 Gyorsasag, 20 HP / oles, 2 ugras, 100 Armor"
 };
  
 new ilosc_apteczek_player[33];
 new ilosc_rakiet_player[33];
 new Float:poprzednia_rakieta_player[33];
 new ilosc_min_player[33];
 new ilosc_dynamitow_player[33];
 new ilosc_skokow_player[33];
  
 new bool:freezetime = true;
  
 public plugin_init() 
 {
     register_plugin(PLUGIN, VERSION, AUTHOR);
     
     g_vault = nvault_open("CodMod");
     
     register_think("FirstAidKit","FirstAidKitThink");
     
     RegisterHam(Ham_TakeDamage, "player", "TakeDamage");
     RegisterHam(Ham_Spawn, "player", "Odrodzenie", 1);
  
     
     register_forward(FM_CmdStart, "CmdStart");
     register_forward(FM_EmitSound, "EmitSound");
     
     register_logevent("PoczatekRundy", 2, "1=Round_Start"); 
     register_logevent("BombaPodlozona", 3, "2=Planted_The_Bomb");
     
     register_event("SendAudio", "BombaRozbrojona", "a", "2&%!MRAD_BOMBDEF");
     register_event("BarTime", "RozbrajaBomb", "be", "1=10", "1=5");
     register_event("DeathMsg", "Death", "ade");
     register_event("Damage", "Damage", "b", "2!=0");
     register_event("CurWeapon","CurWeapon","be", "1=1");
     register_event("HLTV", "NowaRunda", "a", "1=0", "2=0");
     
     register_touch("Rocket", "*" , "DotykRakiety");
     register_touch("Mine", "player",  "DotykMiny");
     
     register_cvar("cod_killxp", "50");
     register_cvar("cod_bombxp", "100");
     
     register_clcmd("say /osztaly", "WybierzKlase");
     register_clcmd("say /osztalyinfo", "DescriptionKlasy");
     register_clcmd("say /targy", "DescriptionItem");
     register_clcmd("say /dobas", "WyrzucPrzedmiot");
     register_clcmd("say /nullazas", "KomendaResetujPunkty");
     register_clcmd("say /help", "userhelp", 0, " - Help Motd ");
     register_clcmd("say /save","ZapiszDane")
     register_clcmd("fullupdate", "CommandBlock");
     register_clcmd("cl_autobuy", "CommandBlock");
     register_clcmd("cl_rebuy", "CommandBlock");
     register_clcmd("cl_setautobuy","CommandBlock");
     register_clcmd("rebuy", "CommandBlock");
     register_clcmd("autobuy", "CommandBlock");
     register_clcmd("glock", "CommandBlock");
     register_clcmd("usp", "CommandBlock");
     register_clcmd("p228", "CommandBlock");
     register_clcmd("deagle", "CommandBlock");
     register_clcmd("elites", "CommandBlock");
     register_clcmd("fn57", "CommandBlock");
     register_clcmd("m3", "CommandBlock");
     register_clcmd("autoshotgun", "CommandBlock");
     register_clcmd("mac10", "CommandBlock");
     register_clcmd("tmp", "CommandBlock");
     register_clcmd("mp5", "CommandBlock");
     register_clcmd("ump45", "CommandBlock");
     register_clcmd("p90", "CommandBlock");
     register_clcmd("galil", "CommandBlock");
     register_clcmd("ak47", "CommandBlock");
     register_clcmd("scout", "CommandBlock");
     register_clcmd("sg552", "CommandBlock");
     register_clcmd("awp", "CommandBlock");
     register_clcmd("g3sg1", "CommandBlock");
     register_clcmd("famas", "CommandBlock");
     register_clcmd("m4a1", "CommandBlock");
     register_clcmd("bullpup", "CommandBlock");
     register_clcmd("sg550", "CommandBlock");
     register_clcmd("m249", "CommandBlock");
     register_clcmd("shield", "CommandBlock");
     register_clcmd("hegren", "CommandBlock");
     register_clcmd("sgren", "CommandBlock");
     register_clcmd("flash", "CommandBlock");
     register_concmd("cod_setlvl", "cmd_setlvl", ADMIN_KICK, "<name> <level>");
  
     g_msg_screenfade = get_user_msgid("ScreenFade");
     SyncHudObj = CreateHudSyncObj();
     SyncHudObj2 = CreateHudSyncObj();
     SyncHudObj3 = CreateHudSyncObj();
     experience_for_murder = get_cvar_num("cod_killxp");
     experience_for_bomb = get_cvar_num("cod_bombxp");
     
     set_task(60.0, "Pomoc");
 }
  
 public plugin_cfg() 
 {    
     server_cmd("sv_maxspeed 1600");
 }
  
 public plugin_precache()
 {
     sprite_white = precache_model("sprites/white.spr") ;
     sprite_blast = precache_model("sprites/dexplo.spr");
     
     precache_sound("MW/select.wav");
     precache_sound("MW/start.wav");
     precache_sound("MW/start2.wav");
     precache_sound("MW/levelup.wav");
     
     precache_model("models/w_medkit.mdl");
     precache_model("models/rpgrocket.mdl");
     precache_model("models/mine.mdl");
 }
  
  
 public CmdStart(id, uc_handle)
 {
     if(!is_user_alive(id))
         return FMRES_IGNORED;
         
     new button = get_uc(uc_handle, UC_Buttons);
     new oldbutton = get_user_oldbutton(id);
     new flags = get_entity_flags(id);
     
     if(information_item_player[id][0] == 11 || class_player[id] == Rambo)
     {
         if((button & IN_JUMP) && !(flags & FL_ONGROUND) && !(oldbutton & IN_JUMP) && ilosc_skokow_player[id] > 0)
         {
             ilosc_skokow_player[id]--;
             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);
         }
         else if(flags & FL_ONGROUND)
         {    
             ilosc_skokow_player[id] = 0;
             if(information_item_player[id][0] == 11)
                 ilosc_skokow_player[id]++;
             if(class_player[id] == Rambo)
                 ilosc_skokow_player[id]++;
         }
     }
     
     if(button & IN_ATTACK)
     {
         new Float:punchangle[3];
         
         if(information_item_player[id][0] == 20)
             entity_set_vector(id, EV_VEC_punchangle, punchangle);
         if(information_item_player[id][0] == 23)
         {
             entity_get_vector(id, EV_VEC_punchangle, punchangle);
             for(new i=0; i<3;i++) 
                 punchangle[i]*=0.9;
             entity_set_vector(id, EV_VEC_punchangle, punchangle);
         }
     }
     
     if(information_item_player[id][0] == 28 && button & IN_JUMP && button & IN_DUCK && flags & FL_ONGROUND && get_gametime() > information_item_player[id][1]+4.0)
     {
         information_item_player[id][1] = floatround(get_gametime());
         new Float:velocity[3];
         VelocityByAim(id, 700, velocity);
         velocity[2] = random_float(265.0,285.0);
         entity_set_vector(id, EV_VEC_velocity, velocity);
     }
     
     
     return FMRES_IGNORED;
 }
  
 public Odrodzenie(id)
 {
     if(!is_user_alive(id) || !is_user_connected(id))
         return PLUGIN_CONTINUE;
     
     if(nowa_class_player[id])
     {
         class_player[id] = nowa_class_player[id];
         nowa_class_player[id] = 0;
         strip_user_weapons(id);
         give_item(id, "weapon_knife");
         switch(get_user_team(id))
         {
             case 1: give_item(id, "weapon_glock18");
             case 2: give_item(id, "weapon_usp");
         }
         WczytajDane(id, class_player[id]);
     }
         
     if(!class_player[id])
     {
         WybierzKlase(id);
         return PLUGIN_CONTINUE;
     }
         
     switch(class_player[id])
     {
         case Sniper:
         {
             give_item(id, "weapon_awp");
             give_item(id, "weapon_scout");
             give_item(id, "weapon_deagle");
         }
         case Commando:
         {
             give_item(id, "weapon_deagle");
         }
         case Sharpshooter:
         {
             give_item(id, "weapon_m4a1");
             give_item(id, "weapon_ak47");
         }
         case Protector:
         {
             give_item(id, "weapon_m249");
             give_item(id, "weapon_hegrenade");
             give_item(id, "weapon_flashbang");                
             give_item(id, "weapon_smokegrenade");
         }
         case Medic:
         {
             give_item(id, "weapon_ump45");
             ilosc_apteczek_player[id] = 2;
         }    
         case FireSupport:
         {
             give_item(id, "weapon_mp5navy");
             ilosc_rakiet_player[id] = 2;
         }
         case Sapper:
         {
             give_item(id, "weapon_p90");
             ilosc_min_player[id] = 3;
         }
         case Demolitions:
         {
             give_item(id, "weapon_aug");
             give_item(id, "weapon_hegrenade");
             give_item(id, "weapon_flashbang");
             give_item(id, "weapon_smokegrenade");
             ilosc_dynamitow_player[id] = 1;
         }
         case Rusher:
         {
             give_item(id, "weapon_m3");
         }
         case Rambo:
         {
             give_item(id, "weapon_famas");
         }
     }
         
     if(gracz_resetuje[id])
     {
         ResetujPunkty(id);
         gracz_resetuje[id] = false;
     }
     
     if(punkty_player[id]>0)
         PrzydzielPunkty(id);
             
     if(information_item_player[id][0] == 10 || information_item_player[id][0] == 9)
         give_item(id, "weapon_hegrenade");
             
     if(information_item_player[id][0] == 9)
         ZmienUbranie(id, 0);
             
     if(information_item_player[id][0] == 1)
         set_user_footsteps(id, 1);
     else
         set_user_footsteps(id, 0);
         
     if(information_item_player[id][0] == 13)
         give_item(id, "weapon_awp");
         
     if(information_item_player[id][0] == 19)
         information_item_player[id][1] = 1;
     
     if(information_item_player[id][0] == 27)
         information_item_player[id][1] = 3;
             
     new weapons[32];
     new weaponsnum;
     get_user_weapons(id, weapons, weaponsnum);
     for(new i=0; i<weaponsnum; i++)
         if(is_user_alive(id))
             if(maxAmmo[weapons[i]] > 0)
                 cs_set_user_bpammo(id, weapons[i], maxAmmo[weapons[i]]);
         
     redukcja_obrazen_player[id] = (47.3057*(1.0-floatpower( 2.7182, -0.06798*float(wytrzymalosc_player[id])))/100);
     maksymalne_zdrowie_player[id] = zdrowie_klasy[class_player[id]]+zdrowie_player[id]*2;
     fast_player[id] = STANDARD_FAST*fast_klasy[class_player[id]]+floatround(kondycja_player[id]*1.3);
     
     if(information_item_player[id][0] == 18)
     {
         maksymalne_zdrowie_player[id] += 100;
         fast_player[id] -= 0.4;
     }
         
     if(information_item_player[id][0] == 25)
     {
         maksymalne_zdrowie_player[id] += 50;
         fast_player[id] -= 0.3;
     }
     
     set_user_armor(id, pancerz_klasy[class_player[id]]);
     set_user_health(id, maksymalne_zdrowie_player[id]);
     if(information_item_player[id][0] == 17)
         set_user_armor(id, 500);
         
     return PLUGIN_CONTINUE;
 }
  
 public PoczatekRundy()    
 {
     freezetime = false;
     for(new id=0;id<=32;id++)
     {
         if(!is_user_alive(id))
             continue;
         
         set_task(0.1, "SetFast", id+TASK_SET_FAST);
         
         switch(get_user_team(id))
         {
             case 1: client_cmd(id, "spk MW/start");
             case 2: client_cmd(id, "spk MW/start2");
         }
     }
 }
  
 public NowaRunda()
 {
     freezetime = true;
     new iEnt = find_ent_by_class(-1, "Mine");
     while(iEnt > 0) 
     {
         remove_entity(iEnt);
         iEnt = find_ent_by_class(iEnt, "Mine");    
     }
 }
  
 public TakeDamage(this, idinflictor, idattacker, Float:damage, damagebits)
 {
     if(!is_user_alive(this) || !is_user_connected(this) || information_item_player[this][0] == 24 || !is_user_connected(idattacker) || get_user_team(this) == get_user_team(idattacker) || !class_player[idattacker])
         return HAM_IGNORED;
         
     new health = get_user_health(this);
     new weapon = get_user_weapon(idattacker);
     
     if(health < 2)
         return HAM_IGNORED;
     
     if(information_item_player[this][0] == 27 && information_item_player[this][1]>0)
     {
         information_item_player[this][1]--;
         return HAM_SUPERCEDE;
     }
  
     if(wytrzymalosc_player[this]>0)
         damage -= redukcja_obrazen_player[this]*damage;
         
     if(information_item_player[this][0] == 2 || information_item_player[this][0] == 3)
         damage-=(float(information_item_player[this][1])<damage)? float(information_item_player[this][1]): damage;
             
     if(information_item_player[idattacker][0] == 5 && !UTIL_In_FOV(this, idattacker) && UTIL_In_FOV(idattacker, this))
         damage*=2.0;
         
     if(information_item_player[idattacker][0] == 10)
         damage+=information_item_player[idattacker][1];
         
     if(information_item_player[this][0] == 12)
         damage-=(5.0<damage)? 5.0: damage;
     
     if(weapon == CSW_AWP && information_item_player[idattacker][0] == 13)
         damage=float(health);
         
     if(information_item_player[idattacker][0] == 21)
         damage+=15;
         
     if(information_item_player[idattacker][0] == 22)
         damage+=25;
         
     if(idinflictor != idattacker && entity_get_int(idinflictor, EV_INT_movetype) != 5)
     {
         if((information_item_player[idattacker][0] == 9 && random_num(1, information_item_player[idattacker][1]) == 1) || information_item_player[idattacker][0] == 10)
             damage = float(health);    
     }
  
     if(weapon == CSW_KNIFE)
     {
         if(information_item_player[this][0] == 4)
             damage=damage*1.4+inteligencja_player[idattacker];
         if(information_item_player[idattacker][0] == 8 || (class_player[idattacker] == Sniper && random(2) == 2) || class_player[idattacker] == Commando && !(get_user_button(idattacker) & IN_ATTACK))
             damage = float(health);
     }
     
     if(information_item_player[this][0] == 26 && random_num(1, information_item_player[this][1]) == 1)
     {
         SetHamParamEntity(3, this);
         SetHamParamEntity(1, idattacker);
     }
         
         
     SetHamParamFloat(4, damage);
     return HAM_IGNORED;
 }
  
 public Damage(id)
 {
     new attacker = get_user_attacker(id);
     new damage = read_data(2);
     if(!is_user_alive(attacker) || !is_user_connected(attacker) || id == attacker || !class_player[attacker])
         return PLUGIN_CONTINUE;
         
     if(information_item_player[attacker][0] == 12 && random_num(1, information_item_player[id][1]) == 1)
         Display_Fade(id,1<<14,1<<14 ,1<<16,255,155,50,230);
     
     if(get_user_team(id) != get_user_team(attacker))
     {
         while(damage>20)
         {
             damage-=20;
             experience_player[attacker]++;
         }
     }
     SprawdzLevel(attacker);
     return PLUGIN_CONTINUE;
 }
  
 public Death()
 {
     new id = read_data(2);
     new attacker = read_data(1);
     
     if(!is_user_alive(attacker) || !is_user_connected(attacker))
         return PLUGIN_CONTINUE;
     
     new weapon = get_user_weapon(attacker);
     new zdrowie = get_user_health(attacker);
     
     if(get_user_team(id) != get_user_team(attacker) && class_player[attacker])
     {
         new nowe_experience = 0;
         
         nowe_experience += experience_for_murder;
         
         if(class_player[id] == Rambo && class_player[attacker] != Rambo)
             nowe_experience += experience_for_murder*2;
         
         if(level_player[id] > level_player[attacker])
             nowe_experience += level_player[id] - level_player[attacker];
         
         if(class_player[attacker] == Rambo || information_item_player[attacker][0] == 15 && maxClip[weapon] != -1)
         {
     
             new nowe_zdrowie = (zdrowie+20<maksymalne_zdrowie_player[attacker])? zdrowie+20: maksymalne_zdrowie_player[attacker];
             set_user_clip(attacker, maxClip[weapon]);
             set_user_health(attacker, nowe_zdrowie);
         }
 #if defined BOT
         if(is_user_bot2(attacker) && random(9) == 0)
             WyrzucPrzedmiot(id);
 #endif
         if(!information_item_player[attacker][0])
             DajPrzedmiot(attacker, random_num(1, sizeof names_objects-1));
     
         if(information_item_player[attacker][0] == 14)
         {
             new nowe_zdrowie = (zdrowie+50<maksymalne_zdrowie_player[attacker])? zdrowie+50: maksymalne_zdrowie_player[attacker];
             set_user_health(attacker, nowe_zdrowie);
         }
         
         set_hudmessage(255, 212, 0, 0.50, 0.33, 1, 6.0, 4.0);
         ShowSyncHudMsg(attacker, SyncHudObj2, "+%i", nowe_experience);
         
         experience_player[attacker] += nowe_experience;
     }
     
     SprawdzLevel(attacker);
     
     if(information_item_player[id][0] == 7 && random_num(1, information_item_player[id][1]) == 1)
         set_task(0.1, "Raise", id+TASK_RAISE);
     
     return PLUGIN_CONTINUE;
 }
  
 public client_connect(id)
 {
     //resetuje umiejetnosci
     class_player[id] = 0;
     level_player[id] = 0;
     experience_player[id] = 0;
     punkty_player[id] = 0;
     zdrowie_player[id] = 0;
     inteligencja_player[id] = 0;
     wytrzymalosc_player[id] = 0;
     kondycja_player[id] = 0;
     maksymalne_zdrowie_player[id] = 0;
     fast_player[id] = 0.0;
     
          get_user_authid(id, g_szAuthID[id], charsmax(g_szAuthID[] ));
     
     remove_task(id+TASK_SHOW_INFORMATION);
     remove_task(id+TASK_SHOW_ADVERTISEMENT);    
     remove_task(id+TASK_SET_FAST);
     remove_task(id+TASK_RAISE);
     remove_task(id+TASK_TRAINING_SANITARY);
     
     set_task(10.0, "ShowAdvertisement", id+TASK_SHOW_ADVERTISEMENT);
     set_task(3.0, "ShowInformation", id+TASK_SHOW_INFORMATION);
     
     //resetuje przedmioty
     UsunPrzedmiot(id);
 }
  
 public client_disconnect(id)
 {
     remove_task(id+TASK_SHOW_INFORMATION);
     remove_task(id+TASK_SHOW_ADVERTISEMENT);    
     remove_task(id+TASK_SET_FAST);
     remove_task(id+TASK_RAISE);
     remove_task(id+TASK_TRAINING_SANITARY);
         
     ZapiszDane(id);
     UsunPrzedmiot(id);
 }
     
 public RozbrajaBomb(id)
     if(class_player[id])
         disarming = id;
     
 public BombaPodlozona()
 {
     new Players[32], playerCount, id;
     get_players(Players, playerCount, "aeh", "TERRORIST");
     
     if(get_playersnum() > 1)
     {
         experience_player[podkladajacy] += experience_for_bomb;
         for (new i=0; i<playerCount; i++) 
         {
             id = Players[i];
             if(!class_player[id])
                 continue;
                 
             if(id != podkladajacy)
             {
                 experience_player[id] += experience_for_murder;
                 client_print(id, print_chat, "[COD:MW] Kaptal **%i** EXP-et a bomba lerakasaert.", experience_for_murder);
             }
             else
             {
                 client_print(id, print_chat, "[COD:MW] Kaptal **%i** EXP-et a bomba lerakasaert.", experience_for_bomb);
             }
             SprawdzLevel(id);
         }
     }
 }
  
 public BombaRozbrojona()
 {
     new Players[32], playerCount, id;
     get_players(Players, playerCount, "aeh", "CT");
     
     experience_player[disarming] += experience_for_bomb;
     for (new i=0; i<playerCount; i++) 
     {
         id = Players[i];
         if(!class_player[id])
             continue;
         if(id != disarming)
         {
             experience_player[id]+= experience_for_murder;
             client_print(id, print_chat, "[COD:MW] Kaptal **%i** EXP-et a bomba hatastalanitasaert.", experience_for_murder);
         }
         else
             client_print(id, print_chat, "[COD:MW] Kaptal **%i** EXP-et a bomba hatastalanitasaert.",experience_for_bomb);
         SprawdzLevel(id);
     }
 }
  
 public DescriptionKlasy(id)
 {
     new menu = menu_create("Valassz Osztalyt:", "DescriptionKlasy_Handle");
     for(new i=1; i<sizeof names_klas; i++)
         menu_additem(menu, names_klas[i]);
     menu_setprop(menu, MPROP_EXITNAME, "Kilepes");
     menu_setprop(menu, MPROP_BACKNAME, "Elozo Oldal");
     menu_setprop(menu, MPROP_NEXTNAME, "Kovetkezo Oldal");
     menu_display(id, menu);
     
     client_cmd(id, "spk MW/select");
 }
  
 public DescriptionKlasy_Handle(id, menu, item)
 {
     client_cmd(id, "spk MW/select");
     
     if(item == MENU_EXIT)
     {
         menu_destroy(menu);
         return PLUGIN_CONTINUE;
     }
     client_print(id, print_chat, "[COD:MW] %s: %s", names_klas[item+1], descriptions_klas[item+1]);
     menu_display(id, menu);
     
     return PLUGIN_CONTINUE;
 }
  
 public WybierzKlase(id)
 {
     new menu = menu_create("Valassz osztalyt:", "WybierzKlase_Handle");
     new class[50];
     for(new i=1; i<sizeof names_klas; i++)
     {
         WczytajDane(id, i);
         format(class, 49, "%s \ySzint: %i", names_klas[i], level_player[id]);
         menu_additem(menu, class);
     }
     
     WczytajDane(id, class_player[id]);
     
     menu_setprop(menu, MPROP_EXITNAME, "Kilepes");
     menu_setprop(menu, MPROP_BACKNAME, "Elozo oldal");
     menu_setprop(menu, MPROP_NEXTNAME, "Kovetkezo oldal");
     menu_display(id, menu);
         
     client_cmd(id, "spk MW/select");
 #if defined BOT
     if(is_user_bot2(id))
         WybierzKlase_Handle(id, menu, random(sizeof names_klas-1));
 #endif
 }
  
 public WybierzKlase_Handle(id, menu, item)
 {
     client_cmd(id, "spk MW/select");
     
     if(item == MENU_EXIT)
     {
         menu_destroy(menu);
         return PLUGIN_CONTINUE;
     }    
         
     item++;
     
     if(item == class_player[id])
         return PLUGIN_CONTINUE;
     
     if(class_player[id])
     {
         nowa_class_player[id] = item;
         client_print(id, print_chat, "[COD:MW] Az osztalyod a kovetkezo korben megvaltozik.");
     }
     else
     {
         class_player[id] = item;
         WczytajDane(id, class_player[id]);
         Odrodzenie(id);
     }
     return PLUGIN_CONTINUE;
 }
  
 public PrzydzielPunkty(id)
 {
     new inteligencja[65];
     new zdrowie[60];
     new wytrzymalosc[60];
     new kondycja[60];
     new tytul[25];
     format(inteligencja, 64, "Intelligencia: \r%i \y(Noveli a Targyak Sebzeset)", inteligencja_player[id]);
     format(zdrowie, 59, "Elet: \r%i \y(Noveli az Eleted)", zdrowie_player[id]);
     format(wytrzymalosc, 59, "Ugyesseg: \r%i \y(Csokkenti a Kapott Sebzest)", wytrzymalosc_player[id]);
     format(kondycja, 59, "Kondicio: \r%i \y(Noveli a Sebesseged)", kondycja_player[id]);
     format(tytul, 24, "Felhasznalhato Pontok(%i):", punkty_player[id]);
     new menu = menu_create(tytul, "PrzydzielPunkty_Handler");
     menu_additem(menu, inteligencja);
     menu_additem(menu, zdrowie);
     menu_additem(menu, wytrzymalosc);
     menu_additem(menu, kondycja);
     menu_display(id, menu);
 #if defined BOT
     if(is_user_bot2(id))
         PrzydzielPunkty_Handler(id, menu, random(4));
 #endif
 }
  
 public PrzydzielPunkty_Handler(id, menu, item)
 {
     client_cmd(id, "spk MW/select");
     
     if(item == MENU_EXIT)
     {
         menu_destroy(menu);
         return PLUGIN_CONTINUE;
     }
     
     switch(item) 
     { 
         case 0: 
         {    
             if(inteligencja_player[id]<100)
                 inteligencja_player[id]++;
             else 
                 client_print(id, print_chat, "[COD:MW] Maximum Intelligencia Szint");
             
         }
         case 1: 
         {    
             if(zdrowie_player[id]<100)
                 zdrowie_player[id]++;
             else 
                 client_print(id, print_chat, "[COD:MW] Maximum Ero Szint");
         }
         case 2: 
         {    
             if(wytrzymalosc_player[id]<100)
                 wytrzymalosc_player[id]++;
             else 
                 client_print(id, print_chat, "[COD:MW] Maximum Ugyesseg Szint");
             
         }
         case 3: 
         {    
             if(kondycja_player[id]<100)
                 kondycja_player[id]++;
             else 
                 client_print(id, print_chat, "[COD:MW] Maximum Kondicio Szint");
         }
     }
     
     punkty_player[id]--;
     
     if(punkty_player[id]>0)
         PrzydzielPunkty(id);
         
     return PLUGIN_CONTINUE;
 }
  
 public ResetujPunkty(id)
 {    
     punkty_player[id] = level_player[id]*2-2;
     inteligencja_player[id] = 0;
     zdrowie_player[id] = 0;
     kondycja_player[id] = 0;
     wytrzymalosc_player[id] = 0;
 }
  
 public KomendaResetujPunkty(id)
 {    
     client_print(id, print_chat, "[COD:MW] Kepessegek nullazva lesznek kovi korben.");
     client_cmd(id, "spk MW/select");
     gracz_resetuje[id] = true;
 }
  
 public TrainingSanitary(id)
 {
     id -= TASK_TRAINING_SANITARY;
     if(information_item_player[id][0] != 16)
         return PLUGIN_CONTINUE;
     set_task(3.0, "TrainingSanitary", id+TASK_TRAINING_SANITARY);
     if(!is_user_alive(id))
         return PLUGIN_CONTINUE;
     new health = get_user_health(id);
     new new_health = (health+10<maksymalne_zdrowie_player[id])?health+10:maksymalne_zdrowie_player[id];
     set_user_health(id, new_health);
     return PLUGIN_CONTINUE;
 }
  
 public StworzApteczke(id)
 {
     if (!ilosc_apteczek_player[id])
     {
         client_print(id, print_center, "Koronkent csak 2 csomagot kapsz!");
         return PLUGIN_CONTINUE;
     }
     
     if(inteligencja_player[id] < 1)
         client_print(id, print_center, "Ha erosebb hatasu Elsosegely Csomagot szeretnel, noveld az Intelligenciad!");
         
     ilosc_apteczek_player[id]--;
     
     new Float:origin[3];
     entity_get_vector(id, EV_VEC_origin, origin);
     
     new ent = create_entity("info_target");
     entity_set_string(ent, EV_SZ_classname, "FirstAidKit");
     entity_set_edict(ent, EV_ENT_owner, id);
     entity_set_int(ent, EV_INT_solid, SOLID_NOT);
     entity_set_vector(ent, EV_VEC_origin, origin);
     entity_set_float(ent, EV_FL_ltime, halflife_time() + 7 + 0.1);
     
     
     entity_set_model(ent, "models/w_medkit.mdl");
     set_rendering ( ent, kRenderFxGlowShell, 255,0,0, kRenderFxNone, 255 )     ;
     drop_to_floor(ent);
     
     entity_set_float(ent, EV_FL_nextthink, halflife_time() + 0.1);
     
     return PLUGIN_CONTINUE;
 }
  
 public FirstAirKitThink(ent)
 {
     new id = entity_get_edict(ent, EV_ENT_owner);
     new totem_dist = 300;
     new totem_heal = 5+floatround(inteligencja_player[id]*0.5);
     if (entity_get_edict(ent, EV_ENT_euser2) == 1)
     {        
         new Float:forigin[3], origin[3];
         entity_get_vector(ent, EV_VEC_origin, forigin);
         FVecIVec(forigin,origin);
         
         new entlist[33];
         new numfound = find_sphere_class(0,"player",totem_dist+0.0,entlist, 32,forigin);
         
         for (new i=0; i < numfound; i++)
         {        
             new pid = entlist[i];
             
             if (get_user_team(pid) != get_user_team(id))
                 continue;
                                 
             new zdrowie = get_user_health(pid);
             new nowe_zdrowie = (zdrowie+totem_heal<maksymalne_zdrowie_player[pid])?zdrowie+totem_heal:maksymalne_zdrowie_player[pid];
             if (is_user_alive(pid)) set_user_health(pid, nowe_zdrowie);        
         }
         
         entity_set_edict(ent, EV_ENT_euser2, 0);
         entity_set_float(ent, EV_FL_nextthink, halflife_time() + 1.5);
         
         return PLUGIN_CONTINUE;
     }
     
     if (entity_get_float(ent, EV_FL_ltime) < halflife_time() || !is_user_alive(id))
     {
         remove_entity(ent);
         return PLUGIN_CONTINUE;
     }
     
     if (entity_get_float(ent, EV_FL_ltime)-2.0 < halflife_time())
         set_rendering ( ent, kRenderFxNone, 255,255,255, kRenderTransAlpha, 100 ) ;
         
     new Float:forigin[3], origin[3];
     entity_get_vector(ent, EV_VEC_origin, forigin);
     FVecIVec(forigin,origin);
                     
     //Find people near and give them health
     message_begin( MSG_BROADCAST, SVC_TEMPENTITY, origin );
     write_byte( TE_BEAMCYLINDER );
     write_coord( origin[0] );
     write_coord( origin[1] );
     write_coord( origin[2] );
     write_coord( origin[0] );
     write_coord( origin[1] + totem_dist );
     write_coord( origin[2] + totem_dist );
     write_short( sprite_white );
     write_byte( 0 ); // startframe
     write_byte( 0 ); // framerate
     write_byte( 10 ); // life
     write_byte( 10 ); // width
     write_byte( 255 ); // noise
     write_byte( 255 ); // r, g, b
     write_byte( 100 );// r, g, b
     write_byte( 100 ); // r, g, b
     write_byte( 128 ); // brightness
     write_byte( 5 ); // speed
     message_end();
         
     entity_set_edict(ent, EV_ENT_euser2 ,1);
     entity_set_float(ent, EV_FL_nextthink, halflife_time() + 0.5);
     
         
     return PLUGIN_CONTINUE;
  
 }
  
 public StworzRakiete(id)
 {
     if (!ilosc_rakiet_player[id])
     {
         client_print(id, print_center, "Elhasznaltad az osszes raketad!");
         return PLUGIN_CONTINUE;
     }
     
     if(poprzednia_rakieta_player[id] + 2.0 > get_gametime())
     {
         client_print(id, print_center, "Csak 2 masodpercenkent tudod hasznalni a raketakat!");
         return PLUGIN_CONTINUE;
     }
     
     if (is_user_alive(id))
     {    
         if(inteligencja_player[id] < 1)
             client_print(id, print_center, "Erosebb hatasu raketakert, fejleszd az Intelligenciad!");
             
         poprzednia_rakieta_player[id] = get_gametime();
         ilosc_rakiet_player[id]--;
  
         new Float: Origin[3], Float: vAngle[3], Float: Velocity[3];
         
         entity_get_vector(id, EV_VEC_v_angle, vAngle);
         entity_get_vector(id, EV_VEC_origin , Origin);
     
         new Ent = create_entity("info_target");
     
         entity_set_string(Ent, EV_SZ_classname, "Rocket");
         entity_set_model(Ent, "models/rpgrocket.mdl");
     
         vAngle[0] *= -1.0;
     
         entity_set_origin(Ent, Origin);
         entity_set_vector(Ent, EV_VEC_angles, vAngle);
     
         entity_set_int(Ent, EV_INT_effects, 2);
         entity_set_int(Ent, EV_INT_solid, SOLID_BBOX);
         entity_set_int(Ent, EV_INT_movetype, MOVETYPE_FLY);
         entity_set_edict(Ent, EV_ENT_owner, id);
     
         VelocityByAim(id, 1000 , Velocity);
         entity_set_vector(Ent, EV_VEC_velocity ,Velocity);
     }    
     return PLUGIN_CONTINUE;
 }
  
 public PolozDynamit(id)
 {
     if(!ilosc_dynamitow_player[id])
     {
         client_print(id, print_center, "Elhasznaltad a dynamitodat!");
         return PLUGIN_CONTINUE;
     }
     
     if(inteligencja_player[id] < 1)
         client_print(id, print_center, "Erosebb hatasu dinamitert, fejleszd az Intelligenciad!");
     
     ilosc_dynamitow_player[id]--;
     new Float:fOrigin[3], iOrigin[3];
     entity_get_vector( id, EV_VEC_origin, fOrigin);
     iOrigin[0] = floatround(fOrigin[0]);
     iOrigin[1] = floatround(fOrigin[1]);
     iOrigin[2] = floatround(fOrigin[2]);
  
     message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
     write_byte(TE_EXPLOSION);
     write_coord(iOrigin[0]);
     write_coord(iOrigin[1]);
     write_coord(iOrigin[2]);
     write_short(sprite_blast);
     write_byte(32);
     write_byte(20);
     write_byte(0);
     message_end();
     
     message_begin( MSG_BROADCAST, SVC_TEMPENTITY, iOrigin );
     write_byte( TE_BEAMCYLINDER );
     write_coord( iOrigin[0] );
     write_coord( iOrigin[1] );
     write_coord( iOrigin[2] );
     write_coord( iOrigin[0] );
     write_coord( iOrigin[1] + 300 );
     write_coord( iOrigin[2] + 300 );
     write_short( sprite_white );
     write_byte( 0 ); // startframe
     write_byte( 0 ); // framerate
     write_byte( 10 ); // life
     write_byte( 10 ); // width
     write_byte( 255 ); // noise
     write_byte( 255 ); // r, g, b
     write_byte( 100 );// r, g, b
     write_byte( 100 ); // r, g, b
     write_byte( 128 ); // brightness
     write_byte( 8 ); // speed
     message_end();
  
     new entlist[33];
     new numfound = find_sphere_class(id, "player", 300.0 , entlist, 32);
     
     for (new i=0; i < numfound; i++)
     {        
         new pid = entlist[i];
         
         if (!is_user_alive(pid) || get_user_team(id) == get_user_team(pid) || information_item_player[pid][0] == 24)
             continue;
         ExecuteHam(Ham_TakeDamage, pid, 0, id, 90.0+float(inteligencja_player[id]) , 1);
     }
     return PLUGIN_CONTINUE;
 }
  
 public PostawMine(id)
 {
     if (!ilosc_min_player[id])
     {
         client_print(id, print_center, "Elhasznaltad az osszes aknad!");
         return PLUGIN_CONTINUE;
     }
     
     if(inteligencja_player[id] < 1)
         client_print(id, print_center, "Erosebb hatasu aknakert, fejleszd az Intelligenciad!");
     
     ilosc_min_player[id]--;
     
     new Float:origin[3];
     entity_get_vector(id, EV_VEC_origin, origin);
         
     new ent = create_entity("info_target");
     entity_set_string(ent ,EV_SZ_classname, "Mine");
     entity_set_edict(ent ,EV_ENT_owner, id);
     entity_set_int(ent, EV_INT_movetype, MOVETYPE_TOSS);
     entity_set_origin(ent, origin);
     entity_set_int(ent, EV_INT_solid, SOLID_BBOX);
     
     entity_set_model(ent, "models/mine.mdl");
     entity_set_size(ent,Float:{-16.0,-16.0,0.0},Float:{16.0,16.0,2.0});
     
     drop_to_floor(ent);
  
     entity_set_float(ent,EV_FL_nextthink,halflife_time() + 0.01) ;
     
     set_rendering(ent,kRenderFxNone, 0,0,0, kRenderTransTexture,20)    ;
     
     
     return PLUGIN_CONTINUE;
 }
  
 public DotykMiny(ent, id)
 {
     new attacker = entity_get_edict(ent, EV_ENT_owner);
     if (get_user_team(attacker) != get_user_team(id))
     {
         new Float:fOrigin[3], iOrigin[3];
         entity_get_vector( ent, EV_VEC_origin, fOrigin);
         iOrigin[0] = floatround(fOrigin[0]);
         iOrigin[1] = floatround(fOrigin[1]);
         iOrigin[2] = floatround(fOrigin[2]);
         
         message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
         write_byte(TE_EXPLOSION);
         write_coord(iOrigin[0]);
         write_coord(iOrigin[1]);
         write_coord(iOrigin[2]);
         write_short(sprite_blast);
         write_byte(32); // scale
         write_byte(20); // framerate
         write_byte(0);// flags
         message_end();
         new entlist[33];
         new numfound = find_sphere_class(ent,"player", 90.0 ,entlist, 32);
         
         for (new i=0; i < numfound; i++)
         {        
             new pid = entlist[i];
             
             if (!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid) || information_item_player[pid][0] == 24 || class_player[id] == Protector)
                 continue;
                 
             ExecuteHam(Ham_TakeDamage, pid, ent, attacker, 90.0+float(inteligencja_player[attacker]) , 1);
         }
         remove_entity(ent);
     }
 }
  
 public DotykRakiety(ent)
 {
     if ( !is_valid_ent(ent))
         return;
  
     new attacker = entity_get_edict(ent, EV_ENT_owner);
  
     new Float:fOrigin[3], iOrigin[3];
     entity_get_vector( ent, EV_VEC_origin, fOrigin);    
     iOrigin[0] = floatround(fOrigin[0]);
     iOrigin[1] = floatround(fOrigin[1]);
     iOrigin[2] = floatround(fOrigin[2]);
  
     message_begin(MSG_BROADCAST,SVC_TEMPENTITY, iOrigin);
     write_byte(TE_EXPLOSION);
     write_coord(iOrigin[0]);
     write_coord(iOrigin[1]);
     write_coord(iOrigin[2]);
     write_short(sprite_blast);
     write_byte(32); // scale
     write_byte(20); // framerate
     write_byte(0);// flags
     message_end();
  
     new entlist[33];
     new numfound = find_sphere_class(ent, "player", 230.0, entlist, 32);
     
     for (new i=0; i < numfound; i++)
     {        
         new pid = entlist[i];
         
         if (!is_user_alive(pid) || get_user_team(attacker) == get_user_team(pid) || information_item_player[pid][0] == 24)
             continue;
         ExecuteHam(Ham_TakeDamage, pid, ent, attacker, 55.0+float(inteligencja_player[attacker]) , 1);
     }
     remove_entity(ent);
 }    
  
 public CurWeapon(id)
 {
     if(freezetime || !class_player[id])
         return PLUGIN_CONTINUE;
         
     new weapon = read_data(2);
  
     SetFast(id);
     
     if(weapon == CSW_C4)
         podkladajacy = id;
     return PLUGIN_CONTINUE;
 }
  
 public EmitSound(id, iChannel, szSound[], Float:fVol, Float:fAttn, iFlags, iPitch ) 
 {
     if(equal(szSound, "common/wpn_denyselect.wav"))
     {
         UzyjItem(id);
         return FMRES_SUPERCEDE;
     }
     
     return FMRES_IGNORED;
 }
  
 public UzyjItem(id)
 {
     if(information_item_player[id][0] == 19 && information_item_player[id][1]>0) 
     {
         set_user_health(id, maksymalne_zdrowie_player[id]);
         information_item_player[id][1]--;
     }
     
     if(ilosc_apteczek_player[id]>0)
         StworzApteczke(id);
     if(ilosc_rakiet_player[id]>0)
         StworzRakiete(id);
     if(ilosc_min_player[id]>0)
         PostawMine(id);
     if(ilosc_dynamitow_player[id]>0)
         PolozDynamit(id);
         
     return PLUGIN_HANDLED;
 }
  
 public ZapiszDane(id)
 {
     new vaultkey[64],vaultdata[256];
     format(vaultkey,63,"%s-%i-cod", g_szAuthID[id], class_player[id]);
     format(vaultdata,255,"%i#%i#%i#%i#%i#%i", experience_player[id], level_player[id], inteligencja_player[id], zdrowie_player[id], wytrzymalosc_player[id], kondycja_player[id]);
     nvault_set(g_vault,vaultkey,vaultdata);
 }
  
 public WczytajDane(id, class)
 {
     new vaultkey[64],vaultdata[256];
     format(vaultkey,63,"%s-%i-cod", g_szAuthID[id], class);
     format(vaultdata,255,"%i#%i#%i#%i#%i#%i", experience_player[id], level_player[id], inteligencja_player[id], zdrowie_player[id], wytrzymalosc_player[id], kondycja_player[id]);
     nvault_get(g_vault,vaultkey,vaultdata,255);
  
     replace_all(vaultdata, 255, "#", " ");
  
     new experienceplayer[32], levelplayer[32], inteligencjaplayer[32], silaplayer[32], zrecznoscplayer[32], zwinnoscplayer[32];
  
     parse(vaultdata, experienceplayer, 31, levelplayer, 31, inteligencjaplayer, 31, silaplayer, 31, zrecznoscplayer, 31, zwinnoscplayer, 31);
  
     experience_player[id] = str_to_num(experienceplayer);
     level_player[id] = str_to_num(levelplayer)>0?str_to_num(levelplayer):1;
     inteligencja_player[id] = str_to_num(inteligencjaplayer);
     zdrowie_player[id] = str_to_num(silaplayer);
     wytrzymalosc_player[id] = str_to_num(zrecznoscplayer);
     kondycja_player[id] = str_to_num(zwinnoscplayer);
     punkty_player[id] = (level_player[id]-1)*2-inteligencja_player[id]-zdrowie_player[id]-wytrzymalosc_player[id]-kondycja_player[id];
 } 
  
 public WyrzucPrzedmiot(id)
 {
     if(information_item_player[id][0])
     {
         client_print(id, print_chat, "[COD:MW] Eldobva: %s.", names_objects[information_item_player[id][0]]);
         UsunPrzedmiot(id);
     }
     else
         client_print(id, print_chat, "[COD:MW] Nincs targyad amit eldobhatnal.", names_objects[information_item_player[id][0]]);
 }
  
 public UsunPrzedmiot(id)
 {
     information_item_player[id][0] = 0;
     information_item_player[id][1] = 0;
     if(is_user_alive(id))
         set_user_footsteps(id, 0);
     set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 255);
     ZmienUbranie(id, 1);
 }
  
 public DajPrzedmiot(id, przedmiot)
 {
     UsunPrzedmiot(id);
     information_item_player[id][0] = przedmiot;
     client_print(id, print_chat, "[COD:MW] Kaptal: %s.", names_objects[information_item_player[id][0]]);    
     
     switch(przedmiot)
     {
         case 1:
         {
             set_user_footsteps(id, 1);
         }
         case 2:
         {
             information_item_player[id][1] = random_num(3,6);
         }
         case 3:
         {
             information_item_player[id][1] = random_num(6, 11);
         }
         case 5:
         {
             information_item_player[id][1] = random_num(6, 9);
         }
         case 6:
         {
             information_item_player[id][1] = random_num(100, 150);
             set_rendering(id,kRenderFxGlowShell,0,0,0 ,kRenderTransAlpha, 40);
         }
         case 7:
         {
             information_item_player[id][1] = random_num(2, 4);
         }
         case 8:
         {
             if(class_player[id] == Commando)
                 DajPrzedmiot(id, random_num(1, sizeof names_objects-1));
         }
         case 9:
         {
             information_item_player[id][1] = random_num(1, 3);
             ZmienUbranie(id, 0);
             give_item(id, "weapon_hegrenade");
         }
         case 10:
         {
             information_item_player[id][1] = random_num(4, 98);
             give_item(id, "weapon_hegrenade");
         }
         case 12:
         {
             information_item_player[id][1] = random_num(1, 99);
         }
         case 13:
         {
             give_item(id, "weapon_awp");
         }
         case 15:
         {
             if(class_player[id] == Rambo)
                 DajPrzedmiot(id, random_num(1, sizeof names_objects-1));
         }
         case 16:
         {
             set_task(5.0, "TrainingSanitary", id+TASK_TRAINING_SANITARY);
         }
         case 19:
         {
             information_item_player[id][1] = 1;
         }
         case 26:
         {
             information_item_player[id][1] = random_num(3, 6);
         }
         case 27:
         {
             information_item_player[id][1] = 3;
         }
     }
 }
     
 public DescriptionItem(id)
 {
     new description_item[128];
     new losowa_wartosc[3];
     num_to_str(information_item_player[id][1], losowa_wartosc, 2);
     format(description_item, 127, descriptions_objects[information_item_player[id][0]]);
     replace_all(description_item, 127, "LW", losowa_wartosc);
     
     client_print(id, print_chat, "Targy: %s.", names_objects[information_item_player[id][0]]);
     client_print(id, print_chat, "Leiras: %s.", description_item);
 }
  
 public Raise(id)
 {
     id-=TASK_RAISE;
     ExecuteHamB(Ham_CS_RoundRespawn, id);
 }
  
 public SprawdzLevel(id)
 {    
     if(level_player[id] < 201)
     {
         while(experience_player[id] >= experience_level[level_player[id]])
         {
             level_player[id]++;
             set_hudmessage(60, 200, 25, -1.0, 0.25, 0, 1.0, 2.0, 0.1, 0.2, 2);
             ShowSyncHudMsg(id, SyncHudObj3, "ELOLEPTETES!");
             client_cmd(id, "spk MW/levelup");
         }
     
         punkty_player[id] = (level_player[id]-1)*2-inteligencja_player[id]-zdrowie_player[id]-wytrzymalosc_player[id]-kondycja_player[id];
     }
     ZapiszDane(id);
 }
  
 public ShowInformation(id) 
 {
     id -= TASK_SHOW_INFORMATION;
     
     set_task(0.1, "ShowInformation", id+TASK_SHOW_INFORMATION);
         
     if(!is_user_alive(id))
     {
         new target = entity_get_int(id, EV_INT_iuser2);
         
         if(target == 0)
             return PLUGIN_CONTINUE;
             
         set_hudmessage(255, 255, 255, 0.6, -1.0, 0, 0.0, 0.3, 0.0, 0.0, 2);
         ShowSyncHudMsg(id, SyncHudObj, "[Osztaly : %s]^n[Xp : %i / %i]^n[Szint : %i]^n[Targy : %s]", names_klas[class_player[target]], experience_player[target], experience_level[level_player[target]], level_player[target], names_objects[information_item_player[target][0]]);
         
         return PLUGIN_CONTINUE;
     }
     set_hudmessage(0, 241, 230, 0.02, 0.23, 0, 0.0, 0.3, 0.0, 0.0);
     ShowSyncHudMsg(id, SyncHudObj, "[Osztaly : %s]^n[Xp : %i / %i]^n[Szint : %i]^n[Targy : %s]", names_klas[class_player[id]], experience_player[id], experience_level[level_player[id]], level_player[id], names_objects[information_item_player[id][0]]);
     return PLUGIN_CONTINUE;
 }  
  
 public ShowAdvertisement(id)
 {
     id-=TASK_SHOW_ADVERTISEMENT;
     client_print(id, print_chat, "[COD:MW] Udvozollek a DubstepCity MW3 szerveren!");
 }
  
 public SetFast(id)
 {
     id -= id>32? TASK_SET_FAST: 0;
     
     if(class_player[id])
         set_user_maxspeed(id, fast_player[id]);
 }
     
 public ZmienUbranie(id,reset)
 {
     if (id<1 || id>32 || !is_user_connected(id)) 
         return PLUGIN_CONTINUE;
     
     if (reset)
         cs_reset_user_model(id);
     else
     {
         new num = random_num(0,3);
         switch(get_user_team(id))
         {
             case 1: cs_set_user_model(id, Clothing_CT[num]);
             case 2:cs_set_user_model(id, Clothing_Terro[num]);
         }
     }
     
     return PLUGIN_CONTINUE;
 }
  
 public Pomoc()
 {
     switch(random(3))
     {
         case 0: client_print(0, print_chat, "[COD:MW] Ird be chatbe /help a segitsegert");
         case 1: client_print(0, print_chat, "[COD:MW] Ha VIP tulajdonsagokat akarod megnezni ird be /vip");
         case 2: client_print(0, print_chat, "[COD:MW] A VIP tobb Xp-t kap killenkent es ajandek +50 szintet!");
     }
     set_task(60.0, "Pomoc");
 }
  
 public cmd_setlvl(id, level, cid)
 {
     if(!cmd_access(id,level,cid,3))
         return PLUGIN_HANDLED;
     new arg1[33];
     new arg2[6];
     read_argv(1, arg1, 32);
     read_argv(2, arg2, 5);
     new player = cmd_target(id, arg1);
     new value = str_to_num(arg2)-1;
     
     experience_player[player] = experience_level[value];
     level_player[player] = 0;
     SprawdzLevel(player);
     return PLUGIN_HANDLED;
 }
  
 public CommandBlock()
     return PLUGIN_HANDLED;
     
 stock bool:UTIL_In_FOV(id,target)
 {
     if (Find_Angle(id,target,9999.9) > 0.0)
         return true;
     
     return false;
 }
 #if defined BOT
 public is_user_bot2(id)
 {
     new ping, loss
     get_user_ping(id, ping, loss)
     if(ping > 0 && loss > 0)
         return false
     return true
 }
 #endif
  
 stock Float:Find_Angle(Core,Target,Float:dist)
 {
     new Float:vec2LOS[2];
     new Float:flDot;
     new Float:CoreOrigin[3];
     new Float:TargetOrigin[3];
     new Float:CoreAngles[3];
     
     pev(Core,pev_origin,CoreOrigin);
     pev(Target,pev_origin,TargetOrigin);
     
     if (get_distance_f(CoreOrigin,TargetOrigin) > dist)
         return 0.0;
     
     pev(Core,pev_angles, CoreAngles);
     
     for ( new i = 0; i < 2; i++ )
         vec2LOS[i] = TargetOrigin[i] - CoreOrigin[i];
     
     new Float:veclength = Vec2DLength(vec2LOS);
     
     //Normalize V2LOS
     if (veclength <= 0.0)
     {
         vec2LOS[0] = 0.0;
         vec2LOS[1] = 0.0;
     }
     else
     {
         new Float:flLen = 1.0 / veclength;
         vec2LOS[0] = vec2LOS[0]*flLen;
         vec2LOS[1] = vec2LOS[1]*flLen;
     }
     
     //Do a makevector to make v_forward right
     engfunc(EngFunc_MakeVectors,CoreAngles);
     
     new Float:v_forward[3];
     new Float:v_forward2D[2];
     get_global_vector(GL_v_forward, v_forward);
     
     v_forward2D[0] = v_forward[0];
     v_forward2D[1] = v_forward[1];
     
     flDot = vec2LOS[0]*v_forward2D[0]+vec2LOS[1]*v_forward2D[1];
     
     if ( flDot > 0.5 )
     {
         return flDot;
     }
     
     return 0.0;
 }
  
 stock Float:Vec2DLength( Float:Vec[2] )  
 { 
     return floatsqroot(Vec[0]*Vec[0] + Vec[1]*Vec[1] );
 }
  
 stock Display_Fade(id,duration,holdtime,fadetype,red,green,blue,alpha)
 {
     message_begin( MSG_ONE, g_msg_screenfade,{0,0,0},id );
     write_short( duration );    // Duration of fadeout
     write_short( holdtime );    // Hold time of color
     write_short( fadetype );    // Fade type
     write_byte ( red );        // Red
     write_byte ( green );        // Green
     write_byte ( blue );        // Blue
     write_byte ( alpha );    // Alpha
     message_end();
 }
  
 stock set_user_clip(id, ammo)
 {
     new weaponname[32], weaponid = -1, weapon = get_user_weapon(id, _, _);
     get_weaponname(weapon, weaponname, 31);
     while ((weaponid = find_ent_by_class(weaponid, weaponname)) != 0)
         if(entity_get_edict(weaponid, EV_ENT_owner) == id) 
         {
             set_pdata_int(weaponid, 51, ammo, 4);
             return weaponid;
         }
     return 0;
 }
 public userhelp(id)
 {
     //create info/help.txt in your mod folder and put your info there as you add in motd  
     show_motd(id, "help.txt", "Help Motd")
 }
  
 |