Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <amxmodx>
- #include <amxmisc>
- #include <hamsandwich>
- #include <fakemeta>
- #include <fun>
- #include <cstrike>
- #include <engine>
- #include <nvault>
- #include <fvault>
- #include <xs>
- #include <colorchat>
- #include <screenfade_util>
- #include <fakemeta_util>
- #include <dhudmessage>
- native cod_broj_munja( id );
- #include <codmw>
- #define FALL_VELOCITY 350.0
- #define STANDARDNA_BRZINA 320.0
- #define ZADATAK_PROVERA 704
- #define ZADATAK_POSTAVI_BRZINU 832
- #define MAX_HP 2500.0
- #define DMG_BULLET (1<<1)
- #define TEAM_SELECT_VGUI_MENU_ID 2
- #define IsEntityPlayer(%1) ( 1 <= %1 <= g_iMaxPlayers )
- #define IsKilledTeamMate(%1,%2) ( get_user_team( %1 ) == get_user_team( %2 ) )
- #define IsSuicide(%1,%2) ( %1 == %2 )
- #define IsClientPresent(%1) ( is_user_alive( %1 ) && is_user_connected( %1 ) )
- #define SetBitNum(%1,%2) %1 |= 1<<(%2 & 31)
- #define DelBitNum(%1,%2) %1 &= ~( 1<<(%2 & 31) )
- #define GetBitNum(%1,%2) ( %1 & 1<<(%2 & 31) )
- new const g_szFile[] = "addons/amxmodx/configs/CODMW/classes.ini";
- new Trie: tCharacters, Trie: tPassword;
- new points_igraca[33];
- new g_vault;
- const g_iBadWeapons = ((1 << 2) | (1 << CSW_HEGRENADE) | (1 << CSW_SMOKEGRENADE) | (1 << CSW_FLASHBANG) | (1 << CSW_KNIFE) | (1 << CSW_C4));
- const m_iTeam = 114;
- const m_pPlayer = 41;
- const m_fInReload = 54;
- const m_flNextAttack = 83;
- const PDATA_SAFE = 2;
- const OFFSET_LINUX = 5;
- const OFFSET_LINUX_WEAPONS = 4;
- const OFFSET_WEAPONOWNER = 41;
- // Player Informations
- enum _:PlayerData {
- g_szSteamID[32],
- g_szName[32],
- g_szIP[21],
- g_szUserPrivilegies[64],
- g_iClass,
- g_iLevel,
- g_iXP,
- g_iNewClass,
- g_iFraction,
- g_iGold,
- g_iPoints,
- g_iSP,
- g_iIntelligence,
- g_iEnergy,
- g_iTrim,
- g_iStamina,
- g_iDamage,
- g_iMedKit,
- g_iPoisonKit,
- g_iBomb,
- g_iRocket,
- g_iMine,
- g_iDynamite,
- g_iMaxEnergy,
- g_iClassData,
- g_iJumps,
- g_iPlayer,
- g_iChoosen,
- g_iAddNumber,
- g_IsFriend
- };
- new g_PlayerInfo[33][PlayerData], c[33] = 0;
- new Float: g_fLessDamage[33], Float: g_fLastUsed[33], Float: g_fSpeed[33];
- // Hud Data
- enum HudData {
- HudData_LevelUP,
- HudData_Info,
- HudData_Item,
- HudData_BonusBox,
- HudData_ItemInfo,
- HudData_Damage,
- HudData_XP
- };
- new g_HudInfo[HudData];
- // Vault Data
- new gVault;
- // Cvar Data
- enum CvarData {
- CvarData_DayXP,
- CvarData_NightXP,
- CvarData_HeadShotXP,
- CvarData_KillGold,
- CvarData_KillGoldHs,
- CvarData_KillSp,
- CvarData_KillSpHs,
- CvarData_MaksimalnaInte,
- CvarData_MaksimalnaEnergija,
- CvarData_MaksimalnaSnaga,
- CvarData_MaksimalnaKondicija,
- CvarData_MaksimalnoOstecenje
- };
- new const g_szCvarsData[CvarData][][] = {
- // Cvar Name Value
- { "cod_dayxp", "70" },
- { "cod_nightxp", "140" },
- { "cod_hsxp", "25" },
- { "cod_killgold", "1" },
- { "cod_killgold_hs", "1" },
- { "cod_killsp", "1" },
- { "cod_killsp_hs", "1" },
- { "cod_max_inteligencija", "1000" },
- { "cod_max_energija", "1200" },
- { "cod_max_snaga", "600" },
- { "cod_max_kondicija", "600" },
- { "cod_max_ostecenje", "600" }
- };
- new g_CvarInfo[CvarData];
- new Float: g_fWallOrigin[33][3];
- new const g_iAddPointsNumber[] = { 1, 2, 5, 10, 25, 50 };
- // Default Player Models
- new ModelsCT[ 4 ][ ] = { "sas","gsg9","urban","gign" },
- ModelsTT[ 4 ][ ] = { "arctic","leet","guerilla","terror" };
- // Perks Data
- new const g_szPerksData[][][] = {
- // Perk Name Description
- { "ML_NEMA", "ML_NEMAS_PREDMET" }, // 0
- { "PERK_NECUJNE_CIZME", "PERKO_NECUJNE_CIZME" }, // 1
- { "PERK_DUPLI_PANCIR", "PERKO_DUPLI_PANCIR" }, // 2
- { "PERK_OJACANI_PANCIR", "PERKO_OJACANI_PANCIR" }, // 3
- { "PERK_VETERAN_ZA_NOZEM", "PERKO_VETERAN_ZA_NOZEM" }, // 4
- { "PERK_IZNENADI_NEPRIJATELJE", "PERKO_IZNENADI_NEPRIJATELJE" }, // 5
- { "PERK_NEVIDLJIVOST", "PERKO_NEVIDLJIVOST" }, // 6
- { "PERK_RESPAWN", "PERKO_RESPAWN" }, // 7
- { "PERK_NOZ_MARINCA", "PERKO_NOZ_MARINCA" }, // 8
- { "PERK_TROSKOK", "PERKO_TROSKOK" }, // 9
- { "PERK_HE_EXPERT", "PERKO_HE_EXPERT" }, // 10
- { "PERK_DUPLI_SKOK", "PERKO_DUPLI_SKOK" }, // 11
- { "PERK_VOJNA_TAJNA", "PERKO_VOJNA_TAJNA" }, // 12
- { "PERK_AWP_MASTER", "PERKO_AWP_MASTER" }, // 13
- { "PERK_ADRENALIN", "PERKO_ADRENALIN" }, // 14
- { "PERK_RAMBOVA_TAJNA", "PERKO_RAMBOVA_TAJNA" }, // 15
- { "PERK_DEAGLE_MANIJAK", "PERKO_DEAGLE_MANIJAK" }, // 16
- { "PERK_SUPER_PANCIR", "PERKO_SUPER_PANCIR" }, // 17
- { "PERK_EXTRA_HP", "PERKO_EXTRA_HP" }, // 18
- { "PERK_KOMPLET_ZA_PRVU_POMOC", "PERKO_KOMPLET_ZA_PRVU_POMOC" }, // 19
- { "PERK_NO_RECOIL", "PERKO_NO_RECOIL" }, // 20
- { "PERK_TITANIJUMSKI_METCI", "PERKO_TITANIJUMSKI_METCI" }, // 21
- { "PERK_PUKOVNIKOVI_METCI", "PERKO_PUKOVNIKOVI_METCI" }, // 22
- { "PERK_OGRANICEN_NO_RECOIL", "PERKO_OGRANICEN_NO_RECOIL" }, // 23
- { "PERK_SWAT_STIT", "PERKO_SWAT_STIT" }, // 24
- { "PERK_50HP", "PERKO_50HP" }, // 25
- { "PERK_NANO_OKLOP", "PERKO_NANO_OKLOP" }, // 26
- { "PERK_BULLETPROOF", "PERKO_BULLETPROOF" }, // 27
- { "PERK_JETPACK", "PERKO_JETPACK" }, // 28
- { "PERK_GRAVITY", "PERKO_GRAVITY" }, // 29
- { "PERK_SPEED", "PERKO_SPEED" }, // 30
- { "PERK_RANAC_LOPOVA", "PERKO_RANAC_LOPOVA" }, // 31
- { "PERK_NO_RELOAD", "PERKO_NO_RELOAD" }, // 32
- { "PERK_SUPER_SPEED", "PERKO_SUPER_SPEED" }, // 33
- { "PERK_LOPOV", "PERKO_LOPOV" }, // 34
- { "PERK_SET_MAJORA", "PERKO_SET_MAJORA" }, // 35
- { "PERK_SET_BOMBI", "PERKO_SET_BOMBI" }, // 36
- { "PERK_RENDGEN", "PERKO_RENDGEN" }, // 37
- { "PERK_ASSASSINOV_PLAST", "PERKO_ASSASSINOV_PLAST" }, // 38
- { "PERK_ULTRA_STIT", "PERKO_ULTRA_STIT" }, // 39
- { "PERK_KNIFE_STIT", "PERKO_KNIFE_STIT" }, // 40
- { "PERK_SUPERJETPACK", "PERKO_SUPERJETPACK" }, // 41
- { "PERK_SHOWHP", "PERKO_SHOWHP" }, // 42
- { "PERK_HE_STIT", "PERKO_HE_STIT" }, // 43
- { "PERK_NECUJNE_CIZME", "PERKO_NECUJNE_CIZME" }, // 44
- { "PERK_KAMUFLAZA", "PERKO_KAMUFLAZA" }, // 45
- { "PERK_RUDNIK_ZLATA", "PERKO_RUDNIK_ZLATA" }, // 46
- { "PERK_HSIMMUNITY", "PERKO_HSIMMUNITY" }, // 47
- { "PERK_FASTXP", "PERKO_FASTXP" }, // 48
- { "PERK_200HP", "PERKO_200HP" }, // 49
- { "PERK_KILL_AWARD", "PERKO_KILL_AWARD" }, // 50
- { "PERK_RADAR", "PERKO_RADAR" }, // 51
- { "PERK_TELEPORT", "PERKO_TELEPORT" }, // 52
- { "PERK_FAST_RELOAD", "PREKO_FAST_RELOAD" }, // 53
- { "PERK_SPIDERMAN_MREZA", "PERKO_SPIDERMAN_MREZA" }, // 54
- { "PERK_SCOUT_EXPERT", "PERKO_SCOUT_EXPERT" }, // 55
- { "PERK_M4_SWAT", "PERKO_M4_SWAT" }, // 56
- { "PERK_DEAGLE_MASTER", "PERKO_DEAGLE_MASTER" }, // 57
- { "PERK_MADJIONICAR", "PERKO_MADJIONICAR" }, // 58
- { "PERK_AIM_STUNTERA", "PERKO_AIM_STUNTERA" }, // 59
- { "PERK_HE_VESTINA", "PERKO_HE_VESTINA" }, // 60
- { "PERK_GALIL_TERORIZMA", "PERKO_GALIL_TERORIZMA" }, // 61
- { "PERK_SET_STUNTERA", "PERKO_SET_STUNTERA" }, // 62
- { "PERK_M3_EXPERT", "PERKO_M3_EXPERT" }, // 63
- { "PERK_TAJNA_RAZARACA", "PERKO_TAJNA_RAZARACA" }, // 64
- { "PERK_USP_AIM", "PERKO_USP_AIM" }, // 65
- { "PERK_M4A1_AIM", "PERKO_M4A1_AIM" }, // 66
- { "PERK_AK47_AIM", "PERKO_AK47_AIM" }, // 67
- { "PERK_BULLET_IMMUNITY", "PERKO_BULLET_IMMUNITY" }, // 68
- { "PERK_DUBOKO_GRLO", "PERKO_DUBOKO_GRLO" }, // 69
- { "PERK_GOLDSTARS", "PERKO_GOLDSTARS" }, // 70
- { "PERK_TELO_DUHA", "PERKO_TELO_DUHA" } // 71
- };
- new predmet_igraca[33][2];
- // Level XP Number
- new const g_iLevelXP[] = {
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 7, 21, 53, 98, 147, 199, 267, 339, 418, 504,
- 602, 715, 862, 1011, 1176, 1363, 1559, 1759, 1964, 2201,
- 2447, 2710, 2973, 3246, 3532, 3828, 4130, 4449, 4786, 5142,
- 5512, 5883, 6268, 6672, 7089, 7515, 7957, 8411, 8874, 9342,
- 9834, 10332, 10843, 11365, 11889, 12433, 12996, 13559, 14129, 14699,
- 15269, 15869, 16474, 17081, 17705, 18358, 19019, 19713, 20412, 21124,
- 21836, 22564, 23293, 24030, 24792, 25559, 26363, 27167, 27975, 28789,
- 29633, 30492, 31354, 32228, 33114, 34011, 34914, 35826, 36752, 37688,
- 38647, 39630, 40622, 41621, 42629, 43644, 44685, 45738, 46804, 47877,
- 48951, 50032, 51145, 52267, 53406, 54550, 55714, 56880, 58066, 59257,
- 60449, 61654, 62868, 64091, 65317, 66567, 67838, 69122, 70428, 71734,
- 73043, 74352, 75666, 77012, 78374, 79741, 81118, 82513, 83924, 85346,
- 86771, 88211, 89654, 91118, 92605, 94114, 95638, 97169, 98709, 100261,
- 101832, 103414, 104999, 106599, 108201, 109831, 111471, 113127, 114784, 116444,
- 118134, 119836, 121546, 123272, 125006, 126743, 128492, 130254, 132028, 133810,
- 135615, 137420, 139253, 141095, 142953, 144812, 146683, 148556, 150454, 152358,
- 154285, 156217, 158154, 160120, 162100, 164089, 166087, 168087, 170113, 172144,
- 174190, 176245, 178305, 180378, 182454, 184549, 186658, 188770, 190882, 193029,
- 195185, 197344, 199513, 201710, 203923, 206143, 208380, 210633, 212901, 215171,
- 217454, 219751, 222049, 224354, 226664, 229004, 231349, 233711, 236097, 238483,
- 240876, 243293, 245723, 248154, 250607, 253061, 255524, 258001, 260502, 263007,
- 265516, 268052, 270593, 273150, 275715, 278293, 280889, 283495, 286106, 288731,
- 291374, 294029, 296692, 299379, 302079, 304784, 307502, 310222, 312965, 315712,
- 318464, 321248, 324040, 326839, 329659, 332481, 335306, 338154, 341007, 343867,
- 346738, 349640, 352553, 355473, 358398, 361339, 364281, 367250, 370238, 373235,
- 376241, 379252, 382270, 385288, 388319, 391381, 394460, 397551, 400646, 403761,
- 406892, 410035, 413179, 416334, 419512, 422691, 425889, 429098, 432310, 435526,
- 438743, 441967, 445209, 448467, 451741, 455030, 458353, 461680, 465018, 468359,
- 471719, 475083, 478453, 481836, 485236, 488661, 492086, 495529, 498988, 502462,
- 505951, 509441, 512955, 516478, 520017, 523556, 527106, 530666, 534247, 537835,
- 541438, 545051, 548669, 552312, 555961, 559613, 563265, 566938, 570644, 574362,
- 578087, 581831, 585575, 589330, 593088, 596879, 600670, 604485, 608307, 612130,
- 615981, 619842, 623709, 627586, 631470, 635375, 639280, 643212, 647153, 651105,
- 655062, 659019, 663004, 667012, 671030, 675053, 679082, 683136, 687203, 691280,
- 695370, 699471, 703580, 707703, 711826, 715974, 720132, 724292, 728479, 732668,
- 736866, 741089, 745314, 749562, 753813, 758065, 762319, 766604, 770904, 775208,
- 779533, 783875, 788219, 792579, 796946, 801322, 805721, 810123, 814541, 818965,
- 823414, 827876, 832340, 836813, 841295, 845800, 850310, 854842, 859374, 863926,
- 868483, 873057, 877639, 882237, 886838, 891440, 896069, 900720, 905385, 910063,
- 914749, 919438, 924148, 928860, 933598, 938336, 943076, 947839, 952625, 957422,
- 962220, 967038, 971863, 976702, 981544, 986386, 991246, 996133, 1001034, 1005948,
- 1010873, 1015815, 1020765, 1025715, 1030685, 1035657, 1040644, 1045656, 1050676, 1055702,
- 1060738, 1065780, 1070835, 1075905, 1081003, 1086106, 1091213, 1096341, 1101482, 1106629,
- 1111778, 1116935, 1122117, 1127323, 1132543, 1137774, 1143018, 1148274, 1153535, 1158796,
- 1164079, 1169362, 1174658, 1179974, 1185314, 1190664, 1196026, 1201388, 1206753, 1212123,
- 1217498, 1222891, 1228308, 1233750, 1239196, 1244649, 1250120, 1255602, 1261101, 1266607,
- 1272131, 1277656, 1283183, 1288719, 1294275, 1299835, 1305399, 1311013, 1316634, 1322264,
- 1327907, 1333565, 1339231, 1344908, 1350585, 1356276, 1361995, 1367721, 1373461, 1379211,
- 1384979, 1390750, 1396530, 1402323, 1408132, 1413947, 1419769, 1425594, 1431453, 1437327,
- 1443206, 1449091, 1454988, 1460892, 1466822, 1472753, 1478693, 1484640, 1490611, 1496596,
- 1502596, 1508601, 1514633, 1520666, 1526716, 1532766, 1538848, 1544940, 1551045, 1557156,
- 1563281, 1569408, 1575540, 1581702, 1587867, 1594032, 1600204, 1606395, 1612612, 1618831,
- 1625080, 1631341, 1637608, 1643884, 1650160, 1656465, 1662782, 1669117, 1675458, 1681800,
- 1688156, 1694520, 1700910, 1707307, 1713707, 1720109, 1726525, 1732967, 1739431, 1745906,
- 1752392, 1758879, 1765390, 1771910, 1778450, 1785000, 1791553, 1798111, 1804671, 1811249,
- 1817836, 1824459, 1831095, 1837737, 1844396, 1851067, 1857748, 1864443, 1871143, 1877845,
- 1884575, 1891305, 1898048, 1904793, 1911546, 1918305, 1925088, 1931883, 1938688, 1945503,
- 1952338, 1959202, 1966070, 1972942, 1979839, 1986737, 1993647, 2000563, 2007490, 2014438,
- 2021389, 2028342, 2035319, 2042315, 2049335, 2056356, 2063387, 2070428, 2077476, 2084526,
- 2091587, 2098682, 2105790, 2112908, 2120029, 2127156, 2134311, 2141469, 2148653, 2155852,
- 2163054, 2170256, 2177470, 2184684, 2191917, 2199170, 2206439, 2213708, 2220978, 2228290,
- 2235615, 2242946, 2250290, 2257658, 2265026, 2272411, 2279810, 2287213, 2294621, 2302037,
- 2309484, 2316936, 2324402, 2331868, 2339367, 2346876, 2354392, 2361909, 2369436, 2376982,
- 2384537, 2392094, 2399660, 2407246, 2414836, 2422457, 2430084, 2437734, 2445394, 2453060,
- 2460750, 2468453, 2476163, 2483881, 2491604, 2499348, 2507098, 2514873, 2522654, 2530446,
- 2538256, 2546066, 2553881, 2561696, 2569515, 2577357, 2585216, 2593089, 2600976, 2608876,
- 2616801, 2624745, 2632691, 2640643, 2648597, 2656579, 2664565, 2672566, 2680592, 2688629,
- 2696670, 2704711, 2712770, 2720842, 2728924, 2737023, 2745142, 2753263, 2761404, 2769557,
- 2777728, 2785911, 2794107, 2802305, 2810503, 2818714, 2826953, 2835196, 2843450, 2851728,
- 2860013, 2868306, 2876617, 2884932, 2893249, 2901589, 2909952, 2918321, 2926692, 2935083,
- 2943489, 2951895, 2960318, 2968755, 2977196, 2985638, 2994102, 3002587, 3011090, 3019606,
- 3028137, 3036673, 3045217, 3053761, 3062308, 3070870, 3079472, 3088080, 3096697, 3105330,
- 3113979, 3122637, 3131312, 3139991, 3148687, 3157395, 3166104, 3174836, 3183578, 3192334,
- 3201101, 3209881, 3218675, 3227478, 3236295, 3245116, 3253959, 3262814, 3271675, 3280544,
- 3289420, 3298324, 3307239, 3316156, 3325077, 3334022, 3342974, 3351945, 3360927, 3369915,
- 3378915, 3387938, 3396972, 3406014, 3415073, 3424136, 3433199, 3442279, 3451359, 3460456,
- 3469553, 3478654, 3487782, 3496928, 3506074, 3515252, 3524433, 3533620, 3542828, 3552036,
- 3561263, 3570493, 3579726, 3588977, 3598258, 3607547, 3616851, 3626170, 3635509, 3644860,
- 3654221, 3663605, 3672994, 3682384, 3691788, 3701203, 3710632, 3720087, 3729552, 3739027,
- 3748517, 3758017, 3767531, 3777056, 3786595, 3796140, 3805696, 3815267, 3824850, 3834447,
- 3844052, 3853658, 3863277, 3872907, 3882561, 3892219, 3901901, 3911594, 3921302, 3931012,
- 3940742, 3950483, 3960230, 3969997, 3979768, 3989554, 3999342, 4009142, 4018945, 4028768,
- 4038605, 4048448, 4058302, 4068180, 4078077, 4087986, 4097895, 4107827, 4117760, 4127717,
- 4137688, 4147664, 4157656, 4167650, 4177645, 4187643, 4197665, 4207689, 4217734, 4227795,
- 4237874, 4247977, 4258091, 4268210, 4278337, 4288478, 4298641, 4308811, 4318995, 4329184,
- 4339390, 4349608, 4359842, 4370089, 4380337, 4390588, 4400839, 4411107, 4421397, 4431693,
- 4442017, 4452346, 4462675, 4473019, 4483388, 4493771, 4504163, 4514569, 4524996, 4535427,
- 4545858, 4556308, 4566772, 4577242, 4587738, 4598242, 4608750, 4619266, 4629813, 4640369,
- 4650930, 4661491, 4672068, 4682667, 4693280, 4703894, 4714518, 4725163, 4735828, 4746499,
- 4757174, 4767866, 4778558, 4789274, 4800000, 4810740, 4821491, 4832242, 4843002, 4853771,
- 4864573, 4875380, 4886196, 4897026, 4907875, 4918740, 4929613, 4940490, 4951387, 4962297,
- 4973207, 4984140, 4995090, 5006048, 5017021, 5027994, 5038994, 5050008, 5061034, 5072067,
- 5083105, 5094153, 5105205, 5116273, 5127358, 5138455, 5149554, 5160671, 5171815, 5182959,
- 5194116, 5205293, 5216473, 5227671, 5238885, 5250116, 5261357, 5272606, 5283864, 5295141,
- 5306431, 5317732, 5329044, 5340359, 5351694, 5363031, 5374384, 5385749, 5397115, 5408507,
- 5419909, 5431316, 5442728, 5454142, 5465557, 5477023, 5488494, 5499966, 5511455, 5522947,
- 5534443, 5545969, 5557522, 5569075, 5580648, 5592237, 5603836, 5615443, 5627069, 5638703,
- 5650344, 5661985, 5673628, 5685289, 5696954, 5708661, 5720375, 5732101, 5743829, 5755558,
- 5767305, 5779062, 5790822, 5802612, 5814402, 5826232, 5838073, 5849926, 5861792, 5873672,
- 5885561, 5897463, 5909374, 5921297, 5933221, 5945167, 5957114, 5969067, 5981024, 5993014,
- 6005023, 6017034, 6029046, 6041064, 6053093, 6065133, 6077192, 6089268, 6101372, 6113492,
- 6125617, 6137748, 6149894, 6162045, 6174206, 6186380, 6198574, 6210784, 6223008, 6235237,
- 6247488, 6259749, 6272013, 6284285, 6296564, 6308846, 6321140, 6333448, 6345782, 6358119,
- 6370465, 6382819, 6395209, 6407599, 6420010, 6432428, 6444853, 6457292, 6469747, 6482217,
- 6494701, 6507191, 6519700, 6532222, 6544748, 6557295, 6569856, 6582429, 6595002, 6607598,
- 6620196, 6632813, 6645433, 6658062, 6670708, 6683356, 6696018, 6708686, 6721387, 6734094,
- 6746811, 6759530, 6772270, 6785018, 6797784, 6810558, 6823355, 6836156, 6848976, 6861810,
- 6874645, 6887481, 6900342, 6913218, 6926107, 6939013, 6951933, 6964860, 6977804, 6990752,
- 7003717, 7016691, 7029672, 7042659, 7055668, 7068680, 7081695, 7094747, 7107813, 7120879,
- 7133969, 7147065, 7160172, 7173296, 7186431, 7199582, 7212740, 7225915, 7239098, 7252287,
- 7265493, 7278704, 7291920, 7305147, 7318388, 7331659, 7344935, 7358217, 7371506, 7384806,
- 7398133, 7411470, 7424826, 7438183, 7451540, 7464928, 7478321, 7491736, 7505163, 7518601,
- 7532049, 7545503, 7558967, 7572432, 7585907, 7599416, 7612935, 7626468, 7640011, 7653563,
- 7667116, 7680697, 7694288, 7707889, 7721490, 7735120, 7748754, 7762397, 7776047, 7789717,
- 7803390, 7817089, 7830804, 7844524, 7858256, 7872003, 7885756, 7899531, 7913312, 7927107,
- 7940914, 7954735, 7968564, 7982404, 7996250, 8010109, 8023992, 8037881, 8051773, 8065666,
- 8079578, 8093505, 8107459, 8121424, 8135398, 8149375, 8163365, 8177371, 8191398, 8205427,
- 8219475, 8233531, 8247603, 8261684, 8275773, 8289879, 8303994, 8318110, 8332256, 8346414,
- 8360581, 8374748, 8388925, 8403127, 8417341, 8431562, 8445796, 8460038, 8474301, 8488570,
- 8502862, 8517154, 8531456, 8545784, 8560120, 8574463, 8588825, 8603188, 8617552, 8631943,
- 8646351, 8660763, 8675188, 8689617, 8704068, 8718527, 8732994, 8747464, 8761960, 8776470,
- 8790983, 8805509, 8820051, 8834601, 8849168, 8863740, 8878324, 8892912, 8907524, 8922149,
- 8936778, 8951417, 8966090, 8980768, 8995452, 9010161, 9024876, 9039604, 9054332, 9069070,
- 9083817, 9098600, 9113388, 9128186, 9143005, 9157832, 9172663, 9187515, 9202374, 9217250,
- 9232127, 9247021, 9261933, 9276858, 9291784, 9306719, 9321666, 9336641, 9351628, 9366619,
- 9381625, 9396633, 9411661, 9426703, 9441751, 9456799, 9471850, 9486904, 9501971, 9517054,
- 9532138, 9547225, 9562337, 9577483, 9592649, 9607821, 9623017, 9638221, 9653425, 9668636,
- 9683884, 9699143, 9714405, 9729679, 9744954, 9760249, 9775560, 9790888, 9806226, 9821568,
- 9836925, 9852293, 9867665, 9883057, 9898470, 9913898, 9929339, 9944786, 9960250, 9975714,
- 9991191, 10006690, 10022198, 10037714, 10053247, 10068795, 10084354, 10099917, 10115504, 10131091,
- 10146703, 10162322, 10177943, 10193588, 10209248, 10224913, 10240589, 10256271, 10271969, 10287681,
- 10303403, 10319143, 10334891, 10350656, 10366429, 10382218, 10398021, 10413832, 10429651, 10445475,
- 10461322, 10477180, 10493050, 10508931, 10524827, 10540728, 10556649, 10572573, 10588502, 10604458,
- 10620429, 10636403, 10652389, 10668392, 10684409, 10700429, 10716450, 10732497, 10748546, 10764619,
- 10780699, 10796783, 10812894, 10829006, 10845140, 10861280, 10877424, 10893575, 10909747, 10925931,
- 10942137, 10958354, 10974572, 10990807, 11007051, 11023304, 11039574, 11055850, 11072130, 11088432,
- 11104759, 11121097, 11137438, 11153800, 11170177, 11186556, 11202949, 11219344, 11235769, 11252199,
- 11268635, 11285096, 11301564, 11318047, 11334531, 11351026, 11367543, 11384070, 11400606, 11417145,
- 11433707, 11450278, 11466859, 11483462, 11500078, 11516697, 11533317, 11549950, 11566591, 11583267,
- 11599958, 11616650, 11633355, 11650065, 11666804, 11683544, 11700284, 11717058, 11733844, 11750637,
- 11767442, 11784251, 11801084, 11817931, 11834786, 11851651, 11868530, 11885422, 11902317, 11919227,
- 11936145, 11953065, 11969995, 11986945, 12003905, 12020884, 12037885, 12054891, 12071904, 12088927,
- 12105957, 12123020, 12140083, 12157168, 12174268, 12191374, 12208494, 12225620, 12242764, 12259917,
- 12277072, 12294237, 12311425, 12328618, 12345827, 12363046, 12380265, 12397485, 12414712, 12431989,
- 12449277, 12466570, 12483879, 12501199, 12518529, 12535860, 12553216, 12570575, 12587959, 12605355,
- 12622754, 12640157, 12657583, 12675012, 12692444, 12709890, 12727343, 12744837, 12762340, 12779848,
- 12797378, 12814914, 12832467, 12850025, 12867584, 12885163, 12902746, 12920362, 12937986, 12955610,
- 12973241, 12990886, 13008542, 13026229, 13043921, 13061625, 13079343, 13097069, 13114809, 13132560,
- 13150315, 13168086, 13185865, 13203663, 13221465, 13239278, 13257104, 13274933, 13292767, 13310624,
- 13328515, 13346411, 13364312, 13382226, 13400159, 13418093, 13436032, 13453993, 13471980, 13489978,
- 13507986, 13526000, 13544035, 13562082, 13580130, 13598186, 13616263, 13634357, 13652464, 13670578,
- 13688698, 13706838, 13724982, 13743135, 13761298, 13779475, 13797664, 13815877, 13834093, 13852313,
- 13870557, 13888819, 13907085, 13925372, 13943668, 13961968, 13980289, 13998624, 14016967, 14035322,
- 14053688, 14072065, 14090442, 14108849, 14127261, 14145681, 14164119, 14182563, 14201018, 14219478,
- 14237945, 14256449, 14274958, 14293486, 14312018, 14330569, 14349120, 14367687, 14386275, 14404872,
- 14423478, 14442091, 14460725, 14479364, 14498011, 14516671, 14535346, 14554033, 14572723, 14591441,
- 14610169, 14628900, 14647647, 14666412, 14685185, 14703972, 14722771, 14741582, 14760397, 14779219,
- 14798056, 14816894, 14835758, 14854625, 14873498, 14892377, 14911261, 14930165, 14949091, 14968038,
- 14987010, 15005991, 15024985, 15043991, 15063006, 15082030, 15101068, 15120108, 15139166, 15158226,
- 15177316, 15196420, 15215536, 15234659, 15253782, 15272907, 15292065, 15311231, 15330406, 15349585,
- 15368796, 15388013, 15407238, 15426474, 15445716, 15464960, 15484225, 15503505, 15522787, 15542084,
- 15561410, 15580747, 15600101, 15619461, 15638840, 15658219, 15677615, 15697027, 15716448, 15735876,
- 15755322, 15774774, 15794237, 15813710, 15833192, 15852680, 15872174, 15891692, 15911212, 15930771,
- 15950339, 15969920, 15989507, 16009110, 16028724, 16048344, 16067971, 16087614, 16107275, 16126946,
- 16146632, 16166327, 16186025, 16205730, 16225438, 16245152, 16264871, 16284624, 16304402, 16324196,
- 16344006, 16363817, 16383638, 16403463, 16423312, 16443169, 16463049, 16482935, 16502832, 16522737,
- 16542646, 16562564, 16582515, 16602471, 16622437, 16642413, 16662400, 16682390, 16702414, 16722451,
- 16742490, 16762550, 16782618, 16802700, 16822794, 16842893, 16862996, 16883125, 16903268, 16923419,
- 16943576, 16963743, 16983939, 17004143, 17024348, 17044578, 17064815, 17085053, 17105320, 17125597,
- 17145882, 17166177, 17186476, 17206779, 17227112, 17247450, 17267814, 17288179, 17308545, 17328932,
- 17349338, 17369744, 17390160, 17410592, 17431051, 17451515, 17471987, 17492461, 17512942, 17533460,
- 17553991, 17574522, 17595074, 17615626, 17636188, 17656769, 17677367, 17697973, 17718585, 17739211,
- 17759849, 17780492, 17801165, 17821839, 17842519, 17863213, 17883927, 17904663, 17925407, 17946163,
- 17966929, 17987702, 18008497, 18029304, 18050122, 18070950, 18091787, 18112629, 18133483, 18154347,
- 18175228, 18196110, 18217002, 18237929, 18258862, 18279801, 18300763, 18321737, 18342716, 18363709,
- 18384705, 18405716, 18426736, 18447779, 18468834, 18489897, 18510969, 18532058, 18553157, 18574272,
- 18595389, 18616521, 18637654, 18658799, 18679957, 18701138, 18722321, 18743511, 18764725, 18785939,
- 18807172, 18828420, 18849677, 18870953, 18892248, 18913544, 18934848, 18956163, 18977488, 18998847,
- 19020217, 19041598, 19062988, 19084393, 19105798, 19127211, 19148629, 19170081, 19191538, 19213003,
- 19234472, 19255966, 19277465, 19298989, 19320516, 19342066, 19363627, 19385199, 19406771, 19428353,
- 19449938, 19471529, 19493158, 19514802, 19536448, 19558110, 19579773, 19601467, 19623173, 19644881,
- 19666590, 19688301, 19710042, 19731789, 19753549, 19775335, 19797133, 19818938, 19840747, 19862574,
- 19884411, 19906266, 19928140, 19950020, 19971905, 19993795, 20015686, 20037615, 20059559, 20081512,
- 20103484, 20125456, 20147430, 20169438, 20191452, 20213468, 20235497, 20257531, 20279567, 20301644,
- 20323731, 20345818, 20367918, 20390021, 20412150, 20434285, 20456448, 20478614, 20500796, 20522986,
- 20545197, 20567413, 20589642, 20611880, 20634127, 20656375, 20678657, 20700939, 20723225, 20745545,
- 20767868, 20790209, 20812559, 20834910, 20857279, 20879659, 20902049, 20924448, 20946869, 20969296,
- 20991726, 21014163, 21036621, 21059081, 21081579, 21104082, 21126597, 21149121, 21171662, 21194205,
- 21216775, 21239357, 21261940, 21284539, 21307138, 21329765, 21352393, 21375022, 21397666, 21420324,
- 21442987, 21465659, 21488358, 21511082, 21533811, 21556556, 21579313, 21602078, 21624851, 21647635,
- 21670420, 21693233, 21716056, 21738904, 21761763, 21784623, 21807500, 21830390, 21853287, 21876184,
- 21899098, 21922037, 21944976, 21967934, 21990913, 22013902, 22036901, 22059900, 22082912, 22105945,
- 22128978, 22152012, 22175051, 22198090, 22221182, 22244274, 22267394, 22290519, 22313646, 22336796,
- 22359948, 22383102, 22406258, 22429466, 22452684, 22475912, 22499140, 22522395, 22545655, 22568920,
- 22592185, 22615478, 22638794, 22662120, 22685446, 22708778, 22732118, 22755460, 22778812, 22802176,
- 22825569, 22848984, 22872417, 22895855, 22919315, 22942775, 22966242, 22989723, 23013209, 23036695,
- 23060200, 23083736, 23107282, 23130846, 23154424, 23178012, 23201611, 23225220, 23248838, 23272464,
- 23296107, 23319757, 23343431, 23367106, 23390786, 23414493, 23438200, 23461917, 23485650, 23509393,
- 23533151, 23556912, 23580699, 23604486, 23628277, 23652072, 23675899, 23699747, 23723614, 23747488,
- 23771378, 23795278, 23819182, 23843098, 23867022, 23890952, 23914900, 23938866, 23962850, 23986846,
- 24010857, 59999999
- };
- // Classes Data
- enum _:InfoKlasa {
- None = 0,
- //Obicne
- Swat,
- MisterijaKisobrana,
- ProMarine,
- Phantom,
- ProSapper,
- Solider,
- Crysis,
- Price,
- ProShooter,
- Robot,
- VampirToza,
- Blade,
- BryanMils,
- Kamikaza,
- Crank,
- Heavy,
- Gangster,
- Otrov,
- Mornar,
- ProfesionalniVojnik,
- JSO,
- Ops,
- Snajperista,
- //Premium
- GSMaster,
- DrugTito,
- Admiral,
- Stalker,
- Assassin,
- Commando,
- ProSwat,
- Ghost,
- VanHelsing,
- Stalin,
- VasiljiZaljcev,
- Kadet,
- Officir,
- BacacPlamena,
- //Golds Stars
- Jack,
- JohnWayane,
- Wolverine,
- RokerSMoravu,
- Bjegunac,
- FuriosEMan,
- ProBombarder,
- //Special
- CicaDraza,
- Lovac,
- Lopov,
- Ninja,
- Svestenik,
- Predator,
- Razarac,
- Batman,
- Boxer,
- Spiderman,
- Teleporter,
- Indian,
- Shredder,
- //Steam only
- AngryMax,
- Exit,
- Ranger,
- CrazyShooter,
- //Super Premium
- Glacier,
- Hitman,
- ProAssassin,
- Dante,
- Bazukas,
- RobinHud,
- GoldMaster,
- Inzinjer,
- Madjionicar,
- //Vip
- Skakac,
- Samuraj,
- AssassinCopy,
- IronMan,
- Rusher,
- Pikacu
- };
- new Statistika[ InfoKlasa ];
- new const Klase[ InfoKlasa ][][] = {
- // Ime Opis Energija Stit Brzina Frkacija Flag
- //Obicne
- { "ML_NEMA", "ML_NEMA", "0", "0", "0.0", "Classic", "" },
- { "ML_SWAT", "ML_O_SWAT", "100", "110", "2.56", "Classic", "" },
- { "ML_MISTERIJA_KISOBRANA", "ML_O_MISTERIJA_KISOBRANA", "110", "0", "1.1", "Classic", "" },
- { "ML_PRO_MARINE", "ML_O_PRO_MARINE", "140", "100", "4.32", "Classic", "" },
- { "ML_PHANTOM", "ML_O_PHANTOM", "110", "0", "1.4", "Classic", "" },
- { "ML_PRO_SAPPER", "ML_O_PRO_SAPPER", "100", "100", "3.2", "Classic", "" },
- { "ML_SOLIDER", "ML_O_SOLIDER", "110", "100", "4.16", "Classic", "" },
- { "ML_CRYSIS", "ML_O_CRYSIS", "100", "100", "5.12", "Classic", "" },
- { "ML_PRICE", "ML_O_PRICE", "105", "100", "5.12", "Classic", "" },
- { "ML_PRO_SHOOTER", "ML_O_PRO_SHOOTER", "120", "100", "3.52", "Classic", "" },
- { "ML_ROBOT", "ML_O_ROBOT", "150", "100", "3.20", "Classic", "" },
- { "ML_VAMPIR_TOZA", "ML_O_VAMPIR_TOZA", "80", "100", "4.0", "Classic", "" },
- { "ML_BLADE", "ML_O_BLADE", "200", "100", "3.20", "Classic", "" },
- { "ML_BRYIAN_MILS", "ML_O_BRYIAN_MILS", "300", "100", "4.2", "Classic", "" },
- { "ML_KAMIKAZA", "ML_O_KAMIKAZA", "100", "20", "2.2", "Classic", "" },
- { "ML_CRANK", "ML_O_CRANK", "125", "115", "1.3", "Classic", "" },
- { "ML_HEAVY", "ML_O_HEAVY", "450", "115", "1.3", "Classic", "" },
- { "ML_GANGSTER", "ML_O_GANGSTER", "120", "100", "1.2", "Classic", "" },
- { "ML_OTROV", "ML_O_OTROV", "130", "100", "1.2", "Classic", "" },
- { "ML_MORNAR", "ML_O_MORNAR", "120", "100", "1.3", "Classic", "" },
- { "ML_PROFESIONALNI_VOJNIK", "ML_O_PROFESIONALNI_VOJNIK", "120", "80", "1.5", "Classic", "" },
- { "ML_JSO", "ML_O_JSO", "120", "150", "1.7", "Classic", "" },
- { "ML_OPS", "ML_O_OPS", "100", "100", "1.7", "Classic", "" },
- { "ML_SNAJPERISTA", "ML_O_SNAJPERISTA", "100", "100", "1.1", "Classic", "" },
- //Premium
- { "ML_GOLD_MASTER", "ML_O_GOLD_MASTER", "140", "100", "1.4", "Premium", "%" },
- { "ML_DRUG_TITO", "ML_O_DRUG_TITO", "110", "0", "1.9", "Premium", "v" },
- { "ML_ADMIRAL", "ML_O_ADMIRAL", "120", "0", "1.2", "Premium", "c" },
- { "ML_STALKER", "ML_O_STALKER", "120", "100", "3.84", "Premium", "a" },
- { "ML_ASSASSIN", "ML_O_ASSASSIN", "200", "100", "4.8", "Premium", "b" },
- { "ML_COMMANDO", "ML_O_COMMANDO", "200", "100", "3.52", "Premium", "d" },
- { "ML_PRO_SWAT", "ML_O_PRO_SWAT", "200", "100", "3.84", "Premium", "e" },
- { "ML_GHOST", "ML_O_GHOST", "50", "100", "1.5", "Premium", "f" },
- { "ML_VAN_HELSING", "ML_O_VAN_HELSING", "100", "100", "3.2", "Premium", "h" },
- { "ML_STALIN", "ML_O_STALIN", "100", "100", "2.0", "Premium", "i" },
- { "ML_VASILJIZALJCEV", "ML_O_VASILJIZALJCEV", "200", "100", "1.5", "Premium", "j" },
- { "ML_KADET", "ML_O_KADET", "130", "120", "1.25", "Premium", "k" },
- { "ML_OFICIR", "ML_O_OFICIR", "125", "120", "1.2", "Premium", "5" },
- { "ML_BACACPLAMENA", "ML_O_BACACPLAMENA", "125", "120", "1.2", "Premium", "#" },
- //Golds Stars
- { "ML_JACK", "ML_O_JACK", "200", "260", "2.1", "GoldsStars", "n" },
- { "ML_JOHN_WAYANE", "ML_O_JOHN_WAYANE", "130", "110", "1.4", "GoldsStars", "o" },
- { "ML_WOLWERINE", "ML_O_WOLWERINE", "130", "110", "1.4", "GoldsStars", "p" },
- { "ML_ROKERSMORAVU", "ML_O_ROKERSMORAVU", "130", "50", "1.1", "GoldsStars", "6" },
- { "ML_BJEGUNAC", "ML_O_BJEGUNAC", "200", "115", "3.2", "GoldsStars", "4" },
- { "ML_FURIOSEMAN", "ML_O_FURIOSEMAN", "200", "120", "2.0", "GoldsStars", "1" },
- { "ML_PROBOMBARDER", "ML_O_PROBOMBARDER", "120", "110", "1.2", "GoldsStars", "2" },
- //Special
- { "ML_CICA_DRAZA", "ML_O_CICA_DAZA", "150", "100", "2.5", "Special", "-" },
- { "ML_LOVAC", "ML_O_LOVAC", "130", "50", "1.1", "Special", "m" },
- { "ML_LOPOV", "ML_O_LOPOV", "120", "125", "1.2", "Special", "_" },
- { "ML_NINJA", "ML_O_NINJA", "150", "0", "1.5", "Special", "r" },
- { "ML_SVESTENIK", "ML_O_SVESTENIK", "100", "0", "1.5", "Special", "s" },
- { "ML_PREDATOR", "ML_O_PREDATOR", "250", "0", "1.5", "Special", "l" },
- { "ML_RAZARAC", "ML_O_RAZARAC", "120", "100", "1.4", "Special", "u" },
- { "ML_BATMAN", "ML_O_BATMAN", "300", "60", "1.4", "Special", "q" },
- { "ML_BOXER", "ML_O_BOXER", "150", "150", "1.5", "Special", "t" },
- { "ML_SPIDERMAN", "ML_O_SPIDERMAN", "125", "100", "1.1", "Special", "3" },
- { "ML_TELEPORTER", "ML_O_TELEPORTER", "130", "130", "1.1", "Special", "8" },
- { "ML_INDIAN", "ML_O_INDIAN", "100", "0", "1.0", "Special", "?" },
- { "ML_SHREDDER", "ML_O_SHREDDER", "350", "110", "1.5", "Special", "$" },
- //Steam Only
- { "ML_ANGRY_MAX", "ML_O_ANGRY_MAX", "200", "100", "2.0", "Steam Only", "" },
- { "ML_EXIT", "ML_O_EXIT", "200", "100", "2.0", "Steam Only", "" },
- { "ML_RANGER", "ML_O_RANGER", "200", "100", "2.0", "Steam Only", "" },
- { "ML_CRAZY_SHOOTER", "ML_O_CRAZY_SHOOTER", "120", "0", "1.2", "Steam Only", "" },
- //Super Premium
- { "ML_GLACIER", "ML_O_GLACIER", "200", "100", "1.6", "Super Premium","+" },
- { "ML_HITMAN", "ML_O_HITMAN", "115", "130", "1.2", "Super Premium","*" },
- { "ML_PRO_ASSASSIN", "ML_O_PRO_ASSASSIN", "50", "100", "4.8", "Super Premium","g" },
- { "ML_DANTE", "ML_O_DANTE", "100", "0", "4.0", "Super Premium","w" },
- { "ML_BAZUKAS", "ML_O_BUZAKAS", "100", "0", "3.49", "Super Premium","x" },
- { "ML_ROBIN_HUD", "ML_O_ROBIN_HUD", "150", "0", "1.5", "Super Premium","y" },
- { "ML_GOLDSTARS", "ML_O_GOLDSTARS", "100", "0", "3.2", "Super Premium","z" },
- { "ML_INZINJER", "ML_O_INZINJER", "130", "20", "1.6", "Super Premium","7" },
- { "ML_MADJIONICAR", "ML_O_MADJIONICAR", "120", "120", "1.2", "Super Premium","9" },
- //Vip
- { "ML_SKAKAC", "ML_O_SKAKAC", "200", "100", "4.15", "VipKlase", "" },
- { "ML_SAMAURAJ", "ML_O_SAMURAJ", "120", "50", "1.5", "VipKlase", "" },
- { "ML_ASSASSINCOPY", "ML_O_ASSASSINCOPY", "100", "30", "1.0", "VipKlase", "" },
- { "ML_IRONMAN", "ML_O_IRONMAN", "200", "20", "1.0", "VipKlase", "" },
- { "ML_RUSHER", "ML_O_RUSHER", "125", "125", "1.5", "VipKlase", "" },
- { "ML_PIKACU", "ML_O_PIKACU", "120", "130", "1.2", "VipKlase", "" }
- };
- // Num of Perks which Blocked on Classes
- new const g_iBlockedPerks[][18] = {
- 0, // Nema
- { 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Swat
- { 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // MisterijaKisobrana
- { 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // ProMarine
- { 24, 32, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Phantom
- { 8, 24, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // ProSapper
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Solider
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Crysis
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Price
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // ProShooter
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Robot
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // VampirToza
- { 15, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Blade
- { 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // BryanMils
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Kamikaza
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Crank
- { 6, 8, 13, 24, 38, 41, 55, 56, 58, 59, 61, 62, 66, 67, 0, 0, 0, 0 }, // Heavy
- { 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Gangster
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Otrov
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Mornar
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // ProfesionalniVojnik
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // JSO
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Ops
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Snajperista
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // SB Master
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Drug Tito
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Admiral
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Stalker
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Assassin
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Commando
- { 24, 38, 55, 56, 58, 59, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // ProSwat
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Ghost
- { 24, 38, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // VanHelsing
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Stalin
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // VasiljiZaljcev
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Kadet
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Officir
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Bacac Plamena
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Jack
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // JohnWayane
- { 24, 32, 41, 56, 57, 62, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Wolverine
- { 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // RokerSMoravu
- { 13, 24, 41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Bjegunac
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // FuriosEMan
- { 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // ProBombarder
- { 13, 53, 56, 57, 61, 62, 64, 65, 66, 67, 0, 0, 0, 0, 0, 0, 0, 0 }, // Lovac
- { 13, 53, 56, 57, 61, 62, 64, 65, 66, 67, 0, 0, 0, 0, 0, 0, 0, 0 }, // Lopov
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Ninja
- { 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Svestenik
- { 24, 38, 55, 56, 58, 59, 62, 63, 64, 66, 67, 0, 0, 0, 0, 0, 0, 0 }, // Predator
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Razarac
- { 55, 56, 62, 63, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Batman
- { 48, 59, 62, 63, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Boxer
- { 54, 63, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Spiderman
- { 38, 41, 55, 56, 58, 62, 63, 64, 65, 66, 67, 0, 0, 0, 0, 0, 0, 0 }, // Teleporter
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Indian
- { 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Shredder
- { 24, 55, 56, 58, 61, 62, 63, 64, 65, 66, 67, 0, 0, 0, 0, 0, 0, 0 }, // AngryMax
- { 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Exit
- { 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Ranger
- { 27, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // CrazyShooter
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Glacier
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Hitman
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // ProAssassin
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Dante
- { 24, 32, 34, 38, 41, 54, 55, 56, 58, 59, 61, 62, 63, 64, 65, 66, 67, 68 }, // Bazukas
- { 24, 28, 32, 38, 41, 53, 55, 56, 58, 59, 61, 62, 63, 64, 65, 66, 67, 68 }, // RobinHud
- { 24, 27, 28, 32, 41, 55, 57, 58, 61, 62, 0, 0, 0, 0, 0, 0, 0, 0 }, // GoldMaster
- { 24, 52, 56, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Inzinjer
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Madjionicar
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Skakac
- { 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Samuraj
- { 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // AssassinCopy
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // IronMan
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, // Rusher
- { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } // Pikacu
- };
- //Frkacije
- enum {
- Nema = 0,
- Obicna,
- Premium,
- GoldsStars,
- Special,
- SteamOnly,
- SuperPremium,
- VipKlase
- };
- new const g_szFractions[][] = {
- "ML_NEMA",
- "ML_OBICNE",
- "ML_PREMIUM",
- "ML_GOLDS_STARS",
- "ML_SPECIAL",
- "ML_STEAM_ONLY",
- "ML_SUPER_PREMIUM",
- "ML_VIP_KLASE"
- };
- new const g_iClassesFraction[ InfoKlasa ] = {
- Nema,
- //Obicne
- Obicna, //Swat
- Obicna, //MisterijaKisobrana
- Obicna, //ProMarine
- Obicna, //Phantom
- Obicna, //ProSapper
- Obicna, //Solider
- Obicna, //Crysis
- Obicna, //Price
- Obicna, //ProShooter
- Obicna, //Robot
- Obicna, //VampirToza
- Obicna, //Blade
- Obicna, //BryanMils
- Obicna, //Kamikaza
- Obicna, //Crank
- Obicna, //Heavy
- Obicna, //Gangster
- Obicna, //Otrov
- Obicna, //Mornar
- Obicna, //ProfesionalniVojnik
- Obicna, //JSO
- Obicna, //OPS
- Obicna, //Snajperista
- //Premium
- Premium, //GS Master
- Premium, //DrugTito
- Premium, //Admiral
- Premium, //Stalker
- Premium, //Assassin
- Premium, //Commando
- Premium, //ProSwat
- Premium, //Ghost
- Premium, //Van Helsing
- Premium, //Stalin
- Premium, //VasiljiZaljcev
- Premium, //Kadet
- Premium, //Officir
- Premium, //Bacac Plamena
- //Golds Stars
- GoldsStars, //Jack
- GoldsStars, //JohnWayane
- GoldsStars, //Wolverin
- GoldsStars, //RokerSMoravu
- GoldsStars, //Bjegunac
- GoldsStars, //FuriosEMan
- GoldsStars, //ProBomader
- //Special
- Special, //Cica Draza
- Special, //Lovac
- Special, //Lopov
- Special, //Ninja
- Special, //Svestenik
- Special, //Predator
- Special, //Razarac
- Special, //Batman
- Special, //Boxer
- Special, //Spiderman
- Special, //Teleporter
- Special, //Indian
- Special, //Shredder
- //Steam Only
- SteamOnly, //Angry Max
- SteamOnly, //Exit
- SteamOnly, //Ranger
- SteamOnly, //Crazy Shootre
- //Super Preimum
- SuperPremium, //Glacier
- SuperPremium, //Hitman
- SuperPremium, //Pro Assassin
- SuperPremium, //Dante
- SuperPremium, //Bazukas
- SuperPremium, //Robin Hud
- SuperPremium, //GoldMaster
- SuperPremium, //Inzinjer
- SuperPremium, //Madjionicar
- //Vip
- VipKlase, //Skakac
- VipKlase, //Samuraj
- VipKlase, //Assassin Copy
- VipKlase, //Iron Man
- VipKlase, //Rusher
- VipKlase //Pikacu
- };
- // Classes Weapons
- new const g_iClassesWeapon[ InfoKlasa ][7] = {
- { CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, // Nema
- //Obicne
- { CSW_M4A1, CSW_USP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Swat
- { CSW_M3, CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //MisterijaKisobrana
- { CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //ProMarine
- { CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Fantom
- { CSW_P90, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //ProSapper
- { CSW_FAMAS, CSW_P228, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Solider
- { CSW_M4A1, CSW_SG552, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Crysis
- { CSW_G3SG1, CSW_USP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Price
- { CSW_AWP, CSW_M4A1, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //ProShooter
- { CSW_M3, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Robot
- { CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //VampirToza
- { CSW_ELITE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Blade
- { CSW_FIVESEVEN, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //BryanMils
- { CSW_FIVESEVEN, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Kamikaza
- { CSW_AUG, CSW_GLOCK18, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, // Crank
- { CSW_M249, CSW_USP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, // Heavy
- { CSW_ELITE, CSW_DEAGLE, CSW_USP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Gangster
- { CSW_GALIL, CSW_MP5NAVY, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, // Otrov
- { CSW_MAC10, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Mornar
- { CSW_AK47, CSW_M4A1, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Profestionalni Vojnik
- { CSW_MP5NAVY, CSW_DEAGLE, CSW_HEGRENADE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //JSO
- { CSW_KNIFE, CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //OPS
- { CSW_AWP, CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Snajperista
- //Premium
- { CSW_M4A1, CSW_ELITE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //SB Master
- { CSW_M4A1, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Drug Tito
- { CSW_M4A1, CSW_USP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Admiral
- { CSW_AWP, CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Stalker
- { CSW_KNIFE, CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Assassin
- { CSW_MP5NAVY, CSW_USP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Commando
- { CSW_M4A1, CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //ProSwat
- { CSW_AWP, CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Ghost
- { CSW_SCOUT, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Van Helsing
- { CSW_AK47, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Stalin
- { CSW_AWP, CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //VasiljiZaljcev
- { CSW_SCOUT, CSW_GALIL, CSW_FLASHBANG, CSW_SMOKEGRENADE,CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, // Kadet
- { CSW_TMP, CSW_FAMAS, CSW_FIVESEVEN, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, // Oficir
- { CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, // Bacac Plamena
- //Golds Stars
- { CSW_GLOCK18, CSW_DEAGLE, CSW_MP5NAVY, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Jack
- { CSW_ELITE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Joh Wayane
- { CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Wolverine
- { CSW_SCOUT, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //RokerSMoravu
- { CSW_M4A1, CSW_HEGRENADE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Bjegunac
- { CSW_ELITE, CSW_DEAGLE, CSW_USP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, // FuriosEMan
- { CSW_AK47, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, // ProBombarder
- //Special
- { CSW_AK47, CSW_USP, CSW_ELITE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Cica Draza
- { CSW_M4A1, CSW_SCOUT, CSW_USP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Lovac
- { CSW_M4A1, CSW_TMP, CSW_P228, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Lopov
- { CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Ninja
- { CSW_MP5NAVY, CSW_USP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Svestenik
- { CSW_SCOUT, CSW_XM1014, CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Predator
- { CSW_AK47, CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Razarac
- { CSW_M4A1, CSW_USP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Batman
- { CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Boxer
- { CSW_XM1014, CSW_M3, CSW_USP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, // SpiderMan
- { CSW_M4A1, CSW_DEAGLE, CSW_ELITE, CSW_HEGRENADE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, // Teleporter
- { CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, // Indian
- { CSW_AK47, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, // Shredder
- //Steam Only
- { CSW_AWP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Angry Max
- { CSW_M4A1, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Exit
- { CSW_M4A1, CSW_AK47, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Ranger
- { CSW_M4A1, CSW_AWP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Crazy Shooter
- //Super Premium
- { CSW_M4A1, CSW_AK47, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Glacier
- { CSW_USP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Hitman
- { CSW_P228, CSW_M249, CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //ProAssassin
- { CSW_MP5NAVY, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Dante
- { CSW_P90, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Bazukas
- { CSW_SCOUT, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Robin Hud
- { CSW_P90, CSW_UMP45, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //GoldMaster
- { CSW_AK47, CSW_USP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Inzinjer
- { CSW_M4A1, CSW_AK47, CSW_G3SG1, CSW_FAMAS, CSW_ELITE, CSW_HEGRENADE, CSW_KNIFE}, // Madjionicar
- //Vip
- { CSW_MP5NAVY, CSW_ELITE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Skakac
- { CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Samuraj
- { CSW_AK47, CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Assassin Copy
- { CSW_SG552, CSW_MP5NAVY, CSW_USP, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Rusher
- { CSW_M3, CSW_FIVESEVEN, CSW_GLOCK18, CSW_HEGRENADE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE }, //Iron Man
- { CSW_AK47, CSW_DEAGLE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE, CSW_KNIFE } // Pikacu
- };
- new bool:g_bFreezeTime = true, bool: g_bRadar[2], g_iMaxPlayers;
- // Lang Data
- new const g_szLangData[][][] = {
- // Lang Name Tag
- { "English", "en" },
- { "Srpski", "sr" }
- };
- // Shop Data
- new const g_szShopData[][] = {
- "ML_OBICAN_SHOPS",
- "ML_GOLD_SHOPS",
- "ML_POWER_SHOPS"
- };
- // Classic Shop Data
- new const g_ClassicShopData[][][] = {
- // Item Name Descripiton Price
- { "ML_ASPIRIN", "ML_ASPIRIN_DESC", "3000" },
- { "ML_MORFIJUM", "ML_MORFIJUM_DESC", "5000" },
- { "ML_REDBULL", "ML_REDBULL_DESC", "7500" },
- { "ML_LOTTO", "ML_LOTTO_DESC", "3000" },
- { "ML_ISKUSTVO", "ML_ISKUSTVO_DESC", "5000" },
- { "ML_SUPER_ISKUSTVO", "ML_SUPER_ISKUSTVO_DESC", "10000" },
- { "ML_SLUCAJNI_IZBOR", "ML_SLUCAJNI_IZBOR_DESC", "4000" }
- };
- // Gold Shop Data
- new const g_iGoldShopData[][] = {
- // Item Num Price
- { 8, 400 },
- { 10, 500 },
- { 13, 500 },
- { 20, 450 },
- { 32, 450 },
- { 37, 600 },
- { 38, 550 },
- { 41, 450 },
- { 43, 450 },
- { 45, 500 },
- { 70, 450 },
- { 52, 550 },
- { 53, 550 },
- { 54, 500 },
- { 55, 600 },
- { 56, 700 },
- { 57, 550 },
- { 58, 600 },
- { 59, 650 },
- { 62, 700 },
- { 64, 650 }
- };
- // Power Shop Data
- new const g_PowerShopData[][][] = {
- { "ML_PSHOP_DESET_DAMAGE", "100" },
- { "ML_PSHOP_DVADESET_DAMAGE", "200" },
- { "ML_PSHOP_DOUBLE", "100" },
- { "ML_PSHOP_TRIPLE", "200" },
- { "ML_PSHOP_SPEED", "200" },
- { "ML_PSHOP_AMMO", "300" },
- { "ML_PSHOP_RECOIL", "300" }
- };
- enum PowerShopData {
- bool: PowerShopData_10DMG,
- bool: PowerShopData_20DMG,
- bool: PowerShopData_Double,
- bool: PowerShopData_Triple,
- bool: PowerShopData_Speed,
- bool: PowerShopData_Ammo,
- bool: PowerShopData_Recoil
- };
- new g_PowerShopInfo[33][PowerShopData];
- // Num of Perks which have HE Grenade. This Perks Will be Blocked when is Small Map
- new const g_iPerksWithHe[] = { 10, 45, 60 };
- // Small Maps
- new const g_szMapsWithBlockedHe[][] = { "de_dust2_2x2", "de_dust2_3x3", "de_aztec_mini", "de_rats", "de_eldorado", "de_dust2_2x2_snow", "de_alexandra" };
- // Entiites
- new const g_szEntsNames[8][] = {
- "Mine",
- "Rocket",
- "MedKit",
- "PoisonKit",
- "Bomb",
- "Lighting",
- "BonusBox",
- "Hud Info"
- };
- enum {
- ENT_Mine = 0,
- ENT_Rocket,
- ENT_MedKit,
- ENT_PoisonKit,
- ENT_Bomb,
- ENT_Lighting,
- ENT_BonusBox,
- ENT_HudData
- };
- // Sounds
- new const g_szSounds[11][] = {
- "weapons/hit1_wolverine.wav",
- "weapons/hit2_wolverine.wav",
- "weapons/hit3_wolverine.wav",
- "weapons/hit4_wolverine.wav",
- "weapons/wall1_wolverine.wav",
- "weapons/wall2_wolverine.wav",
- "weapons/claws_off_wolverine.wav",
- "ExitCOD/touched.wav",
- "ExitCOD/select.wav",
- "ExitCOD/levelup.wav",
- "ambience/thunder_clap.wav"
- };
- new const g_szStartSounds[][] = {
- "sound/ExitCOD/match_start02.mp3",
- "sound/ExitCOD/match_start03.mp3",
- "sound/ExitCOD/match_start04.mp3",
- "sound/ExitCOD/match_start05.mp3",
- "sound/ExitCOD/match_start06.mp3",
- "sound/ExitCOD/match_start07.mp3",
- "sound/ExitCOD/match_start08.mp3",
- "sound/ExitCOD/match_start09.mp3"
- };
- // Models
- new const g_szModels[][] = {
- "models/ExitCOD/mine.mdl",
- "models/ExitCOD/rpgrocket.mdl",
- "models/ExitCOD/w_medkit.mdl",
- "models/ExitCOD/w_medkitT.mdl",
- "models/ExitCOD/w_trutko.mdl",
- "models/ExitCOD/w_trutkot.mdl",
- "models/ExitCOD/v_crossbow.mdl",
- "models/ExitCOD/p_crossbow.mdl",
- "models/ExitCOD/v_katana.mdl",
- "models/ExitCOD/p_katana.mdl",
- "models/ExitCOD/v_maceta.mdl",
- "models/ExitCOD/v_wolverine.mdl",
- "models/ExitCOD/p_wolverine.mdl",
- "models/ExitCOD/v_wolverine_claws.mdl",
- "models/ExitCOD/p_wolverine_claws.mdl",
- "models/ExitCOD/v_predators.mdl",
- "models/player/predator_class/predator_class.mdl",
- "models/ExitCOD/v_batman.mdl",
- "models/ExitCOD/v_hitman_usp.mdl",
- "models/player/hitman_class/hitman_class.mdl",
- "models/ExitCOD/v_phantom_knife.mdl",
- "models/ExitCOD/v_gitara.mdl",
- "models/ExitCOD/p_kisobran.mdl",
- "models/ExitCOD/v_kisobran.mdl"
- };
- enum {
- MDL_MINE = 0,
- MDL_ROCKET,
- MDL_MEDKIT,
- MDL_T_MEDKIT,
- MDL_POISONKIT,
- MDL_T_POISONKIT,
- MDL_V_CROSSBOW,
- MDL_P_CROSSBOW,
- MDL_V_KATANA,
- MDL_P_KATANA,
- MDL_V_MACETA,
- MDL_V_WOLVERINE,
- MDL_P_WOLVERINE,
- MDL_V_WOLVERINE_CLAWS,
- MDL_P_WOLVERINE_CLAWS,
- MDL_V_PREDATORS,
- MDL_V_PREDATORCLASS,
- MDL_V_BATMAN,
- MDL_V_HITMAN_USP,
- MDL_P_HITMANCLASS,
- MDL_V_PHANTOMKNIFE,
- MDL_V_GITARA,
- MDL_P_KISOBRAN,
- MDL_V_KISOBRAN
- };
- // Sprites
- enum SPRITES_IDS {
- SPR_Light,
- SPR_White,
- SPR_Blast
- };
- new const g_szSprites[SPRITES_IDS][] = {
- "sprites/lgtning.spr",
- "sprites/white.spr",
- "sprites/dexplo.spr"
- };
- new g_iSpriteID[SPRITES_IDS];
- // Resources
- new const g_szResources[2][] = {
- "sprites/ExitCOD/weapon_claws.txt",
- "sprites/ExitCOD/640hud21.spr"
- };
- // Messages
- enum MESSAGES_IDS {
- MSGID_ScreenFade,
- MSGID_WeaponList,
- MSGID_BarTime2,
- MSGID_ScreenShake
- };
- new const g_szMessages[MESSAGES_IDS][] = {
- "ScreenFade",
- "WeaponList",
- "BarTime2",
- "ScreenShake"
- };
- new g_iMessageID[MESSAGES_IDS];
- // Weapon Data
- new const g_szWeaponsData[][][] = {
- // Name Weapon Name
- { "", "" },
- { "P228", "weapon_p228" },
- { "Shield", "" },
- { "Scout", "weapon_scout" },
- { "He Grenade", "weapon_hegrenade" },
- { "XM1014", "weapon_xm1014" },
- { "C4", "weapon_c4" },
- { "MAC-10", "weapon_mac10" },
- { "AUG", "weapon_aug" },
- { "Smoke Grenade", "weapon_smokegrenade" },
- { "Dual-Elites", "weapon_elite" },
- { "FiveSeven", "weapon_fiveseven" },
- { "UMP45", "weapon_ump45" },
- { "SG550", "weapon_sg550" },
- { "Galil", "weapon_galil" },
- { "Famas", "weapon_famas" },
- { "USP", "weapon_usp" },
- { "Glock", "weapon_glock18" },
- { "AWP", "weapon_awp" },
- { "MP5", "weapon_mp5navy" },
- { "M249", "weapon_m249" },
- { "M3", "weapon_m3" },
- { "M4A1", "weapon_m4a1" },
- { "TMP", "weapon_tmp" },
- { "G3SG1", "weapon_g3sg1" },
- { "Flash Bang", "weapon_flashbang" },
- { "Deagle", "weapon_deagle" },
- { "SG552", "weapon_sg552" },
- { "AK47", "weapon_ak47" },
- { "Knife", "weapon_knife" },
- { "P90", "weapon_p90" }
- };
- new const g_iWeaponsData[][] = {
- // Max Ammo Clip
- { 0, -1 },
- { 52, 13 },
- { 0, -1 },
- { 90, 10 },
- { 1, 1 },
- { 32, 7 },
- { 1, 1 },
- { 100, 30 },
- { 90, 30 },
- { 1, 1 },
- { 120, 30 },
- { 100, 20 },
- { 100, 25 },
- { 90, 30 },
- { 90, 35 },
- { 90, 25 },
- { 100, 12 },
- { 120, 20 },
- { 30, 10 },
- { 120, 30 },
- { 200, 100 },
- { 32, 8 },
- { 90, 30 },
- { 120, 30 },
- { 90, 20 },
- { 2, 2 },
- { 35, 7 },
- { 90, 30 },
- { 90, 30 },
- { 0, -1 },
- { 100, 50 }
- };
- // Commands Data
- new const g_szSayCommandsData[][][] = {
- // Say Command Forward
- { "/klasa", "IzaberiKlasu" },
- { "/class", "IzaberiKlasu" },
- { "/opis", "OpisKlase" },
- { "/desc", "OpisKlase" },
- { "/predmet", "OpisPredmetaIgraca" },
- { "/perk", "OpisPredmetaIgraca" },
- { "/item", "OpisPredmetaIgraca" },
- { "/predmeti", "OpisSvihPredmeta" },
- { "/perks", "OpisSvihPredmeta" },
- { "/items", "OpisSvihPredmeta" },
- { "/prodaj", "ProdajPredmet" },
- { "/sell", "ProdajPredmet" },
- { "/izbaci", "IzbaciPredmet" },
- { "/drop", "IzbaciPredmet" },
- { "/baci", "IzbaciPredmet" },
- { "/reset", "KomandaResetujPoene" },
- { "/jezik", "ChooseLang" },
- { "/lang", "ChooseLang" },
- { "/language", "ChooseLang" },
- { "/shop", "Shop" },
- { "/shops", "Shop" },
- { "/sklep", "Shop" },
- { "/menu", "Menu" },
- { "/codmenu", "Menu" },
- { "/komande", "Commands" },
- { "/commands", "Commands" },
- { "/cene", "Prices" },
- { "/admin", "Prices" },
- { "/price", "Prices" },
- { "/prices", "Prices" },
- { "/boost", "Boost" },
- { "/bost", "Boost" },
- { "/howtoboost", "Boost" },
- { "/howboost", "Boost" },
- { "/nagrade", "Awards" },
- { "/nagrada", "Awards" },
- { "/awards", "Awards" },
- { "/award", "Awards" },
- { "/daj", "DajNekomPredmet" },
- { "/give", "DajNekomPredmet" },
- { "/zameni", "ZameniPredmet" },
- { "/get", "getLevel" },
- { "/uzmi", "getLevel" },
- { "/ranklvl", "SayRank" },
- { "/lvlrank", "SayRank" },
- { "/lvltop", "SayTop15" },
- { "/toplvl", "SayTop15" },
- { "/vips", "ProveriChat" },
- { "/vipovi", "ProveriChat" },
- { "/vipinfo", "VipsInfo" },
- { "/infovip", "VipsInfo" }
- };
- new const g_szMenuItems[][] = {
- "ML_KLASA",
- "ML_PREDMET",
- "ML_TIM",
- "ML_SHOP",
- "ML_CENE",
- "ML_BOOST",
- "ML_NAGRADE",
- "ML_VIP_INFO",
- "ML_KOMANDE",
- "ML_RANK",
- "ML_RESETUJ_POENE",
- "ML_ADMIN_MENU"
- };
- new const g_szClassMenuData[][][] = {
- { "ML_IZABERI_KLASU", "say /class" },
- { "ML_OPIS_KLASE", "say /desc" }
- };
- new const g_szPerkMenuData[][][] = {
- { "ML_OPIS_PREDMETA", "say /perk" },
- { "ML_OPIS_SVIH_PREDMETA", "say /perks" },
- { "ML_PRODAJ_PREDMET", "say /sell" },
- { "ML_IZBACI_PREDMET", "say /drop" }
- };
- new const g_szTeamMenuData[][] = {
- "\yTerrorist \w[\rT\w]",
- "\yCounter-Terrorist \w[\rCT\w]^n",
- "\wSpectacing \w[\dSPEC\w]"
- };
- new const zemlje[][] =
- {
- "\ySrbija", "\yHrvatska", "\yBosna i Hercegovina", "\yCrna Gora", "\yMakedonija", "\yBulgaria",
- "\yRomania", "\yPokrajina", "\yAlbania", "\yAustria", "\yGermany", "\yRussia", "\ySlovenia", "\yItaly"
- };
- new const g_szCommandsItems[][][] = {
- { "CMD_KLASA", "ML_IZABERI_KLASU" },
- { "CMD_OPIS", "ML_COD_KLASE_OPIS" },
- { "CMD_PREDMET", "ML_COD_PREDMET" },
- { "CMD_PRODAJ", "ML_PRODAJ_PREDMET" },
- { "CMD_IZBACI", "ML_IZBACI_PREDMET" },
- { "CMD_PREDMETI", "ML_COD_OPIS_PREDMETA" },
- { "CMD_RESET", "ML_COD_RESET" },
- { "CMD_SHOP", "ML_COD_SHOPS" },
- { "CMD_MENU", "ML_COD_MENI" },
- { "CMD_CENE", "ML_CENE_SERVERA" },
- { "CMD_BANKA", "ML_BANKA" },
- { "CMD_KOMANDE", "ML_KOMANDE_SERVERA" },
- { "CMD_BOOST", "ML_BOOST_INFO" },
- { "CMD_NAGRADE", "ML_NAGRADE_SERVERA" },
- { "CMD_LVLRANK", "ML_LEVEL_RANK_PRIKAZ" },
- { "CMD_LVLTOP", "ML_LEVEL_TOP_PRIKAZ" }
- };
- new const g_szRankMenuData[][][] = {
- { "\ySkill Rank", "say /rank" },
- { "\ySkill TOP 15", "say /top15" },
- { "\yLevel Rank", "say /lvlrank" },
- { "\yLevel TOP 15", "say /toplvl" }
- };
- new const g_szAwardsMenuData[][] = {
- "\yPrvih 5 Na TopTime Klasa",
- "\yPrvih 3 Na Ranku Klasa",
- "\yTop Boster Servera Klasa",
- "\yTop Lvl Prvi = 350 Lvl-a",
- "\yTop Lvl Drugi = 250 Lvl-a",
- "\yTop Lvl Treci = 150 Lvl-a"
- };
- new const g_szPricesMenuData[][] = {
- "\yCene Admina",
- "\yCene VIP-a",
- "\yCene Klasa",
- "\yCene Ostalog"
- };
- new const g_szCeneAdminaMenuData[][] = {
- "\yAdmin \r2 Boost",
- "\yZamenik Heada \r5e Uplatnica",
- "\yHead \r10e Uplatnica"
- };
- new const g_szCeneVipaMenuData[][] = {
- "\yVIP \r3 Boost"
- };
- new const g_szCeneKlasaMenuData[][] = {
- "\y[\rPremium\y]\w Klase",
- "\y[\rGolds Stars\y]\w Klase",
- "\y[\rSpecial\y]\w Klase",
- "\y[\rSuper Premium\y]\w Klase"
- };
- new const g_szCenePremiumKlasaMenuData[][] = {
- "\y[\rGS Master\y]\w (2 Boost)",
- "\y[\rCompanion Tito\y]\w (2 Boost)",
- "\y[\rAdmiral\y]\w (2 Boost)",
- "\y[\rStalker\y]\w (2 Boost)",
- "\y[\rAssassin\y]\w (1 Boost)",
- "\y[\rCommando\y]\w (1 Boost)",
- "\y[\rPro Swat\y]\w (2 Boost)",
- "\y[\rGhost\y]\w (2 Boost)",
- "\y[\rVan Helsing\y]\w (2 Boost)",
- "\y[\rStalin\y]\w (2 Boost)",
- "\y[\rVasilji Zaljcev\y]\w (2 Boost)",
- "\y[\rKadet\y]\w (2 Boost)",
- "\y[\rOfficir\y]\w (1 Boost)",
- "\y[\rDrop Fire\y]\w (2 Boost)"
- };
- new const g_szCeneGoldsStarsKlasaMenuData[][] = {
- "\y[\rJack\y]\w (3 Boost)",
- "\y[\rDzon Vajen\y]\w (3 Boost)",
- "\y[\rWolverin\y]\w (3 Boost)",
- "\y[\rRoker S Moravu\y]\w (2 Boost)",
- "\y[\rBjegunac\y]\w (3 Boost)",
- "\y[\rFurios-E-Man\y]\w (2 Boost)",
- "\y[\rProBomader\y]\w (2 Boost)"
- };
- new const g_szCeneSpecialKlasaMenuData[][] = {
- "\y[\rCica Draza\y]\w (2 Boost)",
- "\y[\rHunter\y]\w (2 Boost)",
- "\y[\rLopov\y]\w (3 Boost)",
- "\y[\rNinja\y]\w (5 Boost)",
- "\y[\rSvestenik\y]\w (3 Boost)",
- "\y[\rPredator\y]\w (3 Boost)",
- "\y[\rRazarac\y]\w (3 Boost)",
- "\y[\rBatman\y]\w (1 Boost)",
- "\y[\rBoxer\y]\w (2 Boost)",
- "\y[\rSpiderMan\y]\w (2 Boost)",
- "\y[\rTeleporter\y]\w (2 Boost)",
- "\y[\rIndian\y]\w (3 Boost)",
- "\y[\rShredder\y]\w (2 Boost)"
- };
- new const g_szCeneSupePremKlasaMenuData[][] = {
- "\y[\rGlacier\y]\w (3 Boost)",
- "\y[\rHitman\y]\w (3 Boost)",
- "\y[\rPro Assassin\y]\w (3 Boost)",
- "\y[\rDante\y]\w (4 Boost)",
- "\y[\rBazukas\y]\w (3 Boost)",
- "\y[\rRobin Hud\y]\w (2 Boost)",
- "\y[\Gold Master\y]\w (1 Boost)",
- "\y[\rInzinjer\y]\w (4 Boost)",
- "\y[\rMadjionicar\y]\w (3 Boost)"
- };
- new const g_szCeneOstaloMenuData[][] = {
- "\y250 lvl \r1 Boost",
- "\y5000 Gold \r1 Boost",
- "\y5000 SP \r1 Boost"
- };
- #define MAX_PLAYERS 32
- #define TASKID_REVIVE 1337
- #define TASKID_RESPAWN 1338
- #define TASKID_CHECKRE 1339
- #define TASKID_CHECKST 13310
- #define TASKID_ORIGIN 13311
- #define TASKID_SETUSER 13312
- #define pev_zorigin pev_fuser4
- #define seconds(%1) ((1<<12) * (%1))
- new SOUND_START[] = "items/medshot4.wav";
- new SOUND_FINISHED[] = "items/smallmedkit2.wav";
- new SOUND_FAILED[] = "items/medshotno1.wav";
- new SOUND_EQUIP[] = "items/ammopickup2.wav";
- enum
- {
- ICON_HIDE = 0,
- ICON_SHOW,
- ICON_FLASH
- };
- new bool:g_haskit[MAX_PLAYERS+1];
- new Float:g_revive_delay[MAX_PLAYERS+1];
- new Float:g_body_origin[MAX_PLAYERS+1][3];
- new bool:g_wasducking[MAX_PLAYERS+1];
- new g_msg_bartime;
- new g_msg_statusicon;
- new g_msg_clcorpse;
- new Talas;
- new bool: Zamrznut[ 33 ] = false;
- new daj_igracu[33]
- new bool:dobio_predmet[33]
- new zamena_id[33];
- #define Model "models/ExitCOD/v_foot.mdl"
- new const Zvukovi[ ][ ] = {
- "foot_slash.wav",
- "foot_kick.wav"
- };
- new bool: Sut[33];
- new const DatotekaSaCvarovima[ ] = "addons/amxmodx/configs/CODMW/Podesavanja.cfg";
- #define NV_NAME "getLevel15"
- enum player_struct {
- mtime,bool:ftime,key[64]
- }
- new g_player[ 33 ][ player_struct ];
- enum RankData { Data_SteamID[32], Data_Name[32], Data_Level };
- new g_RankFile[64],Array:g_SteamID,Trie:g_Name,Trie:g_PlayerLevel,g_Top15[2048],g_Data[33][RankData],Steam_ID[33][35];
- new goldVIP[ 33 ];
- enum {
- SCOREATTRIB_ARG_PLAYERID = 1,
- SCOREATTRIB_ARG_FLAGS
- };
- enum ( <<= 1 ) {
- SCOREATTRIB_FLAG_NONE = 0,
- SCOREATTRIB_FLAG_DEAD = 1,
- SCOREATTRIB_FLAG_BOMB,
- SCOREATTRIB_FLAG_VIP
- };
- const WEAPONS_BITSUM = ( 1<<CSW_KNIFE | 1<<CSW_HEGRENADE | 1<<CSW_FLASHBANG | 1<<CSW_SMOKEGRENADE | 1<<CSW_C4 )
- new Float:cl_pushangle[ 33 ][ 3 ]
- public plugin_init() {
- register_plugin("COD:MW4", "1.0", "QTM_Peyote & N3u[T]r4L & Milutinke");
- register_clcmd( "say", "ChatPrefiks" )
- register_clcmd("say /shoplvl", "cmdShop", 0);
- register_clcmd("say /banka", "Banka");
- register_clcmd("say /bank", "Banka");
- gVault = nvault_open("CodMod");
- //Banka = nvault_open( "BankaGold" );
- g_SteamID = ArrayCreate( 32, 1 );
- g_Name = TrieCreate( );
- g_PlayerLevel = TrieCreate( );
- get_datadir( g_RankFile, charsmax( g_RankFile ) );
- add( g_RankFile, charsmax( g_RankFile ), "/toplvl.ini" );
- if( !dir_exists( "addons/amxmodx/configs/CODMW/" ) ) mkdir( "addons/amxmodx/configs/CODMW/" );
- register_dictionary("exit_cod_mw4.txt");
- register_dictionary("ostalo.txt");
- register_dictionary("bank.txt");
- register_dictionary("codmenu.txt");
- register_think(g_szEntsNames[ENT_MedKit], "fw_Think_MedKit");
- register_think(g_szEntsNames[ENT_PoisonKit], "fw_Think_PoisonKit");
- register_think(g_szEntsNames[ENT_HudData], "fw_Think_HudInfo");
- RegisterHam(Ham_TakeDamage, "player", "fw_Ham_TakeDamage");
- RegisterHam(Ham_Spawn, "player", "fw_Ham_Spawn_Post", 1);
- RegisterHam(Ham_Touch, "armoury_entity", "fw_Ham_Touch");
- RegisterHam(Ham_Touch, "weaponbox", "fw_Ham_Touch");
- RegisterHam(Ham_Item_AddToPlayer, "weapon_knife", "fw_Item_AddToPlayer", true);
- RegisterHam( Ham_Player_PreThink, "player", "PlayerPreThink" );
- new szWeapon[17];
- for(new i=1; i<=CSW_P90; i++) {
- if(!(g_iBadWeapons & (1<<i)) && get_weaponname(i, szWeapon, charsmax(szWeapon))) {
- RegisterHam(Ham_Weapon_Reload, szWeapon, "fw_Ham_Weapon_Reload_Post", 1);
- RegisterHam(Ham_Item_Holster, szWeapon, "fw_Ham_Item_Holster");
- }
- }
- for(new i=1; i<sizeof(g_szWeaponsData); i++) if(g_szWeaponsData[i][1][0]) RegisterHam(Ham_Item_Deploy, g_szWeaponsData[i][1], "fw_Ham_Item_Deploy_Post", 1);
- register_forward(FM_Touch, "fw_Touch");
- register_forward(FM_AddToFullPack, "fw_AddToFullPack", 1);
- register_forward(FM_TraceLine, "fw_TraceLine");
- register_forward(FM_CmdStart, "fw_CmdStart");
- register_forward(FM_TraceLine, "fw_TraceLine");
- register_forward(FM_EmitSound, "fw_EmitSound");
- register_event("StatusValue", "fw_Event_StatusValueTeam", "be", "1=1");
- register_event("StatusValue", "fw_Event_StatusValue", "be", "1=2", "2!0");
- register_event("StatusValue", "fw_Event_StatusValueHide", "be", "1=1", "2=0");
- register_logevent("fw_LogEvent_RoundStart", 2, "1=Round_Start");
- register_message(get_user_msgid("Health"), "fw_Msg_Health");
- register_message(get_user_msgid("ShowMenu"), "fw_Msg_ShowMenu");
- register_message(get_user_msgid("VGUIMenu"), "fw_Msg_VGUIMenu");
- register_event("DeathMsg", "fw_Event_DeathMsg", "ade");
- register_event("DeathMsg", "event_death", "a")
- register_event("Damage", "fw_Event_Damage", "b", "2!=0");
- register_event("CurWeapon","fw_Event_CurWeapon","be", "1=1");
- register_event("HLTV", "fw_Event_HLTV", "a", "1=0", "2=0");
- register_touch(g_szEntsNames[ENT_Rocket], "*" , "fw_TouchRocket");
- register_touch(g_szEntsNames[ENT_Mine], "player", "fw_TouchMine");
- for(new CvarData:i=CvarData_DayXP; i<CvarData; i++) g_CvarInfo[i] = register_cvar(g_szCvarsData[i][0], g_szCvarsData[i][1]);
- for(new HudData:i=HudData_LevelUP; i<HudData; i++) g_HudInfo[i] = CreateHudSyncObj();
- for(new i; i<sizeof(g_szSayCommandsData); i++) register_client_command(g_szSayCommandsData[i][0], g_szSayCommandsData[i][1]);
- for(new MESSAGES_IDS:i=MSGID_ScreenFade; i<MESSAGES_IDS; i++) g_iMessageID[i] = get_user_msgid(g_szMessages[i]);
- g_msg_clcorpse = get_user_msgid("ClCorpse")
- g_msg_statusicon= get_user_msgid("StatusIcon")
- register_event("HLTV", "event_hltv", "a", "1=0", "2=0")
- register_forward(FM_PlayerPostThink, "fwd_playerpostthink")
- register_forward(FM_EmitSound, "fwd_emitsound")
- register_message(g_msg_clcorpse, "message_clcorpse")
- g_iMaxPlayers = get_maxplayers();
- register_message( get_user_msgid( "ScoreAttrib" ), "MessageScoreAttrib" );
- register_clcmd("ExitCOD/weapon_claws", "HookWeapon");
- set_task(2.0, "ScanRadar", _, _, _, "b");
- ShowInfo();
- register_concmd("cod_classes", "CmdClassesList", ADMIN_KICK, " - Show Players Classes");
- register_concmd("cod_reload_classes", "CmdReloadClasses", ADMIN_KICK, " - Reload Classes");
- register_clcmd("nightvision", "Menu");
- g_msg_bartime = get_user_msgid("BarTime")
- g_msg_clcorpse = get_user_msgid("ClCorpse")
- g_msg_statusicon= get_user_msgid("StatusIcon")
- if( !file_exists( DatotekaSaCvarovima ) ) {
- new Linija[ 256 ];
- for(new CvarData:i=CvarData_DayXP; i<CvarData; i++) {
- formatex( Linija, charsmax( Linija ), "^"%s^" ^"%s^" ", g_szCvarsData[ i ][ 0 ], g_szCvarsData[ i ][ 1 ] );
- write_file( DatotekaSaCvarovima, Linija );
- }
- }
- server_cmd( "exec %s", DatotekaSaCvarovima );
- server_exec( );
- LoadRanks( );
- ArraySort( g_SteamID, "SortRanks" );
- WriteTop15( );
- new weapon_name[ 24 ]
- for ( new i = 1; i <= 30; i++ ) {
- if ( !( WEAPONS_BITSUM & 1 << i ) && get_weaponname( i, weapon_name, 23 ) ) {
- RegisterHam( Ham_Weapon_PrimaryAttack, weapon_name, "fw_Weapon_PrimaryAttack_Pre" );
- RegisterHam( Ham_Weapon_PrimaryAttack, weapon_name, "fw_Weapon_PrimaryAttack_Post", 1 );
- }
- }
- }
- public message_clcorpse()
- return PLUGIN_HANDLED
- // Natives
- public plugin_natives() {
- register_native("cod_set_user_level", "fw_Native_SetLevel", 1);
- register_native("cod_get_user_level", "fw_Native_GetLevel", 1);
- register_native("cod_set_user_xp", "fw_Native_SetXP", 1);
- register_native("cod_get_user_xp", "fw_Native_GetXP", 1);
- register_native("cod_get_level_xp", "fw_Native_GetLevelXP", 1);
- register_native("cod_set_user_gold", "fw_Native_SetGold", 1);
- register_native("cod_get_user_gold", "fw_Native_GetGold", 1);
- register_native("cod_podesi_sp", "fw_Native_SetSP", 1);
- register_native("cod_sp_igraca", "fw_Native_GetSP", 1);
- register_native("cod_set_user_intelligence", "fw_Native_SetIntelligence", 1);
- register_native("cod_set_user_energy", "fw_Native_SetEnergy", 1);
- register_native("cod_set_user_trim", "fw_Native_SetTrim", 1);
- register_native("cod_set_user_stamina", "fw_Native_SetStamina", 1);
- register_native("cod_set_user_damage", "fw_Native_SetDamage", 1);
- register_native("cod_get_user_class_name", "fw_Native_GetUserClassName", 1);
- register_native("cod_get_user_class_id", "fw_Native_GetUserClass", 1);
- register_native("cod_get_user_class_desc", "fw_Native_GetUserClassDesc", 1);
- register_native("cod_get_class_name", "fw_Native_GetClassName", 1);
- register_native("cod_get_class_id", "fw_Native_GetClass", 1);
- register_native("cod_get_class_desc", "fw_Native_GetClassDesc", 1);
- register_native("cod_get_class_num", "fw_Native_GetClassNum", 1);
- register_native("cod_get_user_perk_name", "fw_Native_GetUserPerkName", 1);
- register_native("cod_get_user_perk_id", "fw_Native_GetUserPerk", 1);
- register_native("cod_get_user_perk_desc", "fw_Native_GetUserPerkDesc", 1);
- register_native("cod_get_perk_name", "fw_Native_GetPerkName", 1);
- register_native("cod_get_perk_id", "fw_Native_GetPerk", 1);
- register_native("cod_get_perk_desc", "fw_Native_GetPerkDesc", 1);
- register_native("cod_get_perk_num", "fw_Native_GetPerkNum", 1);
- register_native("cod_remove_vault", "fw_Native_RemoveVault", 1);
- register_native("cod_has_user_characters", "HasUserCharacters", 1);
- register_native("cod_get_user_characters", "GetCharacters", 1);
- register_native( "cod_iskustvo_igraca", "NativeIskustvoIgraca", 1 );
- register_native( "cod_podesi_iskustvo_igraca", "NativePodesiIskustvoIgraca", 1 );
- register_native( "cod_set_user_perk", "fw_Native_SetUserPerk", 1 );
- }
- public MessageScoreAttrib( iMsgId, iDest, iReceiver ) {
- new flager = get_msg_arg_int( SCOREATTRIB_ARG_PLAYERID );
- if( goldVIP[ flager ] )
- set_msg_arg_int( SCOREATTRIB_ARG_FLAGS, ARG_BYTE, SCOREATTRIB_FLAG_VIP );
- }
- public fw_Native_SetUserPerk( id, Broj ) {
- Obrisipredmet( id );
- GivePerk( id, Broj );
- }
- public NativeIskustvoIgraca( id )
- return g_PlayerInfo[id][g_iXP];
- public NativePodesiIskustvoIgraca( id, Broj )
- return g_PlayerInfo[id][g_iXP] = Broj;
- public fw_Native_SetLevel(Index, iValue) g_PlayerInfo[Index][g_iLevel] = iValue;
- public fw_Native_GetLevel(Index) return g_PlayerInfo[Index][g_iLevel];
- public fw_Native_SetXP(Index, iValue) {
- g_PlayerInfo[Index][g_iXP] = iValue;
- ProveriNivo(Index);
- }
- public fw_Native_GetXP(id) return g_PlayerInfo[id][g_iXP];
- public fw_Native_GetLevelXP(iValue) return g_iLevelXP[iValue];
- public fw_Native_SetGold(Index, iValue) g_PlayerInfo[Index][g_iGold] = iValue;
- public fw_Native_GetGold(Index) return g_PlayerInfo[Index][g_iGold];
- public fw_Native_SetSP(Index, iValue) g_PlayerInfo[Index][g_iSP] = iValue;
- public fw_Native_GetSP(Index) return g_PlayerInfo[Index][g_iSP];
- public fw_Native_SetIntelligence(Index, iValue) g_PlayerInfo[Index][g_iIntelligence] = iValue;
- public fw_Native_SetEnergy(Index, iValue) g_PlayerInfo[Index][g_iEnergy] = iValue;
- public fw_Native_SetTrim(Index, iValue) g_PlayerInfo[Index][g_iTrim] = iValue;
- public fw_Native_SetStamina(Index, iValue) g_PlayerInfo[Index][g_iStamina] = iValue;
- public fw_Native_SetDamage(Index, iValue) g_PlayerInfo[Index][g_iDamage] = iValue;
- public fw_Native_GetUserClassName(Index, szOutPut[], iLen) {
- param_convert(2);
- copy(szOutPut, iLen, Klase[g_PlayerInfo[Index][g_iClass]][0]);
- }
- public fw_Native_GetUserClass(Index) return g_PlayerInfo[Index][g_iClass];
- public fw_Native_GetUserClassDesc(Index, szOutPut[], iLen) {
- param_convert(2);
- copy(szOutPut, iLen, Klase[g_PlayerInfo[Index][g_iClass]][1]);
- }
- public fw_Native_GetClassName(iClass, szOutPut[], iLen) {
- param_convert(2);
- copy(szOutPut, iLen, Klase[iClass][0]);
- }
- public fw_Native_GetClass(const szClassName[]) {
- param_convert(1);
- for(new i=0; i<sizeof(Klase); i++) if(equal(szClassName, Klase[i][0])) return i;
- return 0;
- }
- public fw_Native_GetClassDesc(iClass, szOutPut[], iLen) {
- param_convert(2);
- copy(szOutPut, iLen, Klase[iClass][1]);
- }
- public fw_Native_GetClassNum() return sizeof(Klase);
- public fw_Native_GetUserPerkName(Index, szOutPut[], iLen) {
- param_convert(2);
- copy(szOutPut, iLen, g_szPerksData[predmet_igraca[Index][0]][0]);
- }
- public fw_Native_GetUserPerk(Index) return predmet_igraca[Index][0];
- public fw_Native_GetUserPerkDesc(Index, szOutPut[], iLen) {
- param_convert(2);
- copy(szOutPut, iLen, g_szPerksData[predmet_igraca[Index][0]][1]);
- }
- public fw_Native_GetPerkName(iPerk, szOutPut[], iLen) {
- param_convert(2);
- copy(szOutPut, iLen, g_szPerksData[iPerk][0]);
- }
- public fw_Native_GetPerk(const szPerkName[]) {
- param_convert(1);
- for(new i=0; i<sizeof(g_szPerksData); i++) if(equal(szPerkName, g_szPerksData[i][0])) return i;
- return 0;
- }
- public fw_Native_GetPerkDesc(iPerk, szOutPut[], iLen) {
- param_convert(2);
- copy(szOutPut, iLen, g_szPerksData[iPerk][1]);
- }
- public fw_Native_GetPerkNum() return sizeof(g_szPerksData);
- public fw_Native_RemoveVault() {
- nvault_prune(gVault, 0, get_systime());
- //nvault_prune(Banka, 0, get_systime());
- for( new i = 1; i <= get_maxplayers( ); i++ ) {
- if( is_user_alive( i ) ) user_silentkill( i );
- g_haskit[i] = false;
- static ent;
- while((ent = fm_find_ent_by_owner(ent, "fake_corpse", i)) != 0) fm_remove_entity(ent);
- g_PlayerInfo[i][g_szUserPrivilegies][0] = '^0';
- Zamrznut[ i ] = false;
- DeleteSkills(i);
- ObrisiZadatke(i);
- Obrisipredmet(i);
- ObrisiIteme(i);
- ObrisiEntitie(i);
- client_cmd( i, "say /rs" );
- }
- unlink( "addons/amxmodx/data/file_vault/Banka.txt" );
- nvault_close( gVault );
- server_cmd( "changelevel de_dust2" );
- }
- public HasUserCharacters(Index) {
- if(g_PlayerInfo[Index][g_szUserPrivilegies][0]) return true;
- return false;
- }
- public GetCharacters(Index, szOutPut[], iLen) {
- param_convert(2);
- copy(szOutPut, iLen, g_PlayerInfo[Index][g_szUserPrivilegies][0]);
- }
- LoadRanks( ) {
- new f = fopen( g_RankFile, "r" );
- if ( !f )
- return;
- new Data[ 96 ], SteamID[ 32 ], Name[ 32 ], iLevel[ 16 ];
- while( !feof( f ) )
- {
- fgets( f, Data, 96 );
- if ( !strlen( Data ) )
- continue;
- parse( Data, SteamID, charsmax( SteamID ), Name, charsmax( Name ), iLevel, charsmax( iLevel ) );
- ArrayPushString( g_SteamID, SteamID );
- TrieSetString( g_Name, SteamID, Name );
- TrieSetCell( g_PlayerLevel, SteamID, str_to_num( iLevel ) );
- }
- fclose( f );
- }
- SaveRanks( ) {
- new f = fopen( g_RankFile, "w+" );
- if( !f )
- return;
- for (new Position, Size = ArraySize( g_SteamID ), SteamID[ 32 ], Name[ 32 ], iLevel; Position < Size; Position++ ) {
- ArrayGetString( g_SteamID, Position, SteamID, charsmax( SteamID ) );
- TrieGetString( g_Name, SteamID, Name, charsmax( Name ) );
- TrieGetCell( g_PlayerLevel, SteamID, iLevel );
- fprintf( f, "%s ^"%s^" %d^n", SteamID, Name, iLevel );
- }
- fclose( f );
- }
- public plugin_cfg() server_cmd("amx_cvar sv_maxspeed 320");
- public plugin_precache() {
- new iEnt = create_entity("info_map_parameters");
- DispatchKeyValue(iEnt, "buying", "3");
- DispatchSpawn(iEnt);
- for(new SPRITES_IDS:i=SPR_Light; i<SPRITES_IDS; i++) g_iSpriteID[i] = engfunc(EngFunc_PrecacheModel, g_szSprites[i]);
- for(new i=0; i<sizeof(g_szSounds); i++) engfunc(EngFunc_PrecacheSound, g_szSounds[i]);
- for(new i=0; i<sizeof(g_szModels); i++) engfunc(EngFunc_PrecacheModel, g_szModels[i]);
- for(new i=0; i<sizeof(g_szResources); i++) engfunc(EngFunc_PrecacheGeneric, g_szResources[i]);
- for(new i=0; i<sizeof(g_szStartSounds); i++) engfunc(EngFunc_PrecacheGeneric, g_szStartSounds[i]);
- precache_model("models/player/arctic/arctic.mdl")
- precache_model("models/player/terror/terror.mdl")
- precache_model("models/player/leet/leet.mdl")
- precache_model("models/player/guerilla/guerilla.mdl")
- precache_model("models/player/gign/gign.mdl")
- precache_model("models/player/sas/sas.mdl")
- precache_model("models/player/gsg9/gsg9.mdl")
- precache_model("models/player/urban/urban.mdl")
- precache_model("models/player/vip/vip.mdl")
- precache_sound(SOUND_START)
- precache_sound(SOUND_FINISHED)
- precache_sound(SOUND_FAILED)
- precache_sound(SOUND_EQUIP)
- CreateClassesFile();
- Talas = precache_model("sprites/shockwave.spr");
- precache_model( Model );
- precache_sound( Zvukovi[ 0 ] );
- precache_sound( Zvukovi[ 1 ] );
- if( !dir_exists( "addons/amxmodx/configs/CODMW/VIP" ) ) { mkdir( "addons/amxmodx/configs/CODMW/VIP/" ); }
- if( !file_exists( "addons/amxmodx/configs/CODMW/VIP/Vipovi.ini" ) )
- {
- write_file("addons/amxmodx/configs/CODMW/VIP/Vipovi.ini", "************************************************")
- write_file("addons/amxmodx/configs/CODMW/VIP/Vipovi.ini", "; Ovde se dodaju vipovi")
- write_file("addons/amxmodx/configs/CODMW/VIP/Vipovi.ini", "; Format Dodavanja:")
- write_file("addons/amxmodx/configs/CODMW/VIP/Vipovi.ini", "; <Steam> <Nick>")
- write_file("addons/amxmodx/configs/CODMW/VIP/Vipovi.ini", "")
- write_file("addons/amxmodx/configs/CODMW/VIP/Vipovi.ini", "; Primeri dodatih vipova:")
- write_file("addons/amxmodx/configs/CODMW/VIP/Vipovi.ini", "; STEAM_0:0:93453258 Nick")
- write_file("addons/amxmodx/configs/CODMW/VIP/Vipovi.ini","************************************************")
- write_file("addons/amxmodx/configs/CODMW/VIP/Vipovi.ini", "")
- write_file("addons/amxmodx/configs/CODMW/VIP/Vipovi.ini", "")
- }
- if( !file_exists( "addons/amxmodx/configs/CODMW/VIP/VipInfo.txt" ) )
- {
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<html>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<head>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<style type=^"text/css^">")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "body {")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "background-color: #000000;")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "font-family:Verdana,Tahoma;")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", " }")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "</style>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", " <meta http-equiv=^"Content-Type^" content=^"text/html; charset=windows-1257^">")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "</head>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<font size=^"2^" color=^"#e0a518^"><center>VipInfo:</center></font><br />")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<font size=^"1^" color=^"#c0c0ff^">")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<UL>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>Dodatna energija koju vip dobija kada se spawnuje = 50</LI><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>Dodatne pare koje vip dobija kada se spawnuje = 3000</LI><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>Dodatni stit koji vip dobije kada se spawnuje = 100</LI><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>Dodatna energija koju vip dobije kada ubije nekog = 15</LI><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>Dodatna energija koju vip dobije kada upuca nekog u glavu = 20</LI><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>Dodatni stit koji vip dobija kada ubije nekog = 10</LI><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>Dodatni stit koji vip dobija kada upuca nekog u glavu = 15</LI><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>Vip ima Bunny Hop</UL><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>Bombe koje vip dobija na pocetku = gdzf</UL><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>Dodatno ostecenje koje vip nanosi protivniku = 10</UL><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>Koliko puta vip moze da skoci 3</UL><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>VIP ima sve klase</UL><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>Kada VIP padne, neskida mu se Energija</UL><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>Gravitacija koju vip ima [0.85]</UL><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>Vip ima neograniceno municije + ne trza puska kada puca</UL><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<LI TYPE=square>Vip je otporan na Head Shoot</UL><br>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "<font size=^"1^" color=^"#00c000^"><b><strong>Cena VIP-a je 3 Boost-a</strong></b></font><br />")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "</body>")
- write_file("addons/amxmodx/configs/CODMW/VIP/VipInfo.txt", "</html>")
- }
- }
- CreateClassesFile() {
- tCharacters = TrieCreate();
- tPassword = TrieCreate();
- if(!file_exists(g_szFile))
- write_file(g_szFile, "" );
- new iFile = fopen(g_szFile, "rt");
- while(iFile && !feof(iFile)) {
- static szData[512], szDataItems[3][64];
- fgets(iFile, szData, charsmax(szData));
- if(!szData[0] || szData[0] == ';' || szData[0] == '/' && szData[1] == '/') continue;
- if(parse(szData, szDataItems[0], 63, szDataItems[1], 63, szDataItems[2], 63) < 3) continue;
- TrieSetString(tCharacters, szDataItems[0], szDataItems[2]);
- TrieSetString(tPassword, szDataItems[0], szDataItems[1]);
- }
- fclose(iFile);
- return 0;
- }
- public CmdClassesList(id, iLevel, iCid) {
- if(!cmd_access(id, iLevel, iCid, 1)) return 1;
- static iPlayers[32], iPlayersNum;
- get_players(iPlayers, iPlayersNum);
- console_print(id, "^n*** --== Lista Igracevih Klasa ==-- ***^n ");
- console_print(id, "User ID - Name - SteamID - Flagovi Klasa^n ");
- for(new i=0; i<iPlayersNum; i++) {
- new iPlayer = iPlayers[i];
- if(is_user_bot(iPlayer) || is_user_hltv(iPlayer)) continue;
- console_print(id, "#%d | Nick: %s | SteamID: %s | Flagovi: %s", get_user_userid(iPlayer), g_PlayerInfo[iPlayer][g_szName], g_PlayerInfo[iPlayer][g_szSteamID], g_PlayerInfo[iPlayer][g_szUserPrivilegies]);
- }
- console_print(id, "^n*** --== Lista Igracevih Klasa ==-- ***^n ");
- return 1;
- }
- public CmdReloadClasses(id, iLevel, iCid) {
- if(!cmd_access(id, iLevel, iCid, 1)) return 1;
- TrieDestroy(tCharacters);
- TrieDestroy(tPassword);
- CreateClassesFile();
- for(new i=1; i<=g_iMaxPlayers; i++) set_flags(i);
- console_print(id, "Classes Reloaded");
- return 1;
- }
- public HookWeapon(id) {
- engclient_cmd(id, "weapon_knife");
- return PLUGIN_HANDLED;
- }
- public pfn_keyvalue(iEnt) {
- new szClassName[20], szDummy[2];
- copy_keyvalue(szClassName, charsmax(szClassName), szDummy, charsmax(szDummy), szDummy, charsmax(szDummy));
- if(equal(szClassName, "info_map_parameters")) {
- remove_entity(iEnt);
- return 1;
- }
- return 0;
- }
- public fw_Msg_Health(MsgID, MsgDest, iEnt) {
- if(!is_user_alive( iEnt )) return 0;
- static iHP; iHP = get_msg_arg_int(1);
- if(iHP > 255 && (iHP % 256) == 0) set_msg_arg_int(1, ARG_BYTE, ++iHP);
- if(entity_get_float(iEnt, EV_FL_health) > MAX_HP) entity_set_float(iEnt, EV_FL_health, MAX_HP);
- return 0;
- }
- // Auto Join On Connect
- public fw_Msg_ShowMenu(MsgID, MsgDest, iEnt) {
- if(!should_autojoin(iEnt)) return 0;
- static szTeamSelect[] = "#Team_Select";
- static szTeamSelectCode[sizeof(szTeamSelect)];
- get_msg_arg_string(4, szTeamSelectCode, charsmax(szTeamSelectCode));
- if(!equal(szTeamSelectCode, szTeamSelect)) return 0;
- SetForceJoinTeamTask(iEnt, MsgID);
- return 1;
- }
- public fw_Msg_VGUIMenu(MsgID, MsgDest, iEnt) {
- if(get_msg_arg_int(1) != TEAM_SELECT_VGUI_MENU_ID || !should_autojoin(iEnt)) return 0;
- SetForceJoinTeamTask(iEnt, MsgID);
- return 1;
- }
- bool: should_autojoin(Index) return (!get_user_team(Index) && !task_exists(Index) && !(get_user_flags(Index) & ADMIN_RESERVATION));
- SetForceJoinTeamTask(Index, iMessageID) {
- static iMsgID[2];
- iMsgID[0] = iMessageID;
- set_task(0.1, "ForceJoinTeamTask", Index, iMsgID, sizeof(iMsgID));
- }
- public ForceJoinTeamTask(iMsgID[], Index) {
- if(get_user_team(Index)) return;
- static szParams[2][2];
- for(new i=0; i<2; i++) formatex(szParams[i], charsmax(szParams[]), "5");
- ForceTeamJoin(Index, iMsgID[0], szParams[0], szParams[1]);
- }
- stock ForceTeamJoin(Index, iMsgID, szTeam[] = "5", szClass[] = "0") {
- static szJoinTeam[] = "jointeam";
- if(szClass[0] == '0') {
- engclient_cmd(Index, szJoinTeam, szTeam);
- return;
- }
- static iMsgBlock, szJoinClass[] = "joinclass";
- iMsgBlock = get_msg_block(iMsgID);
- set_msg_block(iMsgID, BLOCK_SET);
- engclient_cmd(Index, szJoinTeam, szTeam);
- engclient_cmd(Index, szJoinClass, szClass);
- set_msg_block(iMsgID, iMsgBlock);
- }
- 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,1,7,30,30,-1,50}
- public fw_CmdStart(id, iHandleUC) {
- if(!is_user_alive(id)) return FMRES_IGNORED;
- static iButton, iFlags, iOldButtons, iWeaponID;
- iButton = get_uc(iHandleUC, UC_Buttons);
- iFlags = entity_get_int(id, EV_INT_flags);
- iOldButtons = entity_get_int(id, EV_INT_oldbuttons);
- iWeaponID = get_user_weapon(id);
- new clip, ammo, weapon = get_user_weapon(id, clip, ammo);
- if(goldVIP[ id ] || predmet_igraca[id][0] == 11 || predmet_igraca[id][0] == 9 || g_PlayerInfo[id][g_iClass] == Inzinjer || g_PlayerInfo[id][g_iClass] == Crank || g_PlayerInfo[id][g_iClass] == Blade || g_PlayerInfo[id][g_iClass] == Skakac || g_PowerShopInfo[id][PowerShopData_Double] || g_PowerShopInfo[id][PowerShopData_Double]) {
- if((iButton & IN_JUMP) && !(iFlags & FL_ONGROUND) && !(iOldButtons & IN_JUMP) && (g_PlayerInfo[id][g_iJumps] > 0)) {
- g_PlayerInfo[id][g_iJumps] --;
- static Float: fVelocity[3];
- entity_get_vector(id, EV_VEC_velocity, fVelocity);
- fVelocity[2] = random_float(265.0, 285.0);
- entity_set_vector(id, EV_VEC_velocity, fVelocity);
- }
- else if(iFlags & FL_ONGROUND) {
- g_PlayerInfo[id][g_iJumps] = 0;
- switch(g_PlayerInfo[id][g_iClass]) { case Inzinjer, Blade, Crank, Skakac: g_PlayerInfo[id][g_iJumps] ++; }
- switch(predmet_igraca[id][0]) {
- case 9: g_PlayerInfo[id][g_iJumps] += 2;
- case 11: g_PlayerInfo[id][g_iJumps] ++;
- }
- if( goldVIP[ id ] )
- g_PlayerInfo[id][g_iJumps] += 2;
- if(g_PowerShopInfo[id][PowerShopData_Double] || g_PowerShopInfo[id][PowerShopData_Triple]) g_PlayerInfo[id][g_iJumps] += g_PowerShopInfo[id][PowerShopData_Double] ? 1 : 2;
- }
- }
- if(g_PowerShopInfo[id][PowerShopData_Recoil] || g_PlayerInfo[id][g_iClass] == RokerSMoravu || g_PlayerInfo[id][g_iClass] == Glacier) {
- new Float: fPunchAngle[3];
- entity_set_vector(id, EV_VEC_punchangle, fPunchAngle);
- }
- switch(g_PlayerInfo[id][g_iClass]) {
- case Phantom: if( iButton & IN_USE ) WallClimb( id );
- case Stalker, Jack, Razarac: {
- if(iButton & IN_DUCK) set_user_visible(id, 128);
- else set_user_visible(id, 255);
- if( g_PlayerInfo[id][g_iClass] == Phantom) {
- if(iWeaponID == CSW_KNIFE) set_user_visible(id, 1);
- else set_user_visible(id, 255);
- }
- }
- case Assassin, ProAssassin, Boxer, Predator, AssassinCopy, Ghost, Shredder: {
- if(iWeaponID == CSW_KNIFE) set_user_visible(id, 1);
- else set_user_visible(id, 255);
- }
- case Ninja, VampirToza: {
- if(iWeaponID == CSW_KNIFE) set_user_visible(id, 1);
- else set_user_visible(id, 255);
- if( iButton & IN_USE ) WallClimb( id );
- }
- case Samuraj: {
- if((iButton & IN_JUMP) && (iButton & IN_DUCK)) WallClimb(id);
- if((iButton & IN_DUCK) && (iWeaponID == CSW_KNIFE)) set_user_visible(id, 1);
- else set_user_visible(id, 255);
- }
- case Wolverine: {
- if(iWeaponID == CSW_KNIFE) set_user_visible(id, 10);
- else set_user_visible(id, 255);
- }
- case DrugTito: {
- if(iWeaponID == CSW_M4A1) set_user_visible(id, 1);
- else set_user_visible(id, 255);
- }
- case Skakac: {
- if((iButton & IN_USE) && (iOldButtons & IN_JUMP)) {
- new Float: fVelocity[3];
- VelocityByAim(id, 1, fVelocity);
- entity_set_vector(id, EV_VEC_velocity, fVelocity);
- }
- }
- case ProBombarder: if((iButton & IN_ATTACK2) && !(iOldButtons & IN_ATTACK2)) EksplozijaBombe(id);
- case Officir: {
- if((iButton & IN_USE) && !(iOldButtons & IN_USE)) {
- static iTarget, iBody;
- get_user_aiming(id, iTarget, iBody);
- if(!is_user_alive(iTarget)) return FMRES_IGNORED;
- if(!random(3)) UTIL_ScreenFade(iTarget, {255, 155, 50}, 16384.0, 16384.0, 230);
- }
- }
- case Teleporter: {
- if((iButton & IN_USE) && !(iOldButtons & IN_USE)) {
- if(get_gametime() < (g_PlayerInfo[id][g_iClassData] + 5.0)) return 0;
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L!", id, "ML_TELEPORT_AGAIN");
- Teleport(id);
- g_PlayerInfo[id][g_iClassData] = floatround(get_gametime());
- set_task(5.0, "Info", id);
- }
- }
- case Inzinjer: {
- if( iButton & IN_DUCK ) set_user_visible( id, 1 );
- else set_user_visible( id, 255 );
- }
- case RobinHud: {
- if((iButton & IN_DUCK) && (iWeaponID == CSW_SCOUT)) set_user_visible(id, 40);
- else set_user_visible( id, 255 );
- }
- case MisterijaKisobrana: {
- if((iButton & IN_DUCK) && (iWeaponID == CSW_M3)) set_user_visible(id, 40);
- else set_user_visible( id, 255 );
- }
- }
- switch(predmet_igraca[id][0]) {
- case 19: {
- if((iButton & IN_USE) && !(iOldButtons & IN_USE)) {
- if(predmet_igraca[id][1] > 0) {
- entity_set_float(id, EV_FL_health, float(g_PlayerInfo[id][g_iMaxEnergy]));
- predmet_igraca[id][1] --;
- }
- }
- }
- case 23: {
- new Float: fPunchAngle[3];
- entity_set_vector(id, EV_VEC_punchangle, fPunchAngle);
- for(new i=0; i<3; i++) fPunchAngle[i] *= 0.9;
- entity_set_vector(id, EV_VEC_punchangle, fPunchAngle);
- }
- case 38: {
- if(iWeaponID == CSW_KNIFE) set_user_visible(id, 1);
- else if(iWeaponID != CSW_KNIFE) set_user_visible(id, 255);
- }
- case 52: {
- if((iButton & IN_USE) && !(iOldButtons & IN_USE)) {
- if(get_gametime() < (predmet_igraca[id][1] + 30.0)) return 0;
- Teleport(id);
- predmet_igraca[id][1] = floatround(get_gametime());
- set_task(30.0, "Info", id);
- }
- }
- case 58:{
- if(iButton & IN_DUCK) set_user_visible(id, 1);
- else set_user_visible(id, 255);
- }
- }
- if((iButton & IN_USE) && !(iOldButtons & IN_USE)) {
- if(g_PlayerInfo[id][g_iMedKit] > 0) CreateMedKit(id);
- if(g_PlayerInfo[id][g_iRocket] > 0) CreateRocket(id);
- if(g_PlayerInfo[id][g_iMine] > 0) CreateMine(id);
- if(g_PlayerInfo[id][g_iDynamite] > 0) CreateDynamite(id);
- if(g_PlayerInfo[id][g_iPoisonKit] > 0) CreatePoisonKit(id);
- if(g_PlayerInfo[id][g_iBomb] > 0) CreateBomb(id);
- }
- if( ( g_PlayerInfo[id][g_iClass] == Shredder || g_PlayerInfo[id][g_iClass] == Jack || g_PlayerInfo[id][g_iClass] == Skakac || g_PlayerInfo[id][g_iClass] == Inzinjer || g_PlayerInfo[id][g_iClass] == IronMan || g_PlayerInfo[id][g_iClass] == Ninja || predmet_igraca[id][0] == 28 || predmet_igraca[id][0] == 41) && (iButton & IN_JUMP) && (iButton & IN_DUCK) && (iFlags & FL_ONGROUND) && (get_gametime() > (predmet_igraca[id][1] + 4.0))) {
- predmet_igraca[id][1] = floatround(get_gametime());
- new Float: fVelocity[3];
- VelocityByAim(id, ((predmet_igraca[id][0] == 41 || g_PlayerInfo[id][g_iClass] == ProAssassin || g_PlayerInfo[id][g_iClass] == Shredder || g_PlayerInfo[id][g_iClass] == Jack || g_PlayerInfo[id][g_iClass] == IronMan || g_PlayerInfo[id][g_iClass] == Ninja || g_PlayerInfo[id][g_iClass] == Inzinjer || g_PlayerInfo[id][g_iClass] == Skakac ) ? 1000 : 700), fVelocity);
- fVelocity[2] = ((predmet_igraca[id][0] == 41 || g_PlayerInfo[id][g_iClass] == ProAssassin || g_PlayerInfo[id][g_iClass] == Shredder || g_PlayerInfo[id][g_iClass] == Jack || g_PlayerInfo[id][g_iClass] == IronMan || g_PlayerInfo[id][g_iClass] == Ninja || g_PlayerInfo[id][g_iClass] == Inzinjer || g_PlayerInfo[id][g_iClass] == Skakac ) ? random_float(300.0, 320.0) : random_float(265.0, 285.0));
- entity_set_vector(id, EV_VEC_velocity, fVelocity);
- }
- if( goldVIP[ id ] ) {
- new Float: fPunchAngle[3];
- entity_set_vector(id, EV_VEC_punchangle, fPunchAngle);
- }
- if( goldVIP[ id ] && ((iButton & IN_RELOAD && !(iOldButtons & IN_RELOAD) && !(iButton & IN_ATTACK)) || !clip))
- {
- cs_set_user_bpammo(id, weapon, ammo-(maxClip[weapon]-clip));
- new new_ammo = min(clip+ammo, maxClip[weapon]);
- set_user_clip(id, new_ammo);
- }
- return FMRES_IGNORED;
- }
- public fw_Weapon_PrimaryAttack_Pre( entity ) {
- new id = pev( entity, pev_owner );
- if( goldVIP[ id ] || predmet_igraca[id][0] == 20 ) {
- pev( id, pev_punchangle, cl_pushangle[ id ] );
- return HAM_IGNORED;
- }
- return HAM_IGNORED;
- }
- public fw_Weapon_PrimaryAttack_Post( entity ) {
- new id = pev( entity, pev_owner );
- if( goldVIP[ id ] || predmet_igraca[id][0] == 20 ) {
- new Float: push[ 3 ];
- pev( id, pev_punchangle, push );
- xs_vec_sub( push, cl_pushangle[ id ], push );
- xs_vec_mul_scalar( push, 0.0, push );
- xs_vec_add( push, cl_pushangle[ id ], push );
- set_pev( id, pev_punchangle, push );
- return HAM_IGNORED;
- }
- return HAM_IGNORED;
- }
- public SacuvajBanku( id ) {
- if( is_user_bot( id ) ) return;
- static Sadrzaj[ 32 ];
- formatex( Sadrzaj, charsmax( Sadrzaj ), "%i %i", g_PlayerInfo[ id ][ g_iGold ], g_PlayerInfo[ id ][ g_iSP ] );
- fvault_set_data( "Banka", g_PlayerInfo[ id ][ g_szSteamID ], Sadrzaj );
- }
- public UcitajBanku( id ) {
- if( is_user_bot( id ) ) return;
- static Sadrzaj[ 32 ], Podaci[ 2 ][ 16 ];
- fvault_get_data( "Banka", g_PlayerInfo[ id ][ g_szSteamID ], Sadrzaj, charsmax( Sadrzaj ) );
- parse( Sadrzaj, Podaci[ 0 ], charsmax( Podaci[ ] ), Podaci[ 1 ], charsmax( Podaci[ ] ) );
- g_PlayerInfo[ id ][ g_iGold ] = str_to_num( Podaci[ 0 ] );
- g_PlayerInfo[ id ][ g_iSP ] = str_to_num( Podaci[ 1 ] );
- }
- public ChooseLang(id) {
- new szItem[32], iMenuID;
- formatex(szItem, charsmax(szItem), "\r%L \w:", id, "ML_JEZIK");
- iMenuID = menu_create(szItem, "ChooseLang_Handle");
- for(new i=0; i<sizeof(g_szLangData); i++) {
- formatex(szItem, charsmax(szItem), "\y%s", g_szLangData[i][0]);
- menu_additem(iMenuID, szItem);
- }
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public ChooseLang_Handle(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- if(iItem == MENU_EXIT) {
- menu_destroy(iMenuID);
- return 0;
- }
- set_user_lang(id, g_szLangData[iItem][1]);
- return 0;
- }
- public Shop(id) {
- new szItem[32], iMenuID = menu_create("\rShops \w:", "Shop_Handle");
- for(new i=0; i<sizeof(g_szShopData); i++) {
- formatex(szItem, charsmax(szItem), "\y%L", id, g_szShopData[i]);
- menu_additem(iMenuID, szItem);
- }
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public Shop_Handle(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- switch(iItem) {
- case MENU_EXIT: {
- menu_destroy(iMenuID);
- return 0;
- }
- case 0: ClassicShop(id);
- case 1: GoldShop(id);
- case 2: PowerShop(id);
- }
- return 0;
- }
- public ClassicShop(id) {
- new szItem[86], iMenuID;
- formatex(szItem, charsmax(szItem), "\r%L \w:", id, "ML_OBICAN_SHOP");
- iMenuID = menu_create(szItem, "ClassicShop_Handle");
- for(new i=0; i<sizeof(g_ClassicShopData); i++) {
- formatex(szItem, charsmax(szItem), "\y%L \w[\d%L\w] [\y%L\w: \r%s\y$\w]", id, g_ClassicShopData[i][0], id, g_ClassicShopData[i][1], id, "ML_CENA", g_ClassicShopData[i][2]);
- menu_additem(iMenuID, szItem);
- }
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public ClassicShop_Handle(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- if(iItem == MENU_EXIT) {
- menu_destroy(iMenuID);
- return 0;
- }
- ClassicShop(id);
- if(str_to_num(g_ClassicShopData[iItem][2]) > cs_get_user_money(id)) {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L ^3%L^1, %L ^4%s^3$^1.", id, "ML_NEMATE_NOVCA", id, g_ClassicShopData[iItem][0], id, "ML_TREBA_VAM", g_ClassicShopData[iItem][2]);
- return 1;
- }
- switch(iItem) {
- case 0, 1: {
- if(get_user_health(id) >= g_PlayerInfo[id][g_iMaxEnergy] /*|| g_PlayerInfo[id][g_iClass] == Assassin*/) {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_MAX_ENERGIJA");
- return 0;
- }
- else {
- new iNewEnergy = (get_user_health(id) + ((iItem == 0) ? 50 : 100) < g_PlayerInfo[id][g_iMaxEnergy]) ? get_user_health(id) + ((iItem == 0) ? 50 : 100) : g_PlayerInfo[id][g_iMaxEnergy];
- entity_set_float(id, EV_FL_health, float(iNewEnergy));
- }
- }
- case 2: {
- set_user_gravity(id, get_user_gravity(id) - 0.3);
- entity_set_float(id, EV_FL_speed, entity_get_float(id, EV_FL_speed) + 10.0);
- }
- case 3: {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L", id, "ML_UCITAVAM");
- switch(random_num(0, 13)) {
- case 0: {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L^3 10$!", id, "ML_DOBIO_SI");
- cs_set_user_money(id, cs_get_user_money(id) + 10);
- }
- case 1: {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L^3 %L!", id, "ML_DOBIO_SI", id, "ML_REDBULL");
- set_user_gravity(id,get_user_gravity(id) - 0.3);
- }
- case 2, 5, 6, 8, 11: ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L!", id, "ML_NISI_NISTA");
- case 3: {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L^3 300$!", id, "ML_DOBIO_SI");
- cs_set_user_money(id, cs_get_user_money(id) + 300);
- }
- case 4: {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L^3 10000$!", id, "ML_DOBIO_SI");
- cs_set_user_money(id, cs_get_user_money(id) + 10000);
- }
- case 7: {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L^3 16000$!", id, "ML_IZGUBIO_SI");
- cs_set_user_money(id, cs_get_user_money(id) - 16000);
- }
- case 9: {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L^3 1000 EXP!", id, "ML_DOBIO_SI");
- g_PlayerInfo[id][g_iXP] += 1000;
- ProveriNivo(id);
- }
- case 10: {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L^3 500 EXP!", id, "ML_DOBIO_SI");
- g_PlayerInfo[id][g_iXP] += 500;
- ProveriNivo(id);
- }
- case 12: {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L^3 100 EXP!", id, "ML_DOBIO_SI");
- g_PlayerInfo[id][g_iXP] += 100;
- ProveriNivo(id);
- }
- case 13: GivePerk(id, random_num(1, sizeof(g_szPerksData)-1));
- }
- }
- case 4, 5: {
- if( predmet_igraca[ id ][ 0 ] == 31 ) return 0;
- g_PlayerInfo[id][g_iXP] += (iItem == 4) ? 500 : 1000;
- ProveriNivo(id);
- }
- case 6: GivePerk(id, random_num(1, sizeof(g_szPerksData)-1));
- }
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L ^3%L^1.", id, "ML_KUPIO_SI", id, g_ClassicShopData[iItem][0]);
- cs_set_user_money(id, cs_get_user_money(id) - str_to_num(g_ClassicShopData[iItem][2]));
- return 0;
- }
- public GoldShop(id) {
- new szItem[64], iMenuID;
- formatex(szItem, charsmax(szItem), "\r%L \w:", id, "ML_GOLD_SHOP");
- iMenuID = menu_create(szItem, "GoldShop_Handle");
- for(new i=0; i<sizeof(g_iGoldShopData); i++) {
- formatex(szItem, charsmax(szItem), "\y%L \w[\d%L\w] [\y%L\w: \r%i\yGOLD\w]", id, g_szPerksData[g_iGoldShopData[i][0]][0], id, "ML_PREDMET", id, "ML_CENA", g_iGoldShopData[i][1]);
- menu_additem(iMenuID, szItem);
- }
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public GoldShop_Handle(id, iMenuID, iItem) {
- client_cmd(id, "spk COD/select");
- if(iItem == MENU_EXIT) {
- menu_destroy(iMenuID);
- return 0;
- }
- GoldShop(id);
- if(g_iGoldShopData[iItem][1] > g_PlayerInfo[id][g_iGold]) {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L ^3%L^1, %L ^3%i^4GOLD^1.", id, "ML_NEMATE_GOLDA", id, g_szPerksData[g_iGoldShopData[iItem][0]][0], id, "ML_TREBA_VAM", g_iGoldShopData[iItem][1]);
- return 1;
- }
- for(new i; i<7; i++) {
- if(g_iGoldShopData[iItem][0] == g_iBlockedPerks[g_PlayerInfo[id][g_iClass]][i]) {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L %L.", id, "ML_VASA_KLASA_NEMOZE_PREDMET", id, g_szPerksData[g_iGoldShopData[iItem][0]][0]);
- return 1;
- }
- }
- for(new i; i<sizeof(g_iPerksWithHe); i++) {
- if(g_iGoldShopData[iItem][0] == g_iPerksWithHe[i]) {
- if(is_blocked_map()) {
- client_print(id, print_center, "HE Grenade is Blocked!");
- engclient_cmd(id, "weapon_knife");
- return 1;
- }
- }
- }
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L ^3%L^1.", id, "ML_KUPIO_SI", id, g_szPerksData[g_iGoldShopData[iItem][0]][0]);
- g_PlayerInfo[id][g_iGold] -= g_iGoldShopData[iItem][1];
- GivePerk(id, g_iGoldShopData[iItem][0]);
- return 0;
- }
- public PowerShop(id) {
- new szItem[64], iMenuID;
- formatex(szItem, charsmax(szItem), "\r%L \w:", id, "ML_PSHOP_NAME");
- iMenuID = menu_create(szItem, "PowerShop_Handle");
- for(new i=0; i<sizeof(g_PowerShopData); i++) {
- formatex(szItem, charsmax(szItem), "\y%L \w[\y%L\w: \r%s \ySP\w]", id, g_PowerShopData[i][0], id, "ML_CENA", g_PowerShopData[i][1]);
- menu_additem(iMenuID, szItem);
- }
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public PowerShop_Handle(id, iMenuID, iItem) {
- if(iItem == MENU_EXIT) {
- menu_destroy(iMenuID);
- return 0;
- }
- if(!is_user_alive( id )) return 1;
- if(g_PlayerInfo[id][g_iSP] < str_to_num(g_PowerShopData[iItem][1])) {
- ColorChat(id, TEAM_COLOR, "^4[COD:MW4 Shop] ^1%L ^3%L^1, %L ^3%s ^4SP.", id, "ML_NEMATE_NOVCA", id, g_PowerShopData[iItem][0], id, "ML_TREBA_VAM", g_PowerShopData[iItem][1]);
- return 1;
- }
- switch(iItem) {
- case 0: g_PowerShopInfo[id][PowerShopData_10DMG] = true, c[id] = 0;
- case 1: g_PowerShopInfo[id][PowerShopData_20DMG] = true, c[id] = 1;
- case 2: g_PowerShopInfo[id][PowerShopData_Double] = true, c[id] = 2;
- case 3: g_PowerShopInfo[id][PowerShopData_Triple] = true, c[id] = 3;
- case 4: {
- g_PowerShopInfo[id][PowerShopData_Speed] = true;
- entity_set_float(id, EV_FL_speed, entity_get_float(id, EV_FL_speed) + 15.0)
- c[id] = 4;
- }
- case 5: g_PowerShopInfo[id][PowerShopData_Ammo] = true, c[id] = 5;
- case 6: g_PowerShopInfo[id][PowerShopData_Recoil] = true, c[id] = 6;
- }
- g_PlayerInfo[id][g_iSP] -= str_to_num(g_PowerShopData[iItem][1]);
- ColorChat(id, TEAM_COLOR, "[COD:MW4 Shop] ^1%L ^3%L.", id, "ML_KUPIO_SI", id, g_PowerShopData[iItem][0]);
- return 0;
- }
- public fw_Ham_Spawn_Post(id) {
- if(!is_user_alive( id ) || !is_user_connected( id )) return 0;
- if(g_PlayerInfo[id][g_iNewClass]) {
- g_PlayerInfo[id][g_iClass] = g_PlayerInfo[id][g_iNewClass];
- g_PlayerInfo[id][g_iNewClass] = 0;
- PromeniModel( id, 1 );
- strip_user_weapons(id);
- give_item(id, "weapon_knife");
- UcitajPodatke(id, g_PlayerInfo[id][g_iClass]);
- }
- for(new i=0; i<18; i++) if(g_iBlockedPerks[g_PlayerInfo[id][g_iClass]][i] != 0) if(predmet_igraca[id][0] == g_iBlockedPerks[g_PlayerInfo[id][g_iClass]][i]) GivePerk(id, random_num(1, sizeof(g_szPerksData)-1));
- set_user_visible(id, 225);
- ObrisiIteme(id);
- PostaviLang(id);
- set_user_footsteps( id, 0 );
- g_haskit[id] = false;
- dobio_predmet[id] = false;
- if(cs_get_user_team(id) == CS_TEAM_CT) cs_set_user_defuse(id, 1, random(255), random(255), random(255));
- cod_set_user_sentry_guns(id, 0);
- cod_get_flamethrower(id);
- cod_get_bazooka(id);
- cod_get_compound_bow(id)
- PromeniModel( id, 1 );
- if(!g_PlayerInfo[id][g_iClass]) {
- IzaberiKlasu(id);
- return 0;
- }
- for(new i; i<7; i++) give_weapon_id(id, g_iClassesWeapon[g_PlayerInfo[id][g_iClass]][i]);
- switch(g_PlayerInfo[id][g_iClass]) {
- case GoldMaster: g_PlayerInfo[id][g_iDynamite] = 2;
- case ProSapper: g_PlayerInfo[id][g_iMine] = 5;
- case Crysis: set_user_visible( id, 50 ), g_PlayerInfo[id][g_iRocket] = 2;
- case ProShooter: g_PlayerInfo[id][g_iRocket] = 2;
- case ProMarine: {
- set_user_visible( id, 128 );
- set_user_footsteps( id, 1 );
- }
- case Indian: {
- set_user_footsteps( id, 1 );
- }
- case Commando: g_PlayerInfo[id][g_iDynamite] = 5;
- case Admiral: g_PlayerInfo[ id ][ g_iRocket ] = 5,g_PlayerInfo[id][g_iClassData] = 8;
- case Solider: g_PlayerInfo[id][g_iRocket] = 1, g_PlayerInfo[id][g_iClassData] = 3;
- case VasiljiZaljcev: g_PlayerInfo[id][g_iClassData] = 3;
- case Predator: set_user_visible( id, 50 ),set_user_footsteps(id, 1), cs_set_user_model(id, "predator_class"), set_user_info(id, "model", "predator_class");
- case Hitman: set_user_visible(id, 170),set_user_footsteps(id, 1), cs_set_user_model(id, "hitman_class"), set_user_info(id, "model", "hitman_class");
- case Svestenik: g_haskit[ id ] = true;
- case JSO: g_PlayerInfo[ id ][ g_iMine ] = 2;
- case Ops: give_item( id, "weapon_shield" );
- case Bjegunac: g_PlayerInfo[id][g_iClassData] = 6;
- case GSMaster: g_PlayerInfo[id][g_iClassData] = 4;
- case CrazyShooter: g_PlayerInfo[ id ][ g_iRocket ] = 3;
- case Dante: g_PlayerInfo[id][g_iDynamite] = 5;
- case Mornar: g_PlayerInfo[id][g_iDynamite] = 1;
- case Bazukas: cod_give_bazooka(id);
- case Razarac: g_PlayerInfo[id][g_iDynamite] = 10;
- case Heavy: g_PlayerInfo[id][g_iMine] = 1;
- case MisterijaKisobrana: g_PlayerInfo[id][g_iMine] = 2;
- case FuriosEMan: g_PlayerInfo[id][g_iDynamite] = 2,g_PlayerInfo[ id ][ g_iRocket ] = 1;
- case Inzinjer: cod_set_user_sentry_guns(id, 2),g_PlayerInfo[id][g_iMine] = 5;
- case Batman: set_user_visible( id, 50 );
- case Lovac: g_PlayerInfo[id][g_iMine] = 3;
- case ProBombarder: g_PlayerInfo[id][g_iBomb] = 10;
- case Otrov: g_PlayerInfo[id][g_iPoisonKit] = 3;
- case Madjionicar: {
- if(!random(4)) {
- new CsTeams:iTeam = cs_get_user_team(id);
- cs_set_user_team(id, (iTeam == CS_TEAM_CT) ? CS_TEAM_T : CS_TEAM_CT);
- ExecuteHam(Ham_CS_RoundRespawn, id);
- cs_set_user_team(id, iTeam);
- }
- }
- }
- if(g_PlayerInfo[id][g_iPoints] > 0) DodelaPoena(id);
- g_fLessDamage[id] = 0.7 * (1.0 - floatpower(1.1, -0.112311341 * float(g_PlayerInfo[id][g_iTrim])));
- g_PlayerInfo[id][g_iMaxEnergy] = str_to_num(Klase[g_PlayerInfo[id][g_iClass]][2]) + g_PlayerInfo[id][g_iEnergy] * 2;
- g_fSpeed[id] = STANDARDNA_BRZINA * str_to_float(Klase[g_PlayerInfo[id][g_iClass]][4]) + floatround(g_PlayerInfo[id][g_iStamina] * 1.3);
- switch(predmet_igraca[id][0]) {
- case 1, 44, 60: set_user_footsteps(id, 1);
- case 10: give_item(id, "weapon_hegrenade");
- case 13, 59: give_item(id, "weapon_awp");
- case 16, 57: give_item(id, "weapon_deagle");
- case 17: set_user_armor(id, 500);
- case 18: {
- if(g_PlayerInfo[id][g_iClass] != Assassin) {
- g_PlayerInfo[id][g_iMaxEnergy] += 100;
- g_fSpeed[id] -= 0.4;
- }
- }
- case 19: predmet_igraca[id][1] = 1;
- case 25: {
- if(g_PlayerInfo[id][g_iClass] != Assassin) {
- g_PlayerInfo[id][g_iMaxEnergy] += 50;
- g_fSpeed[id] -= 0.3;
- }
- }
- case 27: predmet_igraca[id][1] = 3;
- case 29: set_user_gravity(id, get_user_gravity(id) - 0.4);
- case 30: g_fSpeed[id] += 1.2;
- case 31: cs_set_user_money(id, 16000);
- case 33: g_fSpeed[id] += 4.0;
- case 35: {
- give_item(id, "weapon_usp");
- give_item(id, "weapon_glock18");
- give_item(id, "weapon_p228");
- give_item(id, "weapon_deagle");
- give_item(id, "weapon_elite");
- }
- case 36: {
- give_item(id, "weapon_hegrenade");
- give_item(id, "weapon_smokegrenade");
- give_item(id, "weapon_flashbang");
- give_item(id, "weapon_flashbang");
- }
- case 45: {
- give_item(id, "weapon_hegrenade");
- PromeniModel( id, 0 );
- }
- case 49: {
- g_PlayerInfo[id][g_iMaxEnergy] += 200;
- g_fSpeed[id] -= 0.4;
- }
- case 51: CreateUAV(id);
- case 55: give_item(id, "weapon_scout");
- case 56, 66: give_item(id, "weapon_m4a1");
- case 48: set_user_gravity(id, get_user_gravity(id) - 0.3);
- case 61: give_item(id, "weapon_galil");
- case 62: {
- give_item(id, "weapon_usp");
- give_item(id, "weapon_mp5navy");
- }
- case 63: give_item(id, "weapon_m3");
- case 64: give_item(id, "weapon_sg550");
- case 65: give_item(id, "weapon_usp");
- case 67: give_item(id, "weapon_ak47");
- case 69: predmet_igraca[id][1] = 5;
- case 70: {
- give_item(id, "weapon_hegrenade");
- give_item(id, "weapon_m4a1");
- give_item(id, "weapon_deagle");
- give_item(id, "weapon_deagle");
- set_user_gravity(id, get_user_gravity(id) - 0.3);
- }
- }
- if( goldVIP[ id ] ) {
- give_item(id, "weapon_hegrenade");
- give_item(id, "weapon_smokegrenade");
- give_item(id, "weapon_flashbang");
- give_item(id, "weapon_flashbang");
- }
- update_ammo(id);
- entity_set_float(id, EV_FL_armorvalue, str_to_float(Klase[g_PlayerInfo[id][g_iClass]][3]));
- entity_set_float(id, EV_FL_health, float(g_PlayerInfo[id][g_iMaxEnergy]));
- return 0;
- }
- public CreateUAV(id) {
- g_bRadar[get_user_team(id) == 1 ? 0 : 1] = true;
- ScanRadar();
- }
- public ScanRadar() {
- static iPlayers[32], iPlayersNum;
- get_players(iPlayers, iPlayersNum, "gh");
- for(new i=0; i<iPlayersNum; i++) {
- new id = iPlayers[i];
- if(!is_user_alive( id ) || !g_bRadar[get_user_team(id) == 1 ? 0 : 1]) continue;
- ContinueRadarFunction(id);
- }
- }
- ContinueRadarFunction(id) {
- static iPlayers[32], iPlayersNum, iPlayerOrigin[3];
- get_players(iPlayers, iPlayersNum, "gh");
- for(new a=0; a<iPlayersNum; a++) {
- new i = iPlayers[a];
- if( !is_user_connected( i ) || !is_user_alive( i ) || !is_user_connected( id ) || is_user_bot( id ) || !is_user_alive( i ) || get_user_team(i) == get_user_team(id)) continue;
- get_user_origin(i, iPlayerOrigin);
- message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("HostagePos"), {0,0,0}, id);
- write_byte(id);
- write_byte(i);
- write_coord(iPlayerOrigin[0]);
- write_coord(iPlayerOrigin[1]);
- write_coord(iPlayerOrigin[2]);
- message_end();
- message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("HostageK"), {0,0,0}, id);
- write_byte(i);
- message_end();
- }
- }
- public fw_LogEvent_RoundStart() {
- g_bFreezeTime = false;
- for(new id=1; id<=g_iMaxPlayers; id++) {
- if(!is_user_alive( id )) continue;
- g_bRadar[0] = g_bRadar[1] = false;
- set_task(0.1, "PostaviBrzinu", id+ZADATAK_POSTAVI_BRZINU);
- if( goldVIP[ id ] ) {
- g_PlayerInfo[id][g_iMaxEnergy] += 50;
- cs_set_user_money(id, cs_get_user_money( id ) + 3000 );
- set_user_armor(id, get_user_armor( id ) + 100 );
- }
- client_cmd(id, "mp3 play %s", g_szStartSounds[random_num(0, sizeof(g_szStartSounds)-1)]);
- }
- }
- public PostaviBrzinu(id) {
- id -= id > 32? ZADATAK_POSTAVI_BRZINU : 0;
- if( Zamrznut[id])
- {
- set_pev(id, pev_velocity, Float:{0.0,0.0,0.0}) // stop motion
- set_pev(id, pev_maxspeed, 1.0) // prevent from moving
- return;
- }
- if(g_PlayerInfo[id][g_iClass]) entity_set_float(id, EV_FL_maxspeed, g_fSpeed[id]);
- }
- public fw_Event_HLTV() {
- g_bFreezeTime = true;
- for(new i; i<7; i++) remove_entity_name(g_szEntsNames[i]);
- }
- public fw_Ham_TakeDamage(Victim, Inflictor, Attacker, Float: fDamage, iDamageBits) {
- if(!is_user_alive( Victim ) || !is_user_connected( Attacker ) || IsKilledTeamMate(Attacker, Victim) || IsSuicide(Attacker, Victim) || !g_PlayerInfo[Attacker][g_iClass]) return HAM_IGNORED;
- if( g_PlayerInfo[ Attacker ][ g_iClass ] == RokerSMoravu && ( iDamageBits & DMG_SLASH ) )
- fDamage = entity_get_float( Victim, EV_FL_health );
- if( predmet_igraca[Victim][0] == 24 ) return HAM_IGNORED;
- new iHealth = floatround( entity_get_float( Victim, EV_FL_health ) );
- new iWeaponID = get_user_weapon(Attacker);
- new bool: DesniKlik = get_user_button( Attacker ) & IN_ATTACK2 ? true : false;
- if(iHealth < 2) return HAM_IGNORED;
- if((predmet_igraca[Victim][0] == 27 || predmet_igraca[Victim][0] == 69) && predmet_igraca[Victim][1] > 0) {
- predmet_igraca[Victim][1] --;
- return HAM_SUPERCEDE;
- }
- if( g_PlayerInfo[Victim][g_iClass] == Solider && g_PlayerInfo[Victim][g_iClassData] > 0 ) {
- g_PlayerInfo[Victim][g_iClassData]--;
- return HAM_SUPERCEDE;
- }
- if(g_PlayerInfo[Victim][g_iTrim] > 0) fDamage -= g_fLessDamage[Victim] * fDamage;
- if(g_PowerShopInfo[Attacker][PowerShopData_10DMG] || g_PowerShopInfo[Attacker][PowerShopData_20DMG]) fDamage += float(g_PowerShopInfo[Attacker][PowerShopData_10DMG] ? 10 : 20);
- if(g_PlayerInfo[Attacker][g_iDamage] > 0) fDamage += float(g_PlayerInfo[Attacker][g_iDamage]/4);
- if(g_PlayerInfo[Victim][g_iLevel] > 1000) fDamage += 200.0;
- if(goldVIP[Attacker]) fDamage += 10.0;
- static Float:Pozicija[3]
- pev( Victim, pev_origin, Pozicija)
- switch(predmet_igraca[Victim][0]) {
- case 2, 3: fDamage -= random_float(1.0, 4.0);
- case 4: fDamage = fDamage * 1.4 + g_PlayerInfo[Attacker][g_iIntelligence];
- case 12: fDamage -= (5.0 < fDamage) ? 5.0 : fDamage;
- case 40: if(iWeaponID == CSW_KNIFE) return HAM_SUPERCEDE;
- case 43: if(iWeaponID == CSW_HEGRENADE) return HAM_SUPERCEDE;
- }
- if( goldVIP[Victim] ) if(iWeaponID == CSW_HEGRENADE) return HAM_SUPERCEDE;
- switch(predmet_igraca[Attacker][0]) {
- case 5: if(!UTIL_In_FOV(Victim, Attacker) && UTIL_In_FOV(Attacker, Victim)) fDamage *= 2.0;
- case 8: if(iWeaponID == CSW_KNIFE && !(get_user_button(Attacker) & IN_ATTACK)) fDamage = float(iHealth);
- case 10: if(iWeaponID == CSW_HEGRENADE) fDamage = float(iHealth);
- case 13: if(iWeaponID == CSW_AWP && (iDamageBits & DMG_BULLET)) fDamage = float(iHealth);
- case 21: fDamage += 10.0;
- case 22: fDamage += 20.0;
- case 34: if(!random(3)) entity_set_float(Attacker, EV_FL_health, floatmin(float(g_PlayerInfo[Attacker][g_iMaxEnergy]), entity_get_float(Attacker, EV_FL_health) + fDamage));
- case 42: if(iDamageBits && DMG_BULLET) client_print(Attacker, print_center, "%d", floatround( entity_get_float( Victim, EV_FL_health ) ) );
- case 45: if(random_num(1, predmet_igraca[Attacker][1]) == 1 && iWeaponID == CSW_HEGRENADE) fDamage = float(iHealth);
- case 55: if(iWeaponID == CSW_SCOUT && !random(4)) fDamage = float(iHealth);
- case 56: if(iWeaponID == CSW_M4A1 && !random(9)) fDamage = float(iHealth);
- case 57: if(iWeaponID == CSW_DEAGLE && !random(6)) fDamage = float(iHealth);
- case 59: if(iWeaponID == CSW_AWP && !random(3)) fDamage = float(iHealth);
- case 60: if(iWeaponID == CSW_HEGRENADE && !random(2)) fDamage = float(iHealth);
- case 61: if(iWeaponID == CSW_GALIL && !random(8)) fDamage = float(iHealth);
- case 62: if((iWeaponID == CSW_USP && !random(7)) || (iWeaponID == CSW_MP5NAVY && !random(7))) fDamage = float(iHealth);
- case 63: if(iWeaponID == CSW_M3 && !random(5)) fDamage = float(iHealth);
- case 64: if(iWeaponID == CSW_SG550 && !random(8)) fDamage = float(iHealth);
- }
- switch(g_PlayerInfo[Victim][g_iClass]) { case Officir, Swat, ProSwat, Kadet, VanHelsing, Jack, Dante: if(iWeaponID == CSW_KNIFE) return HAM_SUPERCEDE; }
- switch(g_PlayerInfo[Attacker][g_iClass]) {
- case ProMarine, Blade, Ninja, Boxer: if(iWeaponID == CSW_KNIFE) fDamage = float(iHealth);
- case Kadet: if(iWeaponID == CSW_SCOUT && !random(5)) fDamage = float(iHealth);
- case Glacier: {
- if( iWeaponID == CSW_AK47 && !random( 8 ) ) fDamage = float( iHealth );
- if( iWeaponID == CSW_M4A1 && !random( 8 ) ) fDamage = float( iHealth );
- }
- case Crysis: if(iWeaponID == CSW_SG552 && !random(9)) fDamage = float(iHealth);
- case Officir: if(iWeaponID == CSW_TMP && !random(8)) fDamage = float(iHealth);
- case GSMaster: {
- if( iWeaponID == CSW_M4A1 && !random( 5 ) ) fDamage = float( iHealth );
- if( iWeaponID == CSW_ELITE && !random( 4 ) ) fDamage = float( iHealth );
- }
- case Madjionicar: {
- if(iWeaponID == CSW_M4A1 && !random(8)) fDamage = float(iHealth);
- if(iWeaponID == CSW_AK47 && !random(7)) fDamage = float(iHealth);
- if(iWeaponID == CSW_G3SG1 && !random(8)) fDamage = float(iHealth);
- if(iWeaponID == CSW_FAMAS && !random(8)) fDamage = float(iHealth);
- if(iWeaponID == CSW_ELITE && !random(7)) fDamage = float(iHealth);
- if(iWeaponID == CSW_KNIFE && !random(4)) fDamage = float(iHealth);
- if(iWeaponID == CSW_HEGRENADE) fDamage = float(iHealth);
- }
- case Mornar: if( iWeaponID == CSW_MAC10 && !random( 10 ) ) fDamage = float( iHealth );
- case Snajperista: {
- if( iWeaponID == CSW_AWP && !random( 2 ) ) fDamage = float( iHealth );
- if( iWeaponID == CSW_DEAGLE && !random( 4 ) ) fDamage = float( iHealth );
- }
- case JSO: if( iWeaponID == CSW_HEGRENADE ) fDamage = float( iHealth );
- case CicaDraza: if( iWeaponID == CSW_AK47 && !random( 5 ) ) fDamage = float( iHealth );
- case Ops: if( iWeaponID == CSW_DEAGLE && !random( 5 ) ) fDamage = float( iHealth );
- case Gangster: {
- if( iWeaponID == CSW_DEAGLE && !random( 4 ) ) fDamage = float( iHealth );
- if( iWeaponID == CSW_ELITE && !random( 6 ) ) fDamage = float( iHealth );
- }
- case ProfesionalniVojnik: if( iWeaponID == CSW_AK47 && !random( 10 ) ) fDamage = float( iHealth );
- case Bjegunac: {
- if(iWeaponID == CSW_HEGRENADE) fDamage = float(iHealth);
- if(iWeaponID == CSW_M4A1 && !random(6)) fDamage = float(iHealth);
- }
- case Price: {
- if(iWeaponID == CSW_USP && !random(3)) fDamage = float(iHealth);
- if(iWeaponID == CSW_G3SG1 && !random(5)) fDamage = float(iHealth);
- }
- case ProShooter: {
- if(iWeaponID == CSW_M4A1 && !random(10)) fDamage = float(iHealth);
- if(iWeaponID == CSW_AWP && !random(3)) fDamage = float(iHealth);
- }
- case Robot: if(iWeaponID == CSW_M3 && !random(3)) fDamage = float(iHealth);
- case Svestenik: {
- if(iWeaponID == CSW_MP5NAVY && !random(7)) fDamage = float(iHealth);
- if(iWeaponID == CSW_USP && !random(4)) fDamage = float(iHealth);
- if( !random( 5 ) ) client_cmd( Victim, "drop" );
- }
- case Assassin: if( iWeaponID == CSW_KNIFE && DesniKlik ) fDamage = float( iHealth );
- case Hitman: if(iWeaponID == CSW_KNIFE && !(get_user_button(Attacker) & IN_ATTACK)) fDamage = float(iHealth);
- case BryanMils: if(iWeaponID == CSW_FIVESEVEN) fDamage *= 3.0;
- case Stalker: if(iWeaponID == CSW_AWP) fDamage = float(iHealth);
- case RobinHud: if(iWeaponID == CSW_SCOUT) fDamage = float(iHealth);
- case Skakac: if(iWeaponID == CSW_ELITE && !random(6)) fDamage = float(iHealth);
- case ProSwat, Exit: if(iWeaponID == CSW_M4A1 && !random(5)) fDamage = float(iHealth);
- case Ghost: {
- if(iWeaponID == CSW_AWP) fDamage = float(iHealth);
- if(iWeaponID == CSW_KNIFE) fDamage = float(iHealth);
- }
- case Stalin: if(iWeaponID == CSW_AK47 && !random(4)) fDamage = float(iHealth);
- case GoldMaster: if(iWeaponID == CSW_UMP45 && !random(5)) fDamage = float(iHealth);
- case VasiljiZaljcev: if(iWeaponID == CSW_AWP && !random(1)) fDamage = float(iHealth);
- case Shredder: if(iWeaponID == CSW_AK47 && !random(10)) fDamage = float(iHealth);
- case FuriosEMan: {
- if(iWeaponID == CSW_DEAGLE && !random(6)) fDamage = float(iHealth);
- if(iWeaponID == CSW_USP && !random(4)) fDamage = float(iHealth);
- if(iWeaponID == CSW_ELITE && !random(5)) fDamage = float(iHealth);
- }
- case Spiderman: if((iWeaponID == CSW_XM1014 && !random(4)) || (iWeaponID == CSW_M3 && !random(3))) fDamage = float(iHealth);
- case Heavy: {
- if(iWeaponID == CSW_M249 && !random(9)) fDamage = float(iHealth);
- if(iWeaponID == CSW_USP && !random(8)) fDamage = float(iHealth);
- if( !random( 8 ) ) client_cmd( Victim, "drop" );
- }
- case JohnWayane: if(iWeaponID == CSW_ELITE && !random(6) ) fDamage = float(iHealth);
- case Predator: {
- if(iWeaponID == CSW_SCOUT) fDamage = float(iHealth);
- if(iWeaponID == CSW_XM1014 && !random(10)) fDamage = float(iHealth);
- if( iWeaponID == CSW_DEAGLE ) {
- EfekatZamrzavanja( Victim );
- EfekatZamrzavanjaPrsten( Pozicija );
- }
- }
- case Ranger: {
- if(iWeaponID == CSW_M4A1 && !random(7)) fDamage = float(iHealth);
- if(iWeaponID == CSW_AK47 && !random(7)) fDamage = float(iHealth);
- }
- case AngryMax: if(iWeaponID == CSW_AWP) fDamage = float( iHealth );
- case Dante: if( iWeaponID == CSW_MP5NAVY && !random( 5 ) ) fDamage = float( iHealth );
- case VanHelsing: if( iWeaponID == CSW_SCOUT && !random( 10 )) fDamage = float(iHealth);
- case Rusher: if( iWeaponID == CSW_M3 && !random( 4 )) fDamage = float(iHealth)
- case ProAssassin: {
- if(iWeaponID == CSW_M249 && !random(6)) fDamage = float(iHealth);
- if( iWeaponID == CSW_KNIFE && DesniKlik ) fDamage = float( iHealth );
- }
- case RokerSMoravu: if(iWeaponID == CSW_SCOUT && !random(6)) fDamage = float(iHealth);
- case Lopov: {
- if(!random(4)) entity_set_float(Attacker, EV_FL_health, floatmin(float(g_PlayerInfo[Attacker][g_iMaxEnergy]), entity_get_float(Attacker, EV_FL_health) + fDamage));
- if(iWeaponID == CSW_M4A1 && !random(4)) fDamage = float(iHealth);
- }
- case Lovac: {
- if(iWeaponID == CSW_M4A1 && !random(4)) fDamage = float(iHealth);
- if(iWeaponID == CSW_USP && !random(7)) fDamage = float(iHealth);
- if(iWeaponID == CSW_SCOUT && !random(7)) fDamage = float(iHealth);
- }
- case Batman: {
- if(iWeaponID == CSW_M4A1 && !random(6)) fDamage = float(iHealth);
- if(iWeaponID == CSW_KNIFE && !random(3)) fDamage = float(iHealth);
- }
- case Razarac: {
- if(iWeaponID == CSW_AK47 && !random(10)) fDamage = float(iHealth);
- if(iWeaponID == CSW_DEAGLE && !random(6)) fDamage = float(iHealth);
- }
- case Inzinjer: {
- if(iWeaponID == CSW_AK47 && !random(6)) fDamage = float(iHealth);
- if(iWeaponID == CSW_USP && !random(4)) fDamage = float(iHealth);
- }
- case IronMan: {
- if(iWeaponID == CSW_MP5NAVY && !random(8)) fDamage = float(iHealth);
- if(iWeaponID == CSW_SG552 && !random(8)) fDamage = float(iHealth);
- }
- }
- if( g_PlayerInfo[Attacker][g_iClass] == Blade && iWeaponID == CSW_ELITE && !random(3)) fDamage = float(iHealth);
- if( g_PlayerInfo[Attacker][g_iClass] == Assassin && iWeaponID == CSW_DEAGLE && !random(4) ) fDamage = float( iHealth );
- if( g_PlayerInfo[Attacker][g_iClass] == AssassinCopy && iWeaponID == CSW_DEAGLE && !random(4) ) fDamage = float( iHealth );
- if(predmet_igraca[Victim][0] == 26 && random_num(1, predmet_igraca[Victim][1]) == 1) {
- SetHamParamEntity(3, Victim);
- SetHamParamEntity(1, Attacker);
- }
- if( g_PlayerInfo[Victim][g_iClass] == Stalin && ( fDamage == float( iHealth ) ) )
- return HAM_SUPERCEDE;
- SetHamParamFloat(4, fDamage);
- return HAM_IGNORED;
- }
- public fw_Event_Damage(Victim) {
- new Attacker = get_user_attacker(Victim);
- new iDamage = read_data(2);
- if(!is_user_alive( Attacker ) || IsSuicide(Attacker, Victim) || IsKilledTeamMate(Attacker, Victim) || !g_PlayerInfo[Attacker][g_iClass]) return 1;
- if(predmet_igraca[Attacker][0] == 12 && random_num(1, predmet_igraca[Victim][1]) == 1 && is_user_alive( Victim )) UTIL_ScreenFade(Victim, {255, 155, 50}, 16384.0, 16384.0, 230);
- set_hudmessage(170, 255, 255, -1.0, -1.0, 0, 2.0, 3.0);
- ShowSyncHudMsg(Attacker, g_HudInfo[HudData_Damage], ">X<");
- while(iDamage > 20) {
- iDamage -= 20;
- g_PlayerInfo[Attacker][g_iXP] ++;
- }
- ProveriNivo(Attacker);
- return 0;
- }
- public fw_Event_StatusValueTeam(id) if(!is_user_bot( id ) && is_user_connected( id )) g_PlayerInfo[id][g_IsFriend] = read_data(2);
- public fw_Event_StatusValue(id) if(!is_user_bot( id ) && is_user_connected( id )) CallOfDutyAim(id, ((g_PlayerInfo[id][g_IsFriend] == 1) ? "50 250 50" : "255 0 0"));
- public fw_Event_StatusValueHide(id) if(!is_user_bot( id ) && is_user_connected( id )) CallOfDutyAim(id, "250 250 50");
- public fw_Event_DeathMsg() {
- static Attacker, Victim, HeadShot;
- Attacker = read_data(1);
- Victim = read_data(2);
- HeadShot = read_data(3);
- if(!IsClientPresent(Attacker)) return PLUGIN_CONTINUE;
- new iWeaponID = get_user_weapon(Attacker);
- if(!IsKilledTeamMate(Attacker, Victim) && g_PlayerInfo[Attacker][g_iClass]) {
- new iKillXP = get_pcvar_num(g_CvarInfo[CvarData_DayXP]);
- new iNovoIskustvo = get_pcvar_num(g_CvarInfo[CvarData_DayXP]);
- new iNightXP = get_pcvar_num(g_CvarInfo[CvarData_NightXP]);
- new iHSXP = get_pcvar_num(g_CvarInfo[CvarData_HeadShotXP]);
- if(predmet_igraca[Attacker][0] == 48) iNovoIskustvo += iKillXP*3;
- if(g_PlayerInfo[Attacker][g_iClass] == VasiljiZaljcev || predmet_igraca[Attacker][0] == 15 && g_iWeaponsData[1][iWeaponID] != -1) {
- new iNovaEnergija = (get_user_health(Attacker) + 20 < g_PlayerInfo[Attacker][g_iMaxEnergy]) ? get_user_health(Attacker) + 20 : g_PlayerInfo[Attacker][g_iMaxEnergy];
- set_user_clip(Attacker, g_iWeaponsData[1][iWeaponID]);
- if( g_PlayerInfo[Attacker][g_iClass] != VasiljiZaljcev && predmet_igraca[Attacker][0] == 15 )
- entity_set_float(Attacker, EV_FL_health, float(iNovaEnergija));
- }
- if(predmet_igraca[Attacker][0] == 50) entity_set_float(Attacker, EV_FL_health, entity_get_float(Attacker, EV_FL_health) + 100.0);
- if(g_PlayerInfo[Victim][g_iClass] == Kamikaza) Explode(Victim);
- if(!predmet_igraca[Attacker][0]) GivePerk(Attacker, random_num(1, sizeof g_szPerksData-2));
- if(predmet_igraca[Attacker][0] == 14) {
- new iNovaEnergija = (get_user_health(Attacker) + 50 < g_PlayerInfo[Attacker][g_iMaxEnergy]) ? get_user_health(Attacker) + 50 : g_PlayerInfo[Attacker][g_iMaxEnergy];
- entity_set_float(Attacker, EV_FL_health, float(iNovaEnergija));
- }
- if( goldVIP[ Attacker ] ) {
- new BonusHp, BonusAp, BonusPare, BonusXP;
- if( HeadShot ) BonusHp = 20
- else BonusHp = 15
- if( HeadShot ) BonusAp = 20
- else BonusAp = 15
- if( HeadShot ) BonusPare = 20
- else BonusPare = 15
- if( HeadShot ) BonusXP = 30
- else BonusXP = 40
- set_user_health( Attacker, get_user_health( Attacker ) + BonusHp );
- set_user_armor( Attacker, get_user_armor( Attacker ) + BonusAp );
- cs_set_user_money( Attacker, cs_get_user_money( Attacker ) + BonusPare );
- g_PlayerInfo[Attacker][g_iXP] += BonusXP;
- }
- g_PlayerInfo[Attacker][g_iGold] += HeadShot ? get_pcvar_num(g_CvarInfo[CvarData_KillGoldHs]) : get_pcvar_num(g_CvarInfo[CvarData_KillGold]);
- g_PlayerInfo[ Attacker ][ g_iSP ] += HeadShot ? get_pcvar_num(g_CvarInfo[CvarData_KillSpHs]) : get_pcvar_num(g_CvarInfo[CvarData_KillSp]);
- if(predmet_igraca[Attacker][0] == 46) if(!random(3)) g_PlayerInfo[Attacker][g_iGold] ++;
- if(HeadShot) g_PlayerInfo[Attacker][g_iXP] += iHSXP;
- new Time[10];
- get_time("%H", Time, charsmax(Time));
- new DnevnoVreme = (equal(Time, "9") || equal(Time, "10") || equal(Time, "11") || equal(Time, "12") || equal(Time, "13") || equal(Time, "14") || equal(Time, "15") || equal(Time, "16") || equal(Time, "17") || equal(Time, "18") || equal(Time, "19") || equal(Time, "20") || equal(Time, "21") || equal(Time, "22"));
- if(DnevnoVreme) g_PlayerInfo[Attacker][g_iXP] += iNovoIskustvo;
- else g_PlayerInfo[Attacker][g_iXP] += iNightXP;
- set_hudmessage(255, 212, 0, 0.50, 0.33, 1, 6.0, 4.0);
- ShowSyncHudMsg(Attacker, g_HudInfo[HudData_XP], "+%iXP", iNovoIskustvo);
- g_PlayerInfo[Attacker][g_iXP] += iNovoIskustvo;
- ObrisiEntitie(Victim);
- }
- ProveriNivo(Attacker);
- if(predmet_igraca[Victim][0] == 7 && random_num(1, predmet_igraca[Victim][1]) == 1) set_task(0.1, "Provera", Victim+ZADATAK_PROVERA);
- return PLUGIN_CONTINUE;
- }
- public fw_EmitSound(id, iChannel, const szSample[], Float: fVolume, Float: fAttn, iFlags, iPitch) {
- if(!IsEntityPlayer(id)) return FMRES_IGNORED;
- new iWeaponID = get_user_weapon(id);
- switch(g_PlayerInfo[id][g_iClass]) {
- case Wolverine: {
- if(iWeaponID == CSW_KNIFE) {
- if(equal(szSample, "weapons/knife_hit1.wav")) {
- emit_sound(id, iChannel, "weapons/hit1_wolverine.wav", fVolume, fAttn, iFlags, iPitch);
- return FMRES_SUPERCEDE;
- }
- if(equal(szSample, "weapons/knife_hit2.wav")) {
- emit_sound(id, iChannel, "weapons/hit2_wolverine.wav", fVolume, fAttn, iFlags, iPitch);
- return FMRES_SUPERCEDE;
- }
- if(equal(szSample, "weapons/knife_hit3.wav")) {
- emit_sound(id, iChannel, "weapons/hit3_wolverine.wav", fVolume, fAttn, iFlags, iPitch);
- return FMRES_SUPERCEDE;
- }
- if(equal(szSample, "weapons/knife_hit4.wav")) {
- emit_sound(id, iChannel, "weapons/hit4_wolverine.wav", fVolume, fAttn, iFlags, iPitch);
- return FMRES_SUPERCEDE;
- }
- if(equal(szSample, "weapons/knife_hitwall1.wav")) {
- emit_sound(id, iChannel, "weapons/wall1_wolverine.wav", fVolume, fAttn, iFlags, iPitch);
- return FMRES_SUPERCEDE;
- }
- if(equal(szSample, "weapons/knife_hitwall2.wav")) {
- emit_sound(id, iChannel, "weapons/wall2_wolverine.wav", fVolume, fAttn, iFlags, iPitch);
- return FMRES_SUPERCEDE;
- }
- if(equal(szSample, "weapons/knife_stab.wav") || equal(szSample, "weapons/knife_slash1.wav") || equal(szSample, "weapons/knife_slash1.wav")) return FMRES_SUPERCEDE;
- }
- }
- }
- if( equal( szSample, "common/wpn_denyselect.wav" ) ) {
- KoristiSp( id );
- return FMRES_SUPERCEDE;
- }
- return FMRES_IGNORED;
- }
- public KoristiSp( id ) {
- if(g_PlayerInfo[id][g_iMedKit] > 0) CreateMedKit(id);
- if(g_PlayerInfo[id][g_iRocket] > 0) CreateRocket(id);
- if(g_PlayerInfo[id][g_iMine] > 0) CreateMine(id);
- if(g_PlayerInfo[id][g_iDynamite]> 0) CreateDynamite(id);
- if(g_PlayerInfo[id][g_iPoisonKit]> 0) CreatePoisonKit(id);
- if(g_PlayerInfo[id][g_iBomb] > 0) CreateBomb(id);
- switch( g_PlayerInfo[ id ][ g_iClass ] ) {
- case Wolverine: {
- if(get_user_weapon( id ) != CSW_KNIFE) engclient_cmd(id, "weapon_knife");
- entity_set_string(id, EV_SZ_viewmodel, ((g_PlayerInfo[id][g_iClassData] == 0) ? g_szModels[MDL_V_WOLVERINE_CLAWS] : g_szModels[MDL_V_WOLVERINE]));
- entity_set_string(id, EV_SZ_weaponmodel, ((g_PlayerInfo[id][g_iClassData] == 0) ? g_szModels[MDL_P_WOLVERINE_CLAWS] : g_szModels[MDL_P_WOLVERINE]));
- entity_set_float(id, EV_FL_speed, ((g_PlayerInfo[id][g_iClassData] == 0) ? (entity_get_float(id, EV_FL_speed) + 5.0) : (entity_get_float(id, EV_FL_speed) - 5.0)));
- entity_set_float(id, EV_FL_gravity, ((g_PlayerInfo[id][g_iClassData] == 0) ? 0.5 : 0.8));
- emit_sound(id, CHAN_WEAPON, "ExitCOD/claws_off_wolverine.wav", VOL_NORM, ATTN_NORM, 0, PITCH_NORM);
- g_PlayerInfo[id][g_iClassData] = g_PlayerInfo[id][g_iClassData] ? 0 : 1;
- }
- }
- return PLUGIN_CONTINUE;
- }
- public client_infochanged(id) {
- new szName[32];
- get_user_name(id, szName, charsmax(szName));
- if(!equal(g_PlayerInfo[id][g_szName], szName)) copy(g_PlayerInfo[id][g_szName], 31, szName);
- }
- public UcitajVipove( id ) {
- new Steam_ID[ 32 ];
- get_user_authid( id, Steam_ID, 31 );
- new broj_linija = file_size( "addons/amxmodx/configs/CODMW/VIP/Vipovi.ini", 1 );
- new linija[ 100 ], broj;
- for( new i = 0; i < broj_linija; i++ ) {
- read_file( "addons/amxmodx/configs/CODMW/VIP/Vipovi.ini", i, linija, 99, broj )
- if( broj > 0 && containi( linija, Steam_ID ) != -1 )
- goldVIP[ id ] = true;
- }
- return PLUGIN_HANDLED;
- }
- public client_putinserver(id) {
- DeleteSkills(id);
- ObrisiZadatke(id);
- Obrisipredmet(id);
- ObrisiIteme(id);
- PostaviLang(id);
- UcitajBanku( id );
- new iHour;
- time(iHour);
- new bool: bDnevnoVreme = (9 <= iHour <= 23);
- if( bDnevnoVreme )
- set_task( 1.0, "UcitajVipove", id ),
- set_task( 1.0, "UsaoVIP", id );
- else
- goldVIP[ id ] = true;
- get_user_authid(id, Steam_ID[id], 34);
- get_user_authid(id, g_Data[id][Data_SteamID], 31);
- if (!str_to_num(g_Data[id][Data_SteamID][10]))
- return;
- get_user_name(id, g_Data[id][Data_Name], 31);
- if (!TrieKeyExists(g_Name, g_Data[id][Data_SteamID]))
- AddRank(id);
- else
- LoadData(id);
- UpdateRank(id, true);
- new nv,data[32];
- get_auth(id,g_player[id][key],charsmax(g_player[][key]));
- g_player[id][mtime]=get_systime();
- g_player[id][ftime]=false;
- formatex(data,charsmax(data),"%d",g_player[id][mtime]);
- if((nv=nvault_open(NV_NAME))==INVALID_HANDLE)
- return;
- if(!nvault_lookup(nv,g_player[id][key],data,charsmax(data),g_player[id][mtime])) {
- nvault_set(nv,g_player[id][key],data);
- g_player[id][ftime]=true;
- }
- nvault_close(nv);
- }
- public client_authorized(id) {
- if(is_user_bot( id )) return;
- client_cmd(id, "con_color 255+155+50");
- get_user_authid(id, g_PlayerInfo[id][g_szSteamID], 31);
- get_user_name(id, g_PlayerInfo[id][g_szName], 31);
- get_user_ip(id, g_PlayerInfo[id][g_szIP], 20, 1);
- set_task( 10.0, "Rkl", id );
- set_flags(id);
- Zamrznut[ id ] = false
- }
- public client_disconnect(id) {
- SacuvajBanku( id );
- SacuvajPodatke(id);
- DeleteSkills(id);
- ObrisiZadatke(id);
- Obrisipredmet(id);
- ObrisiIteme(id);
- ObrisiEntitie(id);
- g_haskit[id] = false;
- static ent;
- while((ent = fm_find_ent_by_owner(ent, "fake_corpse", id)) != 0) fm_remove_entity(ent)
- g_PlayerInfo[id][g_szUserPrivilegies][0] = '^0';
- Zamrznut[ id ] = false
- goldVIP[ id ] = false;
- UpdateRank( id, true );
- get_user_authid( id, g_Data[ id ][ Data_SteamID ], 31 );
- if( !str_to_num( g_Data[ id ][ Data_SteamID ][ 10 ] ) )
- return;
- get_user_name( id, g_Data[ id ][ Data_Name ], 31 );
- if( !TrieKeyExists( g_Name, g_Data[ id ][ Data_SteamID ] ) ) AddRank( id );
- else LoadData( id );
- }
- public ObrisiIteme(id) {
- g_PlayerInfo[id][g_iRocket] = 0;
- g_PlayerInfo[id][g_iDynamite] = 0;
- g_PlayerInfo[id][g_iMine] = 0;
- g_PlayerInfo[id][g_iMedKit] = 0;
- g_PlayerInfo[id][g_iPoisonKit] = 0;
- g_PlayerInfo[id][g_iBomb] = 0;
- }
- public ObrisiEntitie(id) {
- new iEnt;
- for(new i=0; i<6; i++) {
- iEnt = find_ent_by_class(0, g_szEntsNames[i]);
- while(iEnt > 0) {
- if(entity_get_edict(iEnt, EV_ENT_owner) == id) remove_entity(iEnt);
- iEnt = find_ent_by_class(iEnt, g_szEntsNames[i]);
- }
- }
- }
- public DeleteSkills(id) {
- g_PlayerInfo[id][g_iClass] = 0;
- g_PlayerInfo[id][g_iLevel] = 0;
- g_PlayerInfo[id][g_iXP] = 0;
- g_PlayerInfo[id][g_iPoints] = 0;
- g_PlayerInfo[id][g_iEnergy] = 0;
- g_PlayerInfo[id][g_iIntelligence] = 0;
- g_PlayerInfo[id][g_iTrim] = 0;
- g_PlayerInfo[id][g_iStamina] = 0;
- g_PlayerInfo[id][g_iDamage] = 0;
- g_fSpeed[id] = 0.0;
- g_PlayerInfo[id][g_iMaxEnergy] = 0;
- g_PlayerInfo[id][g_iAddNumber] = 0;
- g_PlayerInfo[ id ][ g_iSP ] = 0;
- g_haskit[id] = false;
- dobio_predmet[id] = false;
- for(new PowerShopData:i=PowerShopData_10DMG; i<PowerShopData; i++) g_PowerShopInfo[id][i] = false;
- }
- public ObrisiZadatke(id) {
- remove_task(id+ZADATAK_POSTAVI_BRZINU);
- remove_task(id+ZADATAK_PROVERA);
- }
- AddRank( id ) {
- g_Data[ id ][ Data_Level ] = 1;
- ArrayPushString( g_SteamID, g_Data[ id ][ Data_SteamID ] );
- TrieSetString( g_Name, g_Data[ id ][ Data_SteamID ], g_Data[ id ][ Data_Name ] );
- }
- LoadData( id )
- TrieGetCell( g_PlayerLevel, g_Data[ id ][ Data_SteamID ], g_Data[ id ][ Data_Level ] );
- UpdateRank( id, bool:Ime ) {
- if( Ime )
- TrieSetString( g_Name, g_Data[ id ][ Data_SteamID ], g_Data[ id ][ Data_Name ] );
- TrieSetCell( g_PlayerLevel, g_Data[ id ][ Data_SteamID ], g_Data[ id ][ Data_Level ] );
- return PLUGIN_CONTINUE;
- }
- public UsaoVIP( id ) {
- if( goldVIP[ id ] ) {
- new name[ 32 ];
- get_user_name( id, name, 31 )
- set_dhudmessage( 0, 255, 255, -1.0, -1.0, 0, 6.0, 6.0 )
- show_dhudmessage( 0, "VIP = %s je usao na server", name );
- }
- }
- public SayRank( id ) {
- new Rank = GetPosition( id );
- ColorChat( id, TEAM_COLOR, "^4[COD:MW]^1 %L^3 %d^1 %L^3 %d^1 %L^3 %d.", id, "lvl_rank", Rank, id, "od", ArraySize( g_SteamID ), id, "sa_najvecim", g_Data[ id ][ Data_Level ] );
- return PLUGIN_HANDLED
- }
- public SayTop15( id ) {
- WriteTop15( );
- set_task( 1.0, "ShowMotd", id )
- return PLUGIN_HANDLED
- }
- public ShowMotd( id )
- show_motd( id, g_Top15, "Level - Top 15" );
- public SortRanks( Array:SteamID, Rank1, Rank2 ) {
- static SteamID1[ 32 ];
- ArrayGetString( SteamID, Rank1, SteamID1, 31 );
- static SteamID2[ 32 ];
- ArrayGetString( SteamID, Rank2, SteamID2, 31 );
- static iLevel1;
- TrieGetCell( g_PlayerLevel, SteamID1, iLevel1 );
- static iLevel2;
- TrieGetCell( g_PlayerLevel, SteamID2, iLevel2 );
- if( iLevel1 < iLevel2 )
- return 1;
- else if( iLevel1 > iLevel2 )
- return -1;
- return 0;
- }
- GetPosition( id ) {
- static Rank, Size, SteamID[32];
- for( Rank = 0, Size = ArraySize( g_SteamID ); Rank < Size; Rank++ ) {
- ArrayGetString( g_SteamID, Rank, SteamID, 31 );
- if( equal( SteamID, g_Data[ id ][ Data_SteamID ] ) )
- return Rank + 1;
- }
- return 0;
- }
- WriteTop15( ) {
- static Length, Rank, Size, SteamID[ 32 ], Ime[ 32 ], iLevel;
- Length = formatex( g_Top15[ Length ], 2047 - Length, "<meta charset=UTF-8><style>body{background:#E6E6E6;font-family:Verdana}th{background:#F5F5F5;color:#A70000;padding:6px;text-align:left}td{padding:2px 6px}table{color:#333;background:#E6E6E6;font-size:10px;font-family:Georgia;border:2px solid #D9D9D9}h2,h3{color:#333;}#c{background:#FFF}img{height:10px;background:#14CC00;margin:0 3px}#r{height:10px;background:#CC8A00}#clr{background:none;color:#A70000;font-size:20px;border:0}</style>" )
- Length += formatex( g_Top15[ Length ], 2047 - Length, "<body><table width=100%% border=0 align=center cellpadding=0 cellspacing=1>" )
- Length += formatex( g_Top15[ Length ], 2047 - Length, "<body><tr><th>#<th>Nick<th>Level</tr>" )
- for( Rank = 0, Size = min( ArraySize( g_SteamID ), 15 ); Rank < Size; Rank++ )
- {
- ArrayGetString( g_SteamID, Rank, SteamID, 31 );
- TrieGetString( g_Name, SteamID, Ime, 31 );
- TrieGetCell( g_PlayerLevel, SteamID, iLevel );
- new szFixedName[ charsmax( Ime ) * 5 + 1 ];
- MakeMOTDSafe( Ime, szFixedName, charsmax( szFixedName ), 32 );
- Length += formatex( g_Top15[ Length ], 2047 - Length, "<tr><td>%d<td>%s<td>%d", Rank + 1, Ime, iLevel )
- }
- }
- MakeMOTDSafe( const szInput[ ], szOutput[ ], const iOutputLen, const iMaxChars = 0 ) {
- new iMax = iOutputLen / 5;
- copy( szOutput, iMax, szInput );
- replace_all( szOutput, iOutputLen, "&", "&" );
- replace_all( szOutput, iOutputLen, "<", "<" );
- replace_all( szOutput, iOutputLen, ">", ">" );
- new iLastIndex, i, cChar;
- while( ( cChar = szOutput[ i ] ) ) {
- if( cChar == '&' ) {
- if( equali( szOutput[ i ], "<", 4 ) || equali( szOutput[ i ], ">", 4 ) )
- i += 3;
- else if( equali( szOutput[ i ], "&", 5 ) )
- i += 4;
- }
- i++;
- if( 0 < iMaxChars < i )
- break;
- iLastIndex = i;
- }
- szOutput[ iLastIndex ] = 0;
- }
- public set_flags(id) {
- g_PlayerInfo[id][g_szUserPrivilegies][0] = '^0';
- if(TrieKeyExists(tCharacters, g_PlayerInfo[id][g_szSteamID])) {
- static szTrieData[2][64], szPassword[32];
- get_user_info(id, "_pw", szPassword, 31);
- TrieGetString(tCharacters, g_PlayerInfo[id][g_szSteamID], szTrieData[0], 63);
- TrieGetString(tPassword, g_PlayerInfo[id][g_szSteamID], szTrieData[1], 63);
- if(!szTrieData[1][0]) copy(g_PlayerInfo[id][g_szUserPrivilegies], 63, szTrieData[0]);
- else if(equal(szPassword, szTrieData[1])) copy(g_PlayerInfo[id][g_szUserPrivilegies], 63, szTrieData[0]);
- else server_cmd("kick #%d ^"Invalid Password^"", get_user_userid(id));
- }
- else if(TrieKeyExists(tCharacters, g_PlayerInfo[id][g_szName])) {
- static szTrieDatas[2][64], szPassword[32];
- get_user_info(id, "_pw", szPassword, 31);
- TrieGetString(tCharacters, g_PlayerInfo[id][g_szName], szTrieDatas[0], 63);
- TrieGetString(tPassword, g_PlayerInfo[id][g_szName], szTrieDatas[1], 63);
- if(!szTrieDatas[1][0]) copy(g_PlayerInfo[id][g_szUserPrivilegies], 63, szTrieDatas[0]);
- else if(equal(szPassword, szTrieDatas[1])) copy(g_PlayerInfo[id][g_szUserPrivilegies], 63, szTrieDatas[0]);
- else server_cmd("kick #%d ^"Invalid Password^"", get_user_userid(id));
- }
- else if(TrieKeyExists(tCharacters, g_PlayerInfo[id][g_szIP])) {
- static szTrieDatass[2][64], szPassword[32];
- get_user_info(id, "_pw", szPassword, 31);
- TrieGetString(tCharacters, g_PlayerInfo[id][g_szIP], szTrieDatass[0], 63);
- TrieGetString(tPassword, g_PlayerInfo[id][g_szIP], szTrieDatass[1], 63);
- if(!szTrieDatass[1][0]) copy(g_PlayerInfo[id][g_szUserPrivilegies], 63, szTrieDatass[0]);
- else if(equal(szPassword, szTrieDatass[1])) copy(g_PlayerInfo[id][g_szUserPrivilegies], 63, szTrieDatass[0]);
- else server_cmd("kick #%d ^"Invalid Password^"", get_user_userid(id));
- }
- }
- public OpisSvihPredmeta(id) {
- static iMenuID, szItem[28];
- formatex(szItem, charsmax(szItem), "\r%L \w:", id, "ML_IZABERI_PREDMET");
- iMenuID = menu_create(szItem, "OpisSvihPredmeta_Handle");
- for(new i=1; i <sizeof(g_szPerksData); i++) {
- formatex(szItem, charsmax(szItem), "\y%L", id, g_szPerksData[i][0]);
- menu_additem(iMenuID, szItem);
- }
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public OpisSvihPredmeta_Handle(id, iMenuID, iItem) {
- if(iItem++ == MENU_EXIT) {
- menu_destroy(iMenuID);
- return 0;
- }
- ShowPerkDescription(id, iItem, 0);
- return 0;
- }
- public OpisKlase(id) {
- static iMenuID, szItem[28];
- formatex(szItem, charsmax(szItem), "\r%L \w:", id, "ML_IZABERI_KLASE");
- iMenuID = menu_create(szItem, "OpisKlase_Handle");
- for(new i=1; i<sizeof(g_szFractions); i++) {
- formatex(szItem, charsmax(szItem), "%L", id, g_szFractions[i]);
- menu_additem(iMenuID, szItem);
- }
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public OpisKlase_Handle(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- if(iItem == MENU_EXIT) {
- menu_destroy(iMenuID);
- return 0;
- }
- iItem ++;
- g_PlayerInfo[id][g_iFraction] = iItem;
- new iMenuID, szItem[64];
- formatex(szItem, charsmax(szItem), "\r%L \w:", id, "ML_IZABERI_KLASU");
- iMenuID = menu_create(szItem, "OpisKlase_Handlee");
- for(new i=1; i<sizeof(Klase); i++) {
- if(g_iClassesFraction[i] == iItem) {
- formatex(szItem, charsmax(szItem), "\y%L", id, Klase[i][0]);
- menu_additem(iMenuID, szItem);
- }
- }
- menu_display(id, iMenuID);
- return 0;
- }
- public OpisKlase_Handlee(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- if(iItem == MENU_EXIT) {
- menu_destroy(iMenuID);
- return 0;
- }
- iItem++;
- new iNum = 0;
- for(new i=1; i<sizeof(Klase); i++) {
- if(g_iClassesFraction[i] == g_PlayerInfo[id][g_iFraction]) iNum ++;
- if(iNum == iItem) {
- iItem = i;
- break;
- }
- }
- new szWeapon[18][12], iCount=0, szWeapons[64], iLen, szDesc[512];
- for(new i=0; i<7; i++) if(g_iClassesWeapon[iItem][i] != CSW_KNIFE) cs_weapon_id_to_name(g_iClassesWeapon[iItem][i], szWeapon[iCount++], charsmax(szWeapon[]));
- if(iCount > 0) for(new k=0; k<iCount; k++) iLen += formatex(szWeapons[iLen], charsmax(szWeapons)-iLen, "%s%s ", szWeapon[k], k<(iCount-1) ? ", " : "");
- iLen = 0;
- iLen = formatex(szDesc, charsmax(szDesc), "\r%L \w: \y%L^n\r%L \w: \y%s^n\r%L \w: \y%s^n", id, "ML_KLASA", id, Klase[iItem][0], id, "ML_FRAKCIJA", Klase[iItem][5], id, "ML_ORUZIJE", szWeapons);
- iLen += formatex(szDesc[iLen], charsmax(szDesc)-iLen, "\r%L \w: \y%s^n\r%L \w: \y%s^n\r%L \w: \y%s^n\r%L \w: \y%L^n\rCOD MOD By: \wEX!T [\rfb.me/counter.exit\w]", id, "ML_ENERGIJA_FRAKCIJA", Klase[iItem][2], id, "ML_STIT_FRAKCIJA", Klase[iItem][3], id, "ML_BRZINA", Klase[iItem][4], id, "ML_SPECIJALNE_MOCI", id, Klase[iItem][1]);
- show_menu(id, 1023, szDesc);
- return 0;
- }
- public IzaberiKlasu(id) {
- static szNaslov[20];
- formatex(szNaslov, charsmax(szNaslov), "\r%L \w:", id, "ML_IZABERI_KLASE");
- new szMenu = menu_create(szNaslov, "IzaberiFrakciju_Handle");
- for(new i=1; i<sizeof g_szFractions; i++) {
- new szItems[32];
- formatex(szItems, charsmax(szItems), "%L", id, g_szFractions[i]);
- menu_additem(szMenu, szItems);
- }
- menu_display(id, szMenu);
- }
- public IzaberiFrakciju_Handle(id, menu, item) {
- if(item == MENU_EXIT) {
- menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- item++;
- g_PlayerInfo[id][g_iFraction] = item;
- static szNaslov[20];
- formatex(szNaslov, charsmax(szNaslov), "\r%L \w:", id, "ML_IZABERI_KLASU");
- new szMenu = menu_create(szNaslov, "IzaberiKlasu_Handle");
- static szItems[86];
- for(new i=1; i<sizeof(Klase); i++) {
- if(g_iClassesFraction[i] == item) {
- UcitajPodatke(id, i);
- formatex(szItems, charsmax(szItems), "\y%L \d- \w[\rLevel\y: \r%i\w]", id, Klase[i][0], g_PlayerInfo[id][g_iLevel]);
- menu_additem(szMenu, szItems);
- }
- }
- UcitajPodatke(id, g_PlayerInfo[id][g_iClass]);
- menu_display(id, szMenu);
- client_cmd(id, "spk ExitCOD/select");
- return PLUGIN_CONTINUE;
- }
- public IzaberiKlasu_Handle(id, menu, item) {
- client_cmd(id, "spk ExitCOD/select");
- if(item == MENU_EXIT) {
- menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- item++;
- new iBroj = 0;
- for(new i=1; i<sizeof(Klase); i++) {
- if(g_iClassesFraction[i] == g_PlayerInfo[id][g_iFraction]) iBroj++;
- if(iBroj == item) {
- item = i;
- break;
- }
- }
- if(item == g_PlayerInfo[id][g_iClass]) return PLUGIN_CONTINUE;
- static Time[10];
- get_time("%H", Time, charsmax(Time));
- new iDnevnoVreme = (equal(Time, "9") || equal(Time, "10") || equal(Time, "11") || equal(Time, "12") || equal(Time, "13") || equal(Time, "14") || equal(Time, "15") || equal(Time, "16") || equal(Time, "17") || equal(Time, "18") || equal(Time, "19") || equal(Time, "20") || equal(Time, "21") || equal(Time, "22"));
- if(g_iClassesFraction[item] == VipKlase) {
- if(iDnevnoVreme) {
- if(!goldVIP[ id ]) {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_NEMATE_DOZVOLU");
- IzaberiKlasu(id);
- return PLUGIN_HANDLED;
- }
- }
- }
- if(g_iClassesFraction[item] == SteamOnly ) {
- if(!is_user_steam(id)) {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_NEMATE_DOZVOLU");
- IzaberiKlasu(id);
- return PLUGIN_HANDLED;
- }
- }
- if(Klase[item][6][0]) {
- if( g_iClassesFraction[item] == Premium ) {
- if(iDnevnoVreme) {
- if(strlen(g_PlayerInfo[id][g_szUserPrivilegies]) > 0) {
- if(containi(g_PlayerInfo[id][g_szUserPrivilegies], Klase[item][6]) != -1) { }
- else {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_NEMATE_DOZVOLU");
- IzaberiKlasu(id);
- return PLUGIN_HANDLED;
- }
- }
- else {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_NEMATE_DOZVOLU");
- IzaberiKlasu(id);
- return PLUGIN_HANDLED;
- }
- }
- }
- else if( g_iClassesFraction[item] == GoldsStars ) {
- if(strlen(g_PlayerInfo[id][g_szUserPrivilegies]) > 0) {
- if(containi(g_PlayerInfo[id][g_szUserPrivilegies], Klase[item][6]) != -1) { }
- else {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_NEMATE_DOZVOLU");
- IzaberiKlasu(id);
- return PLUGIN_HANDLED;
- }
- }
- else {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_NEMATE_DOZVOLU");
- IzaberiKlasu(id);
- return PLUGIN_HANDLED;
- }
- }
- else if( g_iClassesFraction[item] == SuperPremium ) {
- if(strlen(g_PlayerInfo[id][g_szUserPrivilegies]) > 0) {
- if(containi(g_PlayerInfo[id][g_szUserPrivilegies], Klase[item][6]) != -1) { }
- else {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_NEMATE_DOZVOLU");
- IzaberiKlasu(id);
- return PLUGIN_HANDLED;
- }
- }
- else {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_NEMATE_DOZVOLU");
- IzaberiKlasu(id);
- return PLUGIN_HANDLED;
- }
- }
- else if( g_iClassesFraction[item] == Special ) {
- if(strlen(g_PlayerInfo[id][g_szUserPrivilegies]) > 0) {
- if(containi(g_PlayerInfo[id][g_szUserPrivilegies], Klase[item][6]) != -1) { }
- else {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_NEMATE_DOZVOLU");
- IzaberiKlasu(id);
- return PLUGIN_HANDLED;
- }
- }
- else {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_NEMATE_DOZVOLU");
- IzaberiKlasu(id);
- return PLUGIN_HANDLED;
- }
- }
- }
- if(g_PlayerInfo[id][g_iClass]) {
- g_PlayerInfo[id][g_iNewClass] = item;
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_SLEDECA_RUNDA");
- }
- else {
- g_PlayerInfo[id][g_iClass] = item;
- UcitajPodatke(id, g_PlayerInfo[id][g_iClass]);
- fw_Ham_Spawn_Post(id);
- Statistika[ item ]++;
- }
- return PLUGIN_CONTINUE;
- }
- public DodelaPoena(id) {
- static szMenuItems[6][86], iMenuID;
- formatex(szMenuItems[0], 31, "\r%L \d[\y%i\d] \w:", id, "ML_DODELA_POENA", g_PlayerInfo[id][g_iPoints]);
- iMenuID = menu_create(szMenuItems[0], "hDodelaPoena");
- formatex(szMenuItems[0], 85, "\y%L \w: \d[ \r%d \y/ \r1000 \d]", id, "ML_INTELIGENCIJA", g_PlayerInfo[id][g_iIntelligence]);
- formatex(szMenuItems[1], 85, "\y%L \w: \d[ \r%d \y/ \r1200 \d]", id, "ML_ENERGIJA", g_PlayerInfo[id][g_iEnergy]);
- formatex(szMenuItems[2], 85, "\y%L \w: \d[ \r%d \y/ \r600 \d]", id, "ML_SNAGA", g_PlayerInfo[id][g_iTrim]);
- formatex(szMenuItems[3], 85, "\y%L \w: \d[ \r%d \y/ \r600 \d]", id, "ML_KONDICIJA", g_PlayerInfo[id][g_iStamina]);
- formatex(szMenuItems[4], 85, "\y%L \w: \d[ \r%d \y/ \r600 \d]^n", id, "ML_STETA", g_PlayerInfo[id][g_iDamage]);
- formatex(szMenuItems[5], 85, "\y%L \w: \r[ \y%d \r]", id, "ML_BROJ_DODAVANJA", g_iAddPointsNumber[g_PlayerInfo[id][g_iAddNumber]]);
- for(new i; i<6; i++) menu_additem(iMenuID, szMenuItems[i]);
- menu_display(id, iMenuID);
- }
- public hDodelaPoena(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- if(iItem == MENU_EXIT) {
- menu_destroy(iMenuID);
- return 0;
- }
- if(g_PlayerInfo[id][g_iPoints] < 1) return 0;
- static iBroj;
- if(g_iAddPointsNumber[g_PlayerInfo[id][g_iAddNumber]] > g_PlayerInfo[id][g_iPoints]) iBroj = g_PlayerInfo[id][g_iPoints];
- else iBroj = g_iAddPointsNumber[g_PlayerInfo[id][g_iAddNumber]];
- switch(iItem) {
- case 0: {
- if(g_PlayerInfo[id][g_iIntelligence] < get_pcvar_num(g_CvarInfo[CvarData_MaksimalnaInte])) {
- if(g_iAddPointsNumber[g_PlayerInfo[id][g_iAddNumber]] > get_pcvar_num(g_CvarInfo[CvarData_MaksimalnaInte]) - g_PlayerInfo[id][g_iIntelligence]) iBroj = get_pcvar_num(g_CvarInfo[CvarData_MaksimalnaInte]) - g_PlayerInfo[id][g_iIntelligence];
- g_PlayerInfo[id][g_iIntelligence] += iBroj;
- g_PlayerInfo[id][g_iPoints] -= iBroj;
- }
- else ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_MAX_NIVO_INTELIGENCIJA");
- }
- case 1: {
- if(g_PlayerInfo[id][g_iEnergy] < get_pcvar_num(g_CvarInfo[CvarData_MaksimalnaEnergija])) {
- if(g_iAddPointsNumber[g_PlayerInfo[id][g_iAddNumber]] > get_pcvar_num(g_CvarInfo[CvarData_MaksimalnaEnergija]) - g_PlayerInfo[id][g_iEnergy]) iBroj = get_pcvar_num(g_CvarInfo[CvarData_MaksimalnaEnergija]) - g_PlayerInfo[id][g_iEnergy];
- g_PlayerInfo[id][g_iEnergy] += iBroj;
- g_PlayerInfo[id][g_iPoints] -= iBroj;
- }
- else ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_MAX_NIVO_ENERGIJA");
- }
- case 2: {
- if(g_PlayerInfo[id][g_iTrim] < get_pcvar_num(g_CvarInfo[CvarData_MaksimalnaSnaga])) {
- if(g_iAddPointsNumber[g_PlayerInfo[id][g_iAddNumber]] > get_pcvar_num(g_CvarInfo[CvarData_MaksimalnaSnaga]) - g_PlayerInfo[id][g_iTrim]) iBroj = get_pcvar_num(g_CvarInfo[CvarData_MaksimalnaSnaga]) - g_PlayerInfo[id][g_iTrim];
- g_PlayerInfo[id][g_iTrim] += iBroj;
- g_PlayerInfo[id][g_iPoints] -= iBroj;
- }
- else ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_MAX_NIVO_SNAGA");
- }
- case 3: {
- if(g_PlayerInfo[id][g_iStamina] < get_pcvar_num(g_CvarInfo[CvarData_MaksimalnaKondicija])) {
- if(g_iAddPointsNumber[g_PlayerInfo[id][g_iAddNumber]] > get_pcvar_num(g_CvarInfo[CvarData_MaksimalnaKondicija]) - g_PlayerInfo[id][g_iStamina]) iBroj = get_pcvar_num(g_CvarInfo[CvarData_MaksimalnaKondicija]) - g_PlayerInfo[id][g_iStamina];
- g_PlayerInfo[id][g_iStamina] += iBroj;
- g_PlayerInfo[id][g_iPoints] -= iBroj;
- }
- else ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_MAX_NIVO_KONDICIJA");
- }
- case 4: {
- if(g_PlayerInfo[id][g_iDamage] < get_pcvar_num(g_CvarInfo[CvarData_MaksimalnoOstecenje])) {
- if(g_PlayerInfo[id][g_iIntelligence] >= 500 && g_PlayerInfo[id][g_iDamage] <= 300) {
- g_PlayerInfo[id][g_iDamage] = 300;
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_SMANJI_INTELIGENCIJU");
- return 0;
- }
- if(g_iAddPointsNumber[g_PlayerInfo[id][g_iAddNumber]] > get_pcvar_num(g_CvarInfo[CvarData_MaksimalnoOstecenje]) - g_PlayerInfo[id][g_iDamage]) iBroj = get_pcvar_num(g_CvarInfo[CvarData_MaksimalnoOstecenje]) - g_PlayerInfo[id][g_iDamage];
- g_PlayerInfo[id][g_iDamage] += iBroj;
- g_PlayerInfo[id][g_iPoints] -= iBroj;
- }
- else ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_MAX_NIVO_STETA");
- }
- case 5: {
- if(g_PlayerInfo[id][g_iAddNumber] == 5) g_PlayerInfo[id][g_iAddNumber] = 0;
- else g_PlayerInfo[id][g_iAddNumber] ++;
- }
- }
- if(g_PlayerInfo[id][g_iPoints] > 0) DodelaPoena(id);
- return 0;
- }
- public KomandaResetujPoene(id) {
- if(!g_PlayerInfo[id][g_iClass]) return 1;
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_POENI_RESTARTOVANI");
- client_cmd(id, "spk ExitCOD/select");
- ResetujPoene(id);
- return 0;
- }
- public ResetujPoene(id) {
- g_PlayerInfo[id][g_iPoints] = (g_PlayerInfo[id][g_iLevel]-1)*2;
- g_PlayerInfo[id][g_iIntelligence] = 0;
- g_PlayerInfo[id][g_iEnergy] = 0;
- g_PlayerInfo[id][g_iStamina] = 0;
- g_PlayerInfo[id][g_iTrim] = 0;
- g_PlayerInfo[id][g_iDamage] = 0;
- if(g_PlayerInfo[id][g_iPoints]) DodelaPoena(id);
- }
- public fw_TraceLine(Float: fvStart[3], Float: fvEnd[3], ignoreM, id, iTrace) {
- if(!is_user_connected( id )) return;
- new iHit = get_tr2(iTrace, TR_pHit);
- if(!is_user_connected(iHit)) return;
- new iHitZone = get_tr2(iTrace, TR_iHitgroup);
- switch(predmet_igraca[iHit][0]) {
- case 47: if((predmet_igraca[iHit][1] == 1) && (iHitZone == HIT_HEAD)) return;
- case 65: if((get_user_weapon(iHit) == CSW_USP) && !random(6) && (iHitZone != HIT_HEAD)) set_tr2(iTrace, TR_iHitgroup, HIT_HEAD);
- case 66: if((get_user_weapon(iHit) == CSW_M4A1) && !random(9) && (iHitZone != HIT_HEAD)) set_tr2(iTrace, TR_iHitgroup, HIT_HEAD);
- case 67: if((get_user_weapon(iHit) == CSW_AK47) && !random(9) && (iHitZone != HIT_HEAD)) set_tr2(iTrace, TR_iHitgroup, HIT_HEAD);
- case 68: if(!random(6) && (iHitZone != HIT_HEAD) && (iHitZone != HIT_CHEST)) return;
- }
- if((g_PlayerInfo[iHit][g_iClass] == Wolverine) && !random(4) && (iHitZone == HIT_HEAD)) return;
- if((g_PlayerInfo[iHit][g_iClass] == Samuraj) && (iHitZone == HIT_HEAD)) return;
- if( goldVIP[ iHit ] && iHitZone == HIT_HEAD )
- set_tr2( iTrace, TR_iHitgroup, 8 );
- }
- public fw_AddToFullPack( es, e, ent, host, host_flags, player, p_set ) {
- if( !( 1 <= host <= 32 ) )
- return FMRES_IGNORED;
- if( !( 1 <= ent <= 32 ) )
- return FMRES_IGNORED;
- if( !is_user_alive( host ) )
- return FMRES_IGNORED
- if( !is_user_alive( ent ) )
- return FMRES_IGNORED;
- if( predmet_igraca[host][0] == 37 || g_PlayerInfo[host][g_iClass] == Indian || g_PlayerInfo[host][g_iClass] == Lopov || g_PlayerInfo[host][g_iClass] == Predator || g_PlayerInfo[host][g_iClass] == CicaDraza || g_PlayerInfo[host][g_iClass] == Kamikaza || g_PlayerInfo[host][g_iClass] == ProSapper || g_PlayerInfo[host][g_iClass] == Lovac )
- set_es( es, ES_RenderAmt, 255.0 );
- return FMRES_HANDLED;
- }
- public CreateBomb(id) {
- if(!g_PlayerInfo[id][g_iBomb]) {
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L!", id, "ML_ISKORISTIO_BOMBE");
- return PLUGIN_CONTINUE;
- }
- if(is_user_alive( id )) {
- if(g_fLastUsed[id] + 2.0 > get_gametime()) {
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L", id, "ML_SACEKAJ_SEC_BOMBE");
- return PLUGIN_CONTINUE;
- }
- if(g_PlayerInfo[id][g_iIntelligence] < 1) {
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L!", id, "ML_POVECAJ_INTELIGENCIJU_BOMBE");
- }
- g_fLastUsed[id] = get_gametime();
- g_PlayerInfo[id][g_iBomb]--;
- 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, g_szEntsNames[ENT_Bomb]);
- entity_set_model(Ent, g_szModels[MDL_ROCKET]);
- 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_TOSS);
- entity_set_edict(Ent, EV_ENT_owner, id);
- VelocityByAim(id, 1000 , Velocity);
- entity_set_vector(Ent, EV_VEC_velocity ,Velocity);
- }
- return PLUGIN_CONTINUE;
- }
- public DodirBombe(Ent) {
- if(!is_valid_ent(Ent)) return;
- new Attacker = entity_get_edict(Ent, EV_ENT_owner);
- new Float: Origin[3];
- entity_get_vector(Ent, EV_VEC_origin, Origin);
- new Ent = create_entity("info_target");
- entity_set_string(Ent, EV_SZ_classname, g_szEntsNames[ENT_Bomb]);
- entity_set_model(Ent, g_szModels[MDL_ROCKET]);
- entity_set_origin(Ent, Origin);
- 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_NOCLIP);
- entity_set_edict(Ent, EV_ENT_owner, Attacker);
- remove_entity(Ent);
- }
- public EksplozijaBombe(id) {
- new iEnt = find_ent_by_class(-1, g_szEntsNames[ENT_Bomb]);
- while(iEnt > 0) {
- new Attacker = entity_get_edict(iEnt, EV_ENT_owner);
- if(Attacker == id) {
- Eksplozija(iEnt);
- remove_entity(iEnt);
- }
- iEnt = find_ent_by_class(iEnt,g_szEntsNames[ENT_Bomb]);
- }
- }
- public Eksplozija(Ent) {
- new Attacker = entity_get_edict(Ent, EV_ENT_owner);
- static Float:fOrigin[3], iOrigin[3];
- entity_get_vector(Ent, EV_VEC_origin, fOrigin);
- for(new i=0;i<3;i++) iOrigin[i] = floatround(fOrigin[i]);
- Create_TE_EXPLOSION(iOrigin, g_iSpriteID[SPR_Blast], 32, 20, 0);
- static szEntList[33];
- new iNumFound = find_sphere_class(Ent, "player", 200.0, szEntList, charsmax(szEntList));
- for(new i=0; i<iNumFound; i++) {
- new iPlayers = szEntList[i];
- if(!is_user_alive( iPlayers ) || get_user_team(Attacker) == get_user_team(iPlayers)) continue;
- ExecuteHam(Ham_TakeDamage, iPlayers, Ent, Attacker, 100.0+0.5*float(g_PlayerInfo[Attacker][g_iIntelligence]) , 1);
- }
- remove_entity(Ent);
- }
- public CreatePoisonKit(id) {
- if(!g_PlayerInfo[id][g_iPoisonKit]) {
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L!", id, "ML_ISKORISTIO", g_szEntsNames[ENT_PoisonKit]);
- return PLUGIN_CONTINUE;
- }
- if(g_PlayerInfo[id][g_iIntelligence] < 1) {
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L!", id, "ML_POVECAJ_INTELIGENCIJU", g_szEntsNames[ENT_PoisonKit]);
- }
- g_PlayerInfo[id][g_iPoisonKit]--;
- 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, g_szEntsNames[ENT_PoisonKit]);
- 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, g_szModels[MDL_POISONKIT]);
- set_rendering(Ent, kRenderFxGlowShell, 0, 255, 0, kRenderFxNone, 255) ;
- drop_to_floor(Ent);
- entity_set_float(Ent, EV_FL_nextthink, halflife_time() + 0.1);
- return PLUGIN_CONTINUE;
- }
- public fw_Think_PoisonKit(Ent) {
- if(!is_valid_ent(Ent)) return PLUGIN_HANDLED;
- new id = entity_get_edict(Ent, EV_ENT_owner);
- new iHeal = 5+floatround(g_PlayerInfo[id][g_iIntelligence]*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 szEntList[33];
- new iNumFound = find_sphere_class(0, "player", 300.0, szEntList, charsmax(szEntList), fOrigin);
- for(new i=0; i < iNumFound; i++) {
- new iPlayers = szEntList[i];
- if(is_user_alive( iPlayers ) && get_user_team(iPlayers) != get_user_team(id)) set_user_health(iPlayers, get_user_health(iPlayers) - iHeal);
- }
- entity_set_edict(Ent, EV_ENT_euser2, 0);
- entity_set_float(Ent, EV_FL_nextthink, halflife_time() + 1.5);
- }
- 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], iOrigin[3];
- entity_get_vector(Ent, EV_VEC_origin, fOrigin);
- FVecIVec(fOrigin, iOrigin);
- Create_TE_BEAMCYLINDER(iOrigin, 300, g_iSpriteID[SPR_White], 0, 0, 10, 10, 255, 0, 255, 0, 128, 5);
- entity_set_edict(Ent, EV_ENT_euser2, 1);
- entity_set_float(Ent, EV_FL_nextthink, halflife_time() + 0.5);
- return PLUGIN_CONTINUE;
- }
- public CreateMedKit(id) {
- if(!g_PlayerInfo[id][g_iMedKit]) {
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L!", id, "ML_ISKORISTIO", g_szEntsNames[ENT_MedKit]);
- return 0;
- }
- if(is_user_alive( id )) {
- if(g_PlayerInfo[id][g_iIntelligence] < 1) {
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L!", id, "ML_POVECAJ_INTELIGENCIJU", g_szEntsNames[ENT_MedKit]);
- }
- g_PlayerInfo[id][g_iMedKit]--;
- new Float:iOrigin[3];
- entity_get_vector(id, EV_VEC_origin, iOrigin);
- new Ent = create_entity("info_target");
- entity_set_string(Ent, EV_SZ_classname, g_szEntsNames[ENT_MedKit]);
- entity_set_edict(Ent, EV_ENT_owner, id);
- entity_set_int(Ent, EV_INT_solid, SOLID_NOT);
- entity_set_vector(Ent, EV_VEC_origin, iOrigin);
- entity_set_float(Ent, EV_FL_ltime, halflife_time() + 7 + 0.1);
- entity_set_model(Ent, g_szModels[MDL_MEDKIT]);
- 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 fw_Think_MedKit(Ent) {
- if(!is_valid_ent(Ent)) return PLUGIN_HANDLED;
- new id = entity_get_edict(Ent, EV_ENT_owner);
- new iHP = 5+floatround(g_PlayerInfo[id][g_iIntelligence]*0.5);
- if(entity_get_edict(Ent, EV_ENT_euser2) == 1) {
- new Float:fOrigin[3], iOrigin[3];
- entity_get_vector(Ent, EV_VEC_origin, fOrigin);
- FVecIVec(fOrigin, iOrigin);
- new szEntList[33];
- new iNumFound = find_sphere_class(0, "player", 300.0, szEntList, charsmax(szEntList), fOrigin);
- for(new i=0; i < iNumFound; i++) {
- new iPlayers = szEntList[i];
- new iNovaEnergija = (get_user_health(iPlayers) + iHP < g_PlayerInfo[iPlayers][g_iMaxEnergy]) ? get_user_health(iPlayers) + iHP : g_PlayerInfo[iPlayers][g_iMaxEnergy];
- if(is_user_alive( iPlayers ) && get_user_team(iPlayers) == get_user_team(id)) set_user_health(iPlayers, iNovaEnergija);
- }
- 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], iOrigin[3];
- entity_get_vector(Ent, EV_VEC_origin, fOrigin);
- FVecIVec(fOrigin, iOrigin);
- Create_TE_BEAMCYLINDER(iOrigin, 300, g_iSpriteID[SPR_White], 0, 0, 10, 10, 255, 255, 100, 100, 128, 5);
- entity_set_edict(Ent, EV_ENT_euser2 ,1);
- entity_set_float(Ent, EV_FL_nextthink, halflife_time() + 0.5);
- return PLUGIN_CONTINUE;
- }
- public Explode(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]);
- Create_TE_EXPLOSION(iOrigin, g_iSpriteID[SPR_Blast], 32, 20, 0);
- Create_TE_BEAMCYLINDER(iOrigin, 200, g_iSpriteID[SPR_White], 0, 0, 10, 10, 255, 255, 100, 100, 128, 8);
- new szEntList[33];
- new iNumFound = find_sphere_class(id, "player", 200.0, szEntList, charsmax(szEntList));
- for(new i=0; i < iNumFound; i++) {
- new Pid = szEntList[i];
- if(!is_user_alive( Pid ) || get_user_team(id) == get_user_team(Pid)) continue;
- ExecuteHam(Ham_TakeDamage, Pid, 0, id, 400.0, 1);
- }
- return PLUGIN_CONTINUE;
- }
- public CreateRocket(id) {
- if(!g_PlayerInfo[id][g_iRocket]) {
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L!", id, "ML_ISKORISTIO_RAKETA");
- return PLUGIN_CONTINUE;
- }
- if(is_user_alive( id )) {
- if(g_fLastUsed[id] + 2.0 > get_gametime()) {
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L", id, "ML_SACEKAJ_SEC_RAKETE");
- return PLUGIN_CONTINUE;
- }
- if(g_PlayerInfo[id][g_iIntelligence] < 1) {
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L", id, "ML_POVECAJ_INTELIGENCIJU_RAKETA");
- }
- g_fLastUsed[id] = get_gametime();
- g_PlayerInfo[id][g_iRocket]--;
- 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, g_szEntsNames[ENT_Rocket]);
- entity_set_model(Ent, g_szModels[MDL_ROCKET]);
- 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 CreateDynamite(id) {
- if(!g_PlayerInfo[id][g_iDynamite]) {
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L!", id, "ML_ISKORISTIO_DINAMIT");
- return PLUGIN_CONTINUE;
- }
- if(is_user_alive( id )) {
- if(g_PlayerInfo[id][g_iIntelligence] < 1) {
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L!", id, "ML_POVECAJ_INTELIGENCIJU_DINAMIT");
- }
- g_PlayerInfo[id][g_iDynamite]--;
- new Float:fOrigin[3];
- entity_get_vector(id, EV_VEC_origin, fOrigin);
- new iOrigin[3];
- for(new i=0;i<3;i++) iOrigin[i] = floatround(fOrigin[i]);
- Create_TE_EXPLOSION(iOrigin, g_iSpriteID[SPR_Blast], 32, 20, 0);
- Create_TE_BEAMCYLINDER(iOrigin, 300, g_iSpriteID[SPR_White], 0, 0, 10, 10, 255, 61, 255, 255, 128, 8);
- new szEntList[33];
- new iNumFound = find_sphere_class(id, "player", 90.0, szEntList, charsmax(szEntList));
- for(new i=0; i < iNumFound; i++) {
- new iPlayers = szEntList[i];
- if(!is_user_alive( iPlayers ) || get_user_team(id) == get_user_team(iPlayers) || predmet_igraca[iPlayers][0] == 39 || predmet_igraca[iPlayers][0] == 24 || g_PlayerInfo[iPlayers][g_iClass] == Dante ) continue;
- ExecuteHam(Ham_TakeDamage, iPlayers, 0, id, 120.0+float(g_PlayerInfo[id][g_iIntelligence]), 1);
- }
- }
- return PLUGIN_CONTINUE;
- }
- public CreateMine(id) {
- if(!g_PlayerInfo[id][g_iMine]) {
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L!", id, "ML_ISKORISTIO", g_szEntsNames[ENT_Mine]);
- return PLUGIN_CONTINUE;
- }
- if(is_user_alive( id )) {
- if(g_PlayerInfo[id][g_iIntelligence] < 1) {
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L!", id, "ML_POVECAJ_INTELIGENCIJU", g_szEntsNames[ENT_Mine]);
- }
- g_PlayerInfo[id][g_iMine]--;
- new Float:fOrigin[3];
- entity_get_vector(id, EV_VEC_origin, fOrigin);
- new Ent = create_entity("info_target");
- entity_set_string(Ent, EV_SZ_classname, g_szEntsNames[ENT_Mine]);
- entity_set_edict(Ent, EV_ENT_owner, id);
- entity_set_int(Ent, EV_INT_movetype, MOVETYPE_TOSS);
- entity_set_origin(Ent, fOrigin);
- entity_set_int(Ent, EV_INT_solid, SOLID_BBOX);
- entity_set_model(Ent, g_szModels[MDL_MINE]);
- 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, 50);
- }
- return PLUGIN_CONTINUE;
- }
- public fw_TouchMine(Ent, id) {
- new Attacker = entity_get_edict(Ent, EV_ENT_owner);
- if(get_user_team(Attacker) != get_user_team(id)) {
- new Float:fOrigin[3];
- entity_get_vector(Ent, EV_VEC_origin, fOrigin);
- new iOrigin[3];
- for(new i=0;i<3;i++) iOrigin[i] = floatround(fOrigin[i]);
- Create_TE_EXPLOSION(iOrigin, g_iSpriteID[SPR_Blast], 32, 20, 0);
- new szEntList[33];
- new iNumFound = find_sphere_class(Ent, "player", 90.0, szEntList, charsmax(szEntList));
- for(new i=0; i < iNumFound; i++) {
- new iPlayers = szEntList[i];
- if(!is_user_alive( iPlayers ) || get_user_team(Attacker) == get_user_team(iPlayers) || predmet_igraca[iPlayers][0] == 24 || predmet_igraca[iPlayers][0] == 39 || g_PlayerInfo[iPlayers][g_iClass] == Swat || g_PlayerInfo[iPlayers][g_iClass] == Dante ) continue;
- ExecuteHam(Ham_TakeDamage, iPlayers, Ent, Attacker, 100.0+float(g_PlayerInfo[Attacker][g_iIntelligence]), 1);
- }
- remove_entity(Ent);
- }
- }
- public fw_TouchRocket(Ent, id) {
- if(!is_valid_ent(Ent)) return;
- new Attacker = entity_get_edict(Ent, EV_ENT_owner);
- if(get_user_team(Attacker) != get_user_team(id)) {
- new Float:fOrigin[3];
- entity_get_vector(Ent, EV_VEC_origin, fOrigin);
- new iOrigin[3];
- for(new i=0; i<3; i++) iOrigin[i] = floatround(fOrigin[i]);
- Create_TE_EXPLOSION(iOrigin, g_iSpriteID[SPR_Blast], 32, 20, 0);
- new szEntList[33];
- new iNumFound = find_sphere_class(Ent, "player", 100.0, szEntList, charsmax(szEntList));
- for(new i=0; i < iNumFound; i++) {
- new iPlayers = szEntList[i];
- if(!is_user_alive( iPlayers ) || get_user_team(Attacker) == get_user_team(iPlayers) || g_PlayerInfo[iPlayers][g_iClass] == Kadet || g_PlayerInfo[iPlayers][g_iClass] == Swat || g_PlayerInfo[iPlayers][g_iClass] == Madjionicar || g_PlayerInfo[iPlayers][g_iClass] == Dante || predmet_igraca[iPlayers][0] == 39 || predmet_igraca[iPlayers][0] == 24) continue;
- ExecuteHam(Ham_TakeDamage, iPlayers, Ent, Attacker, 250.0+float(g_PlayerInfo[Attacker][g_iIntelligence]), 1);
- }
- remove_entity(Ent);
- }
- }
- public cod_kutija_dodirnuta(id) {
- if(!is_user_alive( id )) return PLUGIN_CONTINUE;
- set_hudmessage(0, 255, 255, -1.0, 0.20, 0, 6.0, 2.0);
- switch(random_num(1, 18)) {
- case 1: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L 100 HP", id, "ML_BONUS_DOBILI");
- set_user_health(id, get_user_health(id) + 100);
- }
- case 2: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L 100 HP", id, "ML_BONUS_IZGUBILI");
- set_user_health(id, get_user_health(id) - 100);
- }
- case 3: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L 100 AP", id, "ML_BONUS_DOBILI");
- set_user_armor(id, get_user_armor(id) + 100);
- }
- case 4: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L 100 AP", id, "ML_BONUS_IZGUBILI");
- set_user_armor(id, get_user_armor(id) - 100);
- }
- case 5, 11: ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L", id, "ML_BONUS_NISTA");
- case 6: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L 10000$", id, "ML_BONUS_DOBILI");
- cs_set_user_money(id, cs_get_user_money(id) + 10000);
- }
- case 7: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L 5000$", id, "ML_BONUS_DOBILI");
- cs_set_user_money(id, cs_get_user_money(id) + 5000);
- }
- case 8: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L 20 GOLD", id, "ML_BONUS_DOBILI");
- g_PlayerInfo[id][g_iGold] += 20;
- }
- case 9: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L 50 GOLD", id, "ML_BONUS_DOBILI");
- g_PlayerInfo[id][g_iGold] += 50;
- }
- case 10: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L 50 GOLD", id, "ML_BONUS_IZGUBILI");
- g_PlayerInfo[id][g_iGold] -= 50;
- }
- case 12: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L 1000 XP-a", id, "ML_BONUS_DOBILI");
- g_PlayerInfo[id][g_iXP] += 1000;
- }
- case 13: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L 500 XP-a", id, "ML_BONUS_DOBILI");
- g_PlayerInfo[id][g_iXP] += 500;
- }
- case 14: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L Deagle", id, "ML_BONUS_DOBILI");
- give_item(id, "weapon_deagle");
- cs_set_user_bpammo(id, CSW_AK47, 35);
- }
- case 15: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L AK47", id, "ML_BONUS_DOBILI");
- give_item(id, "weapon_ak47");
- cs_set_user_bpammo(id, CSW_AK47, 90);
- }
- case 16: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L M4A1", id, "ML_BONUS_DOBILI");
- give_item(id, "weapon_m4a1");
- cs_set_user_bpammo(id, CSW_M4A1, 90);
- }
- case 17: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L AWP", id, "ML_BONUS_DOBILI");
- give_item(id, "weapon_awp");
- cs_set_user_bpammo(id, CSW_AWP, 30);
- }
- case 18: {
- ShowSyncHudMsg(id, g_HudInfo[HudData_BonusBox], "%L 500 XP-a", id, "ML_BONUS_IZGUBILI");
- g_PlayerInfo[id][g_iXP] -= 500;
- }
- }
- return PLUGIN_CONTINUE;
- }
- public fw_Event_CurWeapon(id) {
- if(g_bFreezeTime || !g_PlayerInfo[id][g_iClass]) return 0;
- new iWeaponID = read_data(2);
- PostaviBrzinu(id);
- if(get_user_weapon(id) == CSW_HEGRENADE) {
- if(is_blocked_map()) {
- client_print(id, print_center, "He Grenade is Blocked");
- engclient_cmd(id, "weapon_knife");
- }
- }
- if(predmet_igraca[id][0] == 32 || ( g_PlayerInfo[id][g_iClass] == Glacier || g_PlayerInfo[id][g_iClass] == Crank || g_PlayerInfo[id][g_iClass] == Robot && iWeaponID == CSW_M3 ) || g_PowerShopInfo[id][PowerShopData_Ammo]) if(g_iWeaponsData[iWeaponID][1] != -1) set_user_clip(id, g_iWeaponsData[iWeaponID][1]);
- update_ammo(id);
- return 0;
- }
- public fw_Ham_Item_Deploy_Post(iEnt) {
- new id = fm_cs_get_weapon_ent_owner(iEnt);
- if(!pev_valid(id)) return;
- new iWeaponID = cs_get_weapon_id(iEnt);
- switch(g_PlayerInfo[id][g_iClass]) {
- case Blade, Ninja, Samuraj: {
- if(iWeaponID == CSW_KNIFE) {
- entity_set_string(id, EV_SZ_viewmodel, g_szModels[MDL_V_KATANA]);
- entity_set_string(id, EV_SZ_weaponmodel, g_szModels[MDL_P_KATANA]);
- }
- }
- case Batman: {
- if(iWeaponID == CSW_KNIFE) {
- entity_set_string(id, EV_SZ_viewmodel, g_szModels[MDL_V_BATMAN]);
- }
- }
- case VanHelsing, Lovac, RobinHud: {
- if(iWeaponID == CSW_SCOUT) {
- entity_set_string(id, EV_SZ_viewmodel, g_szModels[MDL_V_CROSSBOW]);
- entity_set_string(id, EV_SZ_weaponmodel, g_szModels[MDL_P_CROSSBOW]);
- }
- }
- case MisterijaKisobrana: {
- if(iWeaponID == CSW_M3) {
- entity_set_string(id, EV_SZ_viewmodel, g_szModels[MDL_V_KISOBRAN]);
- entity_set_string(id, EV_SZ_weaponmodel, g_szModels[MDL_P_KISOBRAN]);
- }
- }
- case Hitman: {
- if(iWeaponID == CSW_USP) {
- entity_set_string(id, EV_SZ_viewmodel, g_szModels[MDL_V_HITMAN_USP]);
- }
- }
- case Predator: {
- if(iWeaponID == CSW_SCOUT) {
- entity_set_string(id, EV_SZ_viewmodel, g_szModels[MDL_V_PREDATORS]);
- }
- }
- case Phantom: {
- if(iWeaponID == CSW_KNIFE) {
- entity_set_string(id, EV_SZ_viewmodel, g_szModels[MDL_V_PHANTOMKNIFE]);
- }
- }
- case RokerSMoravu: {
- if(iWeaponID == CSW_SCOUT) {
- entity_set_string(id, EV_SZ_viewmodel, g_szModels[MDL_V_GITARA]);
- }
- }
- case Wolverine: {
- if(iWeaponID == CSW_KNIFE) {
- entity_set_string(id, EV_SZ_viewmodel, ((g_PlayerInfo[id][g_iClassData] == 0) ? g_szModels[MDL_V_WOLVERINE] : g_szModels[MDL_V_WOLVERINE_CLAWS]));
- entity_set_string(id, EV_SZ_weaponmodel, ((g_PlayerInfo[id][g_iClassData] == 0) ? g_szModels[MDL_P_WOLVERINE] : g_szModels[MDL_P_WOLVERINE_CLAWS]));
- }
- }
- case Boxer: {
- if(iWeaponID == CSW_KNIFE) {
- entity_set_string(id, EV_SZ_viewmodel, g_szModels[MDL_V_WOLVERINE]);
- entity_set_string(id, EV_SZ_weaponmodel, g_szModels[MDL_P_WOLVERINE]);
- }
- }
- }
- }
- public fw_Item_AddToPlayer(const iItem, const iPlayer) {
- if(pev_valid(iItem) && is_user_alive( iPlayer ) && g_PlayerInfo[iPlayer][g_iClass] == Wolverine) {
- message_begin(MSG_ONE, g_iMessageID[MSGID_WeaponList], .player = iPlayer);
- write_string("ExitCOD/weapon_claws");
- write_byte(-1);
- write_byte(-1);
- write_byte(-1);
- write_byte(-1);
- write_byte(2);
- write_byte(1);
- write_byte(CSW_KNIFE);
- write_byte(0);
- message_end();
- }
- }
- public fw_Ham_Weapon_Reload_Post(iEnt) {
- if(get_pdata_int(iEnt, m_fInReload, 4)) {
- new id = get_pdata_cbase(iEnt, m_pPlayer, 4);
- if(predmet_igraca[id][0] == 53) {
- new Float: flNextAttack = get_pdata_float(id, m_flNextAttack, 5) *0.1;
- set_pdata_float(id, m_flNextAttack, flNextAttack, 5);
- new iSeconds = floatround(flNextAttack, floatround_ceil);
- Make_BarTime2(id, iSeconds, 100 - floatround((flNextAttack/iSeconds) * 100));
- }
- }
- }
- public fw_Ham_Item_Holster(iEnt) {
- if(get_pdata_int(iEnt, m_fInReload, 4)) {
- new id = get_pdata_cbase(iEnt, m_pPlayer, 4);
- if(predmet_igraca[id][0] == 53) Make_BarTime2(id, 0, 0);
- }
- }
- Make_BarTime2(id, iSeconds, iPercent) {
- message_begin(MSG_ONE_UNRELIABLE, g_iMessageID[MSGID_BarTime2], _, id);
- write_short(iSeconds);
- write_short(iPercent);
- message_end();
- }
- public SacuvajPodatke(id) {
- if(!g_PlayerInfo[id][g_iClass]) return PLUGIN_CONTINUE;
- new szVaultKey[45], szVaultData[128];
- formatex(szVaultData, charsmax(szVaultData),"%i %i %i %i %i %i %i", g_PlayerInfo[id][g_iXP], g_PlayerInfo[id][g_iLevel], g_PlayerInfo[id][g_iIntelligence], g_PlayerInfo[id][g_iEnergy], g_PlayerInfo[id][g_iTrim], g_PlayerInfo[id][g_iStamina], g_PlayerInfo[id][g_iDamage]);
- formatex(szVaultKey, charsmax(szVaultKey),"%s-%s-cod", g_PlayerInfo[id][g_szSteamID], Klase[ g_PlayerInfo[id][g_iClass] ][ 0 ] );
- nvault_set(gVault, szVaultKey, szVaultData);
- return PLUGIN_CONTINUE;
- }
- public UcitajPodatke(id, klasa) {
- new szVaultKey[45], szVaultData[128], szPlayerData[7][16];
- formatex(szVaultKey, charsmax(szVaultKey),"%s-%s-cod", g_PlayerInfo[id][g_szSteamID], Klase[ klasa ][ 0 ] );
- nvault_get(gVault, szVaultKey, szVaultData, charsmax(szVaultData));
- parse(szVaultData, szPlayerData[0], charsmax( szPlayerData[ ] ), szPlayerData[1], charsmax( szPlayerData[ ] ), szPlayerData[2], charsmax( szPlayerData[ ] ),
- szPlayerData[3], charsmax( szPlayerData[ ] ), szPlayerData[4], charsmax( szPlayerData[ ] ), szPlayerData[5], charsmax( szPlayerData[ ] ), szPlayerData[6], charsmax( szPlayerData[ ] ) );
- g_PlayerInfo[id][g_iXP] = str_to_num(szPlayerData[0]);
- g_PlayerInfo[id][g_iLevel] = str_to_num(szPlayerData[1])>0?str_to_num(szPlayerData[1]):50;
- g_PlayerInfo[id][g_iIntelligence] = str_to_num(szPlayerData[2]);
- g_PlayerInfo[id][g_iEnergy] = str_to_num(szPlayerData[3]);
- g_PlayerInfo[id][g_iTrim] = str_to_num(szPlayerData[4]);
- g_PlayerInfo[id][g_iStamina] = str_to_num(szPlayerData[5]);
- g_PlayerInfo[id][g_iDamage] = str_to_num(szPlayerData[6]);
- g_PlayerInfo[id][g_iPoints] = (g_PlayerInfo[id][g_iLevel]-1)*2-g_PlayerInfo[id][g_iIntelligence]-g_PlayerInfo[id][g_iEnergy]-g_PlayerInfo[id][g_iTrim]-g_PlayerInfo[id][g_iStamina]-g_PlayerInfo[id][g_iDamage];
- return PLUGIN_CONTINUE;
- }
- public IzbaciPredmet(id) {
- if(predmet_igraca[id][0]) {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L ^3%L.", id, "ML_BACIO_SI", id, g_szPerksData[predmet_igraca[id][0]][0]);
- Obrisipredmet(id);
- }
- else ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_NEMATE_PREDMET");
- }
- public Obrisipredmet(id) {
- for(new i=0; i<2; i++) predmet_igraca[id][i] = 0;
- if(is_user_alive( id )) {
- set_user_footsteps(id, 0);
- set_user_visible(id, 255);
- }
- }
- public OpisPredmetaIgraca(id) ShowPerkDescription(id, predmet_igraca[id][0], 1);
- public Provera(id) {
- id -= ZADATAK_PROVERA;
- ExecuteHamB(Ham_CS_RoundRespawn, id);
- }
- public ProveriNivo(id) {
- new iOldLevel = g_PlayerInfo[id][g_iLevel];
- if(g_PlayerInfo[id][g_iLevel] < 2000) {
- while(g_PlayerInfo[id][g_iXP] >= g_iLevelXP[g_PlayerInfo[id][g_iLevel]]) g_PlayerInfo[id][g_iLevel]++;
- g_PlayerInfo[id][g_iPoints] = (g_PlayerInfo[id][g_iLevel]-1)*2-g_PlayerInfo[id][g_iIntelligence]-g_PlayerInfo[id][g_iEnergy]-g_PlayerInfo[id][g_iTrim]-g_PlayerInfo[id][g_iStamina]-g_PlayerInfo[id][g_iDamage];
- if(iOldLevel < g_PlayerInfo[id][g_iLevel]) {
- set_hudmessage(0, 255, 255, -1.0, 0.25, 0, 1.0, 2.0, 0.1, 0.2, 2);
- ShowSyncHudMsg(id, g_HudInfo[HudData_LevelUP], "%L", id, "ML_LEVEL_UP", g_PlayerInfo[id][g_iLevel]);
- client_cmd(id, "spk ExitCOD/levelup");
- }
- }
- SacuvajPodatke(id);
- SacuvajBanku( id );
- }
- public ShowInfo() {
- new iEnt = create_entity("info_target");
- if(!iEnt) return;
- entity_set_string(iEnt, EV_SZ_classname, g_szEntsNames[ENT_HudData]);
- entity_set_float(iEnt, EV_FL_nextthink, get_gametime() + 4.0);
- }
- public fw_Think_HudInfo(iEnt) {
- if(!is_valid_ent(iEnt)) return;
- new szClassName[32];
- entity_get_string(iEnt, EV_SZ_classname, szClassName, charsmax(szClassName));
- entity_set_float(iEnt, EV_FL_nextthink, get_gametime() + 0.1);
- if(!equali(szClassName, g_szEntsNames[ENT_HudData])) return;
- for(new i=1; i<=g_iMaxPlayers; i++) if(is_user_connected( i )) ShowPlayerInformations(i);
- }
- public ShowPlayerInformations(id) {
- if(is_user_bot( id ) || !is_user_connected( id )) return;
- new szPower[64], iPlayer = (is_user_alive( id ) ? id : entity_get_int(id, EV_INT_iuser2));
- new const opis[][] = {
- "ML_PSHOP_DESET_DAMAGE",
- "ML_PSHOP_DVADESET_DAMAGE",
- "ML_PSHOP_DOUBLE",
- "ML_PSHOP_TRIPLE",
- "ML_PSHOP_SPEED",
- "ML_PSHOP_AMMO",
- "ML_PSHOP_RECOIL",
- "ML_NEMA"
- }
- if(g_PowerShopInfo[id][PowerShopData_10DMG])
- c[id] = 0;
- else if(g_PowerShopInfo[id][PowerShopData_20DMG])
- c[id] = 1;
- else if(g_PowerShopInfo[id][PowerShopData_Double])
- c[id] = 2;
- else if(g_PowerShopInfo[id][PowerShopData_Triple])
- c[id] = 3;
- else if(g_PowerShopInfo[id][PowerShopData_Speed])
- c[id] = 4;
- else if(g_PowerShopInfo[id][PowerShopData_Ammo])
- c[id] = 5;
- else if(g_PowerShopInfo[id][PowerShopData_Recoil])
- c[id] = 6;
- else
- c[id] = 7;
- formatex(szPower, charsmax(szPower), opis[c[id]])
- new Float:fPosX = is_user_alive( id ) ? 0.02 : 0.6;
- new Float:fPosY = is_user_alive( id ) ? 0.15 : -1.0;
- if(is_user_connected( iPlayer ) ) {
- set_hudmessage(0, 255, 255, fPosX, fPosY, 0, 6.0, 0.1);
- ShowSyncHudMsg(id, g_HudInfo[HudData_Info], "-=[%L : %L]=-^n-=[%L : %i / %i]=-^n-=[Level : %i]=-^n-=[%L : %L]=-^n-=[%L : %d]=-^n-=[%L : %d]=-^n-=[Gold : %d]=-^n-=[%L : %L]=-^n-=[SP: %i]=-^n-=[TS: %i]=-",
- id, "ML_KLASA", id, Klase[g_PlayerInfo[iPlayer][g_iClass]][0], id, "ML_ISKUSTVO", g_PlayerInfo[iPlayer][g_iXP], g_iLevelXP[g_PlayerInfo[iPlayer][g_iLevel]], g_PlayerInfo[iPlayer][g_iLevel], id, "ML_PREDMET",
- id, g_szPerksData[predmet_igraca[iPlayer][0]][0], id, "ML_BRZINA", get_speed(iPlayer), id, "ML_ENERGI", floatround( entity_get_float( iPlayer, EV_FL_health ) ), g_PlayerInfo[iPlayer][g_iGold], id, "ML_SPOSOBNOST",
- id, szPower, g_PlayerInfo[ iPlayer ][ g_iSP ],points_igraca[id]);
- if(g_PlayerInfo[iPlayer][g_iMedKit] > 0) {
- set_hudmessage(0, 255, 255, 0.80, 0.20, 0, 0.0, 0.3, 0.0, 0.0, 2);
- ShowSyncHudMsg(id, g_HudInfo[HudData_Item], "[MedKit: %i]", g_PlayerInfo[iPlayer][g_iMedKit]);
- }
- if(g_PlayerInfo[iPlayer][g_iRocket] > 0) {
- set_hudmessage(0, 255, 255, 0.80, 0.20, 0, 0.0, 0.3, 0.0, 0.0, 2);
- ShowSyncHudMsg(id, g_HudInfo[HudData_Item], "[%L: %i]", id, "ML_RAKETA", g_PlayerInfo[iPlayer][g_iRocket]);
- }
- if(g_PlayerInfo[iPlayer][g_iMine] > 0) {
- set_hudmessage(0, 255, 255, 0.80, 0.20, 0, 0.0, 0.3, 0.0, 0.0, 2);
- ShowSyncHudMsg(id, g_HudInfo[HudData_Item], "[Mine: %i]", g_PlayerInfo[iPlayer][g_iMine]);
- }
- if(g_PlayerInfo[iPlayer][g_iDynamite] > 0) {
- set_hudmessage(0, 255, 255, 0.80, 0.20, 0, 0.0, 0.3, 0.0, 0.0, 2);
- ShowSyncHudMsg(id, g_HudInfo[HudData_Item], "[%L: %i]", id, "ML_DINAMIT", g_PlayerInfo[iPlayer][g_iDynamite]);
- }
- if(g_PlayerInfo[iPlayer][g_iPoisonKit] > 0) {
- set_hudmessage(0, 255, 255, 0.80, 0.20, 0, 0.0, 0.3, 0.0, 0.0, 2);
- ShowSyncHudMsg(id, g_HudInfo[HudData_Item], "[PoisonKit : %i]", g_PlayerInfo[iPlayer][g_iPoisonKit]);
- }
- if(g_PlayerInfo[iPlayer][g_iBomb] > 0) {
- set_hudmessage(0, 255, 255, 0.80, 0.20, 0, 0.0, 0.3, 0.0, 0.0, 2);
- ShowSyncHudMsg(id, g_HudInfo[HudData_Item], "[Bomb: %i]", g_PlayerInfo[iPlayer][g_iBomb]);
- }
- if(cod_broj_munja(iPlayer) < 0) {
- set_hudmessage(0, 255, 255, 0.80, 0.20, 0, 0.0, 0.3, 0.0, 0.0, 2);
- ShowSyncHudMsg(id, g_HudInfo[HudData_Item], "[Munja: test]", cod_broj_munja(iPlayer));
- }
- }
- }
- public fw_Ham_Touch(iWeaponID, id) {
- if(!is_user_connected(id)) return HAM_IGNORED;
- new szModel[23];
- entity_get_string(iWeaponID, EV_SZ_model, szModel, charsmax(szModel));
- if(pev(iWeaponID, pev_owner) == id || containi(szModel, "w_backpack") != -1 || g_PlayerInfo[id][g_iClass] == Hitman) return HAM_IGNORED;
- return HAM_SUPERCEDE;
- }
- public BlokirajKomande() return 1;
- public plugin_end() {
- nvault_close(gVault);
- TrieDestroy(tCharacters);
- TrieDestroy(tPassword);
- ArraySort( g_SteamID, "SortRanks" );
- SaveRanks( );
- ArrayDestroy( g_SteamID );
- }
- public ProdajPredmet(id) {
- client_cmd(id, "spk ExitCOD/select");
- if(!predmet_igraca[id][0]) {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L.", id, "ML_NEMATE_PREDMET");
- return 0;
- }
- else {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L ^3%L^1 %L^3 2000$", id, "ML_PRODAO_SI", id, g_szPerksData[predmet_igraca[id][0]][0], id, "ML_ZA");
- Obrisipredmet(id);
- cs_set_user_money(id, cs_get_user_money(id) + 2000);
- }
- return 0;
- }
- public PostaviLang(id) {
- new szLang[3];
- get_user_lang(id, szLang, charsmax(szLang));
- set_user_lang(id, ((equali(szLang, "en") || equali(szLang, "sr")) ? szLang : "en"));
- }
- public fw_Touch(id, iWorld) if(is_user_alive( id ) && (g_PlayerInfo[id][g_iClass] == Samuraj || g_PlayerInfo[id][g_iClass] == VampirToza || g_PlayerInfo[id][g_iClass] == Ninja || g_PlayerInfo[id][g_iClass] == Phantom ) && pev_valid(id)) entity_get_vector(id, EV_VEC_origin, g_fWallOrigin[id]);
- public WallClimb(id) {
- new Float: fOrigin[3];
- entity_get_vector(id, EV_VEC_origin, fOrigin);
- if(get_distance_f(fOrigin, g_fWallOrigin[id]) > 25.0) return FMRES_IGNORED;
- if(entity_get_int(id, EV_INT_flags) & FL_ONGROUND) return FMRES_IGNORED;
- new iButton = entity_get_int(id, EV_INT_button);
- if((iButton & IN_FORWARD) || (iButton & IN_BACK)) {
- new Float: fVelocity[3];
- VelocityByAim(id, ((iButton & IN_FORWARD) ? 120 : -120), fVelocity);
- entity_set_vector(id, EV_VEC_velocity, fVelocity);
- }
- return FMRES_IGNORED;
- }
- public Info(id) {
- if(g_PlayerInfo[id][g_iClass] == Teleporter || predmet_igraca[id][0] == 52) {
- set_hudmessage(0, 255, 255, -1.0, 0.30, 0, 6.0, 2.0);
- ShowSyncHudMsg(id, g_HudInfo[HudData_ItemInfo], "%L!", id, "ML_TELEPORT_KORISTI");
- }
- }
- stock Teleport(Index) {
- new Float: fStart[3], Float: fViewOfs[3], Float: fDest[3], Float: fDstOrigin[3], Float: fNormal[3];
- entity_get_vector(Index, EV_VEC_origin, fStart);
- entity_get_vector(Index, EV_VEC_view_ofs, fViewOfs);
- xs_vec_add(fStart, fViewOfs, fStart);
- entity_get_vector(Index, EV_VEC_v_angle, fDest);
- engfunc(EngFunc_MakeVectors, fDest);
- global_get(glb_v_forward, fDest);
- xs_vec_mul_scalar(fDest, 999.0, fDest);
- xs_vec_add(fStart, fDest, fDest);
- engfunc(EngFunc_TraceLine, fStart, fDest, 0, Index, 0);
- get_tr2(0, TR_vecEndPos, fDstOrigin);
- if(engfunc(EngFunc_PointContents, fDstOrigin) == CONTENTS_SKY) return 0;
- get_tr2(0, TR_vecPlaneNormal, fNormal);
- xs_vec_mul_scalar(fNormal, 50.0, fNormal);
- xs_vec_add(fDstOrigin, fNormal, fDstOrigin);
- entity_set_vector(Index, EV_VEC_origin, fDstOrigin);
- return true;
- }
- stock bool: UTIL_In_FOV(Index, iTarget) {
- if(Find_Angle(Index, iTarget, 9999.9) > 0.0) return true;
- return false;
- }
- stock Float: Find_Angle(iCore, iTarget, Float: fDist) {
- new Float: fVec2LOS[2], Float: fDot, Float: fCoreOrigin[3], Float: fTargetOrigin[3], Float: fCoreAngles[3];
- entity_get_vector(iCore, EV_VEC_origin, fCoreOrigin);
- entity_get_vector(iTarget, EV_VEC_origin, fTargetOrigin);
- if(get_distance_f(fCoreOrigin, fTargetOrigin) > fDist) return 0.0;
- entity_get_vector(iCore, EV_VEC_angles, fCoreAngles);
- for(new i=0; i<2; i++) fVec2LOS[i] = fTargetOrigin[i] - fCoreOrigin[i];
- new Float: fVecLength = Vec2DLength(fVec2LOS);
- if(fVecLength <= 0.0) {
- fVec2LOS[0] = 0.0;
- fVec2LOS[1] = 0.0;
- }
- else {
- new Float: fLen = 1.0 / fVecLength;
- for(new i=0; i<2; i++) fVec2LOS[i] *= fLen;
- }
- engfunc(EngFunc_MakeVectors, fCoreAngles);
- new Float: fvForward[3], Float: fvForward2D[2];
- get_global_vector(GL_v_forward, fvForward);
- for(new i=0; i<2; i++) fvForward2D[i] = fvForward[i];
- fDot = fVec2LOS[0]*fvForward2D[0]+fVec2LOS[1]*fvForward2D[1];
- if(fDot > 0.5) return fDot;
- return 0.0;
- }
- stock ShowPerkDescription(Index, iPerk1, iPerk2) {
- new szDesc[512], szRandomNum[3];
- num_to_str(predmet_igraca[Index][1], szRandomNum, charsmax(szRandomNum));
- if(!iPerk2) formatex(szDesc, charsmax(szDesc), "\y%L \d: \r%L^n\y%L \d: \r%L", Index, "ML_PREDMET", Index, g_szPerksData[iPerk1][0], Index, "ML_OPIS", Index, g_szPerksData[iPerk1][1]);
- else {
- new iTarget = pev(Index, pev_iuser2);
- if(iTarget) formatex(szDesc, charsmax(szDesc), "\r%L \w:^n\y%L \d: \r%L^n\y%L \d: \r%L^n^n\r%L \w:^n\y%L \d: \r%L^n\y%L \d: \r%L", Index, "ML_MOJ_PREDMET", Index, "ML_PREDMET", Index, g_szPerksData[iPerk1][0], Index, "ML_OPIS", Index, g_szPerksData[iPerk1][1], Index, "ML_PREDMET_METE", Index, "ML_PREDMET", Index, g_szPerksData[predmet_igraca[iTarget][0]][0], Index, "ML_OPIS", Index, g_szPerksData[predmet_igraca[iTarget][0]][1]);
- else formatex(szDesc, charsmax(szDesc), "\y%L \d: \r%L^n\y%L \d: \r%L", Index, "ML_PREDMET", Index, g_szPerksData[iPerk1][0], Index, "ML_OPIS", Index, g_szPerksData[iPerk1][1]);
- }
- replace_all(szDesc, charsmax(szDesc), "LW", szRandomNum);
- show_menu(Index, 1023, szDesc);
- return 0;
- }
- stock Create_TE_BEAMENTS(iStartEntity, iEndEntity, iSprite, iStartFrame, iFrameRate, iLife, iWidth, iNoise, iRed, iGreen, iBlue, iAlpha, iSpeed) {
- message_begin(MSG_BROADCAST, SVC_TEMPENTITY);
- write_byte(TE_BEAMENTS);
- write_short(iStartEntity);
- write_short(iEndEntity);
- write_short(iSprite);
- write_byte(iStartFrame);
- write_byte(iFrameRate);
- write_byte(iLife);
- write_byte(iWidth);
- write_byte(iNoise);
- write_byte(iRed);
- write_byte(iGreen);
- write_byte(iBlue);
- write_byte(iAlpha);
- write_byte(iSpeed);
- message_end();
- }
- stock Create_TE_BEAMCYLINDER(iOrigin[3], iPlusOrigin, iSprite, iStartFrame, iFrameRate, iLife, iWidth, iNoise, iRed, iGreen, iBlue, iAlpha, iSpeed) {
- 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] + iPlusOrigin);
- write_coord(iOrigin[2] + iPlusOrigin);
- write_short(iSprite);
- write_byte(iStartFrame);
- write_byte(iFrameRate);
- write_byte(iLife);
- write_byte(iWidth);
- write_byte(iNoise);
- write_byte(iRed);
- write_byte(iGreen);
- write_byte(iBlue);
- write_byte(iAlpha);
- write_byte(iSpeed);
- message_end();
- }
- stock Create_TE_EXPLOSION(iOrigin[3], iSprite, iScale, iFrameRate, iFlags) {
- 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(iSprite);
- write_byte(iScale);
- write_byte(iFrameRate);
- write_byte(iFlags);
- message_end();
- }
- stock GivePerk(Index, iPerk) {
- Obrisipredmet(Index);
- for(new i=0; i<sizeof(g_iPerksWithHe); i++) {
- if(is_blocked_map()) {
- if(iPerk == g_iPerksWithHe[i]) {
- new iRand = random_num(1, sizeof(g_szPerksData)-1);
- if(iRand == g_iPerksWithHe[i]) iRand = random_num(1, sizeof(g_szPerksData)-1);
- }
- }
- }
- predmet_igraca[Index][0] = iPerk;
- ColorChat(Index, TEAM_COLOR, "^4[CoD:Mw4] ^1%L ^3%L.", Index, "ML_DOBIO_SI", Index, g_szPerksData[predmet_igraca[Index][0]][0]);
- switch(iPerk) {
- case 4, 8, 10, 13, 56: if( g_PlayerInfo[Index][g_iClass] == DrugTito ) {
- GivePerk( Index, random_num(1, sizeof g_szPerksData - 1 ) );
- return;
- }
- }
- switch(iPerk) {
- case 1, 44: set_user_footsteps(Index, 1);
- case 5: predmet_igraca[Index][1] = random_num(6, 9);
- case 6: {
- predmet_igraca[Index][1] = random_num(100, 150);
- set_rendering(Index, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, predmet_igraca[Index][1]);
- }
- case 7: predmet_igraca[Index][1] = random_num(2, 4);
- case 10: {
- predmet_igraca[Index][1] = random_num(4, 8);
- give_item(Index, "weapon_hegrenade");
- }
- case 12: predmet_igraca[Index][1] = random_num(1, 4);
- case 13: give_item(Index, "weapon_awp");
- case 19: predmet_igraca[Index][1] = 1;
- case 26: predmet_igraca[Index][1] = random_num(3, 6);
- case 27: predmet_igraca[Index][1] = 3;
- case 45: {
- give_item(Index, "weapon_hegrenade");
- PromeniModel(Index, 0 );
- predmet_igraca[Index][1] = random_num(1, 3);
- }
- case 47: predmet_igraca[Index][1] = random_num(1, 3);
- case 51: CreateUAV(Index);
- case 55: give_item(Index, "weapon_scout");
- case 56: give_item(Index, "weapon_m4a1");
- case 57: give_item(Index, "weapon_deagle");
- case 59: give_item(Index, "weapon_awp");
- case 60: give_item(Index, "weapon_hegrenade");
- case 61: give_item(Index, "weapon_galil");
- case 62: {
- give_item(Index, "weapon_usp");
- give_item(Index, "weapon_mp5navy");
- }
- case 63: give_item(Index, "weapon_m3");
- case 64: give_item(Index, "weapon_sg550");
- }
- }
- stock update_ammo(Index) {
- new iWeaponID[32], iWeaponsNum;
- get_user_weapons(Index, iWeaponID, iWeaponsNum);
- for(new i=0; i<iWeaponsNum; i++) if(is_user_alive(Index)) if(g_iWeaponsData[iWeaponID[i]][0] > 0) cs_set_user_bpammo(Index, iWeaponID[i], g_iWeaponsData[iWeaponID[i]][0]);
- }
- stock get_user_hitpoint(id, Float: hOrigin[3]) {
- if(!is_user_alive( id )) return 0;
- new Float: fOrigin[3], Float: fvAngle[3], Float: fvOffset[3], Float: fvOrigin[3], Float: feOrigin[3], Float: fTemp[3];
- entity_set_vector(id, EV_VEC_origin, fOrigin);
- entity_set_vector(id, EV_VEC_v_angle, fvAngle);
- entity_set_vector(id, EV_VEC_view_ofs, fvOffset);
- xs_vec_add(fOrigin, fvOffset, fvOrigin);
- engfunc(EngFunc_AngleVectors, fvAngle, feOrigin, fTemp, fTemp);
- xs_vec_mul_scalar(feOrigin, 9999.9, feOrigin);
- xs_vec_add(fvOrigin, feOrigin, feOrigin);
- engfunc(EngFunc_TraceLine, fvOrigin, feOrigin, 0, id);
- global_get(glb_trace_endpos, hOrigin);
- return 1;
- }
- stock CallOfDutyAim(Index, const szColor[]) client_cmd(Index, "cl_crosshair_color ^"%s^"", szColor);
- stock Float: Vec2DLength(Float: fVec[2]) return floatsqroot(fVec[0]*fVec[0] + fVec[1]*fVec[1]);
- stock set_user_clip(Index, iAmmo) {
- new szWeaponName[32], iWeaponID = -1, szWeapon = get_user_weapon(Index, _, _);
- get_weaponname(szWeapon, szWeaponName, charsmax(szWeaponName));
- while((iWeaponID = find_ent_by_class(iWeaponID, szWeaponName)) != 0) {
- if(entity_get_edict(iWeaponID, EV_ENT_owner) == Index) {
- set_pdata_int(iWeaponID, 51, iAmmo, 4);
- return iWeaponID;
- }
- }
- return 0;
- }
- stock set_user_visible(Index, iValue) {
- set_user_rendering( Index, kRenderFxGlowShell, 0, 0, 0, kRenderTransAlpha, iValue );
- }
- stock set_user_lang(Index, const szLang[]) client_cmd(Index, "setinfo lang %s", szLang);
- stock get_user_lang(Index, szLang[], iLen) get_user_info(Index, "lang", szLang, iLen);
- stock screen_fade(Index, Float: fTime, iRed, iGreen, iBlue) {
- message_begin(MSG_ONE_UNRELIABLE, g_iMessageID[MSGID_ScreenFade], _, Index);
- write_short((1 << 12) * 1);
- write_short(floatround((1 << 12) * fTime));
- write_short(0x0000);
- write_byte(iRed);
- write_byte(iGreen);
- write_byte(iBlue);
- write_byte(150);
- message_end();
- }
- stock give_weapon_id(Index, iWeaponID) {
- new szWeaponName[21];
- get_weaponname(iWeaponID, szWeaponName, charsmax(szWeaponName));
- give_item(Index, szWeaponName);
- }
- stock cs_weapon_id_to_name(iWeaponID, szOutPut[], iLen) copy(szOutPut, iLen, g_szWeaponsData[iWeaponID][0]);
- stock fm_cs_get_weapon_ent_owner(iEnt) {
- if(pev_valid(iEnt) != PDATA_SAFE) return -1;
- return get_pdata_cbase(iEnt, OFFSET_WEAPONOWNER, OFFSET_LINUX_WEAPONS);
- }
- stock register_client_command(const szCommands[], const szForward[]) {
- new szCommand[2][32];
- formatex(szCommand[0], charsmax(szCommand[]), "say %s", szCommands);
- formatex(szCommand[1], charsmax(szCommand[]), "say_team %s", szCommands);
- for(new i=0; i<2; i++) register_clcmd(szCommand[i], szForward);
- }
- stock bool:is_blocked_map() {
- new szMapName[32];
- get_mapname(szMapName, charsmax(szMapName));
- for(new i; i<sizeof(g_szMapsWithBlockedHe); i++) if(equal(szMapName, g_szMapsWithBlockedHe[i])) return true;
- return false;
- }
- #define MAX_DIST 8192.0
- #define MAX 32
- stock getClosestPlayer(ent)
- {
- new iClosestPlayer = 0, Float:flClosestDist = MAX_DIST, Float:flDistanse, Float:fOrigin[2][3];
- new num, players[32];
- get_players(players, num, "gh")
- for(new a = 0; a < num; a++)
- {
- new i = players[a];
- if(!is_user_connected(i) || !is_user_alive(i) || /*!ExecuteHam(Ham_FVisible, i, ent)*/!fm_is_ent_visible(i, ent) || get_user_team(i) == get_user_team(entity_get_int(ent, EV_INT_iuser2)))
- continue;
- if(UTIL_In_FOV(i, ent))
- continue;
- entity_get_vector(i, EV_VEC_origin, fOrigin[0]);
- entity_get_vector(ent, EV_VEC_origin, fOrigin[1]);
- flDistanse = get_distance_f(fOrigin[0], fOrigin[1]);
- if(flDistanse <= flClosestDist)
- {
- iClosestPlayer = i;
- flClosestDist = flDistanse;
- }
- }
- return iClosestPlayer;
- }
- public task_check_dead_flag(id)
- {
- if(!is_user_connected(id))
- return
- if(pev(id, pev_deadflag) == DEAD_DEAD)
- create_fake_corpse(id)
- else
- set_task(0.5, "task_check_dead_flag", id)
- }
- public create_fake_corpse(id)
- {
- if( !is_user_connected( id ) ) return 0;
- set_pev(id, pev_effects, EF_NODRAW)
- static model[32]
- cs_get_user_model(id, model, 31)
- static player_model[64]
- format(player_model, 63, "models/player/%s/%s.mdl", model, model)
- static Float: player_origin[3]
- pev(id, pev_origin, player_origin)
- static Float:mins[3]
- mins[0] = -16.0
- mins[1] = -16.0
- mins[2] = -34.0
- static Float:maxs[3]
- maxs[0] = 16.0
- maxs[1] = 16.0
- maxs[2] = 34.0
- if(g_wasducking[id])
- {
- mins[2] /= 2
- maxs[2] /= 2
- }
- static Float:player_angles[3]
- pev(id, pev_angles, player_angles)
- player_angles[2] = 0.0
- new sequence = pev(id, pev_sequence)
- new ent = fm_create_entity("info_target")
- if(ent)
- {
- set_pev(ent, pev_classname, "fake_corpse")
- engfunc(EngFunc_SetModel, ent, player_model)
- engfunc(EngFunc_SetOrigin, ent, player_origin)
- engfunc(EngFunc_SetSize, ent, mins, maxs)
- set_pev(ent, pev_solid, SOLID_TRIGGER)
- set_pev(ent, pev_movetype, MOVETYPE_TOSS)
- set_pev(ent, pev_owner, id)
- set_pev(ent, pev_angles, player_angles)
- set_pev(ent, pev_sequence, sequence)
- set_pev(ent, pev_frame, 9999.9)
- }
- return 0;
- }
- public fwd_emitsound(id, channel, sound[])
- {
- if( !is_user_connected( id ) || !is_user_alive(id) || !g_haskit[id])
- return FMRES_IGNORED
- if(!equali(sound, "common/wpn_denyselect.wav"))
- return FMRES_IGNORED
- if(task_exists(TASKID_REVIVE + id))
- return FMRES_IGNORED
- if(!(fm_get_user_button(id) & IN_USE))
- return FMRES_IGNORED
- new body = find_dead_body(id)
- if(!fm_is_valid_ent(body))
- return FMRES_IGNORED
- new lucky_bastard = pev(body, pev_owner)
- new lb_team = get_user_team(lucky_bastard)
- new rev_team = get_user_team(id)
- if(lb_team != 1 && lb_team != 2 || lb_team != rev_team)
- return FMRES_IGNORED
- static name[32]
- get_user_name(lucky_bastard, name, 31)
- client_print(id, print_chat, "Reviving %s", name)
- new revivaltime = 6
- msg_bartime(id, revivaltime)
- new Float:gametime = get_gametime()
- g_revive_delay[id] = gametime + float(revivaltime) - 0.01
- emit_sound(id, CHAN_AUTO, SOUND_START, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
- set_task(0.0, "task_revive", TASKID_REVIVE + id)
- return FMRES_SUPERCEDE
- }
- public task_revive(taskid)
- {
- new id = taskid - TASKID_REVIVE
- if( !is_user_connected( id ) ) return FMRES_IGNORED;
- if(!is_user_alive(id))
- {
- failed_revive(id)
- return FMRES_IGNORED
- }
- if(!(fm_get_user_button(id) & IN_USE))
- {
- failed_revive(id)
- return FMRES_IGNORED
- }
- new body = find_dead_body(id)
- if(!fm_is_valid_ent(body))
- {
- failed_revive(id)
- return FMRES_IGNORED
- }
- new lucky_bastard = pev(body, pev_owner)
- if(!is_user_connected(lucky_bastard))
- {
- failed_revive(id)
- return FMRES_IGNORED
- }
- new lb_team = get_user_team(lucky_bastard)
- new rev_team = get_user_team(id)
- if(lb_team != 1 && lb_team != 2 || lb_team != rev_team)
- {
- failed_revive(id)
- return FMRES_IGNORED
- }
- static Float:velocity[3]
- pev(id, pev_velocity, velocity)
- velocity[0] = 0.0
- velocity[1] = 0.0
- set_pev(id, pev_velocity, velocity)
- new Float:gametime = get_gametime()
- if(g_revive_delay[id] < gametime)
- {
- if(findemptyloc(body, 10.0))
- {
- fm_remove_entity(body)
- emit_sound(id, CHAN_AUTO, SOUND_FINISHED, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
- set_task(0.1, "task_respawn", TASKID_RESPAWN + lucky_bastard)
- }
- else
- failed_revive(id)
- }
- else
- set_task(0.1, "task_revive", TASKID_REVIVE + id)
- return FMRES_IGNORED
- }
- public failed_revive(id)
- {
- if( !is_user_connected( id ) ) return PLUGIN_CONTINUE;
- msg_bartime(id, 0)
- emit_sound(id, CHAN_AUTO, SOUND_FAILED, VOL_NORM, ATTN_NORM, 0, PITCH_NORM)
- return PLUGIN_CONTINUE;
- }
- public task_origin(taskid)
- {
- new id = taskid - TASKID_ORIGIN
- if( !is_user_connected( id ) ) return PLUGIN_CONTINUE;
- engfunc(EngFunc_SetOrigin, id, g_body_origin[id])
- static Float:origin[3]
- pev(id, pev_origin, origin)
- set_pev(id, pev_zorigin, origin[2])
- set_task(0.1, "task_stuck_check", TASKID_CHECKST + id)
- return PLUGIN_CONTINUE;
- }
- stock find_dead_body(id)
- {
- if( !is_user_connected( id ) ) return 0;
- static Float:origin[3]
- pev(id, pev_origin, origin)
- new ent
- static classname[32]
- while((ent = fm_find_ent_in_sphere(ent, origin, 70.0)) != 0)
- {
- pev(ent, pev_classname, classname, 31)
- if(equali(classname, "fake_corpse") && fm_is_ent_visible(id, ent))
- return ent
- }
- return 0
- }
- stock msg_bartime(id, seconds)
- {
- if(is_user_bot(id) || !is_user_connected( id ) )
- return
- message_begin(MSG_ONE, g_msg_bartime, _, id)
- write_byte(seconds)
- write_byte(0)
- message_end()
- }
- stock msg_statusicon(id, status)
- {
- if(is_user_bot(id) || !is_user_connected( id ) )
- return
- message_begin(MSG_ONE, g_msg_statusicon, _, id)
- write_byte(status)
- write_string("rescue")
- write_byte(0)
- write_byte(160)
- write_byte(0)
- message_end()
- }
- public task_respawn(taskid)
- {
- new id = taskid - TASKID_RESPAWN
- if( !is_user_connected( id ) )
- return PLUGIN_CONTINUE;
- set_pev(id, pev_deadflag, DEAD_RESPAWNABLE)
- dllfunc(DLLFunc_Spawn, id)
- set_pev(id, pev_iuser1, 0)
- set_task(0.1, "task_check_respawn", TASKID_CHECKRE + id)
- return PLUGIN_CONTINUE;
- }
- public task_check_respawn(taskid)
- {
- new id = taskid - TASKID_CHECKRE
- if( !is_user_connected( id ) )
- return PLUGIN_CONTINUE;
- if(pev(id, pev_iuser1))
- set_task(0.1, "task_respawn", TASKID_RESPAWN + id)
- else
- set_task(0.1, "task_origin", TASKID_ORIGIN + id)
- return PLUGIN_CONTINUE;
- }
- public task_stuck_check(taskid)
- {
- new id = taskid - TASKID_CHECKST
- if( !is_user_connected( id ) )
- return PLUGIN_CONTINUE;
- static Float:origin[3]
- pev(id, pev_origin, origin)
- if(origin[2] == pev(id, pev_zorigin))
- set_task(0.1, "task_respawn", TASKID_RESPAWN + id)
- else
- set_task(0.1, "task_setplayer", TASKID_SETUSER + id)
- return PLUGIN_CONTINUE;
- }
- public task_setplayer(taskid)
- {
- new id = taskid - TASKID_SETUSER
- if( !is_user_connected( id ) )
- return PLUGIN_CONTINUE;
- fm_strip_user_weapons(id)
- fm_give_item(id, "weapon_knife")
- fm_set_user_health(id, 75)
- message_begin(MSG_ONE, g_iMessageID[ MSGID_ScreenFade ], _, id)
- write_short(seconds(2))
- write_short(seconds(2))
- write_short(0)
- write_byte(0)
- write_byte(0)
- write_byte(0)
- write_byte(255)
- message_end()
- return PLUGIN_CONTINUE;
- }
- stock bool:findemptyloc(ent, Float:radius)
- {
- if(!fm_is_valid_ent(ent))
- return false
- static Float:origin[3]
- pev(ent, pev_origin, origin)
- origin[2] += 2.0
- new owner = pev(ent, pev_owner)
- new num = 0, bool:found = false
- while(num <= 100)
- {
- if(is_hull_vacant(origin))
- {
- g_body_origin[owner][0] = origin[0]
- g_body_origin[owner][1] = origin[1]
- g_body_origin[owner][2] = origin[2]
- found = true
- break
- }
- else
- {
- origin[0] += random_float(-radius, radius)
- origin[1] += random_float(-radius, radius)
- origin[2] += random_float(-radius, radius)
- num++
- }
- }
- return found
- }
- stock bool:is_hull_vacant(const Float:origin[3])
- {
- new tr = 0
- engfunc(EngFunc_TraceHull, origin, origin, 0, HULL_HUMAN, 0, tr)
- if(!get_tr2(tr, TR_StartSolid) && !get_tr2(tr, TR_AllSolid) && get_tr2(tr, TR_InOpen))
- return true
- return false
- }
- public fwd_playerpostthink(id)
- {
- if(!is_user_connected(id) || !g_haskit[id])
- return FMRES_IGNORED
- if(!is_user_alive(id))
- {
- msg_statusicon(id, ICON_HIDE)
- return FMRES_IGNORED
- }
- new body = find_dead_body(id)
- if(fm_is_valid_ent(body))
- {
- new lucky_bastard = pev(body, pev_owner)
- if(!is_user_connected(lucky_bastard))
- return FMRES_IGNORED
- new lb_team = get_user_team(lucky_bastard)
- new rev_team = get_user_team(id)
- if(lb_team == 1 || lb_team == 2 && lb_team == rev_team)
- msg_statusicon(id, ICON_FLASH)
- }
- else
- msg_statusicon(id, ICON_SHOW)
- return FMRES_IGNORED
- }
- public event_death()
- {
- new id = read_data(2)
- if( !is_user_connected( id ) )
- return PLUGIN_CONTINUE;
- reset_player(id)
- static Float:minsize[3]
- pev(id, pev_mins, minsize)
- if(minsize[2] == -18.0)
- g_wasducking[id] = true
- else
- g_wasducking[id] = false
- set_task(0.5, "task_check_dead_flag", id)
- return PLUGIN_CONTINUE;
- }
- public event_hltv()
- {
- fm_remove_entity_name("fake_corpse")
- fm_remove_entity_name("revival_kit")
- static players[32], num
- get_players(players, num, "a")
- for(new i = 0; i < num; ++i)
- reset_player(players[i])
- }
- public reset_player(id)
- {
- remove_task(TASKID_REVIVE + id)
- remove_task(TASKID_RESPAWN + id)
- remove_task(TASKID_CHECKRE + id)
- remove_task(TASKID_CHECKST + id)
- remove_task(TASKID_ORIGIN + id)
- remove_task(TASKID_SETUSER + id)
- msg_bartime(id, 0)
- g_revive_delay[id] = 0.0
- g_wasducking[id] = false
- g_body_origin[id] = Float:{0.0, 0.0, 0.0}
- }
- public Menu(id) {
- static szItems[32], iMenuID;
- iMenuID = menu_create("\rGolds Stars CoD:Mw4 Menu \w:", "hMenu");
- for(new i; i<sizeof(g_szMenuItems); i++) {
- szItems[0] = '^0';
- formatex(szItems, charsmax(szItems), "\y%L", id, g_szMenuItems[i]);
- menu_additem(iMenuID, szItems);
- }
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public hMenu(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- switch(iItem) {
- case MENU_EXIT: {
- menu_destroy(iMenuID);
- return 1;
- }
- case 0: Class(id);
- case 1: Perk(id);
- case 2: ChooseTeam(id);
- case 3: client_cmd(id, "say /shop");
- case 4: Prices(id);
- case 5: Boost(id);
- case 6: Awards(id);
- case 7: client_cmd(id, "say /vipinfo");
- case 8: Commands(id);
- case 9: Rank(id);
- case 10: client_cmd(id, "say /reset");
- case 11: client_cmd(id, "say /codadmin");
- }
- return 0;
- }
- public Class(id) {
- static szItems[32], iMenuID;
- formatex(szItems, charsmax(szItems), "\r%L \w:", id, "ML_KLASA");
- iMenuID = menu_create(szItems, "hClass");
- for(new i; i<sizeof(g_szClassMenuData); i++) {
- szItems[0] = '^0';
- formatex(szItems, charsmax(szItems), "\y%L", id, g_szClassMenuData[i][0]);
- menu_additem(iMenuID, szItems);
- }
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public hClass(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- if(iItem == MENU_EXIT) {
- menu_destroy(iMenuID);
- return 0;
- }
- client_cmd(id, g_szClassMenuData[iItem][1]);
- return 0;
- }
- public Perk(id) {
- static szItems[32], iMenuID;
- formatex(szItems, charsmax(szItems), "\r%L \w:", id, "ML_PREDMET");
- iMenuID = menu_create(szItems, "hPerk");
- for(new i; i<sizeof(g_szPerkMenuData); i++) {
- szItems[0] = '^0';
- formatex(szItems, charsmax(szItems), "\y%L", id, g_szPerkMenuData[i][0]);
- menu_additem(iMenuID, szItems);
- }
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public hPerk(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- if(iItem == MENU_EXIT) {
- menu_destroy(iMenuID);
- return 0;
- }
- client_cmd(id, g_szPerkMenuData[iItem][1]);
- return 0;
- }
- public ChooseTeam(id) {
- static szItems[32], iMenuID;
- formatex(szItems, charsmax(szItems), "\r%L \w:", id, "ML_TIM");
- iMenuID = menu_create(szItems, "hChooseTeam");
- for(new i; i<sizeof(g_szTeamMenuData); i++) menu_additem(iMenuID, g_szTeamMenuData[i][0]);
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public hChooseTeam(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- if(iItem == MENU_EXIT) {
- menu_destroy(iMenuID);
- return 0;
- }
- new CsTeams:iTeam = cs_get_user_team(id);
- switch(iItem) {
- case 0: {
- if(iTeam != CS_TEAM_T) cs_set_user_team(id, CS_TEAM_T);
- if(is_user_alive(id)) user_kill(id);
- }
- case 1: {
- if(iTeam != CS_TEAM_CT) cs_set_user_team(id, CS_TEAM_CT);
- if(is_user_alive(id)) user_kill(id);
- }
- case 2: {
- if(iTeam != CS_TEAM_SPECTATOR) cs_set_user_team(id, CS_TEAM_SPECTATOR);
- if(is_user_alive(id)) user_kill(id);
- }
- }
- return 0;
- }
- public Boost(id)
- {
- client_print(id, print_center, "%L", id, "ML_POGLEDAJ_CHAT_BOOST");
- ColorChat( id, GREEN,"^4[HTBS]^1 %L", id, "ML_NISI_ZEMLJA_BOOST" );
- set_task(3.0, "BoostMenu", id)
- return PLUGIN_CONTINUE
- }
- public BoostMenu(id)
- {
- new naslov[60]
- new menuitem[65]
- format(naslov, 59, "\r%L \w:", id, "ML_IZABERI_DRZAVU_BOOST");
- new BoostMenu = menu_create(naslov, "boost_menu_handler");
- for(new i=0;i<sizeof zemlje;i++)
- {
- formatex(menuitem, charsmax(menuitem), "%s", zemlje[i]);
- menu_additem(BoostMenu, menuitem);
- }
- menu_display(id, BoostMenu);
- }
- public boost_menu_handler(id, menu, item)
- {
- if(item==MENU_EXIT)
- {
- menu_destroy(menu)
- return PLUGIN_CONTINUE
- }
- new ip[32], ime[32]
- get_user_ip(0, ip, charsmax(ip))
- get_user_name(id, ime, 31)
- switch(item)
- {
- case 0: ColorChat(id, TEAM_COLOR, "^4[HTBS Srbija]^3 %L", id, "ML_SRBIA_BOOST", ip, ime);
- case 1: ColorChat(id, TEAM_COLOR, "^4[HTBS Hrvatska]:^3 %L", id, "ML_HRVATSKA_BOOST", ip, ime);
- case 2: ColorChat(id, TEAM_COLOR, "^4[HTBS BIH]:^3 %L", id, "ML_BIH_BOOST", ip, ime);
- case 3: ColorChat(id, TEAM_COLOR, "^4[HTBS Crna Gora]:^3 %L", id, "ML_CG_BOOST", ip, ime);
- case 4: ColorChat(id, TEAM_COLOR, "^4[HTBS Makedonija]:^3 %L", id, "ML_MK_BOOST", ip, ime);
- case 5: ColorChat(id, TEAM_COLOR, "^4[HTBS Bulgaria]:^3 %L", id, "ML_BG_BOOST", ip, ime);
- case 6: ColorChat(id, TEAM_COLOR, "^4[HTBS Romania]:^3 %L", id, "ML_RM_BOOST", ip, ime);
- case 7: ColorChat(id, TEAM_COLOR, "^4[HTBS Kosovo]:^3 %L", id, "ML_KS_BOOST", ip, ime);
- case 8: ColorChat(id, TEAM_COLOR, "^4[HTBS Albania]:^3 %L", id, "ML_ALB_BOOST", ip, ime);
- case 9: ColorChat(id, TEAM_COLOR, "^4[HTBS Austria]:^3 %L", id, "ML_AUS_BOOST", ip, ime);
- case 10: ColorChat(id, TEAM_COLOR, "^4[HTBS Germany]:^3 %L", id, "ML_GER_BOOST", ip, ime);
- case 11: ColorChat(id, TEAM_COLOR, "^4[HTBS Russia]:^3 %L", id, "ML_RUS_BOOST", ip, ime);
- case 12: ColorChat(id, TEAM_COLOR, "^4[HTBS Slovenia]:^3 %L", id, "ML_SLO_BOOST", ip, ime);
- case 13: ColorChat(id, TEAM_COLOR, "^4[HTBS Italy]:^3 %L", id, "ML_ITL_BOOST", ip, ime);
- }
- return PLUGIN_CONTINUE
- }
- public Awards(id) {
- new iMenuID = menu_create("\rAwards:", "hAwards");
- for(new i=0; i<sizeof(g_szAwardsMenuData); i++) menu_additem(iMenuID, g_szAwardsMenuData[i]);
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public hAwards(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- switch(iItem) {
- case MENU_EXIT: {
- menu_destroy(iMenuID);
- return 0;
- }
- case 0: Awards(id);
- }
- return 0;
- }
- public Commands(id) {
- if(!is_user_connected(id)) return 1;
- client_cmd(id, "spk ExitCOD/select");
- static szMotd[1501], szTitle[32], iLen=0;
- iLen = formatex(szMotd, charsmax(szMotd), "<meta charset=UTF-8><style>body{background:#E6E6E6;font-family:Verdana}th{background:#F5F5F5;color:#A70000;padding:6px;text-align:left}td{padding:2px 6px}table{color:#333;background:#E6E6E6;font-size:10px;font-family:Georgia;border:2px solid #D9D9D9}</style><body><table width=100%% border=0 align=center cellpadding=0 cellspacing=1><tr><th>%L<th>%L</tr>", id, "ML_KOMANDA", id, "ML_OPIS");
- for(new i; i<sizeof(g_szCommandsItems); i++) iLen += formatex(szMotd[iLen], charsmax(szMotd)-iLen, "<tr><td>%L<td>%L", id, g_szCommandsItems[i][0], id, g_szCommandsItems[i][1]);
- formatex(szTitle, charsmax(szTitle), "%L", id, "ML_KOMANDE_SERVERA");
- show_motd(id, szMotd, szTitle);
- return 0;
- }
- public Rank(id) {
- static szItems[32], iMenuID;
- formatex(szItems, charsmax(szItems), "\r%L \w:", id, "ML_IZABERI_RANK");
- iMenuID = menu_create(szItems, "hRank");
- for(new i; i<sizeof(g_szRankMenuData); i++) menu_additem(iMenuID, g_szRankMenuData[i][0]);
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public hRank(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- if(iItem == MENU_EXIT) {
- menu_destroy(iMenuID);
- return 0;
- }
- client_cmd(id, g_szRankMenuData[iItem][1]);
- return 0;
- }
- public Prices(id) {
- new iMenuID = menu_create("\rSta zelite?", "hPrices");
- for(new i=0; i<sizeof(g_szPricesMenuData); i++) menu_additem(iMenuID, g_szPricesMenuData[i]);
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public hPrices(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- switch(iItem) {
- case MENU_EXIT: {
- menu_destroy(iMenuID);
- return 0;
- }
- case 0: CeneAdmina(id);
- case 1: CeneVipa(id);
- case 2: CeneKlasa(id);
- case 3: CeneOstalo(id);
- }
- return 0;
- }
- public CeneAdmina(id) {
- new iMenuID = menu_create("\rCene Admina:", "hCeneAdmina");
- for(new i=0; i<sizeof(g_szCeneAdminaMenuData); i++) menu_additem(iMenuID, g_szCeneAdminaMenuData[i]);
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public hCeneAdmina(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- switch(iItem) {
- case MENU_EXIT: {
- menu_destroy(iMenuID);
- return 0;
- }
- case 0: CeneAdmina(id);
- }
- return 0;
- }
- public CeneVipa(id) {
- new iMenuID = menu_create("\rCene VIP-a:", "hCeneVipa");
- for(new i=0; i<sizeof(g_szCeneVipaMenuData); i++) menu_additem(iMenuID, g_szCeneVipaMenuData[i]);
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public hCeneVipa(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- switch(iItem) {
- case MENU_EXIT: {
- menu_destroy(iMenuID);
- return 0;
- }
- case 0: CeneVipa(id);
- }
- return 0;
- }
- public CeneKlasa(id) {
- new iMenuID = menu_create("\rCene Klasa:", "hCeneKlasa");
- for(new i=0; i<sizeof(g_szCeneKlasaMenuData); i++) menu_additem(iMenuID, g_szCeneKlasaMenuData[i]);
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public hCeneKlasa(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- switch(iItem) {
- case MENU_EXIT: {
- menu_destroy(iMenuID);
- return 0;
- }
- case 0: CenePremiumKlasa(id);
- case 1: CeneGoldsStarsKlasa(id);
- case 2: CeneSpecialKlasa(id);
- case 3: CeneSuperPreimumKlasa(id);
- }
- return 0;
- }
- public CenePremiumKlasa(id) {
- new iMenuID = menu_create("\rCene Premium Klasa:", "hCenePremiumKlasa");
- for(new i=0; i<sizeof(g_szCenePremiumKlasaMenuData); i++) menu_additem(iMenuID, g_szCenePremiumKlasaMenuData[i]);
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public hCenePremiumKlasa(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- switch(iItem) {
- case MENU_EXIT: {
- menu_destroy(iMenuID);
- return 0;
- }
- case 0: CenePremiumKlasa(id);
- }
- return 0;
- }
- public CeneGoldsStarsKlasa(id) {
- new iMenuID = menu_create("\rCene Gold Stars Klasa:", "hCeneGoldsStarsKlasa");
- for(new i=0; i<sizeof(g_szCeneGoldsStarsKlasaMenuData); i++) menu_additem(iMenuID, g_szCeneGoldsStarsKlasaMenuData[i]);
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public hCeneGoldsStarsKlasa(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- switch(iItem) {
- case MENU_EXIT: {
- menu_destroy(iMenuID);
- return 0;
- }
- case 0: CeneGoldsStarsKlasa(id);
- }
- return 0;
- }
- public CeneSpecialKlasa(id) {
- new iMenuID = menu_create("\rCene Special Klasa:", "hCeneSpecialKlasa");
- for(new i=0; i<sizeof(g_szCeneSpecialKlasaMenuData); i++) menu_additem(iMenuID, g_szCeneSpecialKlasaMenuData[i]);
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public hCeneSpecialKlasa(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- switch(iItem) {
- case MENU_EXIT: {
- menu_destroy(iMenuID);
- return 0;
- }
- case 0: CeneSpecialKlasa(id);
- }
- return 0;
- }
- public CeneSuperPreimumKlasa(id) {
- new iMenuID = menu_create("\rCene Super Premium Klasa:", "hCeneSuperPreimumKlasa");
- for(new i=0; i<sizeof(g_szCeneSupePremKlasaMenuData); i++) menu_additem(iMenuID, g_szCeneSupePremKlasaMenuData[i]);
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public hCeneSuperPreimumKlasa(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- switch(iItem) {
- case MENU_EXIT: {
- menu_destroy(iMenuID);
- return 0;
- }
- case 0: CeneSuperPreimumKlasa(id);
- }
- return 0;
- }
- public CeneOstalo(id) {
- new iMenuID = menu_create("\rCene Ostalo:", "hCeneOstalo");
- for(new i=0; i<sizeof(g_szCeneOstaloMenuData); i++) menu_additem(iMenuID, g_szCeneOstaloMenuData[i]);
- menu_display(id, iMenuID);
- client_cmd(id, "spk ExitCOD/select");
- }
- public hCeneOstalo(id, iMenuID, iItem) {
- client_cmd(id, "spk ExitCOD/select");
- switch(iItem) {
- case MENU_EXIT: {
- menu_destroy(iMenuID);
- return 0;
- }
- case 0: CeneOstalo(id);
- }
- return 0;
- }
- stock bool:is_user_steam(id)
- {
- static dp_pointer
- if(dp_pointer || (dp_pointer = get_cvar_pointer("dp_r_id_provider")))
- {
- server_cmd("dp_clientinfo %d", id)
- server_exec()
- return (get_pcvar_num(dp_pointer) == 2) ? true : false
- }
- return false
- }
- public EfekatZamrzavanja(id) {
- if (!is_user_alive(id) || !is_user_connected( id ) || Zamrznut[id])
- return;
- screen_fade( id, 1.0, 0, 50, 200 );
- fm_set_rendering(id, kRenderFxGlowShell, 0, 100, 200, kRenderNormal, 25)
- Zamrznut[id] = true;
- set_task( 5.0, "OdmrzniIgraca", id)
- }
- EfekatZamrzavanjaPrsten( const Float: originF3[ 3 ] ) {
- engfunc(EngFunc_MessageBegin, MSG_PVS, SVC_TEMPENTITY, originF3, 0)
- write_byte(TE_BEAMCYLINDER) // TE id
- engfunc(EngFunc_WriteCoord, originF3[0]) // x
- engfunc(EngFunc_WriteCoord, originF3[1]) // y
- engfunc(EngFunc_WriteCoord, originF3[2]) // z
- engfunc(EngFunc_WriteCoord, originF3[0]) // x axis
- engfunc(EngFunc_WriteCoord, originF3[1]) // y axis
- engfunc(EngFunc_WriteCoord, originF3[2]+100.0) // z axis
- write_short(Talas) // sprite
- write_byte(0) // startframe
- write_byte(0) // framerate
- write_byte(4) // life
- write_byte(60) // width
- write_byte(0) // noise
- write_byte(41) // red
- write_byte(138) // green
- write_byte(255) // blue
- write_byte(200) // brightness
- write_byte(0)
- message_end()
- }
- public OdmrzniIgraca(id) {
- if (!is_user_alive(id))
- return;
- Zamrznut[id] = false;
- fm_set_rendering(id)
- PostaviBrzinu( id );
- }
- public ChatPrefiks( id ) {
- static Reko[ 192 ];
- read_args( Reko, charsmax( Reko ) );
- remove_quotes( Reko );
- static Poruka[ 256 ], i;
- if( goldVIP[ id ] ) {
- formatex( Poruka, charsmax( Poruka ), "^4[VIP] ^4[^4%L ^4- ^4%d^4] ^3%s ^1: %s", id, Klase[ g_PlayerInfo[ id ][ g_iClass ] ][ 0 ], g_PlayerInfo[ id ][ g_iLevel ], g_PlayerInfo[ id ][ g_szName ], Reko );
- for( i = 1; i <= get_maxplayers(); i++ ) {
- if( !is_user_connected( i ) )
- continue;
- if( is_user_alive( id ) && is_user_alive( i ) || !is_user_alive( id ) && !is_user_alive( i ) )
- IspisiPoruku( Poruka, id, i );
- }
- return 2;
- } else {
- formatex( Poruka, charsmax( Poruka ), "^4[^4%L ^4- ^4%d^4] ^3%s ^1: %s", id, Klase[ g_PlayerInfo[ id ][ g_iClass ] ][ 0 ], g_PlayerInfo[ id ][ g_iLevel ], g_PlayerInfo[ id ][ g_szName ], Reko );
- for( i = 1; i <= get_maxplayers( ); i++ ) {
- if( !is_user_connected( i ) )
- continue;
- if( is_user_alive( id ) && is_user_alive( i ) || !is_user_alive( id ) && !is_user_alive( i ) )
- IspisiPoruku( Poruka, id, i );
- }
- return 2;
- }
- return 0;
- }
- IspisiPoruku( const Poruka[ ], const id, const i ) {
- message_begin( MSG_ONE, get_user_msgid( "SayText" ), { 0, 0, 0 }, i );
- write_byte( id );
- write_string( Poruka );
- message_end( );
- }
- public Rkl( id ) {
- if( !is_user_connected( id ) || is_user_bot( id ) )
- return;
- static BrojReklama;
- BrojReklama = 6;
- switch( random_num( 1, BrojReklama ) ) {
- case 1: ColorChat( id, GREEN, "[CoD:Mw4] ^1%L", id, "ML_REKLAMA_1" );
- case 2: ColorChat( id, GREEN, "[CoD:Mw4] ^1%L", id, "ML_REKLAMA_2" );
- case 3: ColorChat( id, GREEN, "[CoD:Mw4] ^1%L", id, "ML_REKLAMA_3" );
- case 4: ColorChat( id, GREEN, "[CoD:Mw4] ^1%L", id, "ML_REKLAMA_4" );
- case 5: ColorChat( id, GREEN, "[CoD:Mw4] ^1%L", id, "ML_REKLAMA_5" );
- case 6: ColorChat( id, GREEN, "[CoD:Mw4] ^1%L", id, "ML_REKLAMA_6" );
- }
- set_task( 60.0, "Rkl", id );
- }
- public DajNekomPredmet( id ) {
- static Meni, Odziv, BrojPredmeta = 1, i;
- Meni = menu_create( "Izaberi Igraca / Choose Player", "DajNekomPredmet_Funkcija" );
- Odziv = menu_makecallback( "DajNekomPredmet_Odziv" );
- for( i = 0; i <= 32; i++ ) {
- if( !is_user_connected( i ) || is_user_bot( i ))
- continue;
- if(BrojPredmeta >= sizeof(daj_igracu))
- break;
- daj_igracu[ BrojPredmeta ] = i;
- BrojPredmeta++
- menu_additem( Meni, g_PlayerInfo[ i ][ g_szName ], "0", 0, Odziv );
- }
- menu_display( id, Meni );
- }
- public DajNekomPredmet_Funkcija( id, Meni, Stavka ) {
- if( Stavka < 1 || Stavka > 32 )
- return PLUGIN_CONTINUE;
- if( is_user_bot( daj_igracu[ Stavka ] ) ) {
- ColorChat( id, RED, "^4[CoD:Mw4]^1 %L", id, "ML_IGRAC_JE_BOT" );
- return PLUGIN_CONTINUE;
- }
- if( !is_user_connected( daj_igracu[ Stavka ] ) ) {
- ColorChat( id, RED, "^4[CoD:Mw4]^1 %L", id, "ML_IGRAC_SE_DISKONEKTOVAO" );
- return PLUGIN_CONTINUE;
- }
- if( dobio_predmet[ daj_igracu[ Stavka ] ] ) {
- ColorChat( id, RED, "^4[CoD:Mw4]^1 %L", id, "ML_SACEKAJ_RUNDU" );
- return PLUGIN_CONTINUE;
- }
- if( dobio_predmet[ id ] ) {
- ColorChat( id, RED, "^4[CoD:Mw4]^1 %L", id, "ML_SACEKAJ_RUNDU" );
- return PLUGIN_CONTINUE;
- }
- if( !predmet_igraca[ id ][ 0 ] ) {
- ColorChat( id, RED, "^4[CoD:Mw4]^1 %L", id, "ML_NEMAS_PREDMET" );
- return PLUGIN_CONTINUE;
- }
- if( predmet_igraca[ daj_igracu[ Stavka ] ][ 0 ] ) {
- ColorChat( id, RED, "^4[CoD:Mw4]^1 %L", id, "ML_VEC_IMA_PREDMET" );
- return PLUGIN_CONTINUE;
- }
- if( !is_user_alive( daj_igracu[ Stavka ] ) ) {
- ColorChat( id, RED, "^4[CoD:Mw4]^1 %L", id, "ML_MORA_BUDE_ZIV" );
- return PLUGIN_CONTINUE;
- }
- dobio_predmet[ daj_igracu[ Stavka ] ] = true;
- GivePerk( daj_igracu[ Stavka ], predmet_igraca[ id ][ 0 ] );
- predmet_igraca[ daj_igracu[ Stavka ] ][ 1 ] = predmet_igraca[ id ][ 1 ];
- ColorChat( id, RED, "^4[CoD:Mw4]^1 %L %L", id, "ML_NAGRADIO", g_PlayerInfo[ daj_igracu[ Stavka ] ][ g_szName ], id, g_szPerksData[ predmet_igraca[ id ][ 0 ] ][ 0 ] );
- ColorChat( daj_igracu[ Stavka ], RED, "^4[CoD:Mw4]^1 Dobio si predmet od %s", g_PlayerInfo[ id ][ g_szName ] );
- Obrisipredmet( id );
- return PLUGIN_CONTINUE;
- }
- public DajNekomPredmet_Odziv( id, Meni, Stavka ) {
- if( daj_igracu[ Stavka ] == id )
- return ITEM_DISABLED;
- return ITEM_ENABLED;
- }
- public ZameniPredmet( id ) {
- static Meni, Odziv, i, n;
- Meni = menu_create( "Zameni predmet sa:", "Zameni_Funkcija");
- Odziv = menu_makecallback( "Odziv_Zamene" );
- for( i = 0, n = 0; i <= 32; i++ ) {
- if( !is_user_connected( i ) || is_user_bot( i ) )
- continue;
- zamena_id[ n++ ] = i;
- menu_additem( Meni, g_PlayerInfo[ i ][ g_szName ], "0", 0, Odziv );
- }
- menu_display( id, Meni );
- return PLUGIN_HANDLED;
- }
- public Zameni_Funkcija( id, Meni, Stavka ) {
- if( Stavka == MENU_EXIT ) {
- menu_destroy( Meni );
- return PLUGIN_CONTINUE;
- }
- if( is_user_bot( zamena_id[ Stavka ] ) ) {
- ColorChat( id, RED, "^4[CoD:Mw4]^1 %L", id, "ML_IGRAC_JE_BOT" );
- return PLUGIN_CONTINUE;
- }
- if( !is_user_connected( zamena_id[ Stavka ] ) )
- {
- ColorChat(id, RED, "^4[COD:MW4]^3 %L.", id, "DISKONEKTOVAN");
- return PLUGIN_CONTINUE;
- }
- if( dobio_predmet[ zamena_id[ Stavka ] ] ) {
- ColorChat( id, RED, "^4[CoD:Mw4]^1 %L", id, "ML_SACEKAJ_RUNDU" );
- return PLUGIN_CONTINUE;
- }
- if( dobio_predmet[ id ] ) {
- ColorChat( id, RED, "^4[CoD:Mw4]^1 %L", id, "ML_SACEKAJ_RUNDU" );
- return PLUGIN_CONTINUE;
- }
- if( !predmet_igraca[ id ][ 0 ] ) {
- ColorChat( id, RED, "^4[CoD:Mw4]^1 %L", id, "ML_NEMAS_PREDMET" );
- return PLUGIN_CONTINUE;
- }
- static NaslovMenija[ 64 ], Meni2;
- formatex( NaslovMenija, charsmax( NaslovMenija ), "\y%L\r [%s]", id, "ML_ZAMENI_SA", g_PlayerInfo[ zamena_id[ Stavka ] ][ g_szName ] )
- Meni2 = menu_create( NaslovMenija, "Funkcija_Menija_Zamene" );
- menu_additem( Meni2, "Potvrdi | Accept", g_PlayerInfo[ zamena_id[ Stavka ] ][ g_szName ] );
- menu_additem( Meni2, "Odbij | Cancel", g_PlayerInfo[ zamena_id[ Stavka ] ][ g_szName ] );
- menu_display( zamena_id[ Stavka ], Meni2 );
- return PLUGIN_HANDLED;
- }
- public Funkcija_Menija_Zamene( id, Meni, Stavka ) {
- if( Stavka == MENU_EXIT ) {
- menu_destroy( Meni );
- return PLUGIN_CONTINUE;
- }
- static Pristup, Odziv, Podaci[ 32 ];
- menu_item_getinfo( Meni, Stavka, Pristup, Podaci, charsmax( Podaci ), _, _, Odziv );
- new id2 = get_user_index( Podaci );
- switch( Stavka ) {
- case 0: {
- new Zamena[4];
- Zamena[ 0 ] = predmet_igraca[ id2 ][ 0 ];
- Zamena[ 1] = predmet_igraca[ id ][ 0 ];
- Zamena[ 2 ] = predmet_igraca[ id2 ][ 1 ];
- Zamena[ 3 ] = predmet_igraca[ id ][ 1 ];
- GivePerk( id, Zamena[ 0 ] );
- GivePerk( id2, Zamena[ 1 ] );
- predmet_igraca[ id ][ 1 ] = Zamena[ 2 ];
- predmet_igraca[ id2 ][ 1 ] = Zamena[ 3 ];
- dobio_predmet[ id2 ] = true;
- dobio_predmet[ id ] = true;
- ColorChat( id, RED, "^4[COD:MW4]^1 %L ^3 %s.", id, "ML_ZAMENIO", Podaci );
- ColorChat( id2, RED, "^4[COD:MW4]^1 %L^3 %s.", id, "ML_ZAMENIO", g_PlayerInfo[ id ][ g_szName ] );
- }
- case 1: ColorChat( id2, RED, "^4[COD:MW4]^3 %L", id, "ML_ODBIO_ZAMENU" );
- }
- return PLUGIN_HANDLED
- }
- public Odziv_Zamene( id, Meni, Stavka ) {
- if( zamena_id[ Stavka ] == id || !predmet_igraca[ zamena_id[ Stavka ] ][ 0 ] )
- return ITEM_DISABLED;
- return ITEM_ENABLED;
- }
- public FunkcijaSutni( id ) {
- if( is_user_alive( id ) && get_pdata_float( id, 83 ) <= 0.0 && !( pev( id, pev_flags ) & FL_DUCKING ) ) {
- set_pev( id, pev_velocity, { 0.0 } );
- set_pev( id, pev_viewmodel2, Model );
- Animacija( id, 1 ) ;
- set_pdata_float( id, 83, 0.6 );
- Sut[id] = true;
- static Meta, Telo;
- get_user_aiming( id, Meta, Telo, 100 );
- if( Meta && is_user_alive( Meta ) && is_user_connected( Meta ) && get_user_team( Meta ) != get_user_team( id ) ) {
- /*new Float: BrzinaSuta[ 3 ];
- velocity_by_aim( id, 500, BrzinaSuta );
- BrzinaSuta[2] = 300.0;
- set_pev( Meta, pev_velocity, BrzinaSuta );*/
- ExecuteHam( Ham_TakeDamage, Meta, 0, id, float( get_user_health( Meta ) ), DMG_SLASH );
- }
- if( RazdaljinaGledanja( id ) <= 100 || is_user_alive( Meta ) ) emit_sound( id, CHAN_WEAPON, Zvukovi[ 1 ], 1.0, ATTN_NORM, 0, PITCH_NORM );
- else emit_sound( id, CHAN_WEAPON, Zvukovi[ 0 ], 1.0, ATTN_NORM, 0, PITCH_NORM );
- }
- return PLUGIN_HANDLED;
- }
- public PlayerPreThink( id ) {
- static Float: SledeciSut;
- SledeciSut = get_pdata_float( id, 83, 5 );
- if( SledeciSut >= 0.0 && Sut[ id ] ) {
- set_pev( id, pev_velocity, { 0.0, 0.0, 0.0 } );
- }
- if( SledeciSut <= 0.0 && Sut[ id ] ) {
- static Oruzije;
- Oruzije = get_pdata_cbase( id, 373 );
- if( is_valid_ent( Oruzije ) ) {
- ExecuteHamB( Ham_Item_Deploy, Oruzije );
- Sut[id] = false;
- }
- }
- static Dugme;
- Dugme = get_user_button( id );
- if( ( Dugme & IN_USE ) && ( g_PlayerInfo[ id ][ g_iClass ] == RokerSMoravu ) )
- FunkcijaSutni( id );
- }
- stock Float: RazdaljinaGledanja( id ) {
- static a, Float:b ;
- return get_user_aiming( id, a, _:b );
- }
- stock Animacija( const Igrac, const Sekvenca ) {
- set_pev( Igrac, pev_weaponanim, Sekvenca );
- message_begin( MSG_ONE_UNRELIABLE, SVC_WEAPONANIM, .player = Igrac );
- write_byte( Sekvenca );
- write_byte( pev( Igrac, pev_body ) );
- message_end( );
- }
- public PromeniModel( 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, ModelsCT[ num ] );
- case 2: cs_set_user_model( id, ModelsTT[ num ] );
- }
- }
- return PLUGIN_CONTINUE;
- }
- stock get_auth( id, data[ ], len ) get_user_authid( id, data, len );
- stock build_time( pminutes, data[ ], len )
- if( pminutes == 1 )
- copy( data, len, "1 minute" );
- else if( pminutes != 1 && pminutes < 60 )
- formatex( data, len, "%d minutes", pminutes );
- else if( pminutes == 60 )
- copy( data, len, "1 hour" );
- else {
- new ptime = pminutes/60;
- if( ptime*60 == pminutes )
- formatex( data, len, "%d %s", ptime, (ptime==1) ? "hour":"hours" );
- else {
- new diff = pminutes-ptime*60;
- formatex( data, len, "%d %s and %d %s", ptime, (ptime==1) ? "hour" : "hours", diff, (diff==1) ? "minute" : "minutes" );
- }
- }
- public getLevel( id ) {
- new nv = nvault_open( NV_NAME );
- if( nv == INVALID_HANDLE ) {
- ColorChat( id,GREEN,"^4[COD:MW4]^3 %L", id, "ML_GET_INACTIVE" );
- return;
- }
- new txt_min[ 32 ], txt_lvl[ 10 ];
- new lvl = 50,pminutes = 1440;
- copy( txt_lvl, charsmax( txt_lvl ), ( lvl == 1 ) ? "level" : "levels" );
- build_time( pminutes, txt_min, charsmax( txt_min ) );
- if( g_player[ id ][ ftime ] ) {
- if( g_PlayerInfo[ id ][ g_iClass ] ) {
- if( g_PlayerInfo[ id ][ g_iLevel ] < 300 ) {
- ColorChat( id,GREEN,"^4[COD:MW4]^3 %L", id, "ML_GET_JUST_RECEIVED_ANOTHER", lvl, txt_lvl,txt_min);
- g_PlayerInfo[ id ][ g_iXP ] = g_iLevelXP[ g_PlayerInfo[ id ][ g_iLevel ] + lvl ];
- ProveriNivo( id );
- g_player[ id ][ ftime ] = false;
- nvault_touch( nv, g_player[ id ][ key ], g_player[ id ][ mtime ] = get_systime( ) );
- return;
- }
- else ColorChat( id,GREEN,"^4[COD:MW4]^3 %L", id, "ML_GET_PREVELIKI_LVL" );
- }
- else ColorChat( id,GREEN,"^4[COD:MW4]^3 %L", id, "ML_GET_NEMAS_KLASE" );
- }
- new user_time = get_systime( )-g_player[ id ][ mtime ];
- new diff_min = ( user_time < ( pminutes*60 ) ) ? pminutes - (user_time/60) : pminutes;
- build_time( diff_min, txt_min, charsmax( txt_min ) );
- if( user_time >= ( pminutes*60 ) ) {
- if( g_PlayerInfo[ id ][ g_iClass ] ) {
- if( g_PlayerInfo[ id ][ g_iLevel ] < 300 ) {
- ColorChat( id,GREEN,"^4[COD:MW4]^3 %L", id, "ML_GET_JUST_RECEIVED_PASSED", lvl, txt_lvl, txt_min);
- g_PlayerInfo[ id ][ g_iXP ] = g_iLevelXP[ g_PlayerInfo[ id ][ g_iLevel ] + lvl ];
- ProveriNivo( id );
- nvault_touch( nv, g_player[ id ][ key ], g_player[ id ][ mtime ] = get_systime( ) );
- }
- else ColorChat( id,GREEN,"^4[COD:MW4]^3 %L", id, "ML_GET_PREVELIKI_LVL" );
- }
- else ColorChat( id,GREEN,"^4[COD:MW4]^3 %L", id, "ML_GET_NEMAS_KLASE" );
- }
- else ColorChat( id,GREEN,"^4[COD:MW4]^3 %L", id, "ML_GET_RETRYAGAIN", txt_min, lvl, txt_lvl );
- nvault_close( nv );
- }
- new bool:falling[33];
- public client_PreThink(id) {
- if (!goldVIP[ id ])
- return PLUGIN_CONTINUE
- entity_set_float(id, EV_FL_fuser2, 0.0)
- if (entity_get_int(id, EV_INT_button) & 2) {
- new flags = entity_get_int(id, EV_INT_flags)
- if (flags & FL_WATERJUMP)
- return PLUGIN_CONTINUE
- if ( entity_get_int(id, EV_INT_waterlevel) >= 2 )
- return PLUGIN_CONTINUE
- if ( !(flags & FL_ONGROUND) )
- return PLUGIN_CONTINUE
- new Float:velocity[3]
- entity_get_vector(id, EV_VEC_velocity, velocity)
- velocity[2] += 250.0
- entity_set_vector(id, EV_VEC_velocity, velocity)
- entity_set_int(id, EV_INT_gaitsequence, 6)
- }
- if( goldVIP[ id ] && is_user_alive(id) && is_user_connected(id)) {
- if(entity_get_float(id, EV_FL_flFallVelocity) >= FALL_VELOCITY) {
- falling[id] = true;
- } else {
- falling[id] = false;
- }
- }
- return PLUGIN_CONTINUE
- }
- public client_PostThink(id) {
- if(goldVIP[ id ] && is_user_alive(id) && is_user_connected(id)) {
- if(falling[id]) {
- entity_set_int(id, EV_INT_watertype, -3);
- }
- }
- }
- public ProveriChat( id ) {
- set_task( 0.1, "VipsOnline", id );
- return PLUGIN_HANDLED;
- }
- public VipsInfo(id)
- {
- new configsdir[200]
- new MOTDfile[200]
- get_configsdir(configsdir,199)
- format(MOTDfile,199,"addons/amxmodx/configs/CODMW/VIP/VipInfo.txt",configsdir)
- show_motd(id,MOTDfile)
- }
- public VipsOnline( korisnik ) {
- new ImenaVipova[ 33 ][ 32 ];
- new poruka[ 256 ];
- new id, izbroj, x, linija;
- for( id = 1 ; id <= get_maxplayers( ); id++ )
- if( is_user_connected( id ) )
- if( goldVIP[ id ] ) get_user_name( id, ImenaVipova[ izbroj++ ], 31 );
- linija = format( poruka, 255, "^4VIP-s Online: " );
- new iHour;
- time(iHour);
- new bool: bDnevnoVreme = (9 <= iHour <= 23);
- if( bDnevnoVreme )
- {
- if( izbroj > 0 ) {
- for( x = 0 ; x < izbroj ; x++ ) {
- linija += format( poruka[ linija ], 255-linija, "%s%s ", ImenaVipova[ x ], x < ( izbroj-1 ) ? ", ":"" );
- if( linija > 96 ) {
- prikazi_poruku( korisnik, poruka );
- linija = format( poruka, 255, "^4 " );
- }
- }
- prikazi_poruku( korisnik, poruka );
- }
- else {
- linija += format( poruka[ linija ], 255-linija, "Nema vipova online." );
- prikazi_poruku( korisnik, poruka );
- }
- }
- else {
- linija += format( poruka[ linija ], 255-linija, "Svi su Vipovi! FREE VIP 23-09!." );
- prikazi_poruku( korisnik, poruka );
- }
- return PLUGIN_CONTINUE;
- }
- prikazi_poruku( id, poruka[ ] ) {
- message_begin( MSG_ONE, get_user_msgid( "SayText" ), { 0, 0, 0 }, id );
- write_byte( id );
- write_string( poruka );
- message_end( );
- }
- public Banka(id)
- {
- new menu = menu_create("\rCOD:MW\y4\r Banka:","BankaHandler")
- menu_additem(menu,"\yPut TS points in the bank")
- menu_additem(menu,"\yPick TS points from banks")
- menu_additem(menu,"\yView account balances")
- menu_setprop(menu, MPROP_EXITNAME, "\rExit");
- menu_display(id, menu);
- }
- public BankaHandler(id, menu, item)
- {
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return PLUGIN_CONTINUE;
- }
- switch(item)
- {
- case MENU_EXIT:
- {
- menu_destroy(menu)
- }
- case 0:
- {
- client_cmd(id,"messagemode deposit")
- ColorChat(id,GREEN,"^3[COD:MW4]^4 Type the number of TS Points that you want to put in the bank")
- }
- case 1:
- {
- client_cmd(id,"messagemode withdraw")
- ColorChat(id,GREEN,"^3[COD:MW4]^4 Type the number of TS Points that you want to withdraw from your bank")
- }
- case 2:
- {
- new broj_poena[32],pid[32]
- get_user_authid(id,pid,31)
- nvault_get(g_vault,pid,broj_poena,31)
- ColorChat(id,GREEN,"^3[COD:MW4]^4 You have %s TS points in your account",broj_poena)
- }
- }
- return PLUGIN_CONTINUE
- }
- public ubaci(id)
- {
- new suma[32],suma2, broj_poena
- read_argv(1,suma,31)
- suma2 = str_to_num(suma)
- broj_poena = points_igraca[id]
- if(suma2<0) return
- if(suma2>broj_poena)
- suma2=broj_poena
- new pid[32], bpoeni[32],bpoeni2, xxx[32]
- get_user_authid(id,pid,31)
- nvault_get(g_vault,pid,bpoeni,31)
- bpoeni2 = str_to_num(bpoeni)
- num_to_str(suma2+bpoeni2,xxx,31)
- nvault_set(g_vault,pid,xxx)
- points_igraca[id] = broj_poena - suma2
- ColorChat(id,GREEN,"^3[COD:MW4]^4 Successfully you put %i TS Points in your Bank!",suma2)
- }
- public podigni(id)
- {
- new suma[32],suma2, broj_poena,broj_bpoena[32],broj_bpoena2,pid[32],xxx[32]
- read_argv(1,suma,31)
- suma2 = str_to_num(suma)
- broj_poena = points_igraca[id]
- get_user_authid(id,pid,31)
- nvault_get(g_vault,pid,broj_bpoena,31)
- broj_bpoena2 = str_to_num(broj_bpoena)
- if(suma2<0)
- return
- if(suma2>broj_bpoena2)
- suma2 = broj_bpoena2
- points_igraca[id] = broj_poena + suma2
- num_to_str(broj_bpoena2-suma2,xxx,31)
- nvault_set(g_vault,pid,xxx)
- ColorChat(id,GREEN,"^3[COD:MW4]^4 you withdrawed %i TS Points!",suma2)
- }
- public cmdShop(id)
- {
- // TS Shop Data
- new const g_TSShopData[][][] = {
- new menu = menu_create("\r[AlbatroZ Cod:Mw4]^n \wAwards Menu:", "Nagrody_Handler");
- menu_additem(menu, "\y10 Lvl \d[50 TS]");
- menu_additem(menu, "\r20 Lvl \d[100 TS]");
- menu_additem(menu, "\y30 Lvl \d[150 TS]");
- menu_additem(menu, "\r40 Lvl \d[200 TS]");
- if(g_iTSShopData[iItem][1] > g_PlayerInfo[id][g_iTS) {
- ColorChat(id, TEAM_COLOR, "^4[CoD:Mw4] ^1%L ^3%L^1, %L ^3%i^4TS^1.", id, "ML_NEMATE_TS", id, g_szPerksData[g_iTSShopData[iItem][0]][0], id, "ML_TREBA_VAM", g_iTSShopData[iItem][1]);
- return 1;
- }
- menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
- menu_display(id, menu, 0);
- }
- public Nagrody_Handler(id, menu, item)
- {
- if(!is_user_alive(id))
- return PLUGIN_HANDLED;
- if(item == MENU_EXIT)
- {
- menu_destroy(menu);
- return PLUGIN_HANDLED;
- }
- switch(item)
- {
- case 0:
- {
- if(points_igraca[id] <= 50)
- {
- return PLUGIN_HANDLED;
- }
- cod_set_user_xp(id, cod_get_level_xp(cod_get_user_level(id) + 10));
- points_igraca[id]-=50
- }
- case 1:{
- if(points_igraca[id] <= 100)
- {
- return PLUGIN_HANDLED;
- }
- cod_set_user_xp(id, cod_get_level_xp(cod_get_user_level(id) + 20));
- points_igraca[id]-=100
- }
- case 2:{
- if(points_igraca[id] <= 150)
- {
- return PLUGIN_HANDLED;
- }
- cod_set_user_xp(id, cod_get_level_xp(cod_get_user_level(id) + 30));
- points_igraca[id]-=150
- }
- case 3:{
- if(points_igraca[id] <= 200)
- {
- return PLUGIN_HANDLED;
- }
- cod_set_user_xp(id, cod_get_level_xp(cod_get_user_level(id) + 40));
- points_igraca[id]-=200
- }
- }
- return PLUGIN_HANDLED;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement