· 8 years ago · Apr 11, 2018, 05:26 PM
1#include <sourcemod>
2#include <sdkhooks>
3#include <sdktools>
4#include <cstrike>
5
6#define VIP_FLAG ADMFLAG_CUSTOM1 // konto premium
7#define MAX_PLAYERS 32 // maksymalna ilosc graczy na serwerze
8#define MAX_CLASS 32 // maksymalna ilosc klas na serwerze
9
10enum
11{
12 Brak,
13 Snajper,
14 Komandos,
15 Obronca,
16 Medyk,
17 WsparcieOgniowe,
18 Saper,
19 Rusher,
20 Kangur,
21 Admiral,
22 Rebeliant,
23 Szturmowiec,
24 LekkiZolnierz,
25 Terrorysta,
26 Kamikadze,
27 Thief,
28 Strzelec,
29 Partyzant,
30 DGLMaster,
31 Terminator,
32 Szpieg,
33 Mauser,
34 Scouter,
35 Szturmen,
36 Rambo
37};
38
39new limit_poziomu = 10000;
40new limit_inteligencji = 450;
41new limit_zdrowia = 50;
42new limit_obrazen = 50;
43new limit_wytrzymalosci = 450;
44new limit_kondycji = 450;
45new co_ile_lv_punkt = 10;
46new ile_rozdawac[] = {1, 10, -1};
47
48new xp_kill = 1000;
49new xp_kill_hs = 250;
50new xp_winround = 2000;
51new xp_objectives = 3200;
52
53new xp_kill_vip = 1300;
54new xp_kill_hs_vip = 325;
55new xp_winround_vip = 2600;
56new xp_objectives_vip = 4160;
57
58new co_ile_zapisywac = 30; // co ile sekund nadpisywac dane graczowi (tylko gdy zdobyl/stracil poziom/doswiadczenie lub rozdal/zresetowal statystyki)
59
60new Handle:sql, Handle:sql_task[MAX_PLAYERS+1];
61new String:dbError[512], String:nazwa_gracza[MAX_PLAYERS+1][MAX_CLASS+1], poziom_klasy_gracza[MAX_PLAYERS+1][MAX_CLASS+1], doswiadczenie_klasy_gracza[MAX_PLAYERS+1][MAX_CLASS+1], inteligencja_klasy_gracza[MAX_PLAYERS+1][MAX_CLASS+1], zdrowie_klasy_gracza[MAX_PLAYERS+1][MAX_CLASS+1], obrazenia_klasy_gracza[MAX_PLAYERS+1][MAX_CLASS+1], wytrzymalosc_klasy_gracza[MAX_PLAYERS+1][MAX_CLASS+1], kondycja_klasy_gracza[MAX_PLAYERS+1][MAX_CLASS+1];
62
63new vip_gracza[MAX_PLAYERS+1], skoki_gracza[MAX_PLAYERS+1], szybkosc_rozdania[MAX_PLAYERS+1], punkty_gracza[MAX_PLAYERS+1], inteligencja_gracza[MAX_PLAYERS+1], maksymalna_inteligencja_gracza[MAX_PLAYERS+1], maksymalne_zdrowie_gracza[MAX_PLAYERS+1], Float:maksymalne_obrazenia_gracza[MAX_PLAYERS+1], Float:maksymalna_wytrzymalosc_gracza[MAX_PLAYERS+1], Float:maksymalna_kondycja_gracza[MAX_PLAYERS+1], zdrowie_gracza[MAX_PLAYERS+1], obrazenia_gracza[MAX_PLAYERS+1], wytrzymalosc_gracza[MAX_PLAYERS+1], kondycja_gracza[MAX_PLAYERS+1],
64bonusowa_inteligencja_gracza[MAX_PLAYERS+1], bonusowe_zdrowie_gracza[MAX_PLAYERS+1], bonusowe_obrazenia_gracza[MAX_PLAYERS+1], bonusowa_wytrzymalosc_gracza[MAX_PLAYERS+1], bonusowa_kondycja_gracza[MAX_PLAYERS+1];
65new ilosc_apteczek_gracza[MAX_PLAYERS+1], czas_skokow_gracza[MAX_PLAYERS+1];
66
67new polaczony_raz[MAX_PLAYERS+1], zapisz_dane[MAX_PLAYERS+1], nowa_klasa_gracza[MAX_PLAYERS+1], klasa_gracza[MAX_PLAYERS+1], poziom_gracza[MAX_PLAYERS+1], doswiadczenie_gracza[MAX_PLAYERS+1], moc_itemu[MAX_PLAYERS+1], headshot[MAX_PLAYERS+1], tulow[MAX_PLAYERS+1], oldbuttons1[MAX_PLAYERS+1], oldbuttons2[MAX_PLAYERS+1];
68new sprite_blue, sprite_laser, sprite_halo, oslepiajacy_gracz, freeze_time;
69
70new String:dzwieki_serwera[][] =
71{
72 "", // 0
73 "cod/levelup.mp3", // 1
74 "cod/headshot.mp3", // 2
75 "cod/headshot2.mp3", // 3
76 "cod/lebshot.mp3", // 4
77 "cod/headhunter.mp3" // 5
78};
79new String:modele_serwera[][] =
80{
81 "", // 0
82 "models/player/ctm_fbi.mdl", // 1
83 "models/player/ctm_gign.mdl", // 2
84 "models/player/ctm_gsg9.mdl", // 3
85 "models/player/ctm_sas.mdl", // 4
86 "models/player/ctm_st6.mdl", // 5
87 "models/player/tm_anarchist.mdl", // 6
88 "models/player/tm_phoenix.mdl", // 7
89 "models/player/tm_pirate.mdl", // 8
90 "models/player/tm_balkan_variantA.mdl", // 9
91 "models/player/tm_leet_variantA.mdl", // 10
92};
93new informacje_itemu_gracza[MAX_PLAYERS+1][2];
94new String:nazwy_itemow[][] =
95{
96 "Brak", // 0
97 "Wytrenowany Weteran", // 1
98 "Wytrenowany Rekrut", // 2
99 "Wyszkolenie Wojenne", // 3
100 "Apteczka", // 4
101 "Adrenalina", // 5
102 "Regenerator", // 6
103 "Morfina", // 7
104 "Ksiega Expa", // 8
105 "Portfel Turysty", // 9
106 "Kamizelka Nasa", // 10
107 "Sandaly Gaudentego", // 11
108 "Mozg Einsteina", // 12
109 "Zestaw Predatora", // 13
110 "Notatki Kapitana", // 14
111 "Tytanowe Naboje", // 15
112 "Naboje Pulkownika", // 16
113 "Weteran Noza", // 17
114 "Noz Mysliwego", // 18
115 "Notatki Ninji", // 19
116 "Pancerny Helm", // 20
117 "Pancerz Neomexowy", // 21
118 "Modul Odrzutowy", // 22
119 "Zaskoczenie Wroga", // 23
120 "Plaszczowe Naboje", // 24
121 "Luneta Wojskowego", // 25
122 "Tajemnica Molotova", // 26
123 "Tajemnica Zabojcy", // 27
124 "Plonace Naboje", // 28
125 "Tarcza Swat", // 29
126 "Nano Kamizelka", // 30
127 "Ogranicznik Rozrzutu", // 31
128 "Podrecznik Szpiega", // 32
129 "Tajemnica Generala", // 33
130 "Bezdenny Magazynek", // 34
131 "Szybkostrzelnosc", // 35
132 "Buty Ninji", // 36
133 "Autodestrukcja", // 37
134 "Rozblysk Sloneczny", // 38
135 "Tajemnica Rambo", // 39
136 "Izraelskie Naboje", // 40
137 "Opaska Rambo", // 41
138 "Fart Strzelca", // 42
139 "Tajemnica Thiefa", // 43
140 "Pierscien Expa", // 44
141 "Sakwa Szczescia", // 45
142 "Oko Snajpera", // 46
143 "Platynowe Naboje", // 47
144 "Krytyczne Naboje", // 48
145 "Taktyczne Naboje" // 49
146};
147new String:opisy_itemow[][] =
148{
149 "Zabij kogos aby dostac item", // 0
150 "Dostajesz dodatkowo 100 punktow zdrowia. Wolniej biegasz", // 1
151 "Dostajesz dodatkowo 50 punktow zdrowia. Wolniej biegasz", // 2
152 "Regenerujesz 10 zdrowia, co 5 sekund", // 3
153 "Regenerujesz zdrowie do pelna (Uzycie: E)", // 4
154 "Regenerujesz 50 zdrowia za zabicie przeciwnika", // 5
155 "Regenerujesz 30 procent zadanych obrazen w postaci zdrowia", // 6
156 "Posiadasz 1/LW szans na ponowne odrodzenia sie po smierci", // 7
157 "Dostajesz dodatkowo 300 doswiadczenia za zabicie przeciwnika", // 8
158 "Dostajesz dodatkowo 300 dolarow za zabicie przeciwnika", // 9
159 "Dostajesz dodatkowo 100 punktow wytrzymalosci", // 10
160 "Dostajesz dodatkowo 100 punktow kondycji", // 11
161 "Dostajesz dodatkowo 100 punktow inteligencji", // 12
162 "Dostajesz noktowizor (Uzycie: E). Jestes odporny na zadane obrazenia od upadku", // 13
163 "Jestes odporny na 3 pierwsze zadane obrazenia przez przeciwnika", // 14
164 "Zadajesz o 10 obrazen przeciwnikowi wiecej z kazdej broni", // 15
165 "Zadajesz o 20 obrazen przeciwnikowi wiecej z kazdej broni", // 16
166 "Zadajesz o 40 obrazen przeciwnikowi wiecej z noza", // 17
167 "Posiadasz natychmiastowe zabicie przeciwnika z noza", // 18
168 "Mozesz wykonac podwojny skok (Uzycie: podczas skoku SPACE)", // 19
169 "Jestes odporny na zadane obrazenia przez przeciwnika w glowe", // 20
170 "Posiadasz 1/LW szans na odbicie zadanych obrazen przez przeciwnika", // 21
171 "Zostajesz wyrzucony z duza predkoscia (Uzycie: podczas biegu i skoku E)", // 22
172 "Zadajesz 140 procent obrazen przeciwnikowi gdy atakujesz w dol tulowia", // 23
173 "Zadajesz 140 procent obrazen przeciwnikowi z kazdej pobocznej broni", // 24
174 "Posiadasz przyblizenie w kazdej broni palnej (Uzycie: ATTACK2)", // 25
175 "Dostajesz koktajl molotova, co 20 sekund", // 26
176 "Posiadasz 1/LW szans na wyrzucenie broni przeciwnika", // 27
177 "Posiadasz 1/LW szans na podpalenie przeciwnika", // 28
178 "Nie dzialaja na tobie itemy przeciwnika", // 29
179 "Nie dzialaja na tobie umiejetnosci klas przeciwnika", // 30
180 "Posiadasz zmniejszony rozrzutu broni", // 31
181 "Posiadasz 1/LW szans na natychmiastowe zabicie z he. Masz ubranie przeciwnika", // 32
182 "Posiadasz natychmiastowe zabicie z he. Zadajesz o LW obrazen wiecej", // 33
183 "Posiadasz nieskonczona ilosc amunicji", // 34
184 "Posiadasz zwiekszona szybkostrzelnosc broni", // 35
185 "Posiadasz zmniejszona grawitacje", // 36
186 "Wybuchasz po smierci zabijajac wszystkich przeciwnikow w poblizu", // 37
187 "Podpalasz wszystkich przeciwnikow w poblizu (Uzycie: E)", // 38
188 "Regenerujesz 20 zdrowia za zabicie przeciwnika. Nie dzialaja na tobie fb przeciwnika", // 39
189 "Dostajesz dodatkowo 50 punktow obrazen", // 40
190 "Dostajesz dodatkowo 25 punktow do kazdej statystyki", // 41
191 "Posiadasz 1/LW szans na natychmiastowe zabicie przeciwnika", // 42
192 "Mozesz podnosic bronie nalezace do wszystkich klas", // 43
193 "Dostajesz dodatkowo 500 doswiadczenia za zabicie przeciwnika", // 44
194 "Dostajesz dodatkowo 3000 dolarow podczas odrodzenia", // 45
195 "Posiadasz natychmiastowe zabicie przeciwnika w glowe", // 46
196 "Zadajesz o LW obrazen przeciwnikowi wiecej z kazdej broni", // 47
197 "Posiadasz 1/LW szans na zadanie 140 procent obrazen przeciwnikowi", // 48
198 "Posiadasz 1/LW szans na oproznienie magazynku przeciwnika" // 49
199};
200new String:nazwy_klas[][] =
201{
202 "Brak", // 0
203 "Snajper", // 1
204 "Komandos", // 2
205 "Obronca", // 3
206 "Medyk", // 4
207 "Wsparcie Ogniowe", // 5
208 "Saper", // 6
209 "Rusher", // 7
210 "Kangur", // 8
211 "Admiral", // 9
212 "Rebeliant", // 10
213 "Szturmowiec", // 11
214 "Lekki Zolnierz", // 12
215 "Terrorysta [Od 500Lv]", // 13
216 "Kamikadze [Od 1000Lv]", // 14
217 "Thief [Od 1500Lv]", // 15
218 "Strzelec [Od 2000Lv]", // 16
219 "Partyzant [Od 2500Lv]", // 17
220 "DGLMaster [Od 3000Lv]", // 18
221 "Terminator [Od 3500Lv]", // 19
222 "Szpieg [Od 4000Lv]", // 20
223 "Mauser [Od 4500Lv]", // 21
224 "Scouter [Od 5000Lv]", // 22
225 "Szturmen [Od 6000Lv]", // 23
226 "Rambo [Od 7000Lv]" // 24
227};
228new String:nazwy_broni[][] =
229{
230 "", // 0
231 "weapon_glock", // 1
232 "weapon_usp_silencer", // 2
233 "weapon_tec9", // 3
234 "weapon_cz75a", // 4
235 "weapon_hkp2000", // 5
236 "weapon_p250", // 6
237 "weapon_deagle", // 7
238 "weapon_elite", // 8
239 "weapon_fiveseven", // 9
240 "weapon_nova", // 10
241 "weapon_xm1014", // 11
242 "weapon_mag7", // 12
243 "weapon_sawedoff", // 13
244 "weapon_mac10", // 14
245 "weapon_mp9", // 15
246 "weapon_mp7", // 16
247 "weapon_ump45", // 17
248 "weapon_p90", // 18
249 "weapon_bizon", // 19
250 "weapon_galilar", // 20
251 "weapon_famas", // 21
252 "weapon_ak47", // 22
253 "weapon_m4a1", // 23
254 "weapon_m4a1_silencer", // 24
255 "weapon_aug", // 25
256 "weapon_sg556", // 26
257 "weapon_ssg08", // 27
258 "weapon_awp", // 28
259 "weapon_g3sg1", // 29
260 "weapon_scar20", // 30
261 "weapon_m249", // 31
262 "weapon_negev", // 32
263 "weapon_decoy", // 33
264 "weapon_molotov", // 34
265 "weapon_incgrenade", // 35
266 "weapon_hegrenade", // 36
267 "weapon_flashbang", // 37
268 "weapon_smokegrenade", // 38
269 "weapon_taser", // 39
270 "weapon_knife", // 40
271 "weapon_c4" // 41
272};
273new bronie_klas[][] =
274{ // numer broni odpowiadajacy za jej nazwe (patrz wyzej) // musi byc 5 broni w jednej kolumnie
275 {0, 0, 0, 0, 0}, // 0
276 {28, 7, 0, 0, 0}, // 1
277 {7, 37, 37, 0, 0}, // 2
278 {31, 1, 36, 37, 38}, // 3
279 {15, 9, 0, 0, 0}, // 4
280 {16, 9, 0, 0, 0}, // 5
281 {18, 9, 0, 0, 0}, // 6
282 {10, 6, 0, 0, 0}, // 7
283 {11, 6, 0, 0, 0}, // 8
284 {22, 1, 37, 37, 38}, // 9
285 {26, 1, 36, 0, 0}, // 10
286 {23, 7, 36, 0, 0}, // 11
287 {20, 6, 0, 0, 0}, // 12
288 {14, 8, 35, 0, 0}, // 13
289 {7, 35, 0, 0, 0}, // 14
290 {19, 6, 35, 0, 0}, // 15
291 {29, 1, 0, 0, 0}, // 16
292 {21, 7, 36, 0, 0}, // 17
293 {7, 37, 37, 38, 0}, // 18
294 {32, 4, 35, 37, 38}, // 19
295 {25, 1, 35, 0, 0}, // 20
296 {30, 1, 37, 37, 0}, // 21
297 {27, 8, 36, 0, 0}, // 22
298 {24, 2, 34, 0, 0}, // 23
299 {3, 37, 37, 0, 0} // 24
300};
301new umiejetnosci_klas[][] =
302{ // Lvl - 0 // Zdr - 1 // Wyt - 2 // Kon - 3
303 {0, 100, 0, 100}, // 0
304 {0, 120, 100, 110}, // 1
305 {0, 135, 100, 135}, // 2
306 {0, 120, 150, 80}, // 3
307 {0, 100, 100, 100}, // 4
308 {0, 100, 100, 100}, // 5
309 {0, 100, 100, 100}, // 6
310 {0, 100, 50, 120}, // 7
311 {0, 100, 50, 100}, // 8
312 {0, 150, 150, 100}, // 9
313 {0, 105, 150, 80}, // 10
314 {0, 140, 150, 80}, // 11
315 {0, 100, 100, 115}, // 12
316 {500, 120, 50, 100}, // 13
317 {1000, 180, 0, 120}, // 14
318 {1500, 80, 80, 80}, // 15
319 {2000, 125, 0, 80}, // 16
320 {2500, 120, 25, 110}, // 17
321 {3000, 115, 25, 110}, // 18
322 {3500, 175, 175, 100}, // 19
323 {4000, 125, 100, 100}, // 20
324 {4500, 120, 100, 110}, // 21
325 {5000, 105, 50, 105}, // 22
326 {6000, 130, 50, 115}, // 23
327 {7000, 200, 100, 130} // 24
328};
329new String:opisy_klas[][] =
330{
331 "Brak", // 0
332 "Zadaje obrazenia z awp +int. Posiada 120hp, 110% biegu, 100 wytrzymalosci", // 1
333 "Zadaje o 50 obrazen wiecej z noza +int (Uzycie: PPM). Posiada 135hp, 135% biegu, 100 wytrzymalosci", // 2
334 "Jest odporny na umiejetnosci wszystkich klas przeciwnika. Posiada 120hp, 80% biegu, 150 wytrzymalosci", // 3
335 "Posiada 100hp, 100% biegu, 100 wytrzymalosci", // 4
336 "Posiada 100hp, 100% biegu, 100 wytrzymalosci", // 5
337 "Posiada 100hp, 100% biegu, 100 wytrzymalosci", // 6
338 "Posiada 100hp, 120% biegu, 50 wytrzymalosci", // 7
339 "Posiada dlugi skok, 100hp, 100% biegu, 50 wytrzymalosci", // 8
340 "Posiada 150hp, 80% biegu, 150 wytrzymalosci", // 9
341 "Posiada 105hp, 80% biegu, 150 wytrzymalosci", // 10
342 "Posiada 140hp, 80% biegu, 150 wytrzymalosci", // 11
343 "Posiada 100hp, 115% biegu, 100 wytrzymalosci", // 12
344 "Wybucha po smierci zadajac 80 zdrowia +int. Posiada 120hp, 100% biegu, 50 wytrzymalosci", // 13
345 "Posiada 180hp, 120% biegu", // 14
346 "Moze podnosic wszystkie bronie. Posiada 80hp, 80% biegu, 80 wytrzymalosci", // 15
347 "Posiada 125hp, 80% biegu", // 16
348 "Zadaje o 50 obrazen wiecej z he +int. Posiada 120hp, 110% biegu, 25 wytrzymalosci", // 17
349 "Zadaje obrazenia z deagla +int. Posiada 115hp, 110% biegu, 25 wytrzymalosci", // 18
350 "Posiada 175hp, 100% biegu, 175 wytrzymalosci", // 19
351 "Posiada przebranie wroga, 125hp, 100% biegu, 100 wytrzymalosci", // 20
352 "Jest odporny na zadane obrazen w dol tulowia. Posiada 120hp, 110% biegu, 100 wytrzymalosci", // 21
353 "Posiada 1/3 szans na natychmiastowe zabicie z ssg08, 105hp, 105% biegu, 50 wytrzymalosci", // 22
354 "Moze wykonac podwojny skok (Uzycie: podczas skoku SPACE), dostaje 30 zdrowia za zabicie przeciwnika. Posiada 130hp, 115% biegu, 50 wytrzymalosci", // 23
355 "Regeneruje 50 procent zadanych obrazen w postaci zdrowia. Posiada natychmiastowe zabicie z noza, 200hp, 130% biegu, 100 wytrzymalosci", // 24
356};
357new doswiadczenie_poziomu[] =
358{
359 0, 2, 7, 18, 31, 51, 72, 98, 124, 153, 192,
360 232, 278, 326, 376, 433, 496, 562, 633, 707, 787,
361 868, 954, 1046, 1138, 1236, 1336, 1438, 1545, 1656, 1770,
362 1890, 2012, 2140, 2270, 2404, 2542, 2687, 2837, 2988, 3140,
363 3301, 3463, 3632, 3804, 3979, 4161, 4343, 4528, 4717, 4916,
364 5116, 5322, 5531, 5742, 5956, 6171, 6394, 6624, 6854, 7086,
365 7318, 7550, 7794, 8039, 8290, 8552, 8818, 9085, 9355, 9631,
366 9913, 10199, 10487, 10775, 11065, 11365, 11668, 11976, 12287, 12606,
367 12930, 13255, 13585, 13916, 14252, 14591, 14934, 15278, 15632, 15989,
368 16350, 16716, 17083, 17456, 17831, 18206, 18584, 18965, 19354, 19743,
369 20145, 20547, 20952, 21362, 21776, 22197, 22618, 23046, 23474, 23902,
370 24335, 24774, 25220, 25669, 26122, 26578, 27045, 27512, 27985, 28464,
371 28944, 29424, 29911, 30401, 30891, 31395, 31902, 32413, 32924, 33437,
372 33952, 34468, 34990, 35524, 36061, 36602, 37149, 37698, 38247, 38800,
373 39362, 39928, 40496, 41065, 41644, 42225, 42813, 43401, 43994, 44591,
374 45190, 45797, 46408, 47019, 47635, 48259, 48887, 49518, 50154, 50790,
375 51430, 52073, 52717, 53364, 54012, 54662, 55327, 55992, 56657, 57322,
376 57989, 58668, 59347, 60038, 60735, 61432, 62139, 62848, 63558, 64274,
377 64993, 65713, 66437, 67169, 67901, 68638, 69378, 70122, 70868, 71621,
378 72377, 73142, 73907, 74676, 75455, 76238, 77026, 77817, 78611, 79407,
379 80208, 81011, 81814, 82628, 83443, 84266, 85091, 85919, 86748, 87585,
380 88427, 89272, 90122, 90977, 91832, 92687, 93543, 94403, 95273, 96147,
381 97031, 97915, 98805, 99698, 100593, 101497, 102405, 103313, 104227, 105143,
382 106060, 106977, 107894, 108829, 109769, 110711, 111656, 112605, 113559, 114517,
383 115478, 116440, 117407, 118374, 119353, 120332, 121314, 122299, 123285, 124284,
384 125283, 126284, 127287, 128301, 129319, 130341, 131368, 132399, 133430, 134466,
385 135502, 136539, 137584, 138638, 139693, 140748, 141803, 142858, 143923, 144989,
386 146060, 147144, 148230, 149320, 150420, 151523, 152628, 153738, 154848, 155961,
387 157076, 158204, 159336, 160469, 161608, 162752, 163897, 165048, 166202, 167361,
388 168520, 169682, 170845, 172012, 173180, 174349, 175532, 176723, 177918, 179113,
389 180311, 181516, 182724, 183935, 185153, 186377, 187603, 188830, 190061, 191292,
390 192524, 193766, 195017, 196270, 197525, 198787, 200055, 201323, 202595, 203872,
391 205152, 206433, 207717, 209003, 210294, 211590, 212891, 214192, 215498, 216807,
392 218124, 219447, 220777, 222109, 223441, 224783, 226129, 227480, 228834, 230188,
393 231551, 232917, 234284, 235652, 237024, 238407, 239790, 241179, 242568, 243958,
394 245361, 246766, 248173, 249587, 251004, 252422, 253847, 255276, 256710, 258148,
395 259591, 261038, 262485, 263938, 265395, 266852, 268318, 269785, 271256, 272730,
396 274213, 275698, 277189, 278682, 280175, 281672, 283174, 284686, 286202, 287718,
397 289240, 290763, 292286, 293817, 295353, 296895, 298443, 299994, 301546, 303098,
398 304651, 306209, 307767, 309334, 310910, 312491, 314073, 315663, 317256, 318854,
399 320455, 322057, 323665, 325275, 326894, 328513, 330138, 331764, 333398, 335032,
400 336670, 338318, 339970, 341626, 343283, 344946, 346609, 348281, 349954, 351630,
401 353307, 354984, 356670, 358360, 360059, 361761, 363469, 365177, 366886, 368599,
402 370312, 372028, 373758, 375489, 377221, 378962, 380703, 382452, 384201, 385956,
403 387711, 389474, 391246, 393020, 394796, 396578, 398361, 400146, 401931, 403719,
404 405520, 407323, 409131, 410940, 412758, 414581, 416409, 418241, 420075, 421911,
405 423753, 425598, 427443, 429292, 431142, 433002, 434866, 436736, 438609, 440488,
406 442370, 444257, 446145, 448033, 449927, 451828, 453732, 455639, 457555, 459475,
407 461395, 463322, 465253, 467187, 469124, 471067, 473014, 474965, 476918, 478875,
408 480834, 482797, 484768, 486743, 488721, 490701, 492688, 494677, 496671, 498671,
409 500675, 502679, 504689, 506702, 508719, 510736, 512759, 514786, 516816, 518853,
410 520891, 522935, 524984, 527033, 529087, 531146, 533205, 535264, 537338, 539412,
411 541491, 543575, 545666, 547761, 549856, 551954, 554061, 556173, 558287, 560405,
412 562524, 564645, 566767, 568895, 571026, 573168, 575311, 577459, 579613, 581768,
413 583923, 586080, 588247, 590416, 592592, 594769, 596953, 599145, 601341, 603541,
414 605743, 607949, 610160, 612371, 614589, 616812, 619037, 621264, 623493, 625727,
415 627966, 630211, 632458, 634711, 636967, 639230, 641495, 643765, 646035, 648307,
416 650588, 652873, 655160, 657448, 659744, 662043, 664349, 666656, 668972, 671291,
417 673615, 675941, 678272, 680607, 682947, 685289, 687631, 689973, 692322, 694673,
418 697027, 699394, 701763, 704135, 706512, 708893, 711275, 713657, 716046, 718441,
419 720839, 723246, 725655, 728068, 730482, 732900, 735320, 737752, 740186, 742620,
420 745057, 747494, 749937, 752387, 754840, 757304, 759770, 762240, 764712, 767192,
421 769674, 772156, 774644, 777135, 779629, 782131, 784638, 787149, 789662, 792182,
422 794703, 797229, 799755, 802289, 804824, 807366, 809913, 812464, 815020, 817577,
423 820134, 822691, 825260, 827832, 830407, 832985, 835567, 838150, 840733, 843333,
424 845933, 848539, 851149, 853764, 856381, 859004, 861630, 864261, 866896, 869531,
425 872166, 874807, 877448, 880097, 882747, 885409, 888075, 890742, 893411, 896089,
426 898768, 901456, 904146, 906837, 909529, 912223, 914924, 917625, 920337, 923056,
427 925779, 928504, 931231, 933964, 936702, 939445, 942188, 944935, 947689, 950446,
428 953204, 955970, 958738, 961508, 964281, 967060, 969841, 972625, 975417, 978217,
429 981021, 983826, 986636, 989452, 992271, 995091, 997919, 1000750, 1003584, 1006420,
430 1009262, 1012109, 1014959, 1017814, 1020674, 1023535, 1026400, 1029267, 1032141, 1035019,
431 1037898, 1040784, 1043675, 1046569, 1049463, 1052361, 1055267, 1058177, 1061092, 1064010,
432 1066933, 1069856, 1072782, 1075708, 1078636, 1081579, 1084526, 1087476, 1090431, 1093386,
433 1096350, 1099317, 1102286, 1105255, 1108231, 1111214, 1114199, 1117189, 1120185, 1123185,
434 1126188, 1129196, 1132206, 1135216, 1138235, 1141255, 1144282, 1147311, 1150341, 1153374,
435 1156417, 1159464, 1162512, 1165567, 1168627, 1171689, 1174753, 1177823, 1180893, 1183966,
436 1187046, 1190134, 1193223, 1196318, 1199415, 1202512, 1205612, 1208714, 1211824, 1214940,
437 1218059, 1221182, 1224309, 1227437, 1230573, 1233712, 1236859, 1240010, 1243163, 1246320,
438 1249479, 1252646, 1255814, 1258983, 1262161, 1265339, 1268525, 1271713, 1274909, 1278108,
439 1281310, 1284515, 1287722, 1290934, 1294150, 1297370, 1300592, 1303820, 1307050, 1310290,
440 1313533, 1316776, 1320020, 1323267, 1326522, 1329780, 1333047, 1336316, 1339587, 1342865,
441 1346148, 1349433, 1352719, 1356014, 1359311, 1362610, 1365913, 1369218, 1372526, 1375840,
442 1379157, 1382478, 1385809, 1389144, 1392479, 1395816, 1399162, 1402510, 1405860, 1409215,
443 1412572, 1415939, 1419310, 1422683, 1426062, 1429445, 1432830, 1436221, 1439616, 1443011,
444 1446412, 1449820, 1453229, 1456644, 1460059, 1463478, 1466897, 1470325, 1473759, 1477194,
445 1480634, 1484081, 1487528, 1490978, 1494430, 1497891, 1501354, 1504825, 1508298, 1511773,
446 1515257, 1518741, 1522226, 1525719, 1529213, 1532708, 1536206, 1539708, 1543219, 1546735,
447 1550258, 1553785, 1557313, 1560843, 1564376, 1567915, 1571457, 1575001, 1578545, 1582090,
448 1585642, 1589206, 1592771, 1596342, 1599916, 1603495, 1607075, 1610659, 1614251, 1617847,
449 1621447, 1625054, 1628664, 1632276, 1635891, 1639514, 1643137, 1646760, 1650392, 1654029,
450 1657669, 1661313, 1664958, 1668606, 1672258, 1675911, 1679571, 1683232, 1686905, 1690583,
451 1694265, 1697951, 1701641, 1705334, 1709034, 1712736, 1716441, 1720147, 1723858, 1727578,
452 1731301, 1735025, 1738753, 1742481, 1746212, 1749952, 1753692, 1757437, 1761187, 1764939,
453 1768694, 1772453, 1776219, 1779987, 1783758, 1787529, 1791304, 1795080, 1798873, 1802668,
454 1806470, 1810276, 1814085, 1817896, 1821707, 1825524, 1829343, 1833168, 1837003, 1840839,
455 1844680, 1848526, 1852374, 1856224, 1860079, 1863940, 1867801, 1871663, 1875535, 1879410,
456 1883287, 1887173, 1891063, 1894954, 1898846, 1902746, 1906652, 1910559, 1914466, 1918384,
457 1922307, 1926232, 1930161, 1934093, 1938029, 1941972, 1945918, 1949866, 1953816, 1957773,
458 1961733, 1965699, 1969668, 1973641, 1977617, 1981600, 1985584, 1989568, 1993555, 1997545,
459 2001541, 2005538, 2009539, 2013546, 2017560, 2021575, 2025597, 2029619, 2033655, 2037695,
460 2041736, 2045782, 2049833, 2053885, 2057939, 2062001, 2066067, 2070136, 2074211, 2078290,
461 2082373, 2086460, 2090552, 2094644, 2098741, 2102845, 2106952, 2111062, 2115173, 2119285,
462 2123402, 2127526, 2131654, 2135786, 2139921, 2144058, 2148203, 2152348, 2156498, 2160649,
463 2164804, 2168968, 2173136, 2177305, 2181474, 2185645, 2189820, 2194012, 2198205, 2202400,
464 2206596, 2210798, 2215008, 2219223, 2223438, 2227660, 2231885, 2236113, 2240346, 2244580,
465 2248814, 2253052, 2257299, 2261550, 2265804, 2270058, 2274322, 2278587, 2282860, 2287137,
466 2291421, 2295706, 2299994, 2304284, 2308580, 2312876, 2317176, 2321484, 2325800, 2330118,
467 2334442, 2338767, 2343098, 2347431, 2351764, 2356100, 2360442, 2364787, 2369137, 2373496,
468 2377857, 2382222, 2386591, 2390965, 2395343, 2399726, 2404112, 2408504, 2412899, 2417296,
469 2421697, 2426101, 2430511, 2434926, 2439344, 2443764, 2448185, 2452611, 2457042, 2461478,
470 2465919, 2470366, 2474816, 2479267, 2483723, 2488184, 2492649, 2497119, 2501594, 2506071,
471 2510555, 2515042, 2519532, 2524025, 2528518, 2533017, 2537520, 2542026, 2546538, 2551053,
472 2555573, 2560096, 2564628, 2569164, 2573701, 2578242, 2582784, 2587332, 2591883, 2596440,
473 2601002, 2605568, 2610135, 2614706, 2619286, 2623867, 2628448, 2633040, 2637635, 2642231,
474 2646830, 2651433, 2656036, 2660649, 2665263, 2669884, 2674509, 2679135, 2683765, 2688397,
475 2693038, 2697686, 2702334, 2706982, 2711640, 2716299, 2720963, 2725632, 2730305, 2734981,
476 2739658, 2744337, 2749025, 2753720, 2758418, 2763116, 2767818, 2772524, 2777234, 2781954,
477 2786677, 2791405, 2796134, 2800870, 2805607, 2810350, 2815093, 2819844, 2824598, 2829356,
478 2834119, 2838885, 2843652, 2848423, 2853199, 2857977, 2862764, 2867551, 2872338, 2877125,
479 2881921, 2886725, 2891533, 2896343, 2901159, 2905981, 2910803, 2915633, 2920466, 2925305,
480 2930146, 2934993, 2939843, 2944698, 2949558, 2954420, 2959283, 2964155, 2969029, 2973907,
481 2978791, 2983675, 2988563, 2993455, 2998348, 3003250, 3008152, 3013064, 3017979, 3022898,
482 3027817, 3032736, 3037667, 3042601, 3047536, 3052471, 3057417, 3062364, 3067315, 3072271,
483 3077231, 3082199, 3087171, 3092146, 3097122, 3102101, 3107088, 3112079, 3117071, 3122064,
484 3127066, 3132071, 3137079, 3142095, 3147113, 3152133, 3157159, 3162188, 3167220, 3172256,
485 3177292, 3182334, 3187385, 3192440, 3197496, 3202560, 3207625, 3212690, 3217763, 3222841,
486 3227923, 3233008, 3238099, 3243192, 3248285, 3253378, 3258480, 3263590, 3268702, 3273819,
487 3278936, 3284056, 3289187, 3294322, 3299460, 3304599, 3309739, 3314888, 3320037, 3325188,
488 3330348, 3335508, 3340671, 3345844, 3351019, 3356202, 3361387, 3366573, 3371759, 3376950,
489 3382150, 3387354, 3392563, 3397775, 3402988, 3408211, 3413436, 3418663, 3423898, 3429138,
490 3434379, 3439626, 3444873, 3450128, 3455388, 3460649, 3465915, 3471183, 3476451, 3481729,
491 3487009, 3492297, 3497585, 3502874, 3508164, 3513461, 3518759, 3524066, 3529382, 3534700,
492 3540021, 3545348, 3550676, 3556012, 3561349, 3566691, 3572033, 3577379, 3582727, 3588082,
493 3593442, 3598809, 3604176, 3609551, 3614928, 3620309, 3625696, 3631086, 3636478, 3641876,
494 3647274, 3652676, 3658078, 3663485, 3668904, 3674326, 3679748, 3685179, 3690610, 3696042,
495 3701484, 3706929, 3712376, 3717832, 3723291, 3728753, 3734218, 3739685, 3745159, 3750638,
496 3756120, 3761606, 3767096, 3772589, 3778083, 3783584, 3789086, 3794588, 3800094, 3805609,
497 3811132, 3816659, 3822191, 3827727, 3833266, 3838809, 3844352, 3849900, 3855451, 3861008,
498 3866566, 3872124, 3877687, 3883260, 3888835, 3894419, 3900006, 3905593, 3911187, 3916786,
499 3922387, 3927994, 3933602, 3939217, 3944835, 3950453, 3956079, 3961706, 3967339, 3972977,
500 3978620, 3984266, 3989912, 3995567, 4001224, 4006881, 4012540, 4018211, 4023882, 4029555,
501 4035232, 4040915, 4046601, 4052289, 4057980, 4063681, 4069385, 4075090, 4080800, 4086513,
502 4092235, 4097961, 4103692, 4109425, 4115164, 4120906, 4126648, 4132398, 4138148, 4143905,
503 4149663, 4155421, 4161180, 4166951, 4172728, 4178505, 4184285, 4190072, 4195864, 4201661,
504 4207458, 4213264, 4219071, 4224881, 4230694, 4236515, 4242341, 4248172, 4254008, 4259845,
505 4265688, 4271534, 4277385, 4283239, 4289095, 4294953, 4300819, 4306685, 4312557, 4318431,
506 4324309, 4330195, 4336082, 4341977, 4347875, 4353776, 4359678, 4365581, 4371492, 4377406,
507 4383322, 4389244, 4395171, 4401100, 4407030, 4412961, 4418900, 4424847, 4430799, 4436756,
508 4442717, 4448684, 4454655, 4460627, 4466606, 4472585, 4478566, 4484552, 4490539, 4496529,
509 4502530, 4508531, 4514535, 4520547, 4526561, 4532584, 4538610, 4544640, 4550673, 4556711,
510 4562754, 4568799, 4574850, 4580905, 4586961, 4593022, 4599089, 4605156, 4611226, 4617305,
511 4623387, 4629470, 4635557, 4641647, 4647739, 4653842, 4659947, 4666055, 4672171, 4678287,
512 4684405, 4690529, 4696654, 4702783, 4708915, 4715055, 4721202, 4727351, 4733506, 4739665,
513 4745825, 4751993, 4758161, 4764336, 4770514, 4776692, 4782874, 4789056, 4795238, 4801429,
514 4807625, 4813830, 4820039, 4826254, 4832470, 4838687, 4844910, 4851139, 4857369, 4863601,
515 4869838, 4876086, 4882335, 4888586, 4894837, 4901094, 4907354, 4913615, 4919885, 4926162,
516 4932445, 4938733, 4945024, 4951315, 4957614, 4963916, 4970223, 4976531, 4982840, 4989159,
517 4995482, 5001809, 5008137, 5014471, 5020809, 5027147, 5033494, 5039845, 5046198, 5052554,
518 5058917, 5065280, 5071646, 5078012, 5084381, 5090761, 5097143, 5103528, 5109921, 5116316,
519 5122716, 5129123, 5135533, 5141948, 5148366, 5154785, 5161209, 5167636, 5174068, 5180505,
520 5186942, 5193379, 5199819, 5206259, 5212704, 5219167, 5225631, 5232098, 5238570, 5245042,
521 5251522, 5258008, 5264500, 5270994, 5277488, 5283982, 5290477, 5296983, 5303492, 5310004,
522 5316525, 5323048, 5329573, 5336104, 5342638, 5349172, 5355707, 5362257, 5368810, 5375364,
523 5381920, 5388478, 5395040, 5401614, 5408189, 5414770, 5421358, 5427949, 5434541, 5441140,
524 5447743, 5454351, 5460959, 5467572, 5474187, 5480805, 5487429, 5494055, 5500683, 5507315,
525 5513948, 5520584, 5527223, 5533878, 5540534, 5547195, 5553860, 5560528, 5567197, 5573874,
526 5580555, 5587238, 5593922, 5600614, 5607308, 5614007, 5620706, 5627405, 5634104, 5640808,
527 5647526, 5654248, 5660979, 5667712, 5674447, 5681186, 5687932, 5694679, 5701433, 5708191,
528 5714950, 5721714, 5728479, 5735253, 5742031, 5748812, 5755598, 5762390, 5769185, 5775981,
529 5782784, 5789587, 5796395, 5803205, 5810022, 5816841, 5823661, 5830481, 5837308, 5844142,
530 5850976, 5857813, 5864661, 5871515, 5878373, 5885231, 5892089, 5898960, 5905835, 5912713,
531 5919595, 5926479, 5933366, 5940262, 5947160, 5954062, 5960967, 5967873, 5974786, 5981700,
532 5988616, 5995541, 6002473, 6009405, 6016343, 6023284, 6030227, 6037170, 6044114, 6051062,
533 6058014, 6064972, 6071942, 6078916, 6085895, 6092874, 6099853, 6106844, 6113839, 6120835,
534 6127834, 6134838, 6141847, 6148861, 6155875, 6162890, 6169912, 6176941, 6183976, 6191011,
535 6198047, 6205087, 6212133, 6219183, 6226234, 6233287, 6240350, 6247414, 6254480, 6261548,
536 6268617, 6275699, 6282790, 6289885, 6296981, 6304081, 6311187, 6318295, 6325403, 6332516,
537 6339633, 6346758, 6353883, 6361014, 6368148, 6375283, 6382426, 6389571, 6396717, 6403873,
538 6411035, 6418199, 6425367, 6432538, 6439710, 6446882, 6454057, 6461249, 6468441, 6475640,
539 6482839, 6490038, 6497248, 6504460, 6511677, 6518900, 6526126, 6533354, 6540582, 6547816,
540 6555050, 6562289, 6569535, 6576786, 6584042, 6591304, 6598571, 6605840, 6613114, 6620389,
541 6627666, 6634947, 6642236, 6649530, 6656829, 6664130, 6671436, 6678747, 6686062, 6693380,
542 6700702, 6708026, 6715352, 6722685, 6730021, 6737359, 6744702, 6752049, 6759398, 6766758,
543 6774121, 6781487, 6788854, 6796225, 6803602, 6810985, 6818368, 6825760, 6833155, 6840553,
544 6847955, 6855360, 6862768, 6870184, 6877603, 6885024, 6892448, 6899874, 6907307, 6914747,
545 6922187, 6929629, 6937076, 6944523, 6951977, 6959431, 6966899, 6974369, 6981842, 6989321,
546 6996803, 7004289, 7011779, 7019272, 7026770, 7034268, 7041767, 7049276, 7056785, 7064301,
547 7071822, 7079347, 7086872, 7094398, 7101932, 7109473, 7117015, 7124557, 7132107, 7139660,
548 7147222, 7154790, 7162361, 7169936, 7177514, 7185093, 7192673, 7200253, 7207839, 7215437,
549 7223038, 7230640, 7238250, 7245862, 7253474, 7261096, 7268722, 7276350, 7283983, 7291619,
550 7299260, 7306906, 7314557, 7322208, 7329859, 7337518, 7345182, 7352851, 7360522, 7368200,
551 7375882, 7383568, 7391254, 7398941, 7406634, 7414337, 7422040, 7429746, 7437458, 7445172,
552 7452892, 7460616, 7468346, 7476082, 7483818, 7491554, 7499296, 7507044, 7514797, 7522557,
553 7530320, 7538084, 7545849, 7553621, 7561396, 7569174, 7576957, 7584747, 7592537, 7600332,
554 7608127, 7615933, 7623744, 7631558, 7639373, 7647190, 7655012, 7662835, 7670666, 7678498,
555 7686336, 7694184, 7702032, 7709881, 7717735, 7725595, 7733459, 7741327, 7749201, 7757080,
556 7764963, 7772847, 7780731, 7788625, 7796523, 7804421, 7812327, 7820235, 7828150, 7836067,
557 7843990, 7851915, 7859840, 7867773, 7875712, 7883656, 7891601, 7899551, 7907503, 7915457,
558 7923420, 7931386, 7939353, 7947321, 7955298, 7963281, 7971267, 7979255, 7987243, 7995241,
559 8003241, 8011245, 8019249, 8027259, 8035274, 8043291, 8051309, 8059334, 8067365, 8075402,
560 8083439, 8091482, 8099529, 8107581, 8115633, 8123690, 8131749, 8139816, 8147886, 8155960,
561 8164034, 8172122, 8180210, 8188302, 8196401, 8204504, 8212611, 8220721, 8228834, 8236953,
562 8245076, 8253199, 8261330, 8269462, 8277602, 8285742, 8293887, 8302035, 8310183, 8318334,
563 8326488, 8334655, 8342822, 8350989, 8359160, 8367337, 8375522, 8383712, 8391905, 8400102,
564 8408305, 8416511, 8424723, 8432937, 8441155, 8449375, 8457599, 8465828, 8474063, 8482303,
565 8490544, 8498790, 8507038, 8515290, 8523544, 8531804, 8540064, 8548334, 8556606, 8564882,
566 8573159, 8581443, 8589730, 8598026, 8606322, 8614619, 8622926, 8631235, 8639550, 8647870,
567 8656193, 8664517, 8672842, 8681177, 8689516, 8697858, 8706203, 8714549, 8722902, 8731255,
568 8739611, 8747977, 8756347, 8764719, 8773094, 8781475, 8789856, 8798238, 8806632, 8815030,
569 8823430, 8831836, 8840247, 8848659, 8857071, 8865484, 8873912, 8882340, 8890768, 8899197,
570 8907631, 8916073, 8924517, 8932970, 8941426, 8949885, 8958345, 8966812, 8975283, 8983762,
571 8992244, 9000731, 9009221, 9017715, 9026210, 9034708, 9043212, 9051717, 9060232, 9068749,
572 9077269, 9085789, 9094313, 9102845, 9111381, 9119920, 9128463, 9137010, 9145558, 9154106,
573 9162670, 9171238, 9179806, 9188376, 9196951, 9205535, 9214120, 9222709, 9231298, 9239889,
574 9248487, 9257092, 9265699, 9274306, 9282918, 9291534, 9300155, 9308780, 9317406, 9326032,
575 9334665, 9343308, 9351951, 9360602, 9369261, 9377922, 9386588, 9395256, 9403930, 9412607,
576 9421289, 9429975, 9438664, 9447359, 9456057, 9464760, 9473466, 9482177, 9490890, 9499609,
577 9508329, 9517057, 9525786, 9534522, 9543258, 9551999, 9560740, 9569489, 9578243, 9586997,
578 9595754, 9604515, 9613285, 9622057, 9630830, 9639610, 9648392, 9657179, 9665969, 9674760,
579 9683553, 9692352, 9701162, 9709978, 9718795, 9727618, 9736441, 9745270, 9754103, 9762936,
580 9771771, 9780616, 9789466, 9798317, 9807173, 9816037, 9824904, 9833775, 9842650, 9851526,
581 9860406, 9869288, 9878179, 9887071, 9895964, 9904857, 9913750, 9922659, 9931572, 9940485,
582 9949398, 9958318, 9967246, 9976176, 9985113, 9994051, 10002992, 10011940, 10020896, 10029853,
583 10038812, 10047780, 10056748, 10065716, 10074695, 10083674, 10092655, 10101644, 10110635, 10119627,
584 10128627, 10137631, 10146639, 10155650, 10164662, 10173681, 10182705, 10191731, 10200763, 10209800,
585 10218843, 10227890, 10236941, 10245993, 10255050, 10264111, 10273172, 10282237, 10291307, 10300379,
586 10309453, 10318534, 10327624, 10336720, 10345816, 10354916, 10364023, 10373131, 10382244, 10391359,
587 10400478, 10409601, 10418724, 10427859, 10436995, 10446138, 10455281, 10464425, 10473572, 10482723,
588 10491880, 10501041, 10510209, 10519383, 10528558, 10537737, 10546924, 10556116, 10565311, 10574508,
589 10583705, 10592905, 10602110, 10611321, 10620532, 10629755, 10638979, 10648209, 10657441, 10666675,
590 10675918, 10685166, 10694416, 10703672, 10712929, 10722189, 10731451, 10740715, 10749984, 10759258,
591 10768534, 10777817, 10787100, 10796385, 10805677, 10814977, 10824284, 10833595, 10842908, 10852221,
592 10861537, 10870858, 10880187, 10889521, 10898856, 10908194, 10917532, 10926870, 10936208, 10945563,
593 10954927, 10964294, 10973664, 10983036, 10992416, 11001799, 11011185, 11020574, 11029969, 11039369,
594 11048773, 11058179, 11067589, 11077004, 11086422, 11095842, 11105264, 11114695, 11124130, 11133567,
595 11143005, 11152446, 11161894, 11171349, 11180806, 11190268, 11199731, 11209201, 11218672, 11228147,
596 11237624, 11247104, 11256589, 11266083, 11275579, 11285078, 11294577, 11304086, 11313599, 11323118,
597 11332641, 11342165, 11351693, 11361225, 11370762, 11380305, 11389851, 11399399, 11408952, 11418506,
598 11428070, 11437637, 11447204, 11456779, 11466355, 11475936, 11485522, 11495109, 11504702, 11514295,
599 11523893, 11533498, 11543104, 11552717, 11562332, 11571954, 11581578, 11591207, 11600840, 11610473,
600 11620113, 11629754, 11639396, 11649039, 11658684, 11668339, 11677995, 11687664, 11697337, 11707012,
601 11716691, 11726374, 11736064, 11745759, 11755458, 11765161, 11774865, 11784573, 11794288, 11804008,
602 11813729, 11823450, 11833171, 11842901, 11852637, 11862375, 11872116, 11881865, 11891614, 11901364,
603 11911128, 11920895, 11930664, 11940438, 11950212, 11959991, 11969775, 11979565, 11989355, 11999149,
604 12008950, 12018753, 12028565, 12038381, 12048197, 12058015, 12067836, 12077666, 12087499, 12097335,
605 12107175, 12117021, 12126867, 12136713, 12146562, 12156425, 12166288, 12176160, 12186032, 12195909,
606 12205793, 12215678, 12225564, 12235457, 12245353, 12255249, 12265152, 12275059, 12284972, 12294886,
607 12304802, 12314723, 12324644, 12334578, 12344516, 12354457, 12364402, 12374351, 12384305, 12394259,
608 12404216, 12414177, 12424145, 12434115, 12444091, 12454070, 12464054, 12474045, 12484041, 12494037,
609 12504040, 12514044, 12524049, 12534060, 12544073, 12554096, 12564123, 12574150, 12584186, 12594224,
610 12604268, 12614315, 12624365, 12634421, 12644477, 12654533, 12664593, 12674655, 12684729, 12694809,
611 12704893, 12714978, 12725067, 12735158, 12745252, 12755350, 12765451, 12775556, 12785667, 12795780,
612 12805900, 12816022, 12826149, 12836284, 12846419, 12856557, 12866702, 12876850, 12887003, 12897156,
613 12907319, 12917483, 12927651, 12937827, 12948006, 12958186, 12968367, 12978554, 12988744, 12998939,
614 13009142, 13019348, 13029560, 13039775, 13049994, 13060213, 13070438, 13080669, 13090904, 13101140,
615 13111377, 13121624, 13131871, 13142124, 13152380, 13162636, 13172899, 13183167, 13193437, 13203708,
616 13213979, 13224257, 13234539, 13244833, 13255132, 13265432, 13275737, 13286046, 13296358, 13306670,
617 13316983, 13327300, 13337625, 13347958, 13358294, 13368635, 13378977, 13389322, 13399668, 13410021,
618 13420384, 13430747, 13441111, 13451482, 13461854, 13472230, 13482611, 13492999, 13503388, 13513783,
619 13524186, 13534589, 13544995, 13555407, 13565822, 13576244, 13586670, 13597097, 13607533, 13617971,
620 13628412, 13638856, 13649300, 13659745, 13670190, 13680648, 13691109, 13701578, 13712050, 13722523,
621 13733003, 13743487, 13753974, 13764465, 13774962, 13785465, 13795972, 13806482, 13816992, 13827504,
622 13838023, 13848547, 13859076, 13869608, 13880145, 13890687, 13901230, 13911773, 13922322, 13932871,
623 13943433, 13953995, 13964565, 13975139, 13985715, 13996291, 14006868, 14017453, 14028043, 14038635,
624 14049237, 14059841, 14070451, 14081065, 14091683, 14102301, 14112920, 14123540, 14134167, 14144795,
625 14155436, 14166078, 14176728, 14187382, 14198037, 14208699, 14219363, 14230032, 14240705, 14251383,
626 14262061, 14272748, 14283436, 14294127, 14304820, 14315519, 14326225, 14336933, 14347642, 14358353,
627 14369069, 14379796, 14390523, 14401252, 14411991, 14422733, 14433476, 14444220, 14454972, 14465731,
628 14476494, 14487259, 14498029, 14508801, 14519576, 14530353, 14541140, 14551928, 14562724, 14573521,
629 14584320, 14595125, 14605932, 14616747, 14627562, 14638384, 14649208, 14660033, 14670868, 14681705,
630 14692548, 14703395, 14714245, 14725099, 14735956, 14746813, 14757677, 14768548, 14779419, 14790293,
631 14801176, 14812062, 14822954, 14833849, 14844746, 14855644, 14866542, 14877440, 14888348, 14899267,
632 14910189, 14921112, 14932036, 14942967, 14953902, 14964842, 14975789, 14986739, 14997692, 15008647,
633 15019608, 15030569, 15041534, 15052509, 15063488, 15074470, 15085456, 15096442, 15107436, 15118433,
634 15129432, 15140434, 15151437, 15162444, 15173462, 15184485, 15195512, 15206541, 15217572, 15228609,
635 15239646, 15250691, 15261740, 15272794, 15283852, 15294915, 15305978, 15317042, 15328114, 15339187,
636 15350266, 15361347, 15372434, 15383526, 15394625, 15405725, 15416831, 15427939, 15439053, 15450171,
637 15461293, 15472421, 15483551, 15494682, 15505818, 15516958, 15528106, 15539254, 15550406, 15561565,
638 15572729, 15583895, 15595063, 15606232, 15617401, 15628581, 15639767, 15650959, 15662155, 15673351,
639 15684549, 15695752, 15706958, 15718168, 15729384, 15740601, 15751820, 15763049, 15774284, 15785520,
640 15796759, 15808006, 15819256, 15830510, 15841764, 15853022, 15864290, 15875559, 15886833, 15898110,
641 15909391, 15920678, 15931965, 15943260, 15954555, 15965856, 15977157, 15988465, 15999774, 16011092,
642 16022413, 16033737, 16045063, 16056393, 16067728, 16079063, 16090409, 16101758, 16113112, 16124468,
643 16135831, 16147196, 16158561, 16169932, 16181310, 16192691, 16204074, 16215464, 16226854, 16238254,
644 16249657, 16261062, 16272471, 16283883, 16295303, 16306724, 16318146, 16329572, 16341000, 16352437,
645 16363881, 16375326, 16386771, 16398217, 16409667, 16421121, 16432583, 16444049, 16455516, 16466989,
646 16478462, 16489939, 16501424, 16512916, 16524410, 16535910, 16547415, 16558924, 16570436, 16581950,
647 16593465, 16604988, 16616514, 16628045, 16639581, 16651124, 16662671, 16674223, 16685778, 16697335,
648 16708899, 16720463, 16732032, 16743607, 16755182, 16766761, 16778342, 16789924, 16801512, 16813106,
649 16824703, 16836309, 16847919, 16859534, 16871152, 16882771, 16894397, 16906029, 16917664, 16929302,
650 16940942, 16952587, 16964236, 16975888, 16987547, 16999210, 17010874, 17022540, 17034215, 17045892,
651 17057573, 17069256, 17080941, 17092630, 17104324, 17116020, 17127716, 17139422, 17151138, 17162858,
652 17174579, 17186301, 17198023, 17209757, 17221496, 17233240, 17244988, 17256739, 17268492, 17280252,
653 17292014, 17303780, 17315546, 17327317, 17339093, 17350869, 17362649, 17374434, 17386225, 17398023,
654 17409821, 17421626, 17433437, 17445250, 17457069, 17468893, 17480720, 17492550, 17504384, 17516221,
655 17528060, 17539899, 17551746, 17563601, 17575456, 17587318, 17599181, 17611045, 17622910, 17634785,
656 17646665, 17658548, 17670438, 17682330, 17694228, 17706126, 17718032, 17729942, 17741853, 17753765,
657 17765681, 17777600, 17789526, 17801460, 17813395, 17825332, 17837274, 17849218, 17861163, 17873119,
658 17885075, 17897032, 17908996, 17920968, 17932943, 17944925, 17956908, 17968899, 17980894, 17992894,
659 18004897, 18016905, 18028914, 18040924, 18052943, 18064967, 18076994, 18089021, 18101056, 18113092,
660 18125130, 18137175, 18149224, 18161275, 18173328, 18185386, 18197446, 18209513, 18221580, 18233652,
661 18245731, 18257816, 18269906, 18281998, 18294094, 18306196, 18318304, 18330412, 18342526, 18354642,
662 18366762, 18378886, 18391015, 18403146, 18415281, 18427417, 18439560, 18451710, 18463861, 18476014,
663 18488172, 18500332, 18512496, 18524663, 18536834, 18549012, 18561199, 18573386, 18585574, 18597774,
664 18609978, 18622183, 18634390, 18646598, 18658806, 18671024, 18683249, 18695474, 18707706, 18719942,
665 18732186, 18744434, 18756686, 18768938, 18781198, 18793460, 18805727, 18817994, 18830266, 18842538,
666 18854812, 18867095, 18879383, 18891674, 18903965, 18916265, 18928565, 18940876, 18953189, 18965504,
667 18977825, 18990152, 19002483, 19014815, 19027147, 19039487, 19051834, 19064181, 19076528, 19088881,
668 19101235, 19113603, 19125972, 19138347, 19150723, 19163100, 19175483, 19187867, 19200260, 19212658,
669 19225060, 19237467, 19249874, 19262284, 19274701, 19287120, 19299544, 19311973, 19324406, 19336843,
670 19349281, 19361720, 19374164, 19386617, 19399071, 19411530, 19423994, 19436460, 19448936, 19461415,
671 19473895, 19486379, 19498871, 19511365, 19523860, 19536359, 19548867, 19561377, 19573889, 19586405,
672 19598929, 19611456, 19623988, 19636522, 19649058, 19661601, 19674145, 19686696, 19699252, 19711809,
673 19724368, 19736931, 19749502, 19762074, 19774648, 19787228, 19799808, 19812390, 19824978, 19837567,
674 19850157, 19862755, 19875362, 19887977, 19900595, 19913213, 19925838, 19938465, 19951100, 19963739,
675 19976378, 19989017, 20001667, 20014322, 20026978, 20039640, 20052305, 20064972, 20077643, 20090315,
676 20102993, 20115677, 20128367, 20141060, 20153759, 20166460, 20179165, 20191873, 20204589, 20217309,
677 20230029, 20242749, 20255478, 20268209, 20280948, 20293689, 20306431, 20319179, 20331927, 20344678,
678 20357441, 20370208, 20382979, 20395753, 20408530, 20421312, 20434098, 20446889, 20459684, 20472479,
679 20485276, 20498079, 20510889, 20523701, 20536514, 20549331, 20562150, 20574982, 20587817, 20600655,
680 20613495, 20626342, 20639193, 20652048, 20664905, 20677766, 20690629, 20703495, 20716364, 20729235,
681 20742117, 20755000, 20767883, 20780769, 20793659, 20806554, 20819461, 20832368, 20845281, 20858195,
682 20871116, 20884039, 20896963, 20909887, 20922813, 20935743, 20948677, 20961621, 20974571, 20987528,
683 21000489, 21013457, 21026426, 21039401, 21052377, 21065359, 21078344, 21091330, 21104319, 21117314,
684 21130317, 21143324, 21156336, 21169348, 21182366, 21195389, 21208414, 21221443, 21234476, 21247511,
685 21260546, 21273582, 21286620, 21299672, 21312725, 21325779, 21338843, 21351910, 21364979, 21378048,
686 21391131, 21404214, 21417301, 21430392, 21443489, 21456586, 21469690, 21482799, 21495910, 21509029,
687 21522148, 21535275, 21548403, 21561537, 21574673, 21587809, 21600955, 21614104, 21627259, 21640415,
688 21653573, 21666734, 21679902, 21693073, 21706244, 21719417, 21732602, 21745789, 21758981, 21772180,
689 21785381, 21798588, 21811797, 21825012, 21838229, 21851451, 21864673, 21877900, 21891131, 21904369,
690 21917612, 21930855, 21944105, 21957360, 21970616, 21983875, 21997135, 22010401, 22023676, 22036952,
691 22050235, 22063522, 22076811, 22090104, 22103400, 22116702, 22130007, 22143319, 22156634, 22169951,
692 22183272, 22196595, 22209925, 22223256, 22236591, 22249929, 22263273, 22276621, 22289976, 22303336,
693 22316697, 22330061, 22343432, 22356808, 22370186, 22383567, 22396952, 22410341, 22423736, 22437134,
694 22450536, 22463940, 22477345, 22490753, 22504161, 22517575, 22530992, 22544420, 22557848, 22571283,
695 22584720, 22598164, 22611613, 22625069, 22638527, 22651986, 22665448, 22678915, 22692391, 22705871,
696 22719353, 22732840, 22746330, 22759823, 22773323, 22786825, 22800329, 22813834, 22827348, 22840866,
697 22854387, 22867915, 22881446, 22894978, 22908510, 22922045, 22935582, 22949126, 22962681, 22976238,
698 22989795, 23003352, 23016923, 23030497, 23044074, 23057653, 23071233, 23084815, 23098407, 23112005,
699 23125603, 23139206, 23152817, 23166429, 23180046, 23193664, 23207291, 23220922, 23234553, 23248184,
700 23261823, 23275468, 23289114, 23302762, 23316418, 23330081, 23343747, 23357413, 23371086, 23384761,
701 23398439, 23412123, 23425812, 23439508, 23453204, 23466906, 23480611, 23494322, 23508037, 23521752,
702 23535476, 23549202, 23562928, 23576654, 23590391, 23604128, 23617874, 23631622, 23645375, 23659133,
703 23672893, 23686653, 23700419, 23714192, 23727968, 23741746, 23755532, 23769321, 23783113, 23796905,
704 23810698, 23824496, 23838298, 23852108, 23865918, 23879733, 23893550, 23907380, 23921216, 23935053,
705 23948896, 23962742, 23976592, 23990446, 24004306, 24018167, 24032034, 24045903, 24059774, 24073645,
706 24087525, 24101409, 24115296, 24129188, 24143080, 24156981, 24170882, 24184784, 24198696, 24212616,
707 24226539, 24240464, 24254389, 24268322, 24282257, 24296195, 24310138, 24324087, 24338042, 24351999,
708 24365957, 24379920, 24393885, 24407853, 24421828, 24435804, 24449784, 24463775, 24477766, 24491758,
709 24505750, 24519745, 24533747, 24547761, 24561780, 24575799, 24589823, 24603852, 24617885, 24631921,
710 24645959, 24659999, 24674051, 24688106, 24702165, 24716224, 24730284, 24744353, 24758423, 24772496,
711 24786579, 24800663, 24814751, 24828842, 24842940, 24857038, 24871144, 24885254, 24899367, 24913481,
712 24927595, 24941720, 24955851, 24969985, 24984119, 24998255, 25012395, 25026544, 25040693, 25054843,
713 25068995, 25083159, 25097329, 25111504, 25125681, 25139858, 25154037, 25168225, 25182419, 25196615,
714 25210814, 25225014, 25239215, 25253421, 25267627, 25281848, 25296074, 25310302, 25324533, 25338766,
715 25353004, 25367243, 25381491, 25395745, 25410000, 25424261, 25438529, 25452800, 25467074, 25481354,
716 25495637, 25509924, 25524215, 25538508, 25552805, 25567104, 25581409, 25595715, 25610029, 25624347,
717 25638671, 25652998, 25667326, 25681656, 25695986, 25710328, 25724675, 25739026, 25753379, 25767735,
718 25782097, 25796459, 25810821, 25825185, 25839564, 25853945, 25868332, 25882723, 25897116, 25911516,
719 25925916, 25940322, 25954730, 25969138, 25983555, 25997974, 26012402, 26026830, 26041262, 26055701,
720 26070144, 26084589, 26099035, 26113481, 26127936, 26142394, 26156860, 26171327, 26185794, 26200269,
721 26214746, 26229230, 26243722, 26258217, 26272715, 26287215, 26301715, 26316221, 26330733, 26345248,
722 26359764, 26374287, 26388810, 26403345, 26417881, 26432423, 26446970, 26461520, 26476072, 26490626,
723 26505185, 26519748, 26534316, 26548891, 26563467, 26578047, 26592630, 26607216, 26621808, 26636400,
724 26651000, 26665602, 26680210, 26694818, 26709433, 26724048, 26738675, 26753303, 26767936, 26782570,
725 26797214, 26811858, 26826504, 26841151, 26855805, 26870469, 26885133, 26899802, 26914473, 26929152,
726 26943831, 26958510, 26973191, 26987879, 27002567, 27017258, 27031962, 27046668, 27061378, 27076091,
727 27090810, 27105536, 27120262, 27134988, 27149716, 27164444, 27179185, 27193931, 27208684, 27223441,
728 27238205, 27252972, 27267743, 27282517, 27297296, 27312078, 27326863, 27341651, 27356444, 27371239,
729 27386036, 27400841, 27415652, 27430467, 27445284, 27460104, 27474931, 27489759, 27504590, 27519425,
730 27534261, 27549103, 27563954, 27578807, 27593663, 27608521, 27623381, 27638246, 27653119, 27667995,
731 27682875, 27697761, 27712651, 27727543, 27742435, 27757327, 27772220, 27787119, 27802018, 27816931,
732 27831852, 27846775, 27861702, 27876630, 27891558, 27906499, 27921443, 27936389, 27951340, 27966291,
733 27981251, 27996217, 28011188, 28026162, 28041141, 28056120, 28071101, 28086083, 28101074, 28116074,
734 28131077, 28146082, 28161093, 28176105, 28191119, 28206138, 28221164, 28236194, 28251228, 28266263,
735 28281305, 28296353, 28311403, 28326457, 28341515, 28356575, 28371637, 28386700, 28401764, 28416831,
736 28431899, 28446967, 28462049, 28477142, 28492237, 28507334, 28522438, 28537547, 28552659, 28567776,
737 28582899, 28598023, 28613154, 28628287, 28643423, 28658560, 28673701, 28688844, 28703988, 28719133,
738 28734295, 28749459, 28764631, 28779806, 28794982, 28810161, 28825345, 28840533, 28855728, 28870926,
739 28886126, 28901330, 28916535, 28931751, 28946967, 28962185, 28977410, 28992639, 29007868, 29023099,
740 29038341, 29053587, 29068835, 29084090, 29099347, 29114607, 29129868, 29145133, 29160399, 29175675,
741 29190957, 29206245, 29221536, 29236829, 29252128, 29267430, 29282734, 29298043, 29313358, 29328675,
742 29343998, 29359322, 29374647, 29389981, 29405315, 29420658, 29436001, 29451352, 29466708, 29482068,
743 29497431, 29512797, 29528163, 29543538, 29558916, 29574296, 29589682, 29605074, 29620469, 29635865,
744 29651267, 29666670, 29682074, 29697481, 29712894, 29728315, 29743741, 29759170, 29774600, 29790034,
745 29805469, 29820910, 29836357, 29851810, 29867266, 29882727, 29898193, 29913665, 29929139, 29944617,
746 29960099, 29975582, 29991069, 30006564, 30022060, 30037561, 30053063, 30068565, 30084067, 30099582,
747 30115098, 30130617, 30146147, 30161679, 30177213, 30192757, 30208302, 30223854, 30239409, 30254965,
748 30270524, 30286085, 30301656, 30317228, 30332806, 30348386, 30363970, 30379554, 30395140, 30410726,
749 30426320, 30441926, 30457533, 30473148, 30488766, 30504389, 30520016, 30535643, 30551270, 30566910,
750 30582554, 30598200, 30613847, 30629497, 30645156, 30660818, 30676486, 30692157, 30707832, 30723508,
751 30739185, 30754866, 30770555, 30786247, 30801947, 30817650, 30833354, 30849065, 30864776, 30880493,
752 30896212, 30911935, 30927659, 30943387, 30959125, 30974867, 30990609, 31006360, 31022116, 31037872,
753 31053635, 31069401, 31085170, 31100941, 31116716, 31132498, 31148280, 31164063, 31179853, 31195643,
754 31211436, 31227239, 31243048, 31258858, 31274669, 31290481, 31306303, 31322129, 31337964, 31353804,
755 31369646, 31385493, 31401342, 31417196, 31433052, 31448912, 31464775, 31480638, 31496512, 31512390,
756 31528269, 31544148, 31560039, 31575932, 31591825, 31607724, 31623627, 31639535, 31655449, 31671369,
757 31687289, 31703214, 31719145, 31735079, 31751015, 31766955, 31782902, 31798852, 31814802, 31830756,
758 31846714, 31862676, 31878642, 31894610, 31910580, 31926553, 31942541, 31958533, 31974525, 31990520,
759 32006516, 32022523, 32038535, 32054547, 32070560, 32086583, 32102611, 32118640, 32134672, 32150707,
760 32166745, 32182787, 32198838, 32214891, 32230947, 32247010, 32263076, 32279143, 32295212, 32311289,
761 32327368, 32343449, 32359533, 32375625, 32391724, 32407824, 32423924, 32440031, 32456139, 32472257,
762 32488378, 32504499, 32520624, 32536758, 32552895, 32569034, 32585182, 32601330, 32617481, 32633632,
763 32649788, 32665945, 32682111, 32698286, 32714465, 32730647, 32746829, 32763013, 32779203, 32795393,
764 32811597, 32827805, 32844016, 32860229, 32876442, 32892659, 32908884, 32925114, 32941348, 32957583,
765 32973824, 32990068, 33006319, 33022574, 33038831, 33055088, 33071347, 33087612, 33103883, 33120162,
766 33136441, 33152723, 33169007, 33185295, 33201590, 33217893, 33234196, 33250504, 33266812, 33283120,
767 33299436, 33315757, 33332082, 33348410, 33364750, 33381091, 33397439, 33413787, 33430140, 33446498,
768 33462856, 33479217, 33495587, 33511958, 33528330, 33544714, 33561099, 33577489, 33593882, 33610278,
769 33626679, 33643080, 33659483, 33675893, 33692312, 33708732, 33725153, 33741583, 33758016, 33774455,
770 33790895, 33807340, 33823787, 33840235, 33856693, 33873155, 33889621, 33906092, 33922565, 33939041,
771 33955517, 33971996, 33988483, 34004978, 34021475, 34037975, 34054477, 34070984, 34087494, 34104011,
772 34120530, 34137055, 34153586, 34170121, 34186658, 34203201, 34219748, 34236297, 34252850, 34269405,
773 34285960, 34302521, 34319085, 34335654, 34352226, 34368798, 34385371, 34401944, 34418538, 34435134,
774 34451738, 34468344, 34484950, 34501565, 34518182, 34534801, 34551420, 34568046, 34584676, 34601309,
775 34617942, 34634578, 34651217, 34667871, 34684529, 34701191, 34717857, 34734527, 34751202, 34767877,
776 34784561, 34801245, 34817936, 34834629, 34851325, 34868025, 34884731, 34901440, 34918149, 34934867,
777 34951585, 34968313, 34985044, 35001777, 35018517, 35035258, 35052005, 35068755, 35085506, 35102262,
778 35119020, 35135787, 35152554, 35169325, 35186099, 35202875, 35219662, 35236454, 35253250, 35270047,
779 35286851, 35303658, 35320465, 35337277, 35354093, 35370916, 35387744, 35404574, 35421406, 35438240,
780 35455083, 35471928, 35488779, 35505634, 35522491, 35539349, 35556210, 35573082, 35589955, 35606829,
781 35623708, 35640591, 35657475, 35674366, 35691264, 35708167, 35725071, 35741979, 35758889, 35775800,
782 35792719, 35809646, 35826573, 35843505, 35860437, 35877376, 35894320, 35911265, 35928216, 35945174,
783 35962135, 35979096, 35996063, 36013039, 36030017, 36047000, 36063983, 36080966, 36097952, 36114943,
784 36131936, 36148940, 36165948, 36182956, 36199966, 36216981, 36234002, 36251028, 36268062, 36285096,
785 36302138, 36319186, 36336234, 36353289, 36370348, 36387409, 36404477, 36421546, 36438621, 36455698,
786 36472776, 36489857, 36506941, 36524031, 36541122, 36558213, 36575321, 36592432, 36609545, 36626659,
787 36643782, 36660907, 36678036, 36695172, 36712311, 36729450, 36746595, 36763744, 36780896, 36798053,
788 36815212, 36832378, 36849548, 36866720, 36883898, 36901078, 36918265, 36935453, 36952645, 36969837,
789 36987039, 37004244, 37021453, 37038668, 37055884, 37073103, 37090326, 37107551, 37124785, 37142024,
790 37159264, 37176507, 37193758, 37211011, 37228268, 37245527, 37262793, 37280063, 37297339, 37314615,
791 37331891, 37349172, 37366460, 37383756, 37401054, 37418355, 37435662, 37452969, 37470280, 37487600,
792 37504921, 37522249, 37539580, 37556913, 37574253, 37591596, 37608943, 37626295, 37643647, 37660999,
793 37678358, 37695718, 37713080, 37730447, 37747814, 37765192, 37782573, 37799960, 37817351, 37834744,
794 37852138, 37869534, 37886934, 37904335, 37921739, 37939158, 37956577, 37974004, 37991437, 38008871,
795 38026313, 38043755, 38061203, 38078651, 38096099, 38113554, 38131022, 38148490, 38165965, 38183440,
796 38200917, 38218395, 38235881, 38253372, 38270866, 38288369, 38305873, 38323378, 38340889, 38358406,
797 38375928, 38393453, 38410985, 38428519, 38446056, 38463595, 38481138, 38498686, 38516239, 38533798,
798 38551358, 38568919, 38586483, 38604053, 38621632, 38639216, 38656801, 38674386, 38691975, 38709570,
799 38727173, 38744776, 38762384, 38779999, 38797617, 38815239, 38832861, 38850491, 38868126, 38885761,
800 38903402, 38921047, 38938698, 38956351, 38974009, 38991668, 39009335, 39027007, 39044681, 39062358,
801 39080042, 39097729, 39115416, 39133110, 39150806, 39168503, 39186204, 39203910, 39221624, 39239340,
802 39257058, 39274781, 39292506, 39310239, 39327979, 39345719, 39363462, 39381209, 39398964, 39416723,
803 39434486, 39452253, 39470024, 39487795, 39505567, 39523343, 39541119, 39558904, 39576699, 39594499,
804 39612301, 39630103, 39647910, 39665717, 39683524, 39701344, 39719172, 39737001, 39754834, 39772668,
805 39790509, 39808351, 39826194, 39844045, 39861898, 39879761, 39897625, 39915494, 39933363, 39951240,
806 39969121, 39987006, 40004897, 40022792, 40040692, 40058594, 40076499, 40094406, 40112320, 40130235,
807 40148156, 40166083, 40184012, 40201945, 40219878, 40237819, 40255762, 40273714, 40291668, 40309626,
808 40327584, 40345549, 40363517, 40381490, 40399468, 40417447, 40435428, 40453411, 40471403, 40489395,
809 40507388, 40525396, 40543408, 40561422, 40579438, 40597462, 40615487, 40633517, 40651547, 40669581,
810 40687618, 40705656, 40723705, 40741759, 40759816, 40777876, 40795938, 40814010, 40832083, 40850159,
811 40868235, 40886311, 40904393, 40922487, 40940584, 40958683, 40976785, 40994894, 41013004, 41031122,
812 41049240, 41067366, 41085498, 41103633, 41121768, 41139903, 41158044, 41176192, 41194342, 41212495,
813 41230655, 41248819, 41266987, 41285156, 41303334, 41321516, 41339699, 41357882, 41376076, 41394270,
814 41412472, 41430678, 41448887, 41467100, 41485317, 41503541, 41521766, 41539993, 41558223, 41576456,
815 41594692, 41612934, 41631185, 41649437, 41667691, 41685950, 41704211, 41722474, 41740746, 41759025,
816 41777306, 41795591, 41813877, 41832168, 41850465, 41868764, 41887071, 41905378, 41923692, 41942010,
817 41960333, 41978661, 41996991, 42015326, 42033664, 42052003, 42070349, 42088698, 42107047, 42125407,
818 42143767, 42162134, 42180502, 42198876, 42217256, 42235639, 42254022, 42272412, 42290807, 42309207,
819 42327609, 42346017, 42364427, 42382840, 42401257, 42419681, 42438106, 42456537, 42474968, 42493405,
820 42511845, 42530292, 42548740, 42567191, 42585650, 42604111, 42622575, 42641046, 42659522, 42678002,
821 42696485, 42714968, 42733457, 42751951, 42770446, 42788941, 42807444, 42825947, 42844452, 42862958,
822 42881481, 42900005, 42918535, 42937069, 42955604, 42974143, 42992689, 43011236, 43029784, 43048334,
823 43066892, 43085457, 43104026, 43122601, 43141179, 43159761, 43178346, 43196937, 43215529, 43234128,
824 43252731, 43271336, 43289944, 43308558, 43327177, 43345801, 43364425, 43383053, 43401682, 43420318,
825 43438961, 43457606, 43476251, 43494900, 43513556, 43532219, 43550882, 43569550, 43588223, 43606899,
826 43625582, 43644267, 43662957, 43681652, 43700349, 43719048, 43737755, 43756462, 43775174, 43793891,
827 43812612, 43831335, 43850066, 43868801, 43887539, 43906279, 43925023, 43943769, 43962521, 43981280,
828 44000043, 44018809, 44037579, 44056355, 44075133, 44093911, 44112692, 44131481, 44150271, 44169065,
829 44187864, 44206664, 44225464, 44244265, 44263076, 44281892, 44300719, 44319550, 44338382, 44357222,
830 44376066, 44394913, 44413762, 44432614, 44451467, 44470324, 44489188, 44508053, 44526923, 44545796,
831 44564670, 44583553, 44602440, 44621334, 44640231, 44659129, 44678036, 44696946, 44715859, 44734778,
832 44753700, 44772623, 44791547, 44810477, 44829411, 44848349, 44867296, 44886244, 44905197, 44924156,
833 44943117, 44962078, 44981045, 45000016, 45018993, 45037974, 45056961, 45075952, 45094946, 45113945,
834 45132949, 45151956, 45170965, 45189980, 45208995, 45228013, 45247037, 45266067, 45285101, 45304136,
835 45323174, 45342220, 45361270, 45380321, 45399377, 45418438, 45437503, 45456571, 45475640, 45494711,
836 45513794, 45532881, 45551972, 45571066, 45590163, 45609266, 45628373, 45647480, 45666590, 45685710,
837 45704834, 45723958, 45743085, 45762220, 45781356, 45800496, 45819640, 45838785, 45857932, 45877087,
838 45896244, 45915408, 45934575, 45953745, 45972924, 45992105, 46011286, 46030476, 46049668, 46068865,
839 46088066, 46107273, 46126483, 46145694, 46164912, 46184131, 46203354, 46222579, 46241807, 46261044,
840 46280282, 46299525, 46318770, 46338019, 46357277, 46376537, 46395798, 46415060, 46434322, 46453588,
841 46472871, 46492155, 46511442, 46530738, 46550036, 46569339, 46588647, 46607958, 46627269, 46646589,
842 46665911, 46685234, 46704558, 46723884, 46743219, 46762557, 46781899, 46801242, 46820589, 46839938,
843 46859298, 46878666, 46898037, 46917411, 46936785, 46956164, 46975550, 46994937, 47014324, 47033721,
844 47053118, 47072520, 47091925, 47111335, 47130754, 47150178, 47169604, 47189036, 47208468, 47227902,
845 47247338, 47266776, 47286219, 47305670, 47325127, 47344586, 47364054, 47383524, 47402999, 47422476,
846 47441954, 47461437, 47480929, 47500424, 47519921, 47539423, 47558925, 47578434, 47597950, 47617469,
847 47636993, 47656517, 47676042, 47695576, 47715113, 47734650, 47754192, 47773734, 47793279, 47812830,
848 47832382, 47851934, 47871494, 47891059, 47910628, 47930204, 47949785, 47969367, 47988955, 48008545,
849 48028146, 48047748, 48067353, 48086964, 48106579, 48126196, 48145816, 48165440, 48185066, 48204703,
850 48224347, 48243991, 48263639, 48283289, 48302948, 48322607, 48342274, 48361941, 48381614, 48401289,
851 48420970, 48440654, 48460345, 48480037, 48499734, 48519437, 48539142, 48558854, 48578570, 48598287,
852 48618010, 48637734, 48657463, 48677194, 48696931, 48716672, 48736420, 48756171, 48775925, 48795680,
853 48815437, 48835204, 48854974, 48874744, 48894517, 48914296, 48934084, 48953872, 48973663, 48993455,
854 49013248, 49033054, 49052862, 49072674, 49092489, 49112307, 49132127, 49151957, 49171792, 49191629,
855 49211470, 49231314, 49251165, 49271018, 49290871, 49310729, 49330589, 49350456, 49370326, 49390197,
856 49410073, 49429954, 49449845, 49469740, 49489637, 49509534, 49529437, 49549349, 49569262, 49589177,
857 49609098, 49629021, 49648951, 49668883, 49688819, 49708757, 49728703, 49748654, 49768605, 49788560,
858 49808521, 49828485, 49848457, 49868431, 49888407, 49908383, 49928359, 49948338, 49968327, 49988317,
859 50008307, 50028312, 50048317, 50068333, 50088350, 50108373, 50128399, 50148430, 50168461, 50188500,
860 50208539, 50228585, 50248636, 50268690, 50288748, 50308808, 50328872, 50348940, 50369011, 50389084,
861 50409164, 50429249, 50449339, 50469431, 50489526, 50509621, 50529721, 50549821, 50569932, 50590052,
862 50610174, 50630301, 50650428, 50670562, 50690697, 50710837, 50730984, 50751132, 50771282, 50791438,
863 50811598, 50831765, 50851934, 50872107, 50892284, 50912463, 50932648, 50952834, 50973020, 50993207,
864 51013407, 51033608, 51053813, 51074020, 51094234, 51114455, 51134680, 51154907, 51175143, 51195382,
865 51215624, 51235871, 51256120, 51276375, 51296630, 51316892, 51337159, 51357431, 51377704, 51397979,
866 51418257, 51438542, 51458833, 51479128, 51499423, 51519724, 51540025, 51560328, 51580639, 51600950,
867 51621267, 51641587, 51661910, 51682240, 51702571, 51722915, 51743260, 51763611, 51783964, 51804323,
868 51824682, 51845049, 51865416, 51885792, 51906172, 51926556, 51946943, 51967330, 51987722, 52008117,
869 52028518, 52048920, 52069330, 52089741, 52110161, 52130584, 52151010, 52171442, 52191877, 52212313,
870 52232749, 52253197, 52273647, 52294097, 52314554, 52335015, 52355476, 52375940, 52396410, 52416882,
871 52437358, 52457836, 52478321, 52498810, 52519302, 52539799, 52560299, 52580801, 52601310, 52621824,
872 52642340, 52662860, 52683384, 52703920, 52724456, 52744997, 52765543, 52786094, 52806649, 52827207,
873 52847769, 52868333, 52888900, 52909467, 52930038, 52950614, 52971197, 52991788, 53012379, 53032971,
874 53053570, 53074169, 53094776, 53115385, 53135997, 53156615, 53177242, 53197874, 53218509, 53239146,
875 53259783, 53280428, 53301074, 53321724, 53342376, 53363030, 53383685, 53404356, 53425028, 53445707,
876 53466387, 53487067, 53507756, 53528450, 53549144, 53569838, 53590545, 53611252, 53631966, 53652680,
877 53673399, 53694127, 53714855, 53735590, 53756328, 53777066, 53797805, 53818555, 53839307, 53860061,
878 53880820, 53901585, 53922355, 53943127, 53963900, 53984674, 54005454, 54026235, 54047016, 54067801,
879 54088600, 54109407, 54130215, 54151029, 54171849, 54192671, 54213493, 54234324, 54255159, 54275996,
880 54296839, 54317684, 54338531, 54359382, 54380238, 54401099, 54421961, 54442832, 54463706, 54484582,
881 54505464, 54526351, 54547238, 54568129, 54589022, 54609926, 54630831, 54651741, 54672653, 54693568,
882 54714484, 54735412, 54756343, 54777275, 54798212, 54819150, 54840098, 54861048, 54882003, 54902958,
883 54923920, 54944883, 54965853, 54986823, 55007802, 55028786, 55049774, 55070763, 55091758, 55112756,
884 55133759, 55154766, 55175777, 55196792, 55217809, 55238828, 55259855, 55280883, 55301915, 55322955,
885 55343995, 55365036, 55386078, 55407124, 55428179, 55449236, 55470301, 55491370, 55512439, 55533517,
886 55554600, 55575687, 55596775, 55617863, 55638961, 55660063, 55681168, 55702276, 55723386, 55744503,
887 55765621, 55786745, 55807870, 55829003, 55850136, 55871279, 55892425, 55913574, 55934727, 55955884,
888 55977046, 55998208, 56019374, 56040540, 56061709, 56082892, 56104075, 56125261, 56146455, 56167649,
889 56188852, 56210055, 56231258, 56252465, 56273678, 56294900, 56316125, 56337350, 56358582, 56379821,
890 56401065, 56422310, 56443556, 56464803, 56486059, 56507321, 56528583, 56549852, 56571121, 56592398,
891 56613681, 56634969, 56656258, 56677550, 56698847, 56720149, 56741453, 56762757, 56784064, 56805371,
892 56826682, 56847997, 56869315, 56890647, 56911979, 56933321, 56954666, 56976013, 56997363, 57018719,
893 57040076, 57061433, 57082801, 57104172, 57125548, 57146931, 57168316, 57189707, 57211100, 57232495,
894 57253894, 57275300, 57296711, 57318125, 57339544, 57360964, 57382385, 57403810, 57425237, 57446671,
895 57468114, 57489559, 57511007, 57532459, 57553917, 57575379, 57596846, 57618317, 57639788, 57661261,
896 57682743, 57704228, 57725716, 57747205, 57768703, 57790202, 57811709, 57833216, 57854726, 57876240,
897 57897761, 57919286, 57940815, 57962349, 57983885, 58005428, 58026971, 58048518, 58070067, 58091619,
898 58113173, 58134736, 58156299, 58177865, 58199443, 58221026, 58242612, 58264203, 58285796, 58307393,
899 58328990, 58350589, 58372189, 58393792, 58415406, 58437021, 58458638, 58480263, 58501893, 58523526,
900 58545160, 58566798, 58588449, 58610104, 58631759, 58653422, 58675085, 58696757, 58718429, 58740103,
901 58761778, 58783454, 58805130, 58826810, 58848491, 58870193, 58891898, 58913606, 58935317, 58957035,
902 58978759, 59000484, 59022212, 59043944, 59065676, 59087418, 59109164, 59130913, 59152665, 59174424,
903 59196184, 59217945, 59239706, 59261481, 59283256, 59305032, 59326820, 59348608, 59370398, 59392189,
904 59413985, 59435788, 59457599, 59479411, 59501224, 59523042, 59544861, 59566692, 59588523, 59610358,
905 59632199, 59654040, 59675887, 59697737, 59719591, 59741445, 59763302, 59785159, 59807021, 59828895,
906 59850778, 59872662, 59894550, 59916443, 59938340, 59960238, 59982145, 60004055, 60025968, 60047883,
907 60069798, 60091725, 60113655, 60135588, 60157524, 60179465, 60201413, 60223361, 60245315, 60267272,
908 60289233, 60311194, 60333158, 60355130, 60377109, 60399092, 60421076, 60443065, 60465060, 60487059,
909 60509060, 60531067, 60553078, 60575089, 60597100, 60619112, 60641135, 60663161, 60685187, 60707219,
910 60729253, 60751290, 60773340, 60795391, 60817447, 60839510, 60861576, 60883644, 60905713, 60927793,
911 60949876, 60971963, 60994050, 61016140, 61038239, 61060338, 61082442, 61104551, 61126664, 61148777,
912 61170891, 61193007, 61215128, 61237253, 61259385, 61281527, 61303672, 61325822, 61347976, 61370135,
913 61392299, 61414464, 61436632, 61458800, 61480975, 61503157, 61525339, 61547521, 61569713, 61591913,
914 61614114, 61636320, 61658532, 61680745, 61702963, 61725181, 61747409, 61769640, 61791871, 61814109,
915 61836353, 61858600, 61880848, 61903099, 61925358, 61947617, 61969878, 61992144, 62014412, 62036680,
916 62058962, 62081247, 62103533, 62125824, 62148121, 62170419, 62192719, 62215025, 62237333, 62259650,
917 62281968, 62304288, 62326616, 62348947, 62371287, 62393627, 62415972, 62438320, 62460675, 62483030,
918 62505392, 62527756, 62550124, 62572492, 62594866, 62617248, 62639630, 62662013, 62684402, 62706792,
919 62729189, 62751593, 62773999, 62796406, 62818816, 62841234, 62863659, 62886084, 62908514, 62930944,
920 62953375, 62975809, 62998258, 63020714, 63043173, 63065637, 63088104, 63110571, 63133038, 63155507,
921 63177985, 63200466, 63222952, 63245443, 63267938, 63290440, 63312942, 63335447, 63357959, 63380478,
922 63402998, 63425526, 63448055, 63470588, 63493121, 63515663, 63538207, 63560757, 63583308, 63605859,
923 63628421, 63650983, 63673552, 63696123, 63718696, 63741272, 63763850, 63786434, 63809028, 63831628,
924 63854232, 63876840, 63899451, 63922065, 63944681, 63967297, 63989916, 64012535, 64035158, 64057787,
925 64080416, 64103046, 64125689, 64148338, 64170995, 64193656, 64216317, 64238987, 64261658, 64284333,
926 64307011, 64329692, 64352376, 64375069, 64397766, 64420464, 64443165, 64465870, 64488582, 64511301,
927 64534021, 64556747, 64579474, 64602202, 64624940, 64647684, 64670431, 64693179, 64715931, 64738689,
928 64761452, 64784215, 64806981, 64829749, 64852523, 64875302, 64898087, 64920875, 64943670, 64966469,
929 64989268, 65012070, 65034879, 65057689, 65080505, 65103328, 65126155, 65148982, 65171812, 65194646,
930 65217480, 65240317, 65263164, 65286016, 65308873, 65331734, 65354600, 65377471, 65400343, 65423220,
931 65446097, 65468977, 65491864, 65514753, 65537645, 65560539, 65583439, 65606342, 65629250, 65652162,
932 65675083, 65698009, 65720939, 65743873, 65766813, 65789754, 65812700, 65835651, 65858604, 65881560,
933 65904521, 65927486, 65950457, 65973428, 65996404, 66019386, 66042370, 66065355, 66088349, 66111343,
934 66134346, 66157352, 66180363, 66203378, 66226397, 66249420, 66272444, 66295476, 66318512, 66341552,
935 66364593, 66387640, 66410692, 66433744, 66456804, 66479864, 66502931, 66526002, 66549076, 66572153,
936 66595237, 66618324, 66641416, 66664510, 66687606, 66710702, 66733802, 66756905, 66780012, 66803127,
937 66826248, 66849372, 66872497, 66895627, 66918757, 66941894, 66965040, 66988191, 67011344, 67034503,
938 67057662, 67080825, 67103990, 67127158, 67150335, 67173513, 67196699, 67219890, 67243086, 67266282,
939 67289481, 67312688, 67335895, 67359104, 67382321, 67405538, 67428764, 67451994, 67475228, 67498466,
940 67521709, 67544952, 67568201, 67591454, 67614708, 67637962, 67661227, 67684494, 67707761, 67731037,
941 67754321, 67777607, 67800894, 67824182, 67847470, 67870763, 67894066, 67917375, 67940684, 67963993,
942 67987306, 68010632, 68033958, 68057293, 68080628, 68103968, 68127314, 68150664, 68174017, 68197377,
943 68220741, 68244105, 68267470, 68290845, 68314223, 68337601, 68360979, 68384358, 68407739, 68431129,
944 68454524, 68477922, 68501323, 68524730, 68548146, 68571562, 68594978, 68618408, 68641840, 68665279,
945 68688721, 68712166, 68735612, 68759058, 68782516, 68805976, 68829438, 68852907, 68876379, 68899854,
946 68923331, 68946813, 68970301, 68993792, 69017283, 69040784, 69064286, 69087789, 69111304, 69134823,
947 69158345, 69181867, 69205392, 69228925, 69252460, 69275995, 69299540, 69323088, 69346638, 69370193,
948 69393748, 69417307, 69440866, 69464441, 69488017, 69511600, 69535185, 69558776, 69582370, 69605965,
949 69629565, 69653169, 69676780, 69700391, 69724004, 69747627, 69771251, 69794883, 69818516, 69842149,
950 69865790, 69889438, 69913089, 69936742, 69960399, 69984056, 70007714, 70031373, 70055037, 70078712,
951 70102393, 70126077, 70149769, 70173462, 70197155, 70220848, 70244551, 70268254, 70291964, 70315677,
952 70339395, 70363120, 70386849, 70410582, 70434320, 70458062, 70481807, 70505557, 70529313, 70553071,
953 70576829, 70600596, 70624367, 70648140, 70671918, 70695701, 70719486, 70743278, 70767071, 70790870,
954 70814673, 70838477, 70862282, 70886087, 70909901, 70933720, 70957544, 70981375, 71005207, 71029043,
955 71052879, 71076716, 71100558, 71124412, 71148266, 71172128, 71195994, 71219861, 71243735, 71267609,
956 71291486, 71315373, 71339264, 71363159, 71387056, 71410954, 71434862, 71458771, 71482687, 71506605,
957 71530528, 71554456, 71578384, 71602314, 71626249, 71650186, 71674125, 71698070, 71722018, 71745967,
958 71769916, 71793873, 71817841, 71841816, 71865794, 71889775, 71913757, 71937748, 71961741, 71985740,
959 72009739, 72033742, 72057753, 72081768, 72105784, 72129806, 72153833, 72177865, 72201901, 72225939,
960 72249983, 72274028, 72298079, 72322131, 72346183, 72370244, 72394311, 72418381, 72442457, 72466533,
961 72490611, 72514697, 72538786, 72562875, 72586971, 72611070, 72635174, 72659284, 72683396, 72707509,
962 72731628, 72755749, 72779881, 72804013, 72828148, 72852289, 72876431, 72900577, 72924731, 72948889,
963 72973048, 72997211, 73021383, 73045556, 73069733, 73093914, 73118101, 73142293, 73166488, 73190687,
964 73214889, 73239093, 73263304, 73287518, 73311733, 73335948, 73360163, 73384382, 73408612, 73432848,
965 73457091, 73481334, 73505582, 73529832, 73554091, 73578352, 73602619, 73626886, 73651161, 73675439,
966 73699723, 73724009, 73748299, 73772593, 73796892, 73821195, 73845502, 73869811, 73894120, 73918429,
967 73942748, 73967069, 73991394, 74015720, 74040047, 74064380, 74088722, 74113067, 74137418, 74161772,
968 74186134, 74210498, 74234867, 74259238, 74283611, 74307994, 74332379, 74356766, 74381153, 74405541,
969 74429945, 74454351, 74478759, 74503174, 74527591, 74552011, 74576437, 74600865, 74625300, 74649736,
970 74674177, 74698621, 74723073, 74747525, 74771977, 74796431, 74820890, 74845358, 74869827, 74894306,
971 74918788, 74943275, 74967765, 74992258, 75016752, 75041253, 75065760, 75090270, 75114784, 75139303,
972 75163825, 75188352, 75212883, 75237415, 75261952, 75286494, 75311038, 75335589, 75360140, 75384698,
973 75409258, 75433818, 75458385, 75482956, 75507530, 75532113, 75556700, 75581289, 75605878, 75630471,
974 75655070, 75679677, 75704284, 75728895, 75753512, 75778131, 75802750, 75827374, 75852008, 75876645,
975 75901283, 75925927, 75950572, 75975227, 75999885, 76024543, 76049207, 76073871, 76098539, 76123209,
976 76147886, 76172569, 76197259, 76221949, 76246647, 76271346, 76296046, 76320758, 76345472, 76370190,
977 76394912, 76419635, 76444366, 76469100, 76493835, 76518579, 76543325, 76568073, 76592823, 76617576,
978 76642336, 76667100, 76691866, 76716632, 76741405, 76766186, 76790971, 76815759, 76840551, 76865345,
979 76890143, 76914941, 76939749, 76964559, 76989369, 77014188, 77039007, 77063829, 77088657, 77113486,
980 77138322, 77163159, 77188009, 77212864, 77237719, 77262580, 77287446, 77312315, 77337186, 77362060,
981 77386942, 77411827, 77436718, 77461613, 77486509, 77511408, 77536310, 77561217, 77586124, 77611037,
982 77635960, 77660885, 77685816, 77710750, 77735684, 77760626, 77785569, 77810515, 77835462, 77860411,
983 77885375, 77910341, 77935312, 77960285, 77985258, 78010240, 78035223, 78060212, 78085207, 78110207,
984 78135209, 78160212, 78185220, 78210231, 78235242, 78260265, 78285289, 78310316, 78335351, 78360387,
985 78385426, 78410468, 78435514, 78460563, 78485621, 78510680, 78535743, 78560807, 78585883, 78610960,
986 78636040, 78661123, 78686210, 78711297, 78736392, 78761490, 78786596, 78811704, 78836815, 78861927,
987 78887041, 78912160, 78937285, 78962410, 78987535, 79012673, 79037816, 79062965, 79088117, 79113271,
988 79138433, 79163599, 79188765, 79213937, 79239115, 79264297, 79289480, 79314666, 79339857, 79365051,
989 79390250, 79415452, 79440664, 79465879, 79491099, 79516320, 79541541, 79566763, 79591997, 79617237,
990 79642481, 79667725, 79692972, 79718228, 79743487, 79768750, 79794015, 79819280, 79844556, 79869835,
991 79895119, 79920403, 79945690, 79970985, 79996283, 80021585, 80046892, 80072199, 80097506, 80122821,
992 80148143, 80173471, 80198799, 80224127, 80249467, 80274811, 80300156, 80325504, 80350855, 80376214,
993 80401574, 80426940, 80452306, 80477674, 80503048, 80528428, 80553812, 80579197, 80604591, 80629985,
994 80655381, 80680783, 80706193, 80731604, 80757024, 80782446, 80807872, 80833302, 80858732, 80884172,
995 80909612, 80935058, 80960508, 80985959, 81011410, 81036863, 81062317, 81087788, 81113262, 81138739,
996 81164222, 81189708, 81215196, 81240684, 81266184, 81291688, 81317196, 81342707, 81368218, 81393735,
997 81419257, 81444781, 81470312, 81495844, 81521383, 81546924, 81572470, 81598020, 81623570, 81649122,
998 81674685, 81700249, 81725816, 81751391, 81776968, 81802548, 81828134, 81853724, 81879320, 81904916,
999 81930514, 81956113, 81981712, 82007318, 82032931, 82058551, 82084174, 82109803, 82135433, 82161065,
1000 82186705, 82212353, 82238002, 82263651, 82289310, 82314969, 82340634, 82366306, 82391979, 82417658,
1001 82443341, 82469028, 82494718, 82520409, 82546100, 82571791, 82597487, 82623194, 82648907, 82674621,
1002 82700340, 82726063, 82751788, 82777518, 82803256, 82828998, 82854740, 82880492, 82906245, 82932002,
1003 82957759, 82983522, 83009292, 83035065, 83060844, 83086625, 83112409, 83138194, 83163986, 83189785,
1004 83215588, 83241395, 83267204, 83293017, 83318833, 83344649, 83370465, 83396296, 83422130, 83447965,
1005 83473808, 83499652, 83525499, 83551349, 83577205, 83603068, 83628933, 83654801, 83680672, 83706548,
1006 83732426, 83758312, 83784203, 83810094, 83835985, 83861883, 83887789, 83913699, 83939611, 83965527,
1007 83991443, 84017363, 84043288, 84069222, 84095161, 84121100, 84147047, 84172998, 84198949, 84224905,
1008 84250861, 84276818, 84302788, 84328764, 84354740, 84380721, 84406703, 84432685, 84458674, 84484674,
1009 84510674, 84536680, 84562687, 84588698, 84614712, 84640734, 84666759, 84692786, 84718818, 84744850,
1010 84770892, 84796938, 84822984, 84849034, 84875090, 84901152, 84927214, 84953277, 84979349, 85005428,
1011 85031510, 85057596, 85083685, 85109776, 85135874, 85161973, 85188072, 85214179, 85240287, 85266400,
1012 85292521, 85318644, 85344771, 85370902, 85397035, 85423170, 85449315, 85475466, 85501622, 85527780,
1013 85553942, 85580104, 85606270, 85632444, 85658621, 85684799, 85710984, 85737169, 85763355, 85789552,
1014 85815751, 85841952, 85868164, 85894376, 85920589, 85946803, 85973019, 85999244, 86025479, 86051716,
1015 86077959, 86104206, 86130454, 86156708, 86182967, 86209231, 86235495, 86261766, 86288039, 86314316,
1016 86340594, 86366872, 86393156, 86419440, 86445728, 86472016, 86498319, 86524626, 86550938, 86577253,
1017 86603574, 86629896, 86656225, 86682557, 86708891, 86735231, 86761576, 86787922, 86814277, 86840632,
1018 86866989, 86893350, 86919711, 86946076, 86972445, 86998817, 87025197, 87051589, 87077981, 87104377,
1019 87130774, 87157174, 87183577, 87209980, 87236398, 87262821, 87289249, 87315681, 87342115, 87368554,
1020 87394993, 87421436, 87447887, 87474340, 87500795, 87527258, 87553726, 87580194, 87606670, 87633148,
1021 87659629, 87686113, 87712600, 87739088, 87765577, 87792075, 87818578, 87845087, 87871603, 87898119,
1022 87924635, 87951151, 87977671, 88004200, 88030730, 88057261, 88083795, 88110338, 88136890, 88163442,
1023 88189994, 88216546, 88243103, 88269667, 88296245, 88322825, 88349412, 88376003, 88402594, 88429191,
1024 88455790, 88482395, 88509000, 88535615, 88562232, 88588853, 88615475, 88642106, 88668740, 88695377,
1025 88722015, 88748657, 88775299, 88801949, 88828606, 88855268, 88881931, 88908596, 88935269, 88961944,
1026 88988628, 89015312, 89041996, 89068687, 89095378, 89122069, 89148760, 89175457, 89202154, 89228854,
1027 89255557, 89282264, 89308990, 89335719, 89362450, 89389185, 89415922, 89442672, 89469426, 89496184,
1028 89522947, 89549713, 89576479, 89603246, 89630026, 89656809, 89683593, 89710378, 89737174, 89763971,
1029 89790768, 89817565, 89844365, 89871169, 89897973, 89924787, 89951610, 89978441, 90005275, 90032111,
1030 90058950, 90085797, 90112648, 90139503, 90166360, 90193223, 90220086, 90246957, 90273832, 90300710,
1031 90327592, 90354476, 90381366, 90408260, 90435156, 90462055, 90488959, 90515870, 90542782, 90569702,
1032 90596625, 90623551, 90650480, 90677415, 90704353, 90731295, 90758242, 90785191, 90812142, 90839095,
1033 90866050, 90893009, 90919968, 90946934, 90973911, 91000891, 91027875, 91054861, 91081848, 91108845,
1034 91135842, 91162842, 91189847, 91216860, 91243875, 91270898, 91297921, 91324946, 91351981, 91379017,
1035 91406054, 91433100, 91460146, 91487194, 91514251, 91541312, 91568378, 91595450, 91622524, 91649600,
1036 91676678, 91703756, 91730839, 91757930, 91785023, 91812118, 91839213, 91866316, 91893419, 91920534,
1037 91947651, 91974769, 92001901, 92029035, 92056174, 92083315, 92110458, 92137605, 92164755, 92191915,
1038 92219076, 92246240, 92273411, 92300583, 92327763, 92354945, 92382128, 92409316, 92436507, 92463705,
1039 92490904, 92518107, 92545316, 92572528, 92599745, 92626966, 92654189, 92681420, 92708653, 92735887,
1040 92763124, 92790370, 92817618, 92844872, 92872126, 92899387, 92926652, 92953918, 92981184, 93008464,
1041 93035746, 93063030, 93090319, 93117613, 93144907, 93172209, 93199512, 93226821, 93254132, 93281452,
1042 93308774, 93336100, 93363427, 93390756, 93418087, 93445429, 93472772, 93500122, 93527472, 93554831,
1043 93582192, 93609553, 93636923, 93664297, 93691675, 93719057, 93746442, 93773830, 93801226, 93828624,
1044 93856022, 93883430, 93910840, 93938251, 93965666, 93993089, 94020513, 94047937, 94075364, 94102794,
1045 94130231, 94157673, 94185122, 94212571, 94240024, 94267484, 94294947, 94322418, 94349894, 94377373,
1046 94404855, 94432337, 94459824, 94487318, 94514816, 94542315, 94569815, 94597316, 94624819, 94652324,
1047 94679832, 94707359, 94734888, 94762421, 94789960, 94817501, 94845046, 94872596, 94900152, 94927710,
1048 94955272, 94982838, 95010405, 95037978, 95065556, 95093140, 95120727, 95148316, 95175905, 95203501,
1049 95231103, 95258709, 95286317, 95313931, 95341548, 95369169, 95396795, 95424423, 95452051, 95479684,
1050 95507321, 95534968, 95562618, 95590271, 95617930, 95645590, 95673251, 95700920, 95728589, 95756269,
1051 95783951, 95811638, 95839326, 95867014, 95894704, 95922408, 95950113, 95977823, 96005536, 96033253,
1052 96060975, 96088703, 96116431, 96144160, 96171897, 96199634, 96227375, 96255123, 96282877, 96310633,
1053 96338393, 96366157, 96393921, 96421696, 96449471, 96477249, 96505036, 96532827, 96560623, 96588423,
1054 96616225, 96644028, 96671840, 96699653, 96727470, 96755287, 96783112, 96810941, 96838776, 96866614,
1055 96894455, 96922302, 96950152, 96978004, 97005860, 97033724, 97061589, 97089461, 97117333, 97145212,
1056 97173091, 97200976, 97228863, 97256756, 97284654, 97312555, 97340460, 97368367, 97396277, 97424189,
1057 97452101, 97480013, 97507930, 97535863, 97563796, 97591730, 97619670, 97647620, 97675572, 97703526,
1058 97731483, 97759450, 97787422, 97815398, 97843374, 97871350, 97899330, 97927319, 97955308, 97983300,
1059 98011298, 98039300, 98067308, 98095320, 98123334, 98151354, 98179379, 98207411, 98235446, 98263482,
1060 98291525, 98319573, 98347622, 98375671, 98403725, 98431783, 98459843, 98487905, 98515979, 98544053,
1061 98572134, 98600217, 98628309, 98656403, 98684498, 98712595, 98740694, 98768796, 98796900, 98825014,
1062 98853130, 98881253, 98909385, 98937518, 98965654, 98993790, 99021933, 99050077, 99078229, 99106387,
1063 99134551, 99162716, 99190882, 99219049, 99247224, 99275404, 99303585, 99331767, 99359959, 99388156,
1064 99416356, 99444561, 99472768, 99500979, 99529194, 99557411, 99585638, 99613868, 99642098, 99670330,
1065 99698568, 99726811, 99755058, 99783312, 99811567, 99839825, 99868086, 99896350, 99924622, 99952900,
1066 99981180, 100009467, 100037754, 100066049, 100094348, 100122651, 100150959, 100179268, 100207583, 100235901,
1067 100264220, 100292546, 100320872, 100349200, 100377531, 100405870, 100434216, 100462562, 100490913, 100519271,
1068 100547632, 100575998, 100604364, 100632737, 100661116, 100689498, 100717883, 100746271, 100774663, 100803056,
1069 100831459, 100859866, 100888277, 100916688, 100945107, 100973529, 101001952, 101030378, 101058807, 101087237,
1070 101115668, 101144114, 101172560, 101201008, 101229467, 101257929, 101286392, 101314857, 101343330, 101371807,
1071 101400287, 101428774, 101457265, 101485760, 101514260, 101542760, 101571264, 101599771, 101628285, 101656804,
1072 101685325, 101713850, 101742377, 101770907, 101799440, 101827976, 101856520, 101885064, 101913608, 101942164,
1073 101970728, 101999292, 102027863, 102056434, 102085012, 102113594, 102142176, 102170759, 102199352, 102227948,
1074 102256547, 102285154, 102313762, 102342377, 102370995, 102399613, 102428232, 102456863, 102485497, 102514137,
1075 102542781, 102571429, 102600079, 102628735, 102657395, 102686056, 102714717, 102743386, 102772059, 102800737,
1076 102829415, 102858097, 102886786, 102915479, 102944173, 102972867, 103001570, 103030278, 103058989, 103087704,
1077 103116428, 103145153, 103173882, 103202613, 103231350, 103260089, 103288828, 103317577, 103346330, 103375083,
1078 103403838, 103432598, 103461358, 103490123, 103518891, 103547669, 103576449, 103605239, 103634032, 103662828,
1079 103691631, 103720434, 103749243, 103778055, 103806870, 103835689, 103864514, 103893340, 103922174, 103951009,
1080 103979853, 104008697, 104037545, 104066399, 104095256, 104124116, 104152976, 104181844, 104210720, 104239597,
1081 104268474, 104297359, 104326249, 104355140, 104384037, 104412937, 104441843, 104470750, 104499665, 104528584,
1082 104557507, 104586435, 104615363, 104644298, 104673234, 104702177, 104731125, 104760077, 104789029, 104817985,
1083 104846943, 104875908, 104904875, 104933846, 104962823, 104991803, 105020783, 105049775, 105078768, 105107761,
1084 105136756, 105165760, 105194771, 105223786, 105252803, 105281820, 105310839, 105339860, 105368893, 105397932,
1085 105426973, 105456018, 105485068, 105514118, 105543172, 105572229, 105601287, 105630351, 105659424, 105688500,
1086 105717583, 105746666, 105775756, 105804849, 105833947, 105863047, 105892150, 105921256, 105950364, 105979474,
1087 106008594, 106037715, 106066845, 106095981, 106125118, 106154262, 106183406, 106212550, 106241695, 106270841,
1088 106299989, 106329147, 106358313, 106387486, 106416664, 106445842, 106475029, 106504216, 106533404, 106562597,
1089 106591794, 106620998, 106650204, 106679413, 106708628, 106737844, 106767064, 106796284, 106825519, 106854757,
1090 106883995, 106913239, 106942486, 106971733, 107000981, 107030235, 107059502, 107088769, 107118041, 107147320,
1091 107176600, 107205883, 107235172, 107264466, 107293764, 107323063, 107352362, 107381669, 107410982, 107440296,
1092 107469619, 107498946, 107528277, 107557612, 107586951, 107616293, 107645637, 107674984, 107704339, 107733699,
1093 107763062, 107792427, 107821797, 107851171, 107880549, 107909931, 107939316, 107968707, 107998101, 108027497,
1094 108056899, 108086303, 108115715, 108145129, 108174547, 108203970, 108233394, 108262826, 108292258, 108321691,
1095 108351130, 108380574, 108410022, 108439477, 108468935, 108498398, 108527861, 108557332, 108586806, 108616282,
1096 108645758, 108675240, 108704722, 108734213, 108763704, 108793205, 108822712, 108852223, 108881739, 108911259,
1097 108940781, 108970306, 108999835, 109029369, 109058905, 109088446, 109117990, 109147538, 109177086, 109206641,
1098 109236199, 109265759, 109295322, 109324894, 109354472, 109384051, 109413636, 109443223, 109472818, 109502414,
1099 109532015, 109561619, 109591223, 109620832, 109650448, 109680067, 109709686, 109739317, 109768952, 109798589,
1100 109828226, 109857863, 109887507, 109917156, 109946806, 109976461, 110006126, 110035797, 110065470, 110095146,
1101 110124826, 110154512, 110184201, 110213891, 110243582, 110273276, 110302972, 110332681, 110362394, 110392107,
1102 110421823, 110451545, 110481277, 110511009, 110540741, 110570479, 110600222, 110629971, 110659725, 110689481,
1103 110719243, 110749005, 110778774, 110808546, 110838321, 110868100, 110897888, 110927680, 110957475, 110987273,
1104 111017076, 111046880, 111076684, 111106488, 111136292, 111166097, 111195914, 111225742, 111255570, 111285400,
1105 111315237, 111345083, 111374930, 111404781, 111434637, 111464497, 111494361, 111524230, 111554102, 111583980,
1106 111613859, 111643745, 111673635, 111703525, 111733419, 111763321, 111793226, 111823135, 111853047, 111882965,
1107 111912887, 111942812, 111972740, 112002672, 112032610, 112062552, 112092499, 112122449, 112152401, 112182356,
1108 112212313, 112242276, 112272248, 112302220, 112332194, 112362171, 112392158, 112422145, 112452133, 112482125,
1109 112512125, 112542132, 112572142, 112602156, 112632170, 112662186, 112692211, 112722242, 112752276, 112782315,
1110 112812354, 112842399, 112872445, 112902500, 112932558, 112962620, 112992685, 113022754, 113052825, 113082905,
1111 113112986, 113143074, 113173162, 113203253, 113233348, 113263452, 113293558, 113323667, 113353779, 113383897,
1112 113414017, 113444137, 113474264, 113504392, 113534521, 113564661, 113594808, 113624957, 113655109, 113685262,
1113 113715422, 113745583, 113775751, 113805925, 113836101, 113866283, 113896469, 113926657, 113956846, 113987041,
1114 114017241, 114047448, 114077656, 114107871, 114138087, 114168303, 114198529, 114228756, 114258984, 114289216,
1115 114319457, 114349699, 114379941, 114410186, 114440434, 114470682, 114500939, 114531201, 114561465, 114591740,
1116 114622021, 114652303, 114682590, 114712879, 114743169, 114773459, 114803755, 114834051, 114864349, 114894649,
1117 114924951, 114955268, 114985596, 115015930, 115046267, 115076606, 115106954, 115137303, 115167657, 115198017,
1118 115228380, 115258748, 115289119, 115319490, 115349868, 115380247, 115410628, 115441020, 115471414, 115501809,
1119 115532211, 115562616, 115593021, 115623430, 115653848, 115684267, 115714690, 115745114, 115775539, 115805976,
1120 115836418, 115866861, 115897307, 115927761, 115958218, 115988675, 116019142, 116049611, 116080085, 116110565,
1121 116141046, 116171528, 116202015, 116232503, 116262999, 116293499, 116324005, 116354517, 116385031, 116415549,
1122 116446072, 116476599, 116507127, 116537655, 116568191, 116598730, 116629269, 116659808, 116690351, 116720896,
1123 116751446, 116782005, 116812566, 116843137, 116873715, 116904296, 116934881, 116965472, 116996066, 117026660,
1124 117057258, 117087866, 117118474, 117149088, 117179705, 117210326, 117240954, 117271585, 117302219, 117332859,
1125 117363502, 117394145, 117424794, 117455447, 117486105, 117516766, 117547430, 117578100, 117608774, 117639448,
1126 117670130, 117700818, 117731507, 117762202, 117792898, 117823594, 117854296, 117885004, 117915712, 117946432,
1127 117977155, 118007879, 118038605, 118069337, 118100072, 118130809, 118161547, 118192294, 118223044, 118253803,
1128 118284564, 118315331, 118346100, 118376869, 118407644, 118438423, 118469208, 118499997, 118530790, 118561590,
1129 118592394, 118623198, 118654007, 118684821, 118715636, 118746460, 118777288, 118808119, 118838950, 118869784,
1130 118900627, 118931474, 118962322, 118993172, 119024025, 119054881, 119085744, 119116611, 119147486, 119178362,
1131 119209243, 119240124, 119271006, 119301889, 119332776, 119363669, 119394564, 119425470, 119456380, 119487296,
1132 119518213, 119549137, 119580069, 119611001, 119641934, 119672869, 119703805, 119734752, 119765708, 119796667,
1133 119827627, 119858591, 119889556, 119920530, 119951506, 119982489, 120013476, 120044466, 120075460, 120106458,
1134 120137456, 120168460, 120199464, 120230476, 120261495, 120292515, 120323542, 120354572, 120385603, 120416636,
1135 120447672, 120478718, 120509768, 120540821, 120571875, 120602934, 120633998, 120665067, 120696142, 120727217,
1136 120758299, 120789382, 120820471, 120851561, 120882660, 120913760, 120944862, 120975969, 121007083, 121038200,
1137 121069323, 121100448, 121131576, 121162710, 121193845, 121224983, 121256123, 121287267, 121318420, 121349573,
1138 121380726, 121411893, 121443063, 121474233, 121505405, 121536580, 121567758, 121598941, 121630134, 121661328,
1139 121692529, 121723731, 121754933, 121786143, 121817353, 121848573, 121879799, 121911025, 121942256, 121973487,
1140 122004718, 122035965, 122067214, 122098466, 122129719, 122160979, 122192239, 122223502, 122254771, 122286040,
1141 122317313, 122348599, 122379888, 122411179, 122442473, 122473773, 122505073, 122536379, 122567689, 122598999,
1142 122630322, 122661646, 122692973, 122724308, 122755648, 122786991, 122818334, 122849684, 122881039, 122912395,
1143 122943755, 122975122, 123006491, 123037862, 123069237, 123100614, 123131998, 123163383, 123194769, 123226162,
1144 123257566, 123288971, 123320376, 123351783, 123383191, 123414600, 123446021, 123477449, 123508878, 123540314,
1145 123571754, 123603196, 123634645, 123666099, 123697555, 123729018, 123760482, 123791950, 123823419, 123854888,
1146 123886361, 123917838, 123949324, 123980815, 124012306, 124043807, 124075314, 124106823, 124138337, 124169852,
1147 124201368, 124232885, 124264416, 124295950, 124327486, 124359022, 124390567, 124422117, 124453669, 124485224,
1148 124516784, 124548349, 124579916, 124611484, 124643060, 124674642, 124706230, 124737819, 124769408, 124801004,
1149 124832608, 124864215, 124895823, 124927434, 124959051, 124990673, 125022296, 125053926, 125085557, 125117195,
1150 125148833, 125180471, 125212114, 125243763, 125275422, 125307082, 125338746, 125370413, 125402089, 125433765,
1151 125465449, 125497136, 125528823, 125560516, 125592209, 125623906, 125655614, 125687324, 125719037, 125750755,
1152 125782474, 125814198, 125845926, 125877655, 125909391, 125941131, 125972875, 126004619, 126036373, 126068131,
1153 126099893, 126131659, 126163428, 126195202, 126226979, 126258760, 126290545, 126322336, 126354132, 126385928,
1154 126417728, 126449528, 126481329, 126513130, 126544943, 126576766, 126608591, 126640421, 126672254, 126704089,
1155 126735931, 126767777, 126799625, 126831478, 126863338, 126895201, 126927067, 126958934, 126990808, 127022686,
1156 127054570, 127086457, 127118344, 127150236, 127182134, 127214033, 127245932, 127277839, 127309752, 127341666,
1157 127373581, 127405499, 127437430, 127469364, 127501302, 127533246, 127565192, 127597139, 127629094, 127661050,
1158 127693013, 127724978, 127756946, 127788915, 127820891, 127852875, 127884862, 127916853, 127948847, 127980844,
1159 128012845, 128044848, 128076856, 128108864, 128140878, 128172896, 128204919, 128236949, 128268984, 128301023,
1160 128333063, 128365104, 128397148, 128429204, 128461263, 128493322, 128525387, 128557457, 128589529, 128621603,
1161 128653686, 128685774, 128717863, 128749956, 128782055, 128814156, 128846261, 128878366, 128910474, 128942592,
1162 128974710, 129006831, 129038953, 129071077, 129103216, 129135356, 129167503, 129199650, 129231804, 129263959,
1163 129296117, 129328278, 129360442, 129392616, 129424790, 129456966, 129489148, 129521333, 129553528, 129585726,
1164 129617925, 129650127, 129682334, 129714541, 129746752, 129778964, 129811186, 129843415, 129875646, 129907886,
1165 129940129, 129972372, 130004620, 130036873, 130069126, 130101381, 130133639, 130165906, 130198181, 130230457,
1166 130262740, 130295025, 130327312, 130359604, 130391901, 130424204, 130456510, 130488821, 130521134, 130553453,
1167 130585774, 130618097, 130650422, 130682757, 130715095, 130747433, 130779777, 130812126, 130844481, 130876837,
1168 130909194, 130941560, 130973930, 131006303, 131038678, 131071060, 131103445, 131135835, 131168230, 131200627,
1169 131233031, 131265436, 131297842, 131330258, 131362678, 131395099, 131427526, 131459954, 131492385, 131524817,
1170 131557255, 131589695, 131622137, 131654589, 131687044, 131719499, 131751956, 131784416, 131816884, 131849357,
1171 131881837, 131914317, 131946798, 131979283, 132011779, 132044275, 132076774, 132109282, 132141798, 132174318,
1172 132206842, 132239368, 132271900, 132304435, 132336971, 132369509, 132402047, 132434594, 132467143, 132499699,
1173 132532255, 132564819, 132597384, 132629952, 132662522, 132695097, 132727674, 132760264, 132792857, 132825454,
1174 132858058, 132890664, 132923274, 132955885, 132988504, 133021127, 133053754, 133086384, 133119018, 133151656,
1175 133184299, 133216944, 133249592, 133282244, 133314903, 133347564, 133380226, 133412897, 133445573, 133478250,
1176 133510927, 133543612, 133576300, 133608990, 133641689, 133674392, 133707095, 133739805, 133772516, 133805231,
1177 133837948, 133870673, 133903400, 133936135, 133968875, 134001618, 134034362, 134067111, 134099861, 134132615,
1178 134165369, 134198130, 134230899, 134263674, 134296449, 134329224, 134362008, 134394796, 134427591, 134460387,
1179 134493191, 134525995, 134558799, 134591615, 134624432, 134657252, 134690075, 134722899, 134755723, 134788559,
1180 134821395, 134854241, 134887091, 134919942, 134952796, 134985657, 135018522, 135051390, 135084258, 135117137,
1181 135150019, 135182906, 135215796, 135248691, 135281589, 135314490, 135347393, 135380301, 135413209, 135446125,
1182 135479049, 135511976, 135544904, 135577834, 135610766, 135643706, 135676653, 135709602, 135742553, 135775508,
1183 135808468, 135841430, 135874396, 135907366, 135940339, 135973317, 136006300, 136039286, 136072278, 136105274,
1184 136138270, 136171276, 136204287, 136237301, 136270321, 136303341, 136336367, 136369398, 136402429, 136435462,
1185 136468506, 136501553, 136534603, 136567655, 136600713, 136633772, 136666834, 136699898, 136732964, 136766038,
1186 136799119, 136832207, 136865299, 136898392, 136931489, 136964592, 136997700, 137030810, 137063924, 137097042,
1187 137130166, 137163292, 137196422, 137229557, 137262692, 137295835, 137328980, 137362131, 137395285, 137428440,
1188 137461595, 137494751, 137527908, 137561077, 137594255, 137627437, 137660623, 137693815, 137727010, 137760209,
1189 137793412, 137826616, 137859824, 137893036, 137926249, 137959471, 137992698, 138025927, 138059157, 138092392,
1190 138125632, 138158878, 138192127, 138225376, 138258635, 138291896, 138325161, 138358428, 138391703, 138424983,
1191 138458263, 138491549, 138524836, 138558125, 138591417, 138624720, 138658023, 138691335, 138724648, 138757964,
1192 138791285, 138824608, 138857935, 138891271, 138924611, 138957951, 138991297, 139024648, 139058002, 139091360,
1193 139124722, 139158085, 139191455, 139224828, 139258205, 139291588, 139324972, 139358357, 139391746, 139425146,
1194 139458547, 139491950, 139525361, 139558774, 139592190, 139625611, 139659034, 139692462, 139725893, 139759333,
1195 139792773, 139826215, 139859658, 139893109, 139926565, 139960026, 139993490, 140026954, 140060424, 140093903,
1196 140127386, 140160872, 140194361, 140227851, 140261342, 140294837, 140328336, 140361848, 140395363, 140428878,
1197 140462396, 140495918, 140529446, 140562982, 140596520, 140630060, 140663603, 140697146, 140730696, 140764248,
1198 140797804, 140831366, 140864934, 140898504, 140932081, 140965662, 140999245, 141032832, 141066426, 141100022,
1199 141133622, 141167228, 141200834, 141234440, 141268054, 141301674, 141335298, 141368928, 141402562, 141436196,
1200 141469835, 141503475, 141537127, 141570781, 141604440, 141638101, 141671765, 141705431, 141739097, 141772767,
1201 141806445, 141840132, 141873823, 141907519, 141941218, 141974922, 142008627, 142042334, 142076049, 142109765,
1202 142143486, 142177209, 142210939, 142244675, 142278412, 142312153, 142345899, 142379650, 142413401, 142447155,
1203 142480918, 142514685, 142548456, 142582228, 142616001, 142649776, 142683559, 142717350, 142751145, 142784942,
1204 142818744, 142852547, 142886358, 142920172, 142953991, 142987815, 143021641, 143055467, 143089294, 143123123,
1205 143156953, 143190791, 143224635, 143258489, 143292344, 143326206, 143360074, 143393943, 143427815, 143461687,
1206 143495561, 143529443, 143563329, 143597215, 143631106, 143665005, 143698905, 143732806, 143766716, 143800626,
1207 143834550, 143868477, 143902408, 143936342, 143970279, 144004219, 144038162, 144072110, 144106063, 144140020,
1208 144173981, 144207947, 144241917, 144275891, 144309867, 144343845, 144377829, 144411817, 144445806, 144479806,
1209 144513808, 144547811, 144581818, 144615829, 144649848, 144683868, 144717889, 144751913, 144785947, 144819986,
1210 144854027, 144888070, 144922113, 144956165, 144990218, 145024273, 145058334, 145092403, 145126476, 145160553,
1211 145194636, 145228719, 145262808, 145296898, 145330990, 145365082, 145399177, 145433284, 145467399, 145501519,
1212 145535639, 145569764, 145603894, 145638027, 145672160, 145706298, 145740440, 145774589, 145808743, 145842897,
1213 145877057, 145911218, 145945381, 145979547, 146013723, 146047906, 146082091, 146116281, 146150472, 146184672,
1214 146218872, 146253079, 146287287, 146321500, 146355713, 146389934, 146424161, 146458389, 146492622, 146526860,
1215 146561102, 146595345, 146629593, 146663845, 146698098, 146732358, 146766624, 146800891, 146835164, 146869439,
1216 146903720, 146938005, 146972290, 147006583, 147040878, 147075181, 147109486, 147143794, 147178108, 147212424,
1217 147246745, 147281072, 147315403, 147349737, 147384076, 147418417, 147452762, 147487114, 147521466, 147555824,
1218 147590185, 147624548, 147658918, 147693289, 147727667, 147762049, 147796433, 147830819, 147865214, 147899612,
1219 147934010, 147968409, 148002820, 148037235, 148071650, 148106066, 148140484, 148174905, 148209327, 148243753,
1220 148278183, 148312622, 148347066, 148381516, 148415966, 148450418, 148484884, 148519354, 148553828, 148588306,
1221 148622788, 148657275, 148691764, 148726258, 148760756, 148795256, 148829757, 148864267, 148898781, 148933296,
1222 148967816, 149002343, 149036870, 149071404, 149105943, 149140483, 149175023, 149209563, 149244108, 149278663,
1223 149313223, 149347784, 149382345, 149416917, 149451492, 149486071, 149520659, 149555247, 149589837, 149624433,
1224 149659035, 149693642, 149728249, 149762865, 149797481, 149832098, 149866725, 149901355, 149935988, 149970624,
1225 150005261, 150039898, 150074543, 150109197, 150143853, 150178516, 150213183, 150247855, 150282527, 150317201,
1226 150351884, 150386567, 150421254, 150455949, 150490649, 150525350, 150560058, 150594768, 150629483, 150664200,
1227 150698923, 150733647, 150768372, 150803105, 150837839, 150872577, 150907316, 150942067, 150976822, 151011578,
1228 151046335, 151081098, 151115863, 151150632, 151185406, 151220186, 151254972, 151289759, 151324552, 151359347,
1229 151394150, 151428955, 151463760, 151498574, 151533390, 151568212, 151603034, 151637859, 151672692, 151707526,
1230 151742368, 151777215, 151812065, 151846915, 151881769, 151916628, 151951490, 151986358, 152021233, 152056110,
1231 152090988, 152125868, 152160750, 152195636, 152230527, 152265426, 152300326, 152335233, 152370143, 152405061,
1232 152439985, 152474911, 152509838, 152544767, 152579699, 152614639, 152649580, 152684531, 152719482, 152754437,
1233 152789396, 152824362, 152859334, 152894309, 152929288, 152964269, 152999254, 153034242, 153069231, 153104224,
1234 153139223, 153174231, 153209240, 153244253, 153279272, 153314292, 153349316, 153384346, 153419376, 153454410,
1235 153489451, 153524494, 153559545, 153594598, 153629652, 153664712, 153699780, 153734848, 153769917, 153804995,
1236 153840078, 153875161, 153910252, 153945345, 153980444, 154015546, 154050649, 154085754, 154120866, 154155978,
1237 154191095, 154226222, 154261352, 154296487, 154331625, 154366768, 154401911, 154437054, 154472199, 154507351,
1238 154542513, 154577676, 154612847, 154648018, 154683196, 154718374, 154753560, 154788746, 154823942, 154859138,
1239 154894335, 154929537, 154964743, 154999952, 155035165, 155070383, 155105610, 155140837, 155176072, 155211307,
1240 155246546, 155281787, 155317034, 155352281, 155387533, 155422794, 155458057, 155493323, 155528592, 155563866,
1241 155599143, 155634429, 155669719, 155705014, 155740313, 155775613, 155810918, 155846224, 155881539, 155916855,
1242 155952177, 155987502, 156022827, 156058163, 156093502, 156128846, 156164194, 156199545, 156234899, 156270259,
1243 156305622, 156340987, 156376357, 156411732, 156447107, 156482490, 156517877, 156553265, 156588656, 156624051,
1244 156659453, 156694855, 156730264, 156765679, 156801095, 156836517, 156871943, 156907372, 156942808, 156978244,
1245 157013686, 157049132, 157084580, 157120035, 157155495, 157190955, 157226421, 157261890, 157297363, 157332841,
1246 157368319, 157403803, 157439290, 157474784, 157510278, 157545776, 157581283, 157616790, 157652302, 157687818,
1247 157723335, 157758860, 157794392, 157829924, 157865463, 157901002, 157936541, 157972081, 158007623, 158043169,
1248 158078720, 158114282, 158149848, 158185421, 158220998, 158256575, 158292159, 158327747, 158363342, 158398938,
1249 158434535, 158470132, 158505736, 158541346, 158576960, 158612579, 158648198, 158683818, 158719452, 158755091,
1250 158790735, 158826380, 158862031, 158897686, 158933343, 158969005, 159004673, 159040344, 159076019, 159111698,
1251 159147378, 159183063, 159218753, 159254446, 159290146, 159325849, 159361552, 159397262, 159432973, 159468693,
1252 159504413, 159540139, 159575866, 159611596, 159647335, 159683076, 159718822, 159754574, 159790328, 159826087,
1253 159861850, 159897614, 159933382, 159969154, 160004929, 160040708, 160076495, 160112286, 160148078, 160183872,
1254 160219673, 160255477, 160291282, 160327089, 160362897, 160398705, 160434517, 160470329, 160506143, 160541974,
1255 160577815, 160613657, 160649500, 160685354, 160721210, 160757068, 160792926, 160828792, 160864661, 160900541,
1256 160936422, 160972309, 161008196, 161044086, 161079985, 161115889, 161151794, 161187703, 161223615, 161259530,
1257 161295451, 161331376, 161367303, 161403232, 161439165, 161475104, 161511045, 161546989, 161582940, 161618897,
1258 161654856, 161690815, 161726783, 161762751, 161798729, 161834707, 161870688, 161906674, 161942662, 161978659,
1259 162014659, 162050662, 162086668, 162122676, 162158696, 162194718, 162230745, 162266772, 162302802, 162338840,
1260 162374882, 162410924, 162446969, 162483021, 162519080, 162555140, 162591202, 162627272, 162663347, 162699424,
1261 162735504, 162771584, 162807667, 162843754, 162879849, 162915952, 162952060, 162988169, 163024283, 163060398,
1262 163096519, 163132644, 163168772, 163204903, 163241042, 163277186, 163313333, 163349482, 163385633, 163421791,
1263 163457949, 163494109, 163530280, 163566453, 163602628, 163638805, 163674990, 163711182, 163747377, 163783575,
1264 163819776, 163855981, 163892189, 163928403, 163964623, 164000844, 164037065, 164073293, 164109524, 164145764,
1265 164182004, 164218244, 164254486, 164290739, 164326999, 164363263, 164399530, 164435801, 164472073, 164508351,
1266 164544634, 164580920, 164617207, 164653498, 164689798, 164726098, 164762398, 164798705, 164835012, 164871320,
1267 164907641, 164943966, 164980292, 165016625, 165052961, 165089297, 165125635, 165161981, 165198336, 165234694,
1268 165271057, 165307420, 165343788, 165380156, 165416531, 165452909, 165489289, 165525680, 165562073, 165598470,
1269 165634871, 165671278, 165707685, 165744099, 165780517, 165816940, 165853366, 165889795, 165926225, 165962660,
1270 165999103, 166035550, 166071998, 166108446, 166144894, 166181349, 166217814, 166254281, 166290755, 166327233,
1271 166363714, 166400199, 166436689, 166473182, 166509678, 166546181, 166582686, 166619193, 166655700, 166692207,
1272 166728724, 166765252, 166801780, 166838311, 166874846, 166911384, 166947924, 166984468, 167021021, 167057578,
1273 167094137, 167130699, 167167265, 167203836, 167240414, 167276996, 167313579, 167350163, 167386757, 167423351,
1274 167459947, 167496552, 167533163, 167569777, 167606393, 167643017, 167679641, 167716270, 167752900, 167789534,
1275 167826177, 167862825, 167899473, 167936121, 167972773, 168009434, 168046096, 168082763, 168119436, 168156114,
1276 168192792, 168229478, 168266165, 168302858, 168339558, 168376262, 168412967, 168449673, 168486381, 168523093,
1277 168559816, 168596543, 168633271, 168670004, 168706744, 168743487, 168780232, 168816981, 168853731, 168890488,
1278 168927247, 168964008, 169000770, 169037537, 169074312, 169111089, 169147876, 169184666, 169221456, 169258251,
1279 169295050, 169331854, 169368659, 169405465, 169442279, 169479098, 169515920, 169552751, 169589583, 169626417,
1280 169663258, 169700102, 169736948, 169773804, 169810660, 169847520, 169884387, 169921257, 169958132, 169995010,
1281 170031893, 170068777, 170105663, 170142555, 170179453, 170216354, 170253255, 170290164, 170327076, 170363995,
1282 170400914, 170437841, 170474768, 170511696, 170548624, 170585567, 170622514, 170659465, 170696420, 170733378,
1283 170770338, 170807300, 170844267, 170881241, 170918218, 170955199, 170992186, 171029177, 171066171, 171103169,
1284 171140172, 171177180, 171214189, 171251203, 171288219, 171325239, 171362259, 171399280, 171436314, 171473350,
1285 171510387, 171547427, 171584471, 171621521, 171658576, 171695638, 171732702, 171769767, 171806834, 171843910,
1286 171880989, 171918074, 171955164, 171992255, 172029353, 172066454, 172103555, 172140660, 172177772, 172214889,
1287 172252007, 172289134, 172326264, 172363394, 172400533, 172437672, 172474818, 172511969, 172549124, 172586283,
1288 172623443, 172660611, 172697782, 172734955, 172772133, 172809315, 172846501, 172883688, 172920879, 172958077,
1289 172995279, 173032484, 173069695, 173106908, 173144126, 173181348, 173218574, 173255805, 173293038, 173330276,
1290 173367516, 173404762, 173442012, 173479268, 173516526, 173553785, 173591047, 173628315, 173665589, 173702863,
1291 173740142, 173777424, 173814714, 173852007, 173889304, 173926605, 173963908, 174001211, 174038518, 174075835,
1292 174113153, 174150480, 174187808, 174225138, 174262476, 174299814, 174337156, 174374503, 174411853, 174449212,
1293 174486575, 174523941, 174561309, 174598681, 174636055, 174673435, 174710819, 174748204, 174785594, 174822984,
1294 174860384, 174897789, 174935196, 174972608, 175010025, 175047443, 175084863, 175122293, 175159726, 175197160,
1295 175234597, 175272043, 175309492, 175346943, 175384396, 175421858, 175459321, 175496790, 175534259, 175571729,
1296 175609203, 175646683, 175684169, 175721661, 175759157, 175796659, 175834165, 175871672, 175909182, 175946697,
1297 175984213, 176021730, 176059256, 176096791, 176134328, 176171869, 176209411, 176246958, 176284505, 176322062,
1298 176359624, 176397191, 176434758, 176472330, 176509908, 176547489, 176585071, 176622661, 176660251, 176697849,
1299 176735452, 176773059, 176810667, 176848281, 176885897, 176923521, 176961145, 176998775, 177036410, 177074048,
1300 177111687, 177149334, 177186986, 177224639, 177262298, 177299959, 177337626, 177375293, 177412965, 177450640,
1301 177488321, 177526005, 177563693, 177601381, 177639070, 177676764, 177714459, 177752165, 177789874, 177827584,
1302 177865298, 177903018, 177940740, 177978465, 178016191, 178053931, 178091674, 178129421, 178167168, 178204928,
1303 178242688, 178280450, 178318221, 178355992, 178393768, 178431550, 178469333, 178507124, 178544915, 178582706,
1304 178620500, 178658295, 178696090, 178733901, 178771719, 178809539, 178847363, 178885190, 178923021, 178960861,
1305 178998701, 179036542, 179074389, 179112243, 179150100, 179187960, 179225825, 179263696, 179301571, 179339447,
1306 179377327, 179415210, 179453094, 179490986, 179528885, 179566787, 179604693, 179642602, 179680518, 179718436,
1307 179756359, 179794284, 179832213, 179870149, 179908088, 179946028, 179983975, 180021926, 180059880, 180097839,
1308 180135798, 180173763, 180211735, 180249711, 180287687, 180325665, 180363651, 180401638, 180439626, 180477620,
1309 180515614, 180553618, 180591623, 180629634, 180667646, 180705667, 180743688, 180781715, 180819747, 180857785,
1310 180895825, 180933871, 180971921, 181009971, 181048024, 181086081, 181124142, 181162207, 181200275, 181238349,
1311 181276429, 181314510, 181352598, 181390686, 181428774, 181466867, 181504967, 181543078, 181581192, 181619311,
1312 181657433, 181695557, 181733683, 181771815, 181809955, 181848095, 181886236, 181924377, 181962519, 182000661,
1313 182038806, 182076972, 182115139, 182153309, 182191480, 182229658, 182267843, 182306031, 182344219, 182382418,
1314 182420620, 182458824, 182497034, 182535245, 182573457, 182611670, 182649891, 182688115, 182726349, 182764587,
1315 182802825, 182841069, 182879314, 182917561, 182955808, 182994069, 183032333, 183070605, 183108879, 183147156,
1316 183185440, 183223726, 183262014, 183300305, 183338597, 183376896, 183415202, 183453513, 183491826, 183530140,
1317 183568463, 183606790, 183645122, 183683457, 183721795, 183760136, 183798479, 183836830, 183875185, 183913543,
1318 183951904, 183990265, 184028635, 184067007, 184105387, 184143769, 184182157, 184220546, 184258935, 184297326,
1319 184335717, 184374110, 184412512, 184450919, 184489337, 184527757, 184566184, 184604611, 184643042, 184681477,
1320 184719914, 184758357, 184796809, 184835262, 184873718, 184912176, 184950637, 184989101, 185027575, 185066052,
1321 185104535, 185143018, 185181502, 185219992, 185258487, 185296986, 185335492, 185374002, 185412517, 185451034,
1322 185489551, 185528073, 185566597, 185605122, 185643648, 185682189, 185720732, 185759278, 185797833, 185836389,
1323 185874949, 185913515, 185952086, 185990658, 186029236, 186067818, 186106403, 186144994, 186183588, 186222185,
1324 186260788, 186299391, 186337995, 186376602, 186415215, 186453832, 186492452, 186531074, 186569701, 186608333,
1325 186646970, 186685609, 186724257, 186762905, 186801563, 186840224, 186878892, 186917562, 186956237, 186994914,
1326 187033596, 187072278, 187110968, 187149658, 187188348, 187227043, 187265744, 187304454, 187343167, 187381882,
1327 187420602, 187459329, 187498056, 187536785, 187575516, 187614259, 187653005, 187691754, 187730508, 187769268,
1328 187808031, 187846794, 187885560, 187924332, 187963107, 188001883, 188040669, 188079456, 188118249, 188157049,
1329 188195850, 188234656, 188273465, 188312279, 188351098, 188389920, 188428747, 188467578, 188506411, 188545249,
1330 188584091, 188622934, 188661782, 188700630, 188739484, 188778338, 188817200, 188856063, 188894932, 188933811,
1331 188972695, 189011582, 189050469, 189089356, 189128254, 189167157, 189206061, 189244965, 189283877, 189322790,
1332 189361710, 189400631, 189439555, 189478483, 189517411, 189556342, 189595277, 189634221, 189673173, 189712126,
1333 189751085, 189790049, 189829017, 189867992, 189906970, 189945948, 189984926, 190023911, 190062904, 190101897,
1334 190140900, 190179903, 190218907, 190257913, 190296925, 190335945, 190374967, 190413991, 190453020, 190492054,
1335 190531097, 190570140, 190609190, 190648240, 190687293, 190726350, 190765414, 190804481, 190843550, 190882630,
1336 190921714, 190960799, 190999891, 191038983, 191078078, 191117173, 191156269, 191195372, 191234485, 191273600,
1337 191312715, 191351832, 191390949, 191430077, 191469211, 191508353, 191547496, 191586643, 191625793, 191664946,
1338 191704108, 191743273, 191782440, 191821607, 191860784, 191899962, 191939147, 191978337, 192017529, 192056728,
1339 192095928, 192135131, 192174341, 192213553, 192252766, 192291986, 192331211, 192370438, 192409667, 192448903,
1340 192488144, 192527387, 192566638, 192605889, 192645145, 192684409, 192723673, 192762944, 192802216, 192841492,
1341 192880769, 192920050, 192959339, 192998630, 193037922, 193077218, 193116520, 193155824, 193195137, 193234451,
1342 193273772, 193313093, 193352418, 193391745, 193431081, 193470419, 193509757, 193549098, 193588442, 193627794,
1343 193667147, 193706513, 193745881, 193785253, 193824628, 193864005, 193903387, 193942778, 193982173, 194021570,
1344 194060968, 194100366, 194139767, 194179176, 194218594, 194258017, 194297441, 194336872, 194376308, 194415744,
1345 194455184, 194494629, 194534079, 194573534, 194612993, 194652457, 194691922, 194731393, 194770864, 194810336,
1346 194849816, 194889296, 194928782, 194968274, 195007766, 195047267, 195086773, 195126282, 195165795, 195205309,
1347 195244827, 195284354, 195323882, 195363417, 195402955, 195442494, 195482034, 195521584, 195561136, 195600692,
1348 195640256, 195679823, 195719394, 195758965, 195798545, 195838126, 195877713, 195917303, 195956899, 195996495,
1349 196036095, 196075703, 196115314, 196154926, 196194539, 196234154, 196273773, 196313402, 196353031, 196392662,
1350 196432293, 196471935, 196511579, 196551231, 196590889, 196630551, 196670213, 196709884, 196749555, 196789231,
1351 196828913, 196868596, 196908283, 196947973, 196987664, 197027366, 197067069, 197106780, 197146491, 197186203,
1352 197225927, 197265655, 197305385, 197345121, 197384859, 197424601, 197464344, 197504091, 197543847, 197583604,
1353 197623364, 197663126, 197702894, 197742667, 197782446, 197822229, 197862015, 197901803, 197941599, 197981398,
1354 198021199, 198061007, 198100816, 198140629, 198180448, 198220268, 198260095, 198299926, 198339761, 198379599,
1355 198419441, 198459286, 198499137, 198538992, 198578849, 198618710, 198658571, 198698436, 198738312, 198778189,
1356 198818072, 198857956, 198897843, 198937733, 198977626, 199017522, 199057418, 199097329, 199137241, 199177159,
1357 199217078, 199256998, 199296922, 199336853, 199376785, 199416724, 199456663, 199496605, 199536553, 199576504,
1358 199616468, 199656436, 199696406, 199736378, 199776358, 199816341, 199856328, 199896316, 199936309, 199976308,
1359 200016307
1360};
1361public OnPluginStart()
1362{
1363 CreateConVar("Call of Duty", "1.0", "Linux`");
1364 //RegAdminCmd("sm_exp", CmdExp, ADMFLAG_RCON);
1365 //RegAdminCmd("sm_lvl", CmdLvl, ADMFLAG_RCON);
1366 //RegAdminCmd("sm_item", CmdItem, ADMFLAG_RCON);
1367
1368 RegConsoleCmd("say", Komendy);
1369 RegConsoleCmd("say_team", Komendy);
1370
1371 RegConsoleCmd("buy", BlokujKomende);
1372 RegConsoleCmd("buyequip", BlokujKomende);
1373 RegConsoleCmd("buyammo1", BlokujKomende);
1374 RegConsoleCmd("buyammo2", BlokujKomende);
1375 RegConsoleCmd("cl_setautobuy", BlokujKomende);
1376 RegConsoleCmd("cl_autobuy", BlokujKomende);
1377 RegConsoleCmd("rebuy", BlokujKomende);
1378 RegConsoleCmd("autobuy", BlokujKomende);
1379 RegConsoleCmd("fullupdate", BlokujKomende);
1380 RegConsoleCmd("autobuy", CodMenu);
1381
1382 HookEvent("round_freeze_end", PoczatekRundy);
1383 HookEvent("round_start", NowaRunda);
1384 HookEvent("round_end", KoniecRundy);
1385
1386 HookEvent("bomb_planted", BombaPodlozona);
1387 HookEvent("bomb_defused", BombaRozbrojona);
1388 HookEvent("hostage_rescued", ZakladnikUratowany);
1389
1390 HookEvent("player_spawn", PlayerSpawn);
1391 HookEvent("player_death", PlayerDeath);
1392 HookEvent("player_blind", PlayerBlind);
1393 HookEvent("hegrenade_detonate", HeDetonate);
1394 HookEvent("flashbang_detonate", FbDetonate);
1395
1396 HookUserMessage(GetUserMessageId("TextMsg"), TextMessage, true);
1397 LoadTranslations("common.phrases");
1398 DataBaseConnect();
1399}
1400public OnMapStart()
1401{
1402 for(new i = 1; i < sizeof dzwieki_serwera; i ++)
1403 {
1404 new String:sound_serwer[512];
1405 Format(sound_serwer, sizeof(sound_serwer), "sound/%s", dzwieki_serwera[i]);
1406 AddFileToDownloadsTable(sound_serwer);
1407 }
1408 for(new i = 1; i < sizeof modele_serwera; i ++)
1409 PrecacheModel(modele_serwera[i]);
1410
1411 sprite_laser = PrecacheModel("materials/sprites/laserbeam.vmt");
1412 sprite_halo = PrecacheModel("materials/sprites/halo.vmt");
1413 sprite_blue = PrecacheModel("materials/sprites/blueflare1.vmt");
1414}
1415public OnClientPutInServer(client)
1416{
1417 GetClientName(client, nazwa_gracza[client], 64);
1418 for(new i = 1; i < sizeof nazwy_klas; i ++)
1419 {
1420 poziom_klasy_gracza[client][i] = 1;
1421 doswiadczenie_klasy_gracza[client][i] = 0;
1422 inteligencja_klasy_gracza[client][i] = 0;
1423 zdrowie_klasy_gracza[client][i] = 0;
1424 obrazenia_klasy_gracza[client][i] = 0;
1425 wytrzymalosc_klasy_gracza[client][i] = 0;
1426 kondycja_klasy_gracza[client][i] = 0;
1427 }
1428
1429 polaczony_raz[client] = 0;
1430 zapisz_dane[client] = 0;
1431 nowa_klasa_gracza[client] = 0;
1432 klasa_gracza[client] = 0;
1433 doswiadczenie_gracza[client] = 0
1434 poziom_gracza[client] = 1;
1435 punkty_gracza[client] = 0;
1436 inteligencja_gracza[client] = 0;
1437 zdrowie_gracza[client] = 0;
1438 obrazenia_gracza[client] = 0;
1439 wytrzymalosc_gracza[client] = 0;
1440 kondycja_gracza[client] = 0;
1441 bonusowa_inteligencja_gracza[client] = 0;
1442 bonusowe_zdrowie_gracza[client] = 0;
1443 bonusowe_obrazenia_gracza[client] = 0;
1444 bonusowa_wytrzymalosc_gracza[client] = 0;
1445 bonusowa_kondycja_gracza[client] = 0;
1446 vip_gracza[client] = 0;
1447
1448 ilosc_apteczek_gracza[client] = 0;
1449 SDKHook(client, SDKHook_TraceAttack, TraceAttack);
1450 SDKHook(client, SDKHook_OnTakeDamage, TakeDamage);
1451 SDKHook(client, SDKHook_PreThink, Prethink);
1452 SDKHook(client, SDKHook_WeaponCanUse, WeaponCanUse);
1453}
1454public OnClientDisconnect(client)
1455{
1456 SDKUnhook(client, SDKHook_TraceAttack, TraceAttack);
1457 SDKUnhook(client, SDKHook_OnTakeDamage, TakeDamage);
1458 SDKUnhook(client, SDKHook_PreThink, Prethink);
1459 SDKUnhook(client, SDKHook_WeaponCanUse, WeaponCanUse);
1460
1461 UsunItem(client);
1462 ZapiszDane(client);
1463}
1464public Action:Komendy(client, args)
1465{
1466 new String:text[192];
1467 GetCmdArg(1, text, sizeof(text));
1468
1469 new ReplySource:old = SetCmdReplySource(SM_REPLY_TO_CHAT);
1470 if(strcmp(text, "/m", false) == 0 || strcmp(text, "/menu", false) == 0)
1471 CodMenu(client, args);
1472 else if(strcmp(text, "/s", false) == 0 || strcmp(text, "/sklep", false) == 0)
1473 CodSklep(client);
1474 else if(strcmp(text, "/skille", false) == 0 || strcmp(text, "/opis", false) == 0 || strcmp(text, "/xp", false) == 0 || strcmp(text, "/doswiadczenie", false) == 0 || strcmp(text, "/dostep", false) == 0)
1475 OpisStatystyk(client);
1476 else if(strcmp(text, "/k", false) == 0 || strcmp(text, "/klasa", false) == 0)
1477 WybierzKlase(client);
1478 else if(strcmp(text, "/klasy", false) == 0)
1479 OpisKlasy(client);
1480 else if(strcmp(text, "/items", false) == 0 || strcmp(text, "/itemy", false) == 0 || strcmp(text, "/przedmioty", false) == 0 || strcmp(text, "/perki", false) == 0)
1481 OpisItemow(client);
1482 else if(strcmp(text, "/i", false) == 0 || strcmp(text, "/item", false) == 0 || strcmp(text, "/p", false) == 0 || strcmp(text, "/przedmiot", false) == 0 || strcmp(text, "/perk", false) == 0)
1483 OpisItemu(client);
1484 else if(strcmp(text, "/n", false) == 0 || strcmp(text, "/napraw", false) == 0)
1485 NaprawItem(client);
1486 else if(strcmp(text, "/staty", false) == 0 || strcmp(text, "/statystyki", false) == 0)
1487 PrzydzielPunkty(client);
1488 else if(strcmp(text, "/r", false) == 0 || strcmp(text, "/reset", false) == 0)
1489 ResetujPunkty(client);
1490 else if(strcmp(text, "/d", false) == 0 || strcmp(text, "/drop", false) == 0 || strcmp(text, "/wyrzuc", false) == 0)
1491 WyrzucItem(client);
1492 else if(strcmp(text, "/spect", false) == 0 || strcmp(text, "/spec", false) == 0)
1493 ZmienDruzyne(client);
1494
1495 SetCmdReplySource(old);
1496 return Plugin_Continue;
1497}
1498public Action:BlokujKomende(client, args)
1499{
1500 return Plugin_Handled;
1501}
1502public Action:TextMessage(UserMsg:msg_text, Handle:pb, const players[], playersNum, bool:reliable, bool:init)
1503{
1504 if(!reliable || PbReadInt(pb, "msg_dst") != 3)
1505 return Plugin_Continue;
1506
1507 new String:buffer[256];
1508 PbReadString(pb, "params", buffer, sizeof(buffer), 0);
1509 if(StrContains(buffer, "#Player_Cash_Award_") == 0 || StrContains(buffer, "#Team_Cash_Award_") == 0)
1510 return Plugin_Handled;
1511
1512 return Plugin_Continue;
1513}
1514public Action:TraceAttack(victim, &attacker, &inflictor, &Float:damage, &damagetype, &ammotype, hitbox, hitgroup)
1515{
1516 if(!IsValidClient(victim) || !IsValidClient(attacker))
1517 return Plugin_Continue;
1518
1519 if(GetClientTeam(victim) == GetClientTeam(attacker))
1520 return Plugin_Continue;
1521
1522 if(klasa_gracza[attacker])
1523 DodajDoswiadczenie(attacker, RoundFloat(damage));
1524
1525 if(hitgroup == 1)
1526 headshot[victim] = 1;
1527 else
1528 headshot[victim] = 0;
1529
1530 if(hitgroup == 3)
1531 tulow[victim] = 1;
1532 else
1533 tulow[victim] = 0;
1534
1535 return Plugin_Continue;
1536}
1537public Action:TakeDamage(victim, &attacker, &inflictor, &Float:damage, &damagetype)
1538{
1539 if(!IsValidClient(victim))
1540 return Plugin_Continue;
1541
1542 if(informacje_itemu_gracza[victim][0] == 13 && damagetype & DMG_FALL)
1543 return Plugin_Handled;
1544
1545 if(IsValidClient(attacker) && GetClientTeam(victim) != GetClientTeam(attacker))
1546 {
1547 new dmg = 0;
1548 new zabicie = 0;
1549 new odpornosc = 0;
1550
1551 new String:weapon[32];
1552 GetClientWeapon(attacker, weapon, sizeof(weapon));
1553 switch(klasa_gracza[attacker])
1554 {
1555 case Snajper:
1556 {
1557 if(klasa_gracza[victim] != Obronca && informacje_itemu_gracza[victim][0] != 30)
1558 {
1559 if(StrEqual(weapon, nazwy_broni[28]) && damagetype & DMG_BULLET)
1560 dmg += maksymalna_inteligencja_gracza[attacker];
1561 }
1562 }
1563 case Komandos:
1564 {
1565 if(klasa_gracza[victim] != Obronca && informacje_itemu_gracza[victim][0] != 30)
1566 {
1567 if(StrEqual(weapon, nazwy_broni[40]) && damagetype & DMG_SLASH && GetClientButtons(attacker) & IN_ATTACK2)
1568 dmg += 50+maksymalna_inteligencja_gracza[attacker];
1569 }
1570 }
1571 case DGLMaster:
1572 {
1573 if(klasa_gracza[victim] != Obronca && informacje_itemu_gracza[victim][0] != 30)
1574 {
1575 if(StrEqual(weapon, nazwy_broni[7]) && damagetype & DMG_BULLET)
1576 dmg += maksymalna_inteligencja_gracza[attacker];
1577 }
1578 }
1579 case Scouter:
1580 {
1581 if(klasa_gracza[victim] != Obronca && informacje_itemu_gracza[victim][0] != 30)
1582 {
1583 if(GetRandomInt(1, 3) == 1 && StrEqual(weapon, nazwy_broni[27]) && damagetype & DMG_BULLET)
1584 {
1585 dmg += GetClientHealth(victim)+1;
1586 zabicie = 1;
1587 }
1588 }
1589 }
1590 case Rambo:
1591 {
1592 if(klasa_gracza[victim] != Obronca && informacje_itemu_gracza[victim][0] != 30)
1593 {
1594 if(StrEqual(weapon, nazwy_broni[40]) && damagetype & DMG_SLASH)
1595 {
1596 dmg += GetClientHealth(victim)+1;
1597 zabicie = 1;
1598 }
1599
1600 SetEntData(attacker, FindDataMapOffs(attacker, "m_iHealth"), (GetClientHealth(attacker)+RoundFloat(damage*0.5) > maksymalne_zdrowie_gracza[attacker])? maksymalne_zdrowie_gracza[attacker]: GetClientHealth(attacker)+RoundFloat(damage*0.5));
1601 }
1602 }
1603 }
1604 switch(klasa_gracza[victim])
1605 {
1606 case Mauser:
1607 {
1608 if(klasa_gracza[attacker] != Obronca && informacje_itemu_gracza[attacker][0] != 30)
1609 {
1610 if(tulow[victim])
1611 odpornosc = 1;
1612 }
1613 }
1614 }
1615 switch(informacje_itemu_gracza[attacker][0])
1616 {
1617 case 6:
1618 {
1619 if(informacje_itemu_gracza[victim][0] != 29)
1620 SetEntData(attacker, FindDataMapOffs(attacker, "m_iHealth"), (GetClientHealth(attacker)+RoundFloat(damage*0.3) > maksymalne_zdrowie_gracza[attacker])? maksymalne_zdrowie_gracza[attacker]: GetClientHealth(attacker)+RoundFloat(damage*0.3));
1621 }
1622 case 15:
1623 {
1624 if(informacje_itemu_gracza[victim][0] != 29)
1625 dmg += 10;
1626 }
1627 case 16:
1628 {
1629 if(informacje_itemu_gracza[victim][0] != 29)
1630 dmg += 20;
1631 }
1632 case 17:
1633 {
1634 if(informacje_itemu_gracza[victim][0] != 29)
1635 {
1636 if(StrEqual(weapon, nazwy_broni[40]) && damagetype & DMG_SLASH)
1637 dmg += 40;
1638 }
1639 }
1640 case 18:
1641 {
1642 if(informacje_itemu_gracza[victim][0] != 29)
1643 {
1644 if(StrEqual(weapon, nazwy_broni[40]) && damagetype & DMG_SLASH)
1645 {
1646 dmg += GetClientHealth(victim)+1;
1647 zabicie = 1;
1648 }
1649 }
1650 }
1651 case 23:
1652 {
1653 if(informacje_itemu_gracza[victim][0] != 29)
1654 {
1655 if(tulow[victim])
1656 dmg += RoundFloat(damage*0.4);
1657 }
1658 }
1659 case 24:
1660 {
1661 if(informacje_itemu_gracza[victim][0] != 29)
1662 {
1663 if((StrEqual(weapon, nazwy_broni[1]) || StrEqual(weapon, nazwy_broni[2]) || StrEqual(weapon, nazwy_broni[3]) || StrEqual(weapon, nazwy_broni[4]) || StrEqual(weapon, nazwy_broni[5]) || StrEqual(weapon, nazwy_broni[6]) || StrEqual(weapon, nazwy_broni[7]) || StrEqual(weapon, nazwy_broni[8]) || StrEqual(weapon, nazwy_broni[9])) && damagetype & DMG_BULLET)
1664 dmg += RoundFloat(damage*0.4);
1665 }
1666 }
1667 case 27:
1668 {
1669 if(informacje_itemu_gracza[victim][0] != 29)
1670 {
1671 if(GetRandomInt(1, informacje_itemu_gracza[attacker][1]) == 1)
1672 ClientCommand(victim, "drop");
1673 }
1674 }
1675 case 28:
1676 {
1677 if(informacje_itemu_gracza[victim][0] != 29)
1678 {
1679 if(GetRandomInt(1, informacje_itemu_gracza[attacker][1]) == 1)
1680 IgniteEntity(victim, 3.0);
1681 }
1682 }
1683 case 33:
1684 {
1685 if(informacje_itemu_gracza[victim][0] != 29)
1686 dmg += informacje_itemu_gracza[attacker][1];
1687 }
1688 case 42:
1689 {
1690 if(informacje_itemu_gracza[victim][0] != 29)
1691 {
1692 if(GetRandomInt(1, informacje_itemu_gracza[attacker][1]) == 1)
1693 {
1694 dmg += GetClientHealth(victim)+1;
1695 zabicie = 1;
1696 }
1697 }
1698 }
1699 case 46:
1700 {
1701 if(informacje_itemu_gracza[victim][0] != 29)
1702 {
1703 if(headshot[victim])
1704 {
1705 dmg += GetClientHealth(victim)+1;
1706 zabicie = 1;
1707 }
1708 }
1709 }
1710 case 47:
1711 {
1712 if(informacje_itemu_gracza[victim][0] != 29)
1713 dmg += informacje_itemu_gracza[attacker][1];
1714 }
1715 case 48:
1716 {
1717 if(informacje_itemu_gracza[victim][0] != 29)
1718 {
1719 if(GetRandomInt(1, informacje_itemu_gracza[attacker][1]) == 1)
1720 dmg += RoundFloat(damage*0.4);
1721 }
1722 }
1723 case 49:
1724 {
1725 if(informacje_itemu_gracza[victim][0] != 29)
1726 {
1727 if(GetRandomInt(1, informacje_itemu_gracza[attacker][1]) == 1)
1728 SetEntData(GetEntPropEnt(victim, Prop_Send, "m_hActiveWeapon"), FindSendPropOffs("CWeaponCSBase", "m_iClip1"), 0);
1729 }
1730 }
1731 }
1732 switch(informacje_itemu_gracza[victim][0])
1733 {
1734 case 14:
1735 {
1736 if(informacje_itemu_gracza[attacker][0] != 29)
1737 {
1738 if(informacje_itemu_gracza[victim][1])
1739 {
1740 informacje_itemu_gracza[victim][1] --;
1741 odpornosc = 1;
1742 }
1743 }
1744 }
1745 case 20:
1746 {
1747 if(informacje_itemu_gracza[attacker][0] != 29)
1748 {
1749 if(headshot[victim])
1750 odpornosc = 1;
1751 }
1752 }
1753 case 21:
1754 {
1755 if(informacje_itemu_gracza[attacker][0] != 29)
1756 {
1757 if(GetRandomInt(1, informacje_itemu_gracza[victim][1]) == 1)
1758 {
1759 SDKHooks_TakeDamage(attacker, victim, victim, damage, DMG_GENERIC);
1760 odpornosc = 1;
1761 }
1762 }
1763 }
1764 }
1765 if(odpornosc)
1766 {
1767 if(damagetype & (DMG_BULLET | DMG_SLASH))
1768 return Plugin_Handled;
1769 }
1770 else
1771 {
1772 if(zabicie)
1773 damage = RoundFloat(damage+dmg)*(1.0+maksymalne_obrazenia_gracza[attacker]);
1774 else
1775 damage = RoundFloat(damage+dmg)*(1.0+maksymalne_obrazenia_gracza[attacker]-maksymalna_wytrzymalosc_gracza[victim]);
1776
1777 return Plugin_Changed;
1778 }
1779 }
1780
1781 return Plugin_Continue;
1782}
1783public Action:Prethink(client)
1784{
1785 if(!IsValidClient(client) || IsFakeClient(client) || freeze_time)
1786 return Plugin_Continue;
1787
1788 if(IsPlayerAlive(client))
1789 {
1790 new buttons = GetClientButtons(client);
1791 new ile = poziom_gracza[client]-1 >= 0? doswiadczenie_poziomu[poziom_gracza[client]-1]: 0;
1792 new Float:procent_gracza = 0.0;
1793 procent_gracza = (float(doswiadczenie_gracza[client]-ile)/float(doswiadczenie_poziomu[poziom_gracza[client]]-ile))*100.0;
1794 PrintHintText(client, "[Klasa: <b>%s</b>]\n[Xp: <b>%0.1f</b>/<b>100.0%%</b> | Lv: <b>%i</b>]\n[Item: <b>%s</b> [<b>%i%%</b>]]", nazwy_klas[klasa_gracza[client]], procent_gracza, poziom_gracza[client], nazwy_itemow[informacje_itemu_gracza[client][0]], moc_itemu[client]);
1795
1796 new String:weapon[32];
1797 GetClientWeapon(client, weapon, sizeof(weapon));
1798 switch(klasa_gracza[client])
1799 {
1800 case Medyk:
1801 {
1802 if(!oldbuttons1[client] && buttons & IN_USE)
1803 {
1804 if(ilosc_apteczek_gracza[client])
1805 {
1806 new Float:fOrigin[3];
1807 new Float:iOrigin[3];
1808 GetClientEyePosition(client, Float:fOrigin);
1809 for(new i = 1; i <= MaxClients; i++)
1810 {
1811 if(!IsClientInGame(i) || !IsPlayerAlive(i))
1812 continue;
1813
1814 if(GetClientTeam(client) != GetClientTeam(i))
1815 continue;
1816
1817 GetClientEyePosition(i, Float:iOrigin);
1818 if(GetVectorDistance(fOrigin, iOrigin) <= 200.0)
1819 {
1820 new heal = 40+maksymalna_inteligencja_gracza[client];
1821 SetEntData(i, FindDataMapOffs(i, "m_iHealth"), GetClientHealth(i)+heal<maksymalne_zdrowie_gracza[i]? GetClientHealth(i)+heal: maksymalne_zdrowie_gracza[i]);
1822 }
1823 }
1824
1825 TE_SetupBeamRingPoint(fOrigin, 20.0, 200.0, sprite_laser, sprite_halo, 0, 10, 0.6, 6.0, 0.0, {255, 255, 255, 128}, 10, 0);
1826 TE_SendToAll();
1827 ilosc_apteczek_gracza[client]--;
1828 }
1829 else
1830 PrintToChat(client, "[COD:MW] Wykorzystales juz moc swojej klasy w tej rundzie!");
1831
1832 oldbuttons1[client] = 1;
1833 }
1834 else if(oldbuttons1[client] && !(buttons & IN_USE))
1835 oldbuttons1[client] = 0;
1836 }
1837 case Kangur:
1838 {
1839 if(!oldbuttons2[client] && buttons & IN_JUMP)
1840 {
1841 if(GetGameTime() >= czas_skokow_gracza[client]+1.0)
1842 {
1843 new Float:fOrigin[3];
1844 fOrigin[0] = GetEntDataFloat(client, FindSendPropOffs("CBasePlayer","m_vecVelocity[0]"))*0.8/2.0;
1845 fOrigin[1] = GetEntDataFloat(client, FindSendPropOffs("CBasePlayer","m_vecVelocity[1]"))*0.8/2.0;
1846 fOrigin[2] = 0.8*50.0;
1847 SetEntDataVector(client, FindSendPropOffs("CBasePlayer","m_vecBaseVelocity"), fOrigin, true);
1848 oldbuttons2[client] = 1;
1849 czas_skokow_gracza[client] = RoundFloat(GetGameTime());
1850 }
1851 }
1852 else if(oldbuttons2[client] && !(buttons & IN_JUMP))
1853 oldbuttons2[client] = 0;
1854 }
1855 case Szturmen:
1856 {
1857 if(!oldbuttons2[client] && buttons & IN_JUMP)
1858 {
1859 new flags = GetEntityFlags(client);
1860 if(!(flags & FL_ONGROUND) && skoki_gracza[client])
1861 {
1862 new Float:fOrigin[3];
1863 GetEntPropVector(client, Prop_Data, "m_vecVelocity", fOrigin);
1864 fOrigin[2] += 250.0;
1865 TeleportEntity(client, NULL_VECTOR, NULL_VECTOR, fOrigin);
1866 skoki_gracza[client] = 0;
1867 }
1868 else if(flags & FL_ONGROUND)
1869 skoki_gracza[client] = 1;
1870
1871 oldbuttons2[client] = 1;
1872 }
1873 else if(oldbuttons2[client] && !(buttons & IN_JUMP))
1874 oldbuttons2[client] = 0;
1875 }
1876 }
1877 switch(informacje_itemu_gracza[client][0])
1878 {
1879 case 3:
1880 {
1881 if(GetGameTime() >= informacje_itemu_gracza[client][1]+5.0)
1882 {
1883 SetEntData(client, FindDataMapOffs(client, "m_iHealth"), GetClientHealth(client)+10<maksymalne_zdrowie_gracza[client]? GetClientHealth(client)+10: maksymalne_zdrowie_gracza[client]);
1884 informacje_itemu_gracza[client][1] = RoundFloat(GetGameTime());
1885 }
1886 }
1887 case 4:
1888 {
1889 if(!oldbuttons1[client] && buttons & IN_USE)
1890 {
1891 if(informacje_itemu_gracza[client][1])
1892 {
1893 SetEntData(client, FindDataMapOffs(client, "m_iHealth"), maksymalne_zdrowie_gracza[client]);
1894 informacje_itemu_gracza[client][1] --;
1895 }
1896 else
1897 PrintToChat(client, "[COD:MW] Wykorzystales juz moc swojego itemu w tej rundzie!");
1898
1899 oldbuttons1[client] = 1;
1900 }
1901 else if(oldbuttons1[client] && !(buttons & IN_USE))
1902 oldbuttons1[client] = 0;
1903 }
1904 case 13:
1905 {
1906 if(!oldbuttons1[client] && buttons & IN_USE)
1907 {
1908 if(GetEntProp(client, Prop_Send, "m_bNightVisionOn"))
1909 SetEntProp(client, Prop_Send, "m_bNightVisionOn", 0);
1910 else
1911 SetEntProp(client, Prop_Send, "m_bNightVisionOn", 1);
1912
1913 oldbuttons1[client] = 1;
1914 }
1915 else if(oldbuttons1[client] && !(buttons & IN_USE))
1916 oldbuttons1[client] = 0;
1917 }
1918 case 19:
1919 {
1920 if(!oldbuttons2[client] && buttons & IN_JUMP)
1921 {
1922 new flags = GetEntityFlags(client);
1923 if(!(flags & FL_ONGROUND) && informacje_itemu_gracza[client][1])
1924 {
1925 new Float:fOrigin[3];
1926 GetEntPropVector(client, Prop_Data, "m_vecVelocity", fOrigin);
1927 fOrigin[2] += 250.0;
1928 TeleportEntity(client, NULL_VECTOR, NULL_VECTOR, fOrigin);
1929 informacje_itemu_gracza[client][1] --;
1930 }
1931 else if(flags & FL_ONGROUND)
1932 informacje_itemu_gracza[client][1] = 1;
1933
1934 oldbuttons2[client] = 1;
1935 }
1936 else if(oldbuttons2[client] && !(buttons & IN_JUMP))
1937 oldbuttons2[client] = 0;
1938 }
1939 case 22:
1940 {
1941 if(!oldbuttons1[client] && buttons & IN_USE)
1942 {
1943 if(GetGameTime() >= informacje_itemu_gracza[client][1]+4.0)
1944 {
1945 new Float:velocity[3];
1946 new Float:velocity0;
1947 new Float:velocity1;
1948 velocity0 = GetEntPropFloat(client, Prop_Send, "m_vecVelocity[0]");
1949 velocity1 = GetEntPropFloat(client, Prop_Send, "m_vecVelocity[1]");
1950 velocity[0] = (7.0*velocity0)*(1.0/4.1);
1951 velocity[1] = (7.0*velocity1)*(1.0/4.1);
1952 velocity[2] = 0.0;
1953 SetEntPropVector(client, Prop_Send, "m_vecBaseVelocity", velocity);
1954 informacje_itemu_gracza[client][1] = RoundFloat(GetGameTime());
1955 }
1956
1957 oldbuttons1[client] = 1;
1958 }
1959 else if(oldbuttons1[client] && !(buttons & IN_USE))
1960 oldbuttons1[client] = 0;
1961 }
1962 case 25:
1963 {
1964 if(!oldbuttons2[client] && buttons & IN_ATTACK2)
1965 {
1966 if(!StrEqual(weapon, nazwy_broni[25]) && !StrEqual(weapon, nazwy_broni[26]) && !StrEqual(weapon, nazwy_broni[27]) && !StrEqual(weapon, nazwy_broni[28]) && !StrEqual(weapon, nazwy_broni[29]) && !StrEqual(weapon, nazwy_broni[30]) && !StrEqual(weapon, nazwy_broni[33]) && !StrEqual(weapon, nazwy_broni[34]) && !StrEqual(weapon, nazwy_broni[35]) && !StrEqual(weapon, nazwy_broni[36]) && !StrEqual(weapon, nazwy_broni[37]) && !StrEqual(weapon, nazwy_broni[38]) && !StrEqual(weapon, nazwy_broni[40]) && !StrEqual(weapon, nazwy_broni[41]))
1967 {
1968 if(informacje_itemu_gracza[client][1])
1969 {
1970 informacje_itemu_gracza[client][1] --;
1971 SetEntProp(client, Prop_Send, "m_iFOV", 270);
1972 }
1973 else
1974 {
1975 informacje_itemu_gracza[client][1] = 1;
1976 SetEntProp(client, Prop_Send, "m_iFOV", 90);
1977 }
1978 }
1979
1980 oldbuttons2[client] = 1;
1981 }
1982 else if(oldbuttons2[client] && !(buttons & IN_ATTACK2))
1983 oldbuttons2[client] = 0;
1984 }
1985 case 26:
1986 {
1987 if(GetGameTime() >= informacje_itemu_gracza[client][1]+20.0)
1988 {
1989 GivePlayerItem(client, nazwy_broni[34]);
1990 informacje_itemu_gracza[client][1] = RoundFloat(GetGameTime());
1991 }
1992 }
1993 case 31:
1994 {
1995 if(buttons & IN_ATTACK)
1996 SetEntData(GetEntPropEnt(client, Prop_Send, "m_hActiveWeapon"), FindSendPropOffs("CWeaponCSBase", "m_iRecoilIndex"), 0);
1997 }
1998 case 34:
1999 {
2000 if(!StrEqual(weapon, nazwy_broni[33]) && !StrEqual(weapon, nazwy_broni[34]) && !StrEqual(weapon, nazwy_broni[35]) && !StrEqual(weapon, nazwy_broni[36]) && !StrEqual(weapon, nazwy_broni[37]) && !StrEqual(weapon, nazwy_broni[38]) && !StrEqual(weapon, nazwy_broni[39]) && !StrEqual(weapon, nazwy_broni[41]))
2001 {
2002 if(buttons & IN_ATTACK)
2003 SetEntData(GetEntPropEnt(client, Prop_Send, "m_hActiveWeapon"), FindSendPropOffs("CWeaponCSBase", "m_iClip1"), 5);
2004 }
2005 }
2006 case 35:
2007 {
2008 if(!StrEqual(weapon, nazwy_broni[33]) && !StrEqual(weapon, nazwy_broni[34]) && !StrEqual(weapon, nazwy_broni[35]) && !StrEqual(weapon, nazwy_broni[36]) && !StrEqual(weapon, nazwy_broni[37]) && !StrEqual(weapon, nazwy_broni[38]) && !StrEqual(weapon, nazwy_broni[41]))
2009 {
2010 if(buttons & IN_ATTACK)
2011 {
2012 new Float:flNextPrimaryAttack = GetEntDataFloat(GetEntPropEnt(client, Prop_Send, "m_hActiveWeapon"), FindSendPropOffs("CBaseCombatWeapon", "m_flNextPrimaryAttack"))-GetGameTime();
2013 SetEntDataFloat(GetEntPropEnt(client, Prop_Send, "m_hActiveWeapon"), FindSendPropOffs("CBaseCombatWeapon", "m_flNextPrimaryAttack"), (flNextPrimaryAttack/1.4)+GetGameTime());
2014 }
2015 }
2016 }
2017 case 38:
2018 {
2019 if(!oldbuttons1[client] && buttons & IN_USE)
2020 {
2021 if(informacje_itemu_gracza[client][1])
2022 {
2023 new Float:fOrigin[3];
2024 new Float:iOrigin[3];
2025 GetClientEyePosition(client, Float:fOrigin);
2026 for(new i = 1; i <= MaxClients; i++)
2027 {
2028 if(!IsClientInGame(i) || !IsPlayerAlive(i))
2029 continue;
2030
2031 if(GetClientTeam(client) == GetClientTeam(i))
2032 continue;
2033
2034 if(informacje_itemu_gracza[i][0] == 29)
2035 continue;
2036
2037 GetClientEyePosition(i, Float:iOrigin);
2038 if(GetVectorDistance(fOrigin, iOrigin) <= 200.0)
2039 IgniteEntity(i, 15.0);
2040 }
2041
2042 TE_SetupBeamRingPoint(fOrigin, 20.0, 200.0, sprite_laser, sprite_halo, 0, 10, 0.6, 6.0, 0.0, {255, 255, 255, 128}, 10, 0);
2043 TE_SendToAll();
2044
2045 informacje_itemu_gracza[client][1] --;
2046 }
2047 else
2048 PrintToChat(client, "[COD:MW] Wykorzystales juz moc swojego itemu w tej rundzie!");
2049
2050 oldbuttons1[client] = 1;
2051 }
2052 else if(oldbuttons1[client] && !(buttons & IN_USE))
2053 oldbuttons1[client] = 0;
2054 }
2055 }
2056 }
2057 else
2058 {
2059 new spect = GetEntProp(client, Prop_Send, "m_iObserverMode");
2060 if(spect == 4 || spect == 5)
2061 {
2062 new target = GetEntPropEnt(client, Prop_Send, "m_hObserverTarget");
2063 if(!(target == -1) && IsValidClient(target))
2064 {
2065 new ile = poziom_gracza[target]-1 >= 0? doswiadczenie_poziomu[poziom_gracza[target]-1]: 0;
2066 new Float:procent_gracza = 0.0;
2067 procent_gracza = (float(doswiadczenie_gracza[target]-ile)/float(doswiadczenie_poziomu[poziom_gracza[target]]-ile))*100.0;
2068 PrintHintText(client, "[Klasa: <b>%s</b>]\n[Xp: <b>%0.1f</b>/<b>100.0%%</b> | Lv: <b>%i</b>]\n[Item: <b>%s</b> [<b>%i%%</b>]]</font>", nazwy_klas[klasa_gracza[target]], procent_gracza, poziom_gracza[target], nazwy_itemow[informacje_itemu_gracza[target][0]], moc_itemu[target]);
2069 }
2070 }
2071 }
2072
2073 return Plugin_Continue;
2074}
2075public Action:WeaponCanUse(client, bron)
2076{
2077 if(!IsValidClient(client) || IsFakeClient(client))
2078 return Plugin_Continue;
2079
2080 new String:weapon[32];
2081 GetEdictClassname(bron, weapon, sizeof(weapon));
2082 switch(informacje_itemu_gracza[client][0])
2083 {
2084 case 26:
2085 {
2086 if(StrEqual(weapon, nazwy_broni[34]))
2087 return Plugin_Continue;
2088 }
2089 case 32:
2090 {
2091 if(StrEqual(weapon, nazwy_broni[36]))
2092 return Plugin_Continue;
2093 }
2094 case 33:
2095 {
2096 if(StrEqual(weapon, nazwy_broni[36]))
2097 return Plugin_Continue;
2098 }
2099 case 36: SetEntityGravity(client, 0.5);
2100 case 43: return Plugin_Continue;
2101 }
2102 switch(klasa_gracza[client])
2103 {
2104 case Thief: return Plugin_Continue;
2105 case Terminator:
2106 {
2107 if(StrEqual(weapon, nazwy_broni[6]))
2108 return Plugin_Continue;
2109 }
2110 case Szturmen:
2111 {
2112 if(StrEqual(weapon, nazwy_broni[5]) || StrEqual(weapon, nazwy_broni[23]))
2113 return Plugin_Continue;
2114 }
2115 }
2116 if(StrEqual(weapon, nazwy_broni[40]) || StrEqual(weapon, nazwy_broni[41]))
2117 return Plugin_Continue;
2118
2119 if(!StrEqual(weapon, nazwy_broni[bronie_klas[klasa_gracza[client]][0]]) && !StrEqual(weapon, nazwy_broni[bronie_klas[klasa_gracza[client]][1]]) && !StrEqual(weapon, nazwy_broni[bronie_klas[klasa_gracza[client]][2]]) && !StrEqual(weapon, nazwy_broni[bronie_klas[klasa_gracza[client]][3]]) && !StrEqual(weapon, nazwy_broni[bronie_klas[klasa_gracza[client]][4]]))
2120 return Plugin_Handled;
2121
2122 return Plugin_Continue;
2123}
2124public Action:NowaRunda(Handle:event_newround, const String:name[],bool:dontBroadcast)
2125{
2126 freeze_time = 1;
2127}
2128public Action:PoczatekRundy(Handle:event_freezetime, const String:name[], bool:dontBroadcast)
2129{
2130 freeze_time = 0;
2131}
2132public Action:KoniecRundy(Handle:event_endround, const String:name[],bool:dontBroadcast)
2133{
2134 for(new i = 1; i <= MaxClients; i++)
2135 {
2136 if(!IsClientInGame(i) || !klasa_gracza[i])
2137 continue;
2138
2139 new doswiadczenie = 0;
2140 new druzyna = GetEventInt(event_endround, "winner");
2141 if(druzyna == 2 && GetClientTeam(i) == CS_TEAM_T || druzyna == 3 && GetClientTeam(i) == CS_TEAM_CT)
2142 {
2143 if(vip_gracza[i])
2144 doswiadczenie += xp_winround_vip;
2145 else
2146 doswiadczenie += xp_winround;
2147
2148 if(IsPlayerAlive(i))
2149 {
2150 PrintToChat(i, "[COD:MW] Dostales %i doswiadczenia za wygranie rundy.", doswiadczenie);
2151 DodajDoswiadczenie(i, doswiadczenie);
2152 }
2153 else
2154 {
2155 PrintToChat(i, "[COD:MW] Dostales %i doswiadczenia za wygranie rundy przez twoja druzyne.", doswiadczenie/2);
2156 DodajDoswiadczenie(i, doswiadczenie/2);
2157 }
2158 }
2159 }
2160}
2161public Action:BombaPodlozona(Handle:event_bomb_planted, const String:name[], bool:dontBroadcast)
2162{
2163 new client = GetClientOfUserId(GetEventInt(event_bomb_planted, "userid"));
2164 if(StrEqual(name, "bomb_planted"))
2165 {
2166 for(new i = 1; i <= MaxClients; i++)
2167 {
2168 if(!IsClientInGame(i) || !klasa_gracza[i])
2169 continue;
2170
2171 if(GetClientTeam(i) != CS_TEAM_T)
2172 continue;
2173
2174 new doswiadczenie = 0;
2175 if(vip_gracza[i])
2176 doswiadczenie += xp_objectives_vip;
2177 else
2178 doswiadczenie += xp_objectives;
2179
2180 if(i == client)
2181 {
2182 PrintToChat(i, "[COD:MW] Dostales %i doswiadczenia za podlozenie bomby.", doswiadczenie);
2183 DodajDoswiadczenie(i, doswiadczenie);
2184 }
2185 else
2186 {
2187 PrintToChat(i, "[COD:MW] Dostales %i doswiadczenia za podlozenie bomby przez twoja druzyne.", doswiadczenie/2);
2188 DodajDoswiadczenie(i, doswiadczenie/2);
2189 }
2190 }
2191 }
2192}
2193public Action:BombaRozbrojona(Handle:event_bomb_defused, const String:name[], bool:dontBroadcast)
2194{
2195 new client = GetClientOfUserId(GetEventInt(event_bomb_defused, "userid"));
2196 if(StrEqual(name, "bomb_defused"))
2197 {
2198 for(new i = 1; i <= MaxClients; i++)
2199 {
2200 if(!IsClientInGame(i) || !klasa_gracza[i])
2201 continue;
2202
2203 if(GetClientTeam(i) != CS_TEAM_CT)
2204 continue;
2205
2206 new doswiadczenie = 0;
2207 if(vip_gracza[i])
2208 doswiadczenie += xp_objectives_vip;
2209 else
2210 doswiadczenie += xp_objectives;
2211
2212 if(i == client)
2213 {
2214 PrintToChat(i, "[COD:MW] Dostales %i doswiadczenia za rozbrojenie bomby.", doswiadczenie);
2215 DodajDoswiadczenie(i, doswiadczenie);
2216 }
2217 else
2218 {
2219 PrintToChat(i, "[COD:MW] Dostales %i doswiadczenia za rozbrojenie bomby przez twoja druzyne.", doswiadczenie/2);
2220 DodajDoswiadczenie(i, doswiadczenie/2);
2221 }
2222 }
2223 }
2224}
2225public Action:ZakladnikUratowany(Handle:event_hostage_rescued, const String:name[], bool:dontBroadcast)
2226{
2227 new client = GetClientOfUserId(GetEventInt(event_hostage_rescued, "userid"));
2228 if(StrEqual(name, "hostage_rescued"))
2229 {
2230 for(new i = 1; i <= MaxClients; i++)
2231 {
2232 if(!IsClientInGame(i) || !klasa_gracza[i])
2233 continue;
2234
2235 if(GetClientTeam(i) != CS_TEAM_CT)
2236 continue;
2237
2238 new doswiadczenie = 0;
2239 if(vip_gracza[i])
2240 doswiadczenie += xp_objectives_vip;
2241 else
2242 doswiadczenie += xp_objectives;
2243
2244 if(i == client)
2245 {
2246 PrintToChat(i, "[COD:MW] Dostales %i doswiadczenia za uratowanie zakladnika.", doswiadczenie);
2247 DodajDoswiadczenie(i, doswiadczenie);
2248 }
2249 else
2250 {
2251 PrintToChat(i, "[COD:MW] Dostales %i doswiadczenia za uratowanie zakladnika przez twoja druzyne.", doswiadczenie/2);
2252 DodajDoswiadczenie(i, doswiadczenie/2);
2253 }
2254 }
2255 }
2256}
2257public Action:CodMenu(client, args)
2258{
2259 new Handle:menu = CreateMenu(CodMenu_Handler);
2260 SetMenuTitle(menu, "CodMenu:");
2261 AddMenuItem(menu, "1", "Sklep");
2262 AddMenuItem(menu, "2", "Wybierz Klase");
2263 AddMenuItem(menu, "3", "Wyrzuc Item");
2264 AddMenuItem(menu, "4", "Napraw Item");
2265 AddMenuItem(menu, "5", "Opis Itemu");
2266 AddMenuItem(menu, "6", "Menu Admina");
2267 DisplayMenu(menu, client, 250);
2268 return Plugin_Handled;
2269}
2270public CodMenu_Handler(Handle:classhandle, MenuAction:action, client, Position)
2271{
2272 if(action == MenuAction_Select)
2273 {
2274 new String:Item[32];
2275 GetMenuItem(classhandle, Position, Item, sizeof(Item));
2276
2277 if(StrEqual(Item, "1"))
2278 CodSklep(client);
2279 else if(StrEqual(Item, "2"))
2280 WybierzKlase(client);
2281 else if(StrEqual(Item, "3"))
2282 WyrzucItem(client);
2283 else if(StrEqual(Item, "4"))
2284 NaprawItem(client);
2285 else if(StrEqual(Item, "5"))
2286 OpisItemu(client);
2287 else if(StrEqual(Item, "6"))
2288 ClientCommand(client, "sm_admin");
2289 }
2290 else if(action == MenuAction_End)
2291 CloseHandle(classhandle);
2292}
2293public Action:CodSklep(client)
2294{
2295 if(klasa_gracza[client])
2296 {
2297 new Handle:menu = CreateMenu(CodSklep_Handler);
2298 SetMenuTitle(menu, "CodSklep:");
2299 AddMenuItem(menu, "1", "Mala Apteczka [Leczy 20 HP] Koszt: 2000$");
2300 AddMenuItem(menu, "2", "Srednia Apteczka [Leczy 50 HP] Koszt: 5000$");
2301 AddMenuItem(menu, "3", "Duza Apteczka [Leczy 100 HP] Koszt: 10000$");
2302 AddMenuItem(menu, "4", "Duzy Lotek [Wygraj Kase] Koszt: 2000$");
2303 AddMenuItem(menu, "5", "Doswiadczenie [Dostajesz 2000 Dosw.] Koszt: 5000$");
2304 AddMenuItem(menu, "6", "Super Doswiadczenie [Dostajesz 5000 Dosw.] Koszt: 10000$");
2305 AddMenuItem(menu, "7", "Losowy Item [Dostajesz Losowy Item] Koszt: 3000$");
2306 AddMenuItem(menu, "8", "Sprzedaz Itemu [Dostajesz $ Za Item] Koszt: 1500$");
2307 AddMenuItem(menu, "9", "Moc Itemu [+20 Procent Mocy Itemu] Koszt: 8000$");
2308 DisplayMenu(menu, client, 250);
2309 }
2310 else
2311 PrintToChat(client, "[COD:MW] Musisz miec wybrana klase aby moc wlaczyc sklep!");
2312}
2313public CodSklep_Handler(Handle:classhandle, MenuAction:action, client, Position)
2314{
2315 if(action == MenuAction_Select)
2316 {
2317 new String:Item[32];
2318 GetMenuItem(classhandle, Position, Item, sizeof(Item));
2319 CodSklep(client);
2320
2321 if(StrEqual(Item, "1"))
2322 {
2323 if(GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount")) >= 2000)
2324 {
2325 if(IsPlayerAlive(client))
2326 {
2327 if(maksymalne_zdrowie_gracza[client] > GetClientHealth(client))
2328 {
2329 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))-2000);
2330 SetEntData(client, FindDataMapOffs(client, "m_iHealth"), GetClientHealth(client)+20<maksymalne_zdrowie_gracza[client]? GetClientHealth(client)+20: maksymalne_zdrowie_gracza[client]);
2331 PrintToChat(client, "[COD:MW] Kupiles Mala Apteczke.");
2332 }
2333 else
2334 PrintToChat(client, "[COD:MW] Jestes w pelni uleczony!");
2335 }
2336 else
2337 PrintToChat(client, "[COD:MW] Musisz byc zywy aby moc kupic Mala Apteczke!");
2338 }
2339 else
2340 PrintToChat(client, "[COD:MW] Masz za malo pieniedzy!");
2341 }
2342 else if(StrEqual(Item, "2"))
2343 {
2344 if(GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount")) >= 5000)
2345 {
2346 if(IsPlayerAlive(client))
2347 {
2348 if(maksymalne_zdrowie_gracza[client] > GetClientHealth(client))
2349 {
2350 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))-5000);
2351 SetEntData(client, FindDataMapOffs(client, "m_iHealth"), GetClientHealth(client)+50<maksymalne_zdrowie_gracza[client]? GetClientHealth(client)+50: maksymalne_zdrowie_gracza[client]);
2352 PrintToChat(client, "[COD:MW] Kupiles Srednia Apteczke.");
2353 }
2354 else
2355 PrintToChat(client, "[COD:MW] Jestes w pelni uleczony!");
2356 }
2357 else
2358 PrintToChat(client, "[COD:MW] Musisz byc zywy aby moc kupic Srednia Apteczke!");
2359 }
2360 else
2361 PrintToChat(client, "[COD:MW] Masz za malo pieniedzy!");
2362 }
2363 else if(StrEqual(Item, "3"))
2364 {
2365 if(GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount")) >= 10000)
2366 {
2367 if(IsPlayerAlive(client))
2368 {
2369 if(maksymalne_zdrowie_gracza[client] > GetClientHealth(client))
2370 {
2371 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))-10000);
2372 SetEntData(client, FindDataMapOffs(client, "m_iHealth"), GetClientHealth(client)+100<maksymalne_zdrowie_gracza[client]? GetClientHealth(client)+100: maksymalne_zdrowie_gracza[client]);
2373 PrintToChat(client, "[COD:MW] Kupiles Duza Apteczke.");
2374 }
2375 else
2376 PrintToChat(client, "[COD:MW] Jestes w pelni uleczony!");
2377 }
2378 else
2379 PrintToChat(client, "[COD:MW] Musisz byc zywy aby moc kupic Duza Apteczke!");
2380 }
2381 else
2382 PrintToChat(client, "[COD:MW] Masz za malo pieniedzy!");
2383 }
2384 else if(StrEqual(Item, "4"))
2385 {
2386 if(GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount")) >= 2000)
2387 {
2388 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))-2000);
2389 PrintToChat(client, "[COD:MW] Zagrales w lotto...");
2390 switch(GetRandomInt(0, 29))
2391 {
2392 case 0: PrintToChat(client, "[COD:MW] Niestety nic nie wygrales...");
2393 case 1:
2394 {
2395 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+300);
2396 PrintToChat(client, "[COD:MW] Wygrales 300$!");
2397 }
2398 case 2: PrintToChat(client, "[COD:MW] Niestety nic nie wygrales...");
2399 case 3:
2400 {
2401 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+600);
2402 PrintToChat(client, "[COD:MW] Wygrales 600$!");
2403 }
2404 case 4: PrintToChat(client, "[COD:MW] Niestety nic nie wygrales...");
2405 case 5:
2406 {
2407 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+900);
2408 PrintToChat(client, "[COD:MW] Wygrales 900$!");
2409 }
2410 case 6: PrintToChat(client, "[COD:MW] Niestety nic nie wygrales...");
2411 case 7:
2412 {
2413 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+1200);
2414 PrintToChat(client, "[COD:MW] Wygrales 1200$!");
2415 }
2416 case 8: PrintToChat(client, "[COD:MW] Niestety nic nie wygrales...");
2417 case 9:
2418 {
2419 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+1500);
2420 PrintToChat(client, "[COD:MW] Wygrales 1500$!");
2421 }
2422 case 10: PrintToChat(client, "[COD:MW] Niestety nic nie wygrales...");
2423 case 11:
2424 {
2425 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+1800);
2426 PrintToChat(client, "[COD:MW] Wygrales 1800$!");
2427 }
2428 case 12: PrintToChat(client, "[COD:MW] Niestety nic nie wygrales...");
2429 case 13:
2430 {
2431 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+2100);
2432 PrintToChat(client, "[COD:MW] Wygrales 2100$!");
2433 }
2434 case 14: PrintToChat(client, "[COD:MW] Niestety nic nie wygrales...");
2435 case 15:
2436 {
2437 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+2400);
2438 PrintToChat(client, "[COD:MW] Wygrales 2400$!");
2439 }
2440 case 16: PrintToChat(client, "[COD:MW] Niestety nic nie wygrales...");
2441 case 17:
2442 {
2443 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+2700);
2444 PrintToChat(client, "[COD:MW] Wygrales 2700$!");
2445 }
2446 case 18: PrintToChat(client, "[COD:MW] Niestety nic nie wygrales...");
2447 case 19:
2448 {
2449 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+3000);
2450 PrintToChat(client, "[COD:MW] Wygrales 3000$!");
2451 }
2452 case 20: PrintToChat(client, "[COD:MW] Niestety nic nie wygrales...");
2453 case 21:
2454 {
2455 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+3300);
2456 PrintToChat(client, "[COD:MW] Wygrales 3300$!");
2457 }
2458 case 22: PrintToChat(client, "[COD:MW] Niestety nic nie wygrales...");
2459 case 23:
2460 {
2461 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+3600);
2462 PrintToChat(client, "[COD:MW] Wygrales 3600$!");
2463 }
2464 case 24: PrintToChat(client, "[COD:MW] Niestety nic nie wygrales...");
2465 case 25:
2466 {
2467 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+4200);
2468 PrintToChat(client, "[COD:MW] Wygrales 4200$!");
2469 }
2470 case 26: PrintToChat(client, "[COD:MW] Niestety nic nie wygrales...");
2471 case 27:
2472 {
2473 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+4800);
2474 PrintToChat(client, "[COD:MW] Wygrales 4800$!");
2475 }
2476 case 28: PrintToChat(client, "[COD:MW] Niestety nic nie wygrales...");
2477 case 29:
2478 {
2479 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+5400);
2480 PrintToChat(client, "[COD:MW] Wygrales 5400$!");
2481 }
2482 }
2483 }
2484 else
2485 PrintToChat(client, "[COD:MW] Masz za malo pieniedzy!");
2486 }
2487 else if(StrEqual(Item, "5"))
2488 {
2489 if(GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount")) >= 5000)
2490 {
2491 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))-5000);
2492 DodajDoswiadczenie(client, 2000);
2493 PrintToChat(client, "[COD:MW] Kupiles Doswiadczenie.");
2494 }
2495 else
2496 PrintToChat(client, "[COD:MW] Masz za malo pieniedzy!");
2497 }
2498 else if(StrEqual(Item, "6"))
2499 {
2500 if(GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount")) >= 10000)
2501 {
2502 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))-10000);
2503 DodajDoswiadczenie(client, 5000);
2504 PrintToChat(client, "[COD:MW] Kupiles Super Doswiadczenie.");
2505 }
2506 else
2507 PrintToChat(client, "[COD:MW] Masz za malo pieniedzy!");
2508 }
2509 else if(StrEqual(Item, "7"))
2510 {
2511 if(GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount")) >= 3000)
2512 {
2513 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))-3000);
2514 DajItem(client, GetRandomInt(1, sizeof nazwy_itemow-1));
2515 PrintToChat(client, "[COD:MW] Wylosowales %s.", nazwy_itemow[informacje_itemu_gracza[client][0]]);
2516 }
2517 else
2518 PrintToChat(client, "[COD:MW] Masz za malo pieniedzy!");
2519 }
2520 else if(StrEqual(Item, "8"))
2521 {
2522 if(GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount")) >= 1500)
2523 {
2524 if(informacje_itemu_gracza[client][0])
2525 {
2526 new losowanie = GetRandomInt(2000, 2500);
2527 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))-1500+losowanie);
2528 UsunItem(client);
2529 PrintToChat(client, "[COD:MW] Dostales +%i$ za sprzedaz swojego itemu.", losowanie);
2530 }
2531 else
2532 PrintToChat(client, "[COD:MW] Nie masz zadnego itemu!");
2533 }
2534 else
2535 PrintToChat(client, "[COD:MW] Masz za malo pieniedzy!");
2536 }
2537 else if(StrEqual(Item, "9"))
2538 NaprawItem(client);
2539 }
2540 else if(action == MenuAction_End)
2541 CloseHandle(classhandle);
2542}
2543public Action:NaprawItem(client)
2544{
2545 if(GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount")) >= 8000)
2546 {
2547 if(informacje_itemu_gracza[client][0] && moc_itemu[client] < 100)
2548 {
2549 SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))-8000);
2550 moc_itemu[client] += 20;
2551 PrintToChat(client, "[COD:MW] Kupiles +20%% Mocy Itemu.");
2552 }
2553 else
2554 PrintToChat(client, "[COD:MW] Twoj item nie jest uszkodzony!");
2555 }
2556 else
2557 PrintToChat(client, "[COD:MW] Masz za malo pieniedzy!");
2558}
2559public Action:OpisStatystyk(client)
2560{
2561 new String:opis[512];
2562 Format(opis, sizeof(opis), "Klasa: %s\nPoziom: %i/%i\nDoswiadczenie: %i\nKonto Premium: %s", nazwy_klas[klasa_gracza[client]], poziom_gracza[client], limit_poziomu, doswiadczenie_gracza[client], vip_gracza[client]? "Aktywne": "Nie Aktywne");
2563
2564 new Handle:menu = CreateMenu(OpisStatystyk_Handler);
2565 SetMenuTitle(menu, opis);
2566 AddMenuItem(menu, "1", "Punkty Klasy");
2567
2568 DisplayMenu(menu, client, 250);
2569}
2570public OpisStatystyk_Handler(Handle:classhandle, MenuAction:action, client, Position)
2571{
2572 if(action == MenuAction_Select)
2573 {
2574 new String:Item[32];
2575 GetMenuItem(classhandle, Position, Item, sizeof(Item));
2576 if(StrEqual(Item, "1"))
2577 PrzydzielPunkty(client);
2578 }
2579 else if(action == MenuAction_End)
2580 CloseHandle(classhandle);
2581}
2582public Action:WybierzKlase(client)
2583{
2584 if(polaczony_raz[client])
2585 PrintToChat(client, "[COD:MW] Trwa wczytywanie klas...");
2586 else
2587 {
2588 if(klasa_gracza[client])
2589 {
2590 new klasa_g = klasa_gracza[client];
2591 poziom_klasy_gracza[client][klasa_g] = poziom_gracza[client];
2592 doswiadczenie_klasy_gracza[client][klasa_g] = doswiadczenie_gracza[client];
2593 inteligencja_klasy_gracza[client][klasa_g] = inteligencja_gracza[client];
2594 zdrowie_klasy_gracza[client][klasa_g] = zdrowie_gracza[client];
2595 obrazenia_klasy_gracza[client][klasa_g] = obrazenia_gracza[client];
2596 wytrzymalosc_klasy_gracza[client][klasa_g] = wytrzymalosc_gracza[client];
2597 kondycja_klasy_gracza[client][klasa_g] = kondycja_gracza[client];
2598 WybierzKlaseMenu(client);
2599 }
2600 else
2601 {
2602 new String:tmp[1024];
2603 new String:authid[64];
2604 if(!GetClientAuthId(client, AuthId_Steam2, authid, sizeof(authid)))
2605 return;
2606
2607 Format(tmp, sizeof(tmp), "SELECT `lvl`, `xp`, `inteligencja`, `zdrowie`, `obrazenia`, `wytrzymalosc`, `kondycja`, `klasa` FROM `codmod` WHERE steamid = '%s';", authid);
2608 SQL_TQuery(sql, WybierzKlase2, tmp, client);
2609 polaczony_raz[client] = 1;
2610 }
2611 }
2612}
2613public WybierzKlase2(Handle:owner, Handle:query, const String:error[], any:client)
2614{
2615 if(query == INVALID_HANDLE)
2616 {
2617 LogError("Load error: %s", error);
2618 return;
2619 }
2620 if(SQL_GetRowCount(query))
2621 {
2622 new poziom = 1, doswiadczenie = 0, inteligencja = 0, zdrowie = 0, obrazenia = 0, wytrzymalosc = 0, kondycja = 0;
2623 new String:klasa[512];
2624 while(SQL_MoreRows(query))
2625 {
2626 while(SQL_FetchRow(query))
2627 {
2628 poziom = SQL_FetchInt(query, 0);
2629 doswiadczenie = SQL_FetchInt(query, 1);
2630 inteligencja = SQL_FetchInt(query, 2);
2631 zdrowie = SQL_FetchInt(query, 3);
2632 obrazenia = SQL_FetchInt(query, 4);
2633 wytrzymalosc = SQL_FetchInt(query, 5);
2634 kondycja = SQL_FetchInt(query, 6);
2635
2636 SQL_FetchString(query, 7, klasa, sizeof(klasa));
2637 for(new i = 1; i < sizeof nazwy_klas; i ++)
2638 {
2639 if(StrEqual(nazwy_klas[i], klasa))
2640 {
2641 poziom_klasy_gracza[client][i] = poziom;
2642 doswiadczenie_klasy_gracza[client][i] = doswiadczenie;
2643 inteligencja_klasy_gracza[client][i] = inteligencja;
2644 zdrowie_klasy_gracza[client][i] = zdrowie;
2645 obrazenia_klasy_gracza[client][i] = obrazenia;
2646 wytrzymalosc_klasy_gracza[client][i] = wytrzymalosc;
2647 kondycja_klasy_gracza[client][i] = kondycja;
2648 }
2649 }
2650 }
2651 }
2652 }
2653
2654 WybierzKlaseMenu(client);
2655 polaczony_raz[client] = 0;
2656}
2657public Action:WybierzKlaseMenu(client)
2658{
2659 new String:klasa[512];
2660 new Handle:menu = CreateMenu(WybierzKlase_Handler);
2661 SetMenuTitle(menu, "Wybierz Klase:");
2662 for(new i = 1; i < sizeof nazwy_klas; i ++)
2663 {
2664 Format(klasa, sizeof(klasa), "%s (Lv: %i)", nazwy_klas[i], poziom_klasy_gracza[client][i]);
2665 AddMenuItem(menu, "1", klasa);
2666 }
2667
2668 DisplayMenu(menu, client, 250);
2669}
2670public WybierzKlase_Handler(Handle:classhandle, MenuAction:action, client, Position)
2671{
2672 if(action == MenuAction_Select)
2673 {
2674 new String:Item[32];
2675 GetMenuItem(classhandle, Position, Item, sizeof(Item));
2676 Position ++;
2677
2678 if(StrEqual(Item, "1"))
2679 {
2680 if(Position == klasa_gracza[client])
2681 return;
2682
2683 new ma_poziom = 0;
2684 for(new i = 1; i < sizeof nazwy_klas; i ++)
2685 {
2686 if(poziom_klasy_gracza[client][i] >= umiejetnosci_klas[Position][0])
2687 ma_poziom = 1;
2688 }
2689 if(ma_poziom)
2690 {
2691 if(klasa_gracza[client])
2692 {
2693 nowa_klasa_gracza[client] = Position;
2694 PrintToChat(client, "[COD:MW] Klasa zostanie zmieniona w nastepnej rundzie.");
2695 }
2696 else
2697 {
2698 klasa_gracza[client] = Position;
2699 WczytajDane(client, klasa_gracza[client]);
2700 Odrodzenie(client);
2701 }
2702 }
2703 else
2704 {
2705 WybierzKlase(client)
2706 PrintToChat(client, "[COD:MW] Wybrana klasa dostepna jest od %dLv!", umiejetnosci_klas[Position][0]);
2707 }
2708 }
2709 }
2710 else if(action == MenuAction_End)
2711 CloseHandle(classhandle);
2712}
2713public Action:OpisKlasy(client)
2714{
2715 new String:klasa[512];
2716 new Handle:menu = CreateMenu(OpisKlasy_Handler);
2717 SetMenuTitle(menu, "Wybierz Klase:");
2718 for(new i = 1; i < sizeof nazwy_klas; i ++)
2719 {
2720 Format(klasa, sizeof(klasa), "%s", nazwy_klas[i]);
2721 AddMenuItem(menu, "1", klasa);
2722 }
2723
2724 DisplayMenu(menu, client, 250);
2725}
2726public OpisKlasy_Handler(Handle:classhandle, MenuAction:action, client, Position)
2727{
2728 if(action == MenuAction_Select)
2729 {
2730 new String:Item[32];
2731 GetMenuItem(classhandle, Position, Item, sizeof(Item));
2732 Position ++;
2733
2734 if(StrEqual(Item, "1"))
2735 {
2736 new String:bronie_klasy[512];
2737 Format(bronie_klasy, sizeof(bronie_klasy), "%s %s %s %s %s", nazwy_broni[bronie_klas[Position][0]], nazwy_broni[bronie_klas[Position][1]], nazwy_broni[bronie_klas[Position][2]], nazwy_broni[bronie_klas[Position][3]], nazwy_broni[bronie_klas[Position][4]]);
2738 ReplaceString(bronie_klasy, sizeof(bronie_klasy), "weapon_", "");
2739
2740 PrintToChat(client, "[COD:MW] Klasa: %s - %s - %s.", nazwy_klas[Position], bronie_klasy, opisy_klas[Position]);
2741 OpisKlasy(client);
2742 }
2743 }
2744 else if(action == MenuAction_End)
2745 CloseHandle(classhandle);
2746}
2747public Action:OpisItemow(client)
2748{
2749 new String:item[512];
2750 new Handle:menu = CreateMenu(OpisItemow_Handler);
2751 SetMenuTitle(menu, "Wybierz Item:");
2752 for(new i = 1; i <sizeof nazwy_itemow; i ++)
2753 {
2754 Format(item, sizeof(item), "%s", nazwy_itemow[i]);
2755 AddMenuItem(menu, "1", item);
2756 }
2757
2758 DisplayMenu(menu, client, 250);
2759}
2760public OpisItemow_Handler(Handle:classhandle, MenuAction:action, client, Position)
2761{
2762 if(action == MenuAction_Select)
2763 {
2764 new String:Item[32];
2765 GetMenuItem(classhandle, Position, Item, sizeof(Item));
2766 Position ++;
2767
2768 if(StrEqual(Item, "1"))
2769 {
2770 PrintToChat(client, "[COD:MW] Item: %s - %s.", nazwy_itemow[Position], opisy_itemow[Position]);
2771 OpisItemow(client);
2772 }
2773 }
2774 else if(action == MenuAction_End)
2775 CloseHandle(classhandle);
2776}
2777public Action:Odrodzenie(client)
2778{
2779 if(!IsValidClient(client) || !IsPlayerAlive(client))
2780 return;
2781
2782 if(nowa_klasa_gracza[client])
2783 {
2784 if(zapisz_dane[client])
2785 {
2786 zapisz_dane[client] = 0;
2787 ZapiszDane(client);
2788 }
2789
2790 klasa_gracza[client] = nowa_klasa_gracza[client];
2791 nowa_klasa_gracza[client] = 0;
2792 ilosc_apteczek_gracza[client] = 0;
2793 CS_UpdateClientModel(client);
2794 WczytajDane(client, klasa_gracza[client]);
2795 }
2796 if(!klasa_gracza[client])
2797 WybierzKlase(client);
2798 else
2799 {
2800 switch(klasa_gracza[client])
2801 {
2802 case Medyk: ilosc_apteczek_gracza[client] = 2;
2803 case Kangur: czas_skokow_gracza[client] = 0;
2804 case Szpieg: SetEntityModel(client, (GetClientTeam(client) == CS_TEAM_CT)? modele_serwera[GetRandomInt(6, 10)]: modele_serwera[GetRandomInt(1, 5)]);
2805 }
2806 switch(informacje_itemu_gracza[client][0])
2807 {
2808 case 4: informacje_itemu_gracza[client][1] = 1;
2809 case 14: informacje_itemu_gracza[client][1] = 3;
2810 case 19: informacje_itemu_gracza[client][1] = 1;
2811 case 22: informacje_itemu_gracza[client][1] = 0;
2812 case 25: informacje_itemu_gracza[client][1] = 1;
2813 case 32:
2814 {
2815 if(klasa_gracza[client] != Szpieg)
2816 SetEntityModel(client, (GetClientTeam(client) == CS_TEAM_CT)? modele_serwera[GetRandomInt(6, 10)]: modele_serwera[GetRandomInt(1, 5)]);
2817
2818 GivePlayerItem(client, nazwy_broni[36]);
2819 }
2820 case 33: GivePlayerItem(client, nazwy_broni[36]);
2821 case 38: informacje_itemu_gracza[client][1] = 1;
2822 case 45: SetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(client, FindSendPropOffs("CCSPlayer", "m_iAccount"))+3000);
2823 }
2824 if(punkty_gracza[client])
2825 PrzydzielPunkty(client);
2826
2827 for(new slot = 0; slot < 5; slot ++)
2828 GivePlayerItem(client, nazwy_broni[bronie_klas[klasa_gracza[client]][slot]]);
2829 }
2830
2831 maksymalna_inteligencja_gracza[client] = (inteligencja_gracza[client]+bonusowa_inteligencja_gracza[client])/6;
2832 maksymalne_zdrowie_gracza[client] = umiejetnosci_klas[klasa_gracza[client]][1]+zdrowie_gracza[client]+bonusowe_zdrowie_gracza[client];
2833 maksymalne_obrazenia_gracza[client] = (obrazenia_gracza[client]+bonusowe_obrazenia_gracza[client])*0.003;
2834 maksymalna_wytrzymalosc_gracza[client] = (umiejetnosci_klas[klasa_gracza[client]][2]+wytrzymalosc_gracza[client]+bonusowa_wytrzymalosc_gracza[client])*0.0008;
2835 maksymalna_kondycja_gracza[client] = 0.9*(umiejetnosci_klas[klasa_gracza[client]][3]*0.01)+(kondycja_gracza[client]+bonusowa_kondycja_gracza[client])*0.001;
2836
2837 SetEntData(client, FindDataMapOffs(client, "m_iHealth"), maksymalne_zdrowie_gracza[client]);
2838 SetEntPropFloat(client, Prop_Data, "m_flLaggedMovementValue", maksymalna_kondycja_gracza[client]);
2839}
2840public Action:DajItem(client, item)
2841{
2842 if(informacje_itemu_gracza[client][0])
2843 UsunItem(client);
2844
2845 moc_itemu[client] = 100;
2846 informacje_itemu_gracza[client][0] = item;
2847
2848 switch(item)
2849 {
2850 case 1:
2851 {
2852 if(IsPlayerAlive(client))
2853 SetEntData(client, FindDataMapOffs(client, "m_iHealth"), GetClientHealth(client)+100);
2854
2855 bonusowe_zdrowie_gracza[client] += 100;
2856 bonusowa_kondycja_gracza[client] -= 100;
2857 }
2858 case 2:
2859 {
2860 if(IsPlayerAlive(client))
2861 SetEntData(client, FindDataMapOffs(client, "m_iHealth"), GetClientHealth(client)+50);
2862
2863 bonusowe_zdrowie_gracza[client] += 50;
2864 bonusowa_kondycja_gracza[client] -= 50;
2865 }
2866 case 4: informacje_itemu_gracza[client][1] = 1;
2867 case 7: informacje_itemu_gracza[client][1] = GetRandomInt(2, 4);
2868 case 10: bonusowa_wytrzymalosc_gracza[client] += 100;
2869 case 11: bonusowa_kondycja_gracza[client] += 100;
2870 case 12: bonusowa_inteligencja_gracza[client] += 100;
2871 case 14: informacje_itemu_gracza[client][1] = 3;
2872 case 19: informacje_itemu_gracza[client][1] = 1;
2873 case 21: informacje_itemu_gracza[client][1] = GetRandomInt(3, 6);
2874 case 25: informacje_itemu_gracza[client][1] = 1;
2875 case 27: informacje_itemu_gracza[client][1] = GetRandomInt(3, 6);
2876 case 28: informacje_itemu_gracza[client][1] = GetRandomInt(3, 6);
2877 case 32:
2878 {
2879 if(IsPlayerAlive(client) && klasa_gracza[client] != Szpieg)
2880 {
2881 SetEntityModel(client, (GetClientTeam(client) == CS_TEAM_CT)? modele_serwera[GetRandomInt(6, 10)]: modele_serwera[GetRandomInt(1, 5)]);
2882 GivePlayerItem(client, nazwy_broni[36]);
2883 }
2884
2885 informacje_itemu_gracza[client][1] = GetRandomInt(1, 3);
2886 }
2887 case 33:
2888 {
2889 if(IsPlayerAlive(client))
2890 GivePlayerItem(client, nazwy_broni[36]);
2891
2892 informacje_itemu_gracza[client][1] = GetRandomInt(4, 8);
2893 }
2894 case 36:
2895 {
2896 if(IsPlayerAlive(client))
2897 SetEntityGravity(client, 0.5);
2898 }
2899 case 38: informacje_itemu_gracza[client][1] = 1;
2900 case 40: bonusowe_obrazenia_gracza[client] += 50;
2901 case 41:
2902 {
2903 if(IsPlayerAlive(client))
2904 SetEntData(client, FindDataMapOffs(client, "m_iHealth"), GetClientHealth(client)+25);
2905
2906 bonusowa_inteligencja_gracza[client] += 25;
2907 bonusowe_zdrowie_gracza[client] += 25;
2908 bonusowe_obrazenia_gracza[client] += 25;
2909 bonusowa_wytrzymalosc_gracza[client] += 25;
2910 bonusowa_kondycja_gracza[client] += 25;
2911 }
2912 case 42: informacje_itemu_gracza[client][1] = GetRandomInt(10, 15);
2913 case 47: informacje_itemu_gracza[client][1] = GetRandomInt(15, 25);
2914 case 48: informacje_itemu_gracza[client][1] = GetRandomInt(3, 6);
2915 case 49: informacje_itemu_gracza[client][1] = GetRandomInt(3, 6);
2916 }
2917}
2918public Action:UsunItem(client)
2919{
2920 switch(informacje_itemu_gracza[client][0])
2921 {
2922 case 1:
2923 {
2924 if(IsPlayerAlive(client) && GetClientHealth(client) > 100)
2925 SetEntData(client, FindDataMapOffs(client, "m_iHealth"), GetClientHealth(client)-100);
2926
2927 bonusowe_zdrowie_gracza[client] -= 100;
2928 bonusowa_kondycja_gracza[client] += 100;
2929 }
2930 case 2:
2931 {
2932 if(IsPlayerAlive(client) && GetClientHealth(client) > 50)
2933 SetEntData(client, FindDataMapOffs(client, "m_iHealth"), GetClientHealth(client)-50);
2934
2935 bonusowe_zdrowie_gracza[client] -= 50;
2936 bonusowa_kondycja_gracza[client] += 50;
2937 }
2938 case 10: bonusowa_wytrzymalosc_gracza[client] -= 100;
2939 case 11: bonusowa_kondycja_gracza[client] -= 100;
2940 case 12: bonusowa_inteligencja_gracza[client] -= 100;
2941 case 13:
2942 {
2943 if(GetEntProp(client, Prop_Send, "m_bNightVisionOn"))
2944 SetEntProp(client, Prop_Send, "m_bNightVisionOn", 0);
2945 }
2946 case 32:
2947 {
2948 if(IsPlayerAlive(client) && klasa_gracza[client] != Szpieg)
2949 CS_UpdateClientModel(client);
2950 }
2951 case 36: SetEntityGravity(client, 1.0);
2952 case 40: bonusowe_obrazenia_gracza[client] -= 50;
2953 case 41:
2954 {
2955 if(IsPlayerAlive(client) && GetClientHealth(client) > 25)
2956 SetEntData(client, FindDataMapOffs(client, "m_iHealth"), GetClientHealth(client)-25);
2957
2958 bonusowa_inteligencja_gracza[client] -= 25;
2959 bonusowe_zdrowie_gracza[client] -= 25;
2960 bonusowe_obrazenia_gracza[client] -= 25;
2961 bonusowa_wytrzymalosc_gracza[client] -= 25;
2962 bonusowa_kondycja_gracza[client] -= 25;
2963 }
2964 }
2965
2966 moc_itemu[client] = 0;
2967 informacje_itemu_gracza[client][0] = 0;
2968 informacje_itemu_gracza[client][1] = 0;
2969}
2970public Action:PlayerSpawn(Handle:event_spawn, String:name[], bool:dontBroadcast)
2971{
2972 new client = GetClientOfUserId(GetEventInt(event_spawn, "userid"));
2973 if(!IsValidClient(client) || IsFakeClient(client))
2974 return;
2975
2976 if(GetUserFlagBits(client) & VIP_FLAG && !vip_gracza[client])
2977 {
2978 CS_SetClientClanTag(client, "[PREMIUM]");
2979 bonusowe_zdrowie_gracza[client] = 20;
2980 bonusowa_wytrzymalosc_gracza[client] = 30;
2981 bonusowa_kondycja_gracza[client] = 30;
2982 vip_gracza[client] = 1;
2983 }
2984 for(new slot = 0; slot < 4; slot ++)
2985 {
2986 new weapon_index = -1;
2987 while((weapon_index = GetPlayerWeaponSlot(client, slot)) != -1)
2988 {
2989 if(IsValidEntity(weapon_index))
2990 {
2991 RemovePlayerItem(client, weapon_index);
2992 AcceptEntityInput(weapon_index, "kill");
2993 }
2994 }
2995 }
2996
2997 GivePlayerItem(client, nazwy_broni[40]);
2998 Odrodzenie(client);
2999}
3000public Action:PlayerDeath(Handle:event_death, String:name[], bool:dontBroadcast)
3001{
3002 new client = GetClientOfUserId(GetEventInt(event_death, "userid"));
3003 new killer = GetClientOfUserId(GetEventInt(event_death, "attacker"));
3004 if(!IsValidClient(client) || !IsValidClient(killer))
3005 return;
3006
3007 if(klasa_gracza[killer] && GetClientTeam(client) != GetClientTeam(killer))
3008 {
3009 new doswiadczenie = 0;
3010 switch(klasa_gracza[killer])
3011 {
3012 case Szturmen:
3013 {
3014 if(klasa_gracza[client] != Obronca && informacje_itemu_gracza[client][0] != 30)
3015 SetEntData(killer, FindDataMapOffs(killer, "m_iHealth"), GetClientHealth(killer)+30<maksymalne_zdrowie_gracza[killer]? GetClientHealth(killer)+30: maksymalne_zdrowie_gracza[killer]);
3016 }
3017 }
3018 switch(informacje_itemu_gracza[killer][0])
3019 {
3020 case 0:
3021 {
3022 DajItem(killer, GetRandomInt(1, sizeof nazwy_itemow-1));
3023 PrintToChat(killer, "[COD:MW] Zdobyles %s.", nazwy_itemow[informacje_itemu_gracza[killer][0]]);
3024 }
3025 case 5:
3026 {
3027 if(informacje_itemu_gracza[client][0] != 29)
3028 SetEntData(killer, FindDataMapOffs(killer, "m_iHealth"), GetClientHealth(killer)+50<maksymalne_zdrowie_gracza[killer]? GetClientHealth(killer)+50: maksymalne_zdrowie_gracza[killer]);
3029 }
3030 case 8:
3031 {
3032 if(informacje_itemu_gracza[client][0] != 29)
3033 doswiadczenie += 300;
3034 }
3035 case 9:
3036 {
3037 if(informacje_itemu_gracza[client][0] != 29)
3038 SetEntData(killer, FindSendPropOffs("CCSPlayer", "m_iAccount"), GetEntData(killer, FindSendPropOffs("CCSPlayer", "m_iAccount"))+300);
3039 }
3040 case 39:
3041 {
3042 if(informacje_itemu_gracza[client][0] != 29)
3043 SetEntData(killer, FindDataMapOffs(killer, "m_iHealth"), GetClientHealth(killer)+20<maksymalne_zdrowie_gracza[killer]? GetClientHealth(killer)+20: maksymalne_zdrowie_gracza[killer]);
3044 }
3045 case 44:
3046 {
3047 if(informacje_itemu_gracza[client][0] != 29)
3048 doswiadczenie += 500;
3049 }
3050 }
3051 if(headshot[client])
3052 {
3053 new String:godzina_str[8];
3054 FormatTime(godzina_str, sizeof(godzina_str), "%H", GetTime());
3055 new godzina = StringToInt(godzina_str);
3056 if(godzina >= 6 && godzina < 24)
3057 {
3058 if(vip_gracza[killer])
3059 doswiadczenie += poziom_gracza[client]+xp_kill_vip+xp_kill_hs_vip;
3060 else
3061 doswiadczenie += poziom_gracza[client]+xp_kill+xp_kill_hs;
3062 }
3063 else
3064 {
3065 if(vip_gracza[killer])
3066 doswiadczenie += poziom_gracza[client]+xp_kill_vip+xp_kill_hs_vip*2;
3067 else
3068 doswiadczenie += poziom_gracza[client]+xp_kill+xp_kill_hs*2;
3069 }
3070
3071 PrintToChat(killer, "[COD:MW] Dostales %i doswiadczenia za zabicie przeciwnika strzalem w glowe.", doswiadczenie);
3072 ClientCommand(killer, "play *%s", dzwieki_serwera[GetRandomInt(2, 5)]);
3073 }
3074 else
3075 {
3076 if(vip_gracza[killer])
3077 doswiadczenie += poziom_gracza[client]+xp_kill_vip;
3078 else
3079 doswiadczenie += poziom_gracza[client]+xp_kill;
3080
3081 PrintToChat(killer, "[COD:MW] Dostales %i doswiadczenia za zabicie przeciwnika.", doswiadczenie);
3082 }
3083
3084 DodajDoswiadczenie(killer, doswiadczenie);
3085 }
3086 switch(klasa_gracza[client])
3087 {
3088 case Terrorysta:
3089 {
3090 if(informacje_itemu_gracza[client][0] != 37)
3091 {
3092 new Float:fOrigin[3];
3093 new Float:iOrigin[3];
3094 GetClientEyePosition(client, Float:fOrigin);
3095
3096 for(new i = 1; i <= MaxClients; i++)
3097 {
3098 if(!IsClientInGame(i) || !IsPlayerAlive(i))
3099 continue;
3100
3101 if(GetClientTeam(client) == GetClientTeam(i))
3102 continue;
3103
3104 GetClientEyePosition(i, Float:iOrigin);
3105 if(GetVectorDistance(fOrigin, iOrigin) <= 200.0)
3106 SDKHooks_TakeDamage(i, client, client, ((klasa_gracza[i] == Obronca || informacje_itemu_gracza[i][0] == 30)? 0.0: 80.0+maksymalna_inteligencja_gracza[client]), DMG_GENERIC);
3107 }
3108
3109 TE_SetupExplosion(fOrigin, sprite_blue, 10.0, 1, 0, 200, 200);
3110 TE_SendToAll();
3111 }
3112 }
3113 }
3114 switch(informacje_itemu_gracza[client][0])
3115 {
3116 case 7:
3117 {
3118 if(GetRandomInt(1, informacje_itemu_gracza[client][1]) == 1)
3119 CreateTimer(0.1, Wskrzes, client, TIMER_FLAG_NO_MAPCHANGE);
3120 }
3121 case 37:
3122 {
3123 new Float:fOrigin[3];
3124 new Float:iOrigin[3];
3125 GetClientEyePosition(client, Float:fOrigin);
3126
3127 for(new i = 1; i <= MaxClients; i++)
3128 {
3129 if(!IsClientInGame(i) || !IsPlayerAlive(i))
3130 continue;
3131
3132 if(GetClientTeam(client) == GetClientTeam(i))
3133 continue;
3134
3135 GetClientEyePosition(i, Float:iOrigin);
3136 if(GetVectorDistance(fOrigin, iOrigin) <= 200.0)
3137 SDKHooks_TakeDamage(i, client, client, ((informacje_itemu_gracza[i][0] == 29)? 0.0: 1.0+GetClientHealth(i)), DMG_GENERIC);
3138 }
3139
3140 TE_SetupExplosion(fOrigin, sprite_blue, 10.0, 1, 0, 200, 200);
3141 TE_SendToAll();
3142 }
3143 }
3144 if(informacje_itemu_gracza[client][0])
3145 {
3146 if(moc_itemu[client] > 20)
3147 moc_itemu[client] -= 20;
3148 else
3149 {
3150 UsunItem(client);
3151 PrintToChat(client, "[COD:MW] Twoj item ulegl zniszczeniu.");
3152 }
3153 }
3154}
3155public Action:PlayerBlind(Handle:event_blind, const String:name[], bool:dontBroadcast)
3156{
3157 new client = GetClientOfUserId(GetEventInt(event_blind, "userid"));
3158 if(!IsValidClient(oslepiajacy_gracz) || !IsValidClient(client))
3159 return;
3160
3161 if(client == oslepiajacy_gracz)
3162 return;
3163
3164 if(GetClientTeam(client) == GetClientTeam(oslepiajacy_gracz) || informacje_itemu_gracza[client][0] == 39 && informacje_itemu_gracza[oslepiajacy_gracz][0] != 29)
3165 SetEntDataFloat(client, FindSendPropOffs("CCSPlayer", "m_flFlashMaxAlpha"), 0.5);
3166}
3167public Action:HeDetonate(Handle:event_hedetonate, const String:name[], bool:dontBroadcast)
3168{
3169 new client = GetClientOfUserId(GetEventInt(event_hedetonate, "userid"));
3170 if(!IsValidClient(client))
3171 return;
3172
3173 new damage = 0;
3174 if(klasa_gracza[client] == Partyzant || informacje_itemu_gracza[client][0] == 32 && GetRandomInt(1, informacje_itemu_gracza[client][1]) == 1 || informacje_itemu_gracza[client][0] == 33)
3175 damage = 1;
3176
3177 new Float:fOrigin[3];
3178 new Float:iOrigin[3];
3179 fOrigin[0] = GetEventFloat(event_hedetonate, "x");
3180 fOrigin[1] = GetEventFloat(event_hedetonate, "y");
3181 fOrigin[2] = GetEventFloat(event_hedetonate, "z");
3182
3183 for(new i = 1; i <= MaxClients; i++)
3184 {
3185 if(!IsClientInGame(i) || !IsPlayerAlive(i))
3186 continue;
3187
3188 GetClientAbsOrigin(i, Float:iOrigin);
3189 if(GetClientTeam(client) != GetClientTeam(i) && damage)
3190 {
3191 if(GetVectorDistance(fOrigin, iOrigin) <= 200.0)
3192 SDKHooks_TakeDamage(i, client, client, (informacje_itemu_gracza[client][0] == 32 || informacje_itemu_gracza[client][0] == 33)? ((informacje_itemu_gracza[i][0] == 29)? 0.0: 1.0+GetClientHealth(i)): ((klasa_gracza[i] == Obronca || informacje_itemu_gracza[i][0] == 30)? 0.0: 50.0+maksymalna_inteligencja_gracza[client]), DMG_GENERIC);
3193 }
3194 else if(client == i)
3195 {
3196 new Float:dystans = GetVectorDistance(fOrigin, iOrigin);
3197 if(dystans <= 200.0)
3198 SlapPlayer(i, 201-RoundFloat(dystans), true);
3199 }
3200 }
3201 if(damage)
3202 {
3203 TE_SetupBeamRingPoint(fOrigin, 20.0, 200.0, sprite_laser, sprite_halo, 0, 10, 0.6, 6.0, 0.0, {255, 255, 255, 128}, 10, 0);
3204 TE_SendToAll();
3205 }
3206}
3207public Action:FbDetonate(Handle:event_fbdetonate, const String:name[], bool:dontBroadcast)
3208{
3209 new client = GetClientOfUserId(GetEventInt(event_fbdetonate, "userid"));
3210 if(!IsValidClient(client))
3211 return;
3212
3213 oslepiajacy_gracz = client;
3214}
3215public Action:DodajDoswiadczenie(client, doswiadczenie)
3216{
3217 if(!IsValidClient(client) || !klasa_gracza[client])
3218 return;
3219
3220 doswiadczenie_gracza[client] += doswiadczenie;
3221 while(doswiadczenie_gracza[client] >= doswiadczenie_poziomu[poziom_gracza[client]] && poziom_gracza[client] < limit_poziomu)
3222 {
3223 poziom_gracza[client] ++;
3224 punkty_gracza[client] = (poziom_gracza[client]/co_ile_lv_punkt)-inteligencja_gracza[client]-zdrowie_gracza[client]-obrazenia_gracza[client]-wytrzymalosc_gracza[client]-kondycja_gracza[client];
3225 ClientCommand(client, "play *%s", dzwieki_serwera[1]);
3226 }
3227 while(doswiadczenie_gracza[client] < doswiadczenie_poziomu[poziom_gracza[client]-1])
3228 {
3229 poziom_gracza[client] --;
3230 ResetujPunkty(client);
3231 }
3232 if(poziom_gracza[client] > limit_poziomu)
3233 {
3234 poziom_gracza[client] = limit_poziomu;
3235 ResetujPunkty(client);
3236 }
3237 if(!zapisz_dane[client])
3238 zapisz_dane[client] = 1;
3239}
3240public Action:PrzydzielPunkty(client)
3241{
3242 new String:tytul[512];
3243 new String:szybkosc[512];
3244 new String:inteligencja[512];
3245 new String:zdrowie[512];
3246 new String:obrazenia[512];
3247 new String:wytrzymalosc[512];
3248 new String:kondycja[512];
3249 Format(tytul, sizeof(tytul), "Przydziel Punkty (%i):", punkty_gracza[client]);
3250 if(ile_rozdawac[szybkosc_rozdania[client]] == -1)
3251 Format(szybkosc, sizeof(szybkosc), "Ile dodawac: ALL (Po ile punktow dodawac do statystyk)");
3252 else
3253 Format(szybkosc, sizeof(szybkosc), "Ile dodawac: %i (Po ile punktow dodawac do statystyk)", ile_rozdawac[szybkosc_rozdania[client]]);
3254 Format(inteligencja, sizeof(inteligencja), "Inteligencja: %i/%i (Zwieksza umiejetnosci klasy o %i punktow)", inteligencja_gracza[client], limit_inteligencji, inteligencja_gracza[client]/6);
3255 Format(zdrowie, sizeof(zdrowie), "Zdrowie: %i/%i (Zwieksza zdrowie o %i punktow)", zdrowie_gracza[client], limit_zdrowia, zdrowie_gracza[client]);
3256 Format(obrazenia, sizeof(obrazenia), "Obrazenia: %i/%i (Zwieksza zadawane obrazenia o %i%%)", obrazenia_gracza[client], limit_obrazen, RoundFloat(obrazenia_gracza[client]*0.3));
3257 Format(wytrzymalosc, sizeof(wytrzymalosc), "Wytrzymalosc: %i/%i (Zmniejsza otrzymywane obrazenia o %i%%)", wytrzymalosc_gracza[client], limit_wytrzymalosci, RoundFloat(wytrzymalosc_gracza[client]*0.08));
3258 Format(kondycja, sizeof(kondycja), "Kondycja: %i/%i (Zwieksza tempo chodu o %i%%)", kondycja_gracza[client], limit_kondycji, RoundFloat(kondycja_gracza[client]*0.1));
3259
3260 new Handle:menu = CreateMenu(PrzydzielPunkty_Handler);
3261 SetMenuTitle(menu, tytul);
3262 AddMenuItem(menu, "1", szybkosc);
3263 AddMenuItem(menu, "2", inteligencja);
3264 AddMenuItem(menu, "3", zdrowie);
3265 AddMenuItem(menu, "4", obrazenia);
3266 AddMenuItem(menu, "5", wytrzymalosc);
3267 AddMenuItem(menu, "6", kondycja);
3268 DisplayMenu(menu, client, 250);
3269}
3270public PrzydzielPunkty_Handler(Handle:classhandle, MenuAction:action, client, Position)
3271{
3272 if(action == MenuAction_Select)
3273 {
3274 if(punkty_gracza[client])
3275 {
3276 new String:Item[32];
3277 GetMenuItem(classhandle, Position, Item, sizeof(Item));
3278 new ilosc;
3279
3280 if(ile_rozdawac[szybkosc_rozdania[client]] == -1)
3281 ilosc = punkty_gracza[client];
3282 else
3283 ilosc = (ile_rozdawac[szybkosc_rozdania[client]] > punkty_gracza[client])? punkty_gracza[client]: ile_rozdawac[szybkosc_rozdania[client]];
3284
3285 if(StrEqual(Item, "1"))
3286 {
3287 if(szybkosc_rozdania[client] == 2)
3288 szybkosc_rozdania[client] = 0;
3289 else
3290 szybkosc_rozdania[client] ++;
3291 }
3292 else if(StrEqual(Item, "2"))
3293 {
3294 if(inteligencja_gracza[client] != limit_inteligencji)
3295 {
3296 if(inteligencja_gracza[client] + ilosc <= limit_inteligencji)
3297 {
3298 inteligencja_gracza[client] += ilosc;
3299 punkty_gracza[client] -= ilosc;
3300 }
3301 else
3302 {
3303 new punktydododania;
3304 punktydododania = limit_inteligencji - inteligencja_gracza[client];
3305 inteligencja_gracza[client] += punktydododania;
3306 punkty_gracza[client] -= punktydododania;
3307 }
3308 }
3309 else
3310 PrintToChat(client, "[COD:MW] Maksymalny poziom inteligencji osiagniety!");
3311 }
3312 else if(StrEqual(Item, "3"))
3313 {
3314 if(zdrowie_gracza[client] != limit_zdrowia)
3315 {
3316 if(zdrowie_gracza[client] + ilosc <= limit_zdrowia)
3317 {
3318 zdrowie_gracza[client] += ilosc;
3319 punkty_gracza[client] -= ilosc;
3320 }
3321 else
3322 {
3323 new punktydododania;
3324 punktydododania = limit_zdrowia - zdrowie_gracza[client];
3325 zdrowie_gracza[client] += punktydododania;
3326 punkty_gracza[client] -= punktydododania;
3327 }
3328 }
3329 else
3330 PrintToChat(client, "[COD:MW] Maksymalny poziom zdrowia osiagniety!");
3331 }
3332 else if(StrEqual(Item, "4"))
3333 {
3334 if(obrazenia_gracza[client] != limit_obrazen)
3335 {
3336 if(obrazenia_gracza[client] + ilosc <= limit_obrazen)
3337 {
3338 obrazenia_gracza[client] += ilosc;
3339 punkty_gracza[client] -= ilosc;
3340 }
3341 else
3342 {
3343 new punktydododania;
3344 punktydododania = limit_obrazen - obrazenia_gracza[client];
3345 obrazenia_gracza[client] += punktydododania;
3346 punkty_gracza[client] -= punktydododania;
3347 }
3348 }
3349 else
3350 PrintToChat(client, "[COD:MW] Maksymalny poziom obrazen osiagniety!");
3351 }
3352 else if(StrEqual(Item, "5"))
3353 {
3354 if(wytrzymalosc_gracza[client] != limit_wytrzymalosci)
3355 {
3356 if(wytrzymalosc_gracza[client] + ilosc <= limit_wytrzymalosci)
3357 {
3358 wytrzymalosc_gracza[client] += ilosc;
3359 punkty_gracza[client] -= ilosc;
3360 }
3361 else
3362 {
3363 new punktydododania;
3364 punktydododania = limit_wytrzymalosci - wytrzymalosc_gracza[client];
3365 wytrzymalosc_gracza[client] += punktydododania;
3366 punkty_gracza[client] -= punktydododania;
3367 }
3368 }
3369 else
3370 PrintToChat(client, "[COD:MW] Maksymalny poziom wytrzymalosci osiagniety!");
3371 }
3372 else if(StrEqual(Item, "6"))
3373 {
3374 if(kondycja_gracza[client] != limit_kondycji)
3375 {
3376 if(kondycja_gracza[client] + ilosc <= limit_kondycji)
3377 {
3378 kondycja_gracza[client] += ilosc;
3379 punkty_gracza[client] -= ilosc;
3380 }
3381 else
3382 {
3383 new punktydododania;
3384 punktydododania = limit_kondycji - kondycja_gracza[client];
3385 kondycja_gracza[client] += punktydododania;
3386 punkty_gracza[client] -= punktydododania;
3387 }
3388 }
3389 else
3390 PrintToChat(client, "[COD:MW] Maksymalny poziom kondycji osiagniety!");
3391 }
3392 if(punkty_gracza[client])
3393 PrzydzielPunkty(client);
3394
3395 if(!zapisz_dane[client])
3396 zapisz_dane[client] = 1;
3397 }
3398 }
3399 else if(action == MenuAction_End)
3400 CloseHandle(classhandle);
3401}
3402public Action:ResetujPunkty(client)
3403{
3404 punkty_gracza[client] = poziom_gracza[client]/co_ile_lv_punkt;
3405 inteligencja_gracza[client] = 0;
3406 zdrowie_gracza[client] = 0;
3407 obrazenia_gracza[client] = 0;
3408 wytrzymalosc_gracza[client] = 0;
3409 kondycja_gracza[client] = 0;
3410 PrintToChat(client, "[COD:MW] Umiejetnosci zostaly zresetowane.");
3411
3412 if(punkty_gracza[client])
3413 {
3414 PrzydzielPunkty(client);
3415 if(!zapisz_dane[client])
3416 zapisz_dane[client] = 1;
3417 }
3418}
3419public Action:OpisItemu(client)
3420{
3421 new String:opis_itemu[128];
3422 new String:losowa_wartosc[4];
3423 IntToString(informacje_itemu_gracza[client][1], losowa_wartosc, 3);
3424 Format(opis_itemu, sizeof(opis_itemu), opisy_itemow[informacje_itemu_gracza[client][0]]);
3425 ReplaceString(opis_itemu, sizeof(opis_itemu), "LW", losowa_wartosc);
3426
3427 PrintToChat(client, "[COD:MW] Item: %s [%i%%].", nazwy_itemow[informacje_itemu_gracza[client][0]], moc_itemu[client]);
3428 PrintToChat(client, "[COD:MW] Opis: %s.", opis_itemu);
3429}
3430public Action:WyrzucItem(client)
3431{
3432 if(informacje_itemu_gracza[client][0])
3433 {
3434 UsunItem(client);
3435 PrintToChat(client, "[COD:MW] Wyrzuciles swoj item.");
3436 }
3437 else
3438 PrintToChat(client, "[COD:MW] Nie masz zadnego itemu.");
3439}
3440public Action:ZmienDruzyne(client)
3441{
3442 if(GetClientTeam(client) == CS_TEAM_SPECTATOR)
3443 {
3444 switch(GetRandomInt(0, 1))
3445 {
3446 case 0:
3447 {
3448 ChangeClientTeam(client, CS_TEAM_T);
3449 PrintToChat(client, "[COD:MW] Zostales przeniesiony do TT.");
3450 }
3451 case 1:
3452 {
3453 ChangeClientTeam(client, CS_TEAM_CT);
3454 PrintToChat(client, "[COD:MW] Zostales przeniesiony do CT.");
3455 }
3456 }
3457 }
3458 else
3459 ChangeClientTeam(client, CS_TEAM_SPECTATOR);
3460}
3461public Action:CmdExp(client, args)
3462{
3463 new String:arg1[32];
3464 new String:arg2[6];
3465 GetCmdArg(1, arg1, sizeof(arg1));
3466 GetCmdArg(2, arg2, sizeof(arg2));
3467 new target = FindTarget(client, arg1);
3468 new zmienna = StringToInt(arg2);
3469
3470 if(!(target == -1))
3471 {
3472 if((-zmienna) > doswiadczenie_gracza[target])
3473 PrintToConsole(client, "[COD:MW] Chciales odjac graczowi zbyt duzo doswiadczenia.");
3474 else
3475 {
3476 DodajDoswiadczenie(target, zmienna);
3477 LogMessage("%s - dal graczowi %s (%i expa).", nazwa_gracza[client], nazwa_gracza[target], zmienna);
3478 PrintToConsole(client, "[COD:MW] Dales graczowi %s (%i expa).", nazwa_gracza[target], zmienna);
3479 }
3480 }
3481}
3482public Action:CmdLvl(client, args)
3483{
3484 new String:arg1[32];
3485 new String:arg2[6];
3486 GetCmdArg(1, arg1, sizeof(arg1));
3487 GetCmdArg(2, arg2, sizeof(arg2));
3488 new target = FindTarget(client, arg1);
3489 new zmienna = StringToInt(arg2);
3490
3491 if(!(target == -1))
3492 {
3493 if((-zmienna) > poziom_gracza[target])
3494 PrintToConsole(client, "[COD:MW] Chciales ustawic graczowi zbyt maly poziom.");
3495 else
3496 {
3497 if(poziom_gracza[target] + zmienna > limit_poziomu)
3498 PrintToConsole(client, "[COD:MW] Chciales ustawic graczowi zbyt duzy poziom.");
3499 else
3500 {
3501 DodajDoswiadczenie(target, doswiadczenie_poziomu[poziom_gracza[target] += zmienna]);
3502 LogMessage("%s - dal graczowi %s (%i Lv).", nazwa_gracza[client], nazwa_gracza[target], zmienna);
3503 PrintToConsole(client, "[COD:MW] Dales graczowi %s (%i Lv).", nazwa_gracza[target], zmienna);
3504 }
3505 }
3506 }
3507}
3508public Action:CmdItem(client, args)
3509{
3510 new String:arg1[32];
3511 new String:arg2[6];
3512 GetCmdArg(1, arg1, sizeof(arg1));
3513 GetCmdArg(2, arg2, sizeof(arg2));
3514 new target = FindTarget(client, arg1);
3515 new zmienna = StringToInt(arg2);
3516
3517 if(!(target == -1))
3518 {
3519 if(zmienna < 1 || zmienna > sizeof nazwy_itemow-1)
3520 PrintToConsole(client, "[COD:MW] Podales nieprawidlowy numer itemu.");
3521 else
3522 {
3523 DajItem(target, zmienna);
3524 LogMessage("%s - dal graczowi %s (%i item).", nazwa_gracza[client], nazwa_gracza[target], zmienna);
3525 PrintToConsole(client, "[COD:MW] Dales graczowi %s (%i item).", nazwa_gracza[target], zmienna);
3526 }
3527 }
3528}
3529public Action:DataBaseConnect()
3530{
3531 sql = SQL_Connect("codmod_lvl_sql", true, dbError, sizeof(dbError));
3532 if(sql == INVALID_HANDLE)
3533 PrintToServer("Could not connect: %s", dbError);
3534
3535 SQL_LockDatabase(sql);
3536 SQL_FastQuery(sql, "CREATE TABLE IF NOT EXISTS `codmod` (`id` INT(11) NOT NULL AUTO_INCREMENT, `steamid` VARCHAR(48) NOT NULL, `klasa` VARCHAR(48) NOT NULL, `lvl` INT(11) DEFAULT 1, `xp` INT(14), `inteligencja` INT(9), `zdrowie` INT(9), `obrazenia` INT(9), `wytrzymalosc` INT(9), `kondycja` INT(9), PRIMARY KEY (`id`), UNIQUE KEY `klasaid` (`klasa`,`steamid`)) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;");
3537 SQL_UnlockDatabase(sql);
3538}
3539public Action:TaskZapiszDane(Handle:timer, any:client)
3540{
3541 if(!IsValidClient(client))
3542 return;
3543
3544 if(zapisz_dane[client])
3545 {
3546 zapisz_dane[client] = 0;
3547 ZapiszDane(client);
3548 }
3549
3550 sql_task[client] = CreateTimer(float(co_ile_zapisywac), TaskZapiszDane, client, TIMER_FLAG_NO_MAPCHANGE);
3551}
3552public Action:ZapiszDane(client)
3553{
3554 if(!klasa_gracza[client])
3555 return;
3556
3557 new String:tmp[1024];
3558 new String:authid[64];
3559 if(!GetClientAuthId(client, AuthId_Steam2, authid, sizeof(authid)))
3560 return;
3561
3562 Format(tmp, sizeof(tmp), "INSERT INTO `codmod` (`steamid`, `klasa`, `lvl`, `xp`, `inteligencja`, `zdrowie`, `obrazenia`, `wytrzymalosc`, `kondycja`) VALUES ('%s', '%s', %d, %d, %d, %d, %d, %d, %d) ON DUPLICATE KEY UPDATE `lvl`=VALUES(`lvl`), `xp`=VALUES(`xp`), `inteligencja`=VALUES(`inteligencja`), `zdrowie`=VALUES(`zdrowie`), `obrazenia`=VALUES(`obrazenia`), `wytrzymalosc`=VALUES(`wytrzymalosc`), `kondycja`=VALUES(`kondycja`);", authid, nazwy_klas[klasa_gracza[client]], poziom_gracza[client], doswiadczenie_gracza[client], inteligencja_gracza[client], zdrowie_gracza[client], obrazenia_gracza[client], wytrzymalosc_gracza[client], kondycja_gracza[client]);
3563 SQL_TQuery(sql, ZapiszDane_Handler, tmp, client);
3564}
3565public ZapiszDane_Handler(Handle:owner, Handle:query, const String:error[], any:client)
3566{
3567 if(query == INVALID_HANDLE)
3568 {
3569 LogError("Save error: %s", error);
3570 return;
3571 }
3572}
3573public Action:WczytajDane(client, klasa)
3574{
3575 poziom_gracza[client] = poziom_klasy_gracza[client][klasa];
3576 doswiadczenie_gracza[client] = doswiadczenie_klasy_gracza[client][klasa];
3577 inteligencja_gracza[client] = inteligencja_klasy_gracza[client][klasa];
3578 zdrowie_gracza[client] = zdrowie_klasy_gracza[client][klasa];
3579 obrazenia_gracza[client] = obrazenia_klasy_gracza[client][klasa];
3580 wytrzymalosc_gracza[client] = wytrzymalosc_klasy_gracza[client][klasa];
3581 kondycja_gracza[client] = kondycja_klasy_gracza[client][klasa];
3582 punkty_gracza[client] = (poziom_gracza[client]/co_ile_lv_punkt)-inteligencja_gracza[client]-zdrowie_gracza[client]-obrazenia_gracza[client]-wytrzymalosc_gracza[client]-kondycja_gracza[client];
3583 sql_task[client] = CreateTimer(float(co_ile_zapisywac), TaskZapiszDane, client, TIMER_FLAG_NO_MAPCHANGE);
3584}
3585public Action:Wskrzes(Handle:timer, any:client)
3586{
3587 if(!IsValidClient(client))
3588 return;
3589
3590 CS_RespawnPlayer(client);
3591}
3592public bool:IsValidClient(client)
3593{
3594 if(client >= 1 && client <= MaxClients && IsClientInGame(client))
3595 return true;
3596
3597 return false;
3598}