Witamy w Nieoficjalnym polskim support'cie AMX Mod X
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Guest Message by DevFuse
Wklejka 1zjd2fqobmw0o dodana przez d0naciak, 03.11.2013 13:33
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296. 297. 298. 299. 300. 301. 302. 303. 304. 305. 306. 307. 308. 309. 310. 311. 312. 313. 314. 315. 316. 317. 318. 319. 320. 321. 322. 323. 324. 325. 326. 327. 328. 329. 330. 331. 332. 333. 334. 335. 336. 337. 338. 339. 340. 341. 342. 343. 344. 345. 346. 347. 348. 349. 350. 351. 352. 353. 354. 355. 356. 357. 358. 359. 360. 361. 362. 363. 364. 365. 366. 367. 368. 369. 370. 371. 372. 373. 374. 375. 376. 377. 378. 379. 380. 381. 382. 383. 384. 385. 386. 387. 388. 389. 390. 391. 392. 393. 394. 395. 396. 397. 398. 399. 400. 401. 402. 403. 404. 405. 406. 407. 408. 409. 410. 411. 412. 413. 414. 415. 416. 417. 418. 419. 420. 421. 422. 423. 424. 425. 426. 427. 428. 429. 430. 431. 432. 433. 434. 435. 436. 437. 438. 439. 440. 441. 442. 443. 444. 445. 446. 447. 448. 449. 450. 451. 452. 453. 454. 455. 456. 457. 458. 459. 460. 461. 462. 463. 464. 465. 466. 467. 468. 469. 470. 471. 472. 473. 474. 475. 476. 477. 478. 479. 480. 481. 482. 483. 484. 485. 486. 487. 488. 489. 490. 491. 492. 493. 494. 495. 496. 497. 498. 499. 500. 501. 502. 503. 504. 505.
#include <amxmodx>
#include <cstrike>
#include <fakemeta>
#include <colorchat>
#include <codmod>
new const g_iMaxAmmo[31]={0,52,0,90,1,32,1,100,90,1,120,100,100,90,90,90,100,120,30,120,200,32,90,120,90,2,35,90,90,0,100};
new const g_iMaxClip[31] = { -1, 13, -1, 10, 1, 7, 1, 30, 30, 1, 30, 20, 25, 30, 35, 25, 12, 20,
10, 30, 100, 8, 30, 30, 20, 2, 7, 30, 30, -1, 50 };
new g_iOddajId[33];
new bool:g_bDostalPrzedmiot[33];
new bool:g_bDajPerk[33];
public plugin_init()
{
register_plugin("COD: Shop", "1.0", "d0naciak");
register_clcmd("say /sklep", "cmd_Sklep");
register_clcmd("say /wymien", "cmd_ZamienPerk");
register_clcmd("say /oddaj", "cmd_OddajPerk");
register_event("ResetHUD", "ev_ResetHUD", "abe");
}
public ev_ResetHUD(id)
g_bDostalPrzedmiot[id] = false;
public cod_perk_changed(id, iPerkId)
{
g_bDostalPrzedmiot[id] = false;
if(g_bDajPerk[id])
{
g_bDajPerk[id] = false;
return COD_CONTINUE;
}
if(!iPerkId)
return COD_CONTINUE;
new szPerkName[32];
cod_get_perk_name(iPerkId, szPerkName, 31);
if(szPerkName[0] == '+')
return COD_CONTINUE;
if(contain(szPerkName, "Szkoleniowca") != -1)
replace(szPerkName, 31, " Szkoleniowca", "");
else if(contain(szPerkName, "Zawodowca") != -1)
replace(szPerkName, 31, " Zawodowca", "");
else if(contain(szPerkName, "Elity") != -1)
replace(szPerkName, 31, " Elity", "");
else
return COD_CONTINUE;
cod_set_user_perk(id, cod_get_perkid(szPerkName));
return COD_STOP;
}
public cmd_Sklep(id)
{
new iMenu = menu_create("Sklep yNoCheatsd.eu", "Sklep_Handler");
if(is_user_vip(id))
{
menu_additem(iMenu, "Doswiadczenie d[Od 1Lvl] y[5 000$]");
menu_additem(iMenu, "Doswiadczenie d[Od 10Lvl] y[5 000$]");
menu_additem(iMenu, "Doswiadczenie d[Od 30Lvl] y[5 000$]");
menu_additem(iMenu, "Perk d[Od 1Lvl] y[6 000]");
menu_additem(iMenu, "Ulepsz perk d[Od 10Lvl] y[1 250$]");
menu_additem(iMenu, "Amunicja d[Od 1Lvl] y[50$]");
menu_additem(iMenu, "Magazynki d[Od 1Lvl] y[120$]");
}
else
{
menu_additem(iMenu, "Doswiadczenie d[Od 1Lvl] y[10 000$]");
menu_additem(iMenu, "Doswiadczenie d[Od 10Lvl] y[10 000$]");
menu_additem(iMenu, "Doswiadczenie d[Od 30Lvl] y[10 000$]");
menu_additem(iMenu, "Perk d[Od 10Lvl] y[12 000$]");
menu_additem(iMenu, "Ulepsz perk d[Od 1Lvl] y[2 500$]");
menu_additem(iMenu, "Amunicja d[Od 1Lvl] y[100$]");
menu_additem(iMenu, "Magazynki d[Od 1Lvl] y[240$]");
}
menu_display(id, iMenu);
return PLUGIN_HANDLED;
}
public Sklep_Handler(id, iMenu, iItem)
{
if(!is_user_connected(id))
return PLUGIN_CONTINUE;
new iKasa = cs_get_user_money(id);
new iPoziom = cod_get_user_level(id);
new iDzielnik = is_user_vip(id) ? 2 : 1;
switch(iItem)
{
case 0:
{
if(iKasa >= 10000 / iDzielnik)
{
new iDodatkowyExp = random_num(1, 50);
cod_set_user_xp(id, cod_get_user_xp(id) + iDodatkowyExp);
ColorChat(id, GREEN, "[COD:SHOP]^x01 Kupiles ^x03+%d^x01XP!", iDodatkowyExp);
cs_set_user_money(id, iKasa - 10000/ iDzielnik);
}
else
{
ColorChat(id, GREEN, "[COD:SHOP]^x01 Za malo hajsu!");
}
}
case 1:
{
if(iPoziom >= 10)
{
if(iKasa >= 10000 / iDzielnik)
{
new iDodatkowyExp = random_num(50, 250);
cod_set_user_xp(id, cod_get_user_xp(id) + iDodatkowyExp);
ColorChat(id, GREEN, "[COD:SHOP]^x01 Kupiles ^x03+%d^x01XP!", iDodatkowyExp);
cs_set_user_money(id, iKasa - 10000 / iDzielnik);
}
else
{
ColorChat(id, GREEN, "[COD:SHOP]^x01 Za malo hajsu!");
}
}
else
{
ColorChat(id, GREEN, "[COD:SHOP]^x01 Zbyt maly poziom!");
}
}
case 2:
{
if(iPoziom >= 30)
{
if(iKasa >= 10000 / iDzielnik)
{
new iDodatkowyExp = random_num(250, 500);
cod_set_user_xp(id, cod_get_user_xp(id) + iDodatkowyExp);
ColorChat(id, GREEN, "[COD:SHOP]^x01 Kupiles ^x03+%d^x01XP!", iDodatkowyExp);
cs_set_user_money(id, iKasa - 10000 / iDzielnik);
}
else
{
ColorChat(id, GREEN, "[COD:SHOP]^x01 Za malo hajsu!");
}
}
else
{
ColorChat(id, GREEN, "[COD:SHOP]^x01 Zbyt maly poziom!");
}
}
case 3:
{
if(iKasa >= 12000 / iDzielnik)
{
cod_set_user_perk(id, -1);
ColorChat(id, GREEN, "[COD:SHOP]^x01 Kupiles ^x03losowy perk^x01!");
cs_set_user_money(id, iKasa - 12000 / iDzielnik);
}
else
{
ColorChat(id, GREEN, "[COD:SHOP]^x01 Za malo hajsu!");
}
}
case 4:
{
if(iPoziom >= 10)
{
if(iKasa >= 2500 / iDzielnik)
{
new iPerkId = UlepszPerk(id);
if(iPerkId)
{
new szNazwaPerku[32];
cod_get_perk_name(iPerkId, szNazwaPerku, 31);
ColorChat(id, GREEN, "[COD:SHOP]^x01 Kupiles ^x03ulepszenie perku^x01!");
ColorChat(id, GREEN, "[COD:SHOP]^x01 Ulepszono na:^x03 %s", szNazwaPerku);
cs_set_user_money(id, iKasa - 2500 / iDzielnik);
}
}
else
{
ColorChat(id, GREEN, "[COD:SHOP]^x01 Za malo hajsu!");
}
}
else
{
ColorChat(id, GREEN, "[COD:SHOP]^x01 Zbyt maly poziom!");
}
}
case 5:
{
if(is_user_alive(id))
{
if(iKasa >= 100 / iDzielnik)
{
new iWeapon = get_user_weapon(id);
if(g_iMaxClip[iWeapon] != -1)
set_user_clip(id, g_iMaxClip[iWeapon]);
ColorChat(id, GREEN, "[COD:SHOP]^x01 Kupiles ^x03amunicje^x01!");
cs_set_user_money(id, iKasa - 100 / iDzielnik);
}
else
{
ColorChat(id, GREEN, "[COD:SHOP]^x01 Za malo hajsu!");
}
}
}
case 6:
{
if(is_user_alive(id))
{
if(iKasa >= 240 / iDzielnik)
{
new iWeapons[32], iWeaponsNum;
get_user_weapons(id, iWeapons, iWeaponsNum);
for(new i = 0; i <= iWeaponsNum; i++)
if(g_iMaxAmmo[iWeapons[i]] > 0)
cs_set_user_bpammo(id, iWeapons[i], g_iMaxAmmo[iWeapons[i]]);
ColorChat(id, GREEN, "[COD:SHOP]^x01 Kupiles ^x03magazynki^x01!");
cs_set_user_money(id, iKasa - 240 / iDzielnik);
}
else
{
ColorChat(id, GREEN, "[COD:SHOP]^x01 Za malo hajsu!");
}
}
}
}
menu_destroy(iMenu);
return PLUGIN_CONTINUE;
}
public cmd_ZamienPerk(id)
{
new nazwa[64], perk[64], item[128];
new menu = menu_create("Zamien sie perkiem", "ZamienPerk_Handle");
new cb = menu_makecallback("ZamienPerk_Callback");
for(new i=0, n=0; i<=32; i++)
{
if(!is_user_connected(i))
continue;
g_iOddajId[n++] = i;
get_user_name(i, nazwa, 63)
cod_get_perk_name(cod_get_user_perk(i), perk, 63);
formatex(item, 127, "%s y- %s", nazwa, perk);
menu_additem(menu, item, "0", 0, cb);
}
menu_display(id, menu);
}
public ZamienPerk_Handle(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_CONTINUE;
}
if(!is_user_connected(g_iOddajId[item])){
client_print(id, print_chat, "Nie odnaleziono zadanego gracza.");
return PLUGIN_CONTINUE;
}
if(g_bDostalPrzedmiot[g_iOddajId[item]]){
client_print(id, print_chat, "Wybrany gracz musi poczekac 1 runde.");
return PLUGIN_CONTINUE;
}
if(g_bDostalPrzedmiot[id]){
client_print(id, print_chat, "Musisz poczekac 1 runde.");
return PLUGIN_CONTINUE;
}
if(!cod_get_user_perk(g_iOddajId[item])){
client_print(id, print_chat, "Wybrany gracz nie mam zadnego perka.");
return PLUGIN_CONTINUE;
}
if(!cod_get_user_perk(id)){
client_print(id, print_chat, "Nie masz zadnego perka.");
return PLUGIN_CONTINUE;
}
new nazwa_menu[128], nick[64], perk[64];
get_user_name(id, nick, charsmax(nick))
cod_get_perk_name(cod_get_user_perk(id), perk, 63);
formatex(nazwa_menu, charsmax(nazwa_menu), "Wymien sie perkiem %s z %s:", perk, nick)
new menu2 = menu_create(nazwa_menu, "menu_wymien");
menu_additem(menu2, "Tak", nick);
menu_addblank(menu2, 0)
menu_additem(menu2, "Nie", nick);
menu_setprop(menu2, MPROP_EXITNAME, "Wyjdz");
menu_display(g_iOddajId[item], menu2);
return PLUGIN_CONTINUE;
}
public menu_wymien(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_CONTINUE;
}
new access, callback, data[64];
menu_item_getinfo(menu, item, access, data, charsmax(data), _, _, callback);
new id2 = get_user_index(data)
switch(item)
{
case 0:
{
new perk_oddajacego = cod_get_user_perk(id2)
new perk_dajacego = cod_get_user_perk(id)
cod_set_user_perk(id2, perk_dajacego);
cod_set_user_perk(id, perk_oddajacego);
g_bDajPerk[id] = true;
g_bDajPerk[id2] = true;
g_bDostalPrzedmiot[id2] = true;
g_bDostalPrzedmiot[id] = true;
new nazwa_dajacego[64];
get_user_name(id, nazwa_dajacego, charsmax(nazwa_dajacego))
client_print(id, print_chat, "Wymieniles sie perkiem z %s.", data);
client_print(id2, print_chat, "Wymieniles sie perkiem z %s.", nazwa_dajacego)
}
case 1: client_print(id2, print_chat, "Wybrany gracz nie zgodzil sie na wymiane perka.")
}
return PLUGIN_CONTINUE;
}
public cmd_OddajPerk(id)
{
new nazwa[64];
new menu = menu_create("Przekazywanie Perku", "OddajPerk_Handle");
new cb = menu_makecallback("OddajPerk_Callback");
for(new i=0, n=0; i<=32; i++)
{
if(!is_user_connected(i))
continue;
g_iOddajId[n++] = i;
get_user_name(i, nazwa, 63)
menu_additem(menu, nazwa, "0", 0, cb);
}
menu_setprop(menu,MPROP_NUMBER_COLOR,"y");
menu_setprop(menu, MPROP_EXITNAME, "Wyjdz");
menu_display(id, menu);
}
public OddajPerk_Handle(id, menu, item)
{
if(item == MENU_EXIT)
{
menu_destroy(menu);
return PLUGIN_CONTINUE;
}
if(!is_user_connected(g_iOddajId[item]))
{
client_print(id, print_chat, "Nie odnaleziono zadanego gracza.");
return PLUGIN_CONTINUE;
}
if(g_bDostalPrzedmiot[id])
{
client_print(id, print_chat, "Musisz poczekac 1 runde.");
return PLUGIN_CONTINUE;
}
new wartosc_perku_dajacego;
new perk_dajacego = cod_get_user_perk(id, wartosc_perku_dajacego);
if(!perk_dajacego)
{
client_print(id, print_chat, "Nie masz zadnego perku.");
return PLUGIN_CONTINUE;
}
new nazwa_dajacego[64];
new nazwa_otrzymujacego[64];
get_user_name(id, nazwa_dajacego, 63)
get_user_name(g_iOddajId[item], nazwa_otrzymujacego, 63)
g_bDajPerk[g_iOddajId[item]] = true;
g_bDostalPrzedmiot[g_iOddajId[item]] = true;
cod_set_user_perk(g_iOddajId[item], perk_dajacego, wartosc_perku_dajacego, 0);
client_print(id, print_chat, "Przekazales perk graczowi %s.", nazwa_otrzymujacego);
client_print(g_iOddajId[item], print_chat, "Dostales perk od gracza %s.", nazwa_dajacego);
cod_set_user_perk(id, 0);
return PLUGIN_CONTINUE;
}
public OddajPerk_Callback(id, menu, item)
{
if(g_iOddajId[item] == id || !cod_get_user_class(g_iOddajId[item]) || cod_get_user_perk(g_iOddajId[item]))
return ITEM_DISABLED;
return ITEM_ENABLED;
}
public ZamienPerk_Callback(id, menu, item)
{
if(g_iOddajId[item] == id || !cod_get_user_class(g_iOddajId[item]) || !cod_get_user_perk(g_iOddajId[item]))
return ITEM_DISABLED;
return ITEM_ENABLED;
}
public UlepszPerk(id)
{
new iPerkId = cod_get_user_perk(id);
if(!iPerkId)
return 0;
new szNazwaPerku[32];
cod_get_perk_name(iPerkId, szNazwaPerku, 31);
if(szNazwaPerku[0] == '+')
{
ColorChat(id, GREEN, "[COD:SHOP]^x01 Tego perka nie da sie ulepszac!");
return 0;
}
if(contain(szNazwaPerku, "Szkoleniowca") != -1)
{
replace(szNazwaPerku, 31, "Szkoleniowca", "Zawodowca");
}
else if(contain(szNazwaPerku, "Zawodowca") != -1)
{
replace(szNazwaPerku, 31, "Zawodowca", "Elity");
}
else if(contain(szNazwaPerku, "Elity") == -1)
{
format(szNazwaPerku, 31, "%s Szkoleniowca", szNazwaPerku);
}
else
{
ColorChat(id, GREEN, "[COD:SHOP]^x01 Posiadasz najwyzszy poziom ulepszenia!");
return 0;
}
iPerkId = cod_get_perkid(szNazwaPerku);
g_bDajPerk[id] = true;
cod_set_user_perk(id, iPerkId, -1, 0);
return iPerkId;
}
stock is_user_vip(id)
{
if(get_user_flags(id) & ADMIN_LEVEL_H)
return 1;
return 0;
}
stock set_user_clip(id, ammo)
{
new weaponname[32], weaponid = -1, weapon = get_user_weapon(id, _, _);
get_weaponname(weapon, weaponname, 31);
while ((weaponid = engfunc(EngFunc_FindEntityByString, weaponid, "classname", weaponname)) != 0)
if (pev(weaponid, pev_owner) == id) {
set_pdata_int(weaponid, 51, ammo, 4);
return weaponid;
}
return 0;
}
Dodanych wklejek: 15354
Powered By (Pav32) Pastebin © 2011


Dodatki SourceMod


