Advertisement
Guest User

Untitled

a guest
Jul 9th, 2015
280
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 26.70 KB | None | 0 0
  1. //Impelacja Kodu SMS API NetShoot.pl Code Game
  2. #define netshoot_account_id 54033 // id konta na netshoot
  3. #define netshoot_del 1 // Ustawiamy czy dany kod może być użyty ponownie :)
  4.  
  5. new dbCod[MAX_PLAYERS][128];
  6.  
  7. #define DIALOG_PORTFEL_SHOP_CAPTCHA 780
  8. #define DIALOG_PORTFEL_SHOP_LIST 781
  9. #define DIALOG_PORTFEL_SHOP_CODE 782
  10. #define DIALOG_PORTFEL_CMD 783
  11. #define DIALOG_PORTFEL_STAN 784
  12. #define DIALOG_PORTFEL_REGULAMIN 785
  13. #define DIALOG_PORTFEL_KUPNO 786
  14. #define DIALOG_PORTFEL_VIP 787
  15. #define DIALOG_PORTFEL_SCORE 788
  16. #define DIALOG_PORTFEL_WYBOR 789
  17. #define DIALOG_PORTFEL_PRZESLIJ 790
  18. #define GUI_KASA_PRZELEW 791
  19. #define GUI_EXP_PRZELEW 792
  20. #define GUI_KASA_PRZELEW2 793
  21. #define GUI_EXP_PRZELEW2 794
  22. #define DIALOG_CHECK 795
  23. #define DIALOG_PORTFEL_FREE_CODE 796
  24. stock pokazdoladowanie(li)
  25. {
  26. new value;
  27. switch(li)
  28. {
  29. case 1: value = 1;
  30. case 2: value = 2;
  31. case 3: value = 3;
  32. case 4: value = 4;
  33. case 5: value = 5;
  34. case 6: value = 6;
  35. case 7: value = 9;
  36. case 8: value = 19;
  37. case 9: value = 25;
  38. }
  39. return value;
  40. }
  41. enum _API_sms
  42. {
  43. SMS,
  44. NUMER,
  45. SERVICE,
  46. KWOTA,
  47. COST[10]
  48. };
  49.  
  50. new API_sms[][_API_sms] = {
  51. { 1, 7143, 7143, 1, {"1,23"}},
  52. { 2, 72550, 8649, 2, {"2,46"}},
  53. { 3, 73550, 8650, 3, {"3,69"}},
  54. { 4, 74550, 8651, 5, {"4,92"}},
  55. { 5, 75550, 8652, 6, {"6,15"}},
  56. { 6, 76550, 8653, 8, {"7,38"}},
  57. { 9, 79550, 8654, 11, {"11,07"}},
  58. { 19, 91909, 8655, 25, {"23,37"}},
  59. { 25, 92505, 8656, 35, {"30,75"}}
  60. };
  61.  
  62.  
  63.  
  64. CMD:portfel(playerid, cmd[])
  65. {
  66. if(pInfo[playerid][logged] == false)
  67. return SendPlayerMessage(playerid, COLOR_ERROR, "{FF0000} *{/b} Aby mieć dostęp do tej komendy musisz się zarejestrować. {d}/Register [hasło]{/b}!"); //wygenerowany
  68.  
  69. ShowPlayerDialog(playerid, DIALOG_PORTFEL_CMD, DIALOG_STYLE_LIST, "{EAB171}Portfel gracza", "{EAB171}Doladuj portfel\n{EAB171}Stan portfela\n{EAB171}Kupno\n{EAB171}Regulamin\n{EAB171}Przelew srodkow\n{EAB171}Darmowy Kod", "Ok", "Anuluj");
  70. return 1;
  71. }
  72.  
  73. p_OnDialogResponse(playerid, dialogid, response, listitem, text[])
  74. {
  75. switch(dialogid)
  76. {
  77.  
  78. case DIALOG_PORTFEL_SHOP_CAPTCHA:
  79. {
  80. if(!response)
  81. return DeletePVar(playerid, "vip_captcha");
  82. new info[ 64 ],
  83. captcha[ 26 ],
  84. chars[] ={
  85. 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'r',
  86. 's', 'k', 'u', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'}
  87. ;
  88. GetPVarString(playerid, "vip_captcha", captcha, sizeof captcha);
  89.  
  90. if(!strcmp(text, captcha, true) && text[ 0 ])
  91. {
  92. new buff[ 740 ];
  93. for(new i = 0;i != sizeof API_sms;i++)
  94. format(buff, sizeof buff, "%s{AC3E00}%d{EAB171} zł do portfela koszt ({AC3E00}%s {EAB171}zł)\n", buff, API_sms[i][KWOTA], API_sms[i][COST]);
  95. ShowPlayerDialog(playerid, DIALOG_PORTFEL_SHOP_LIST, DIALOG_STYLE_LIST, "Doladowanie portfela", buff, "Gotowe", "Anuluj");
  96. DeletePVar(playerid, "vip_captcha");
  97. }
  98. else {
  99. for(new c; c != sizeof captcha-1; c++)
  100. captcha[c] = chars[random(sizeof chars)];
  101. SetPVarString(playerid, "vip_captcha", captcha);
  102. format(info, sizeof info, "{EAB171}Przepisz kod, aby kontynować:\n{AC3E00}%s", captcha);
  103. ShowPlayerDialog(playerid, DIALOG_PORTFEL_SHOP_CAPTCHA, DIALOG_STYLE_INPUT, "{AC3E00}KOD CAPTCHA ZABEZPIECZENIA", info, "Gotowe", "Anuluj");
  104. }
  105. return 1;
  106. }
  107. case DIALOG_PORTFEL_SHOP_LIST:
  108. {
  109. if(!response) return 1;
  110.  
  111. SetPVarInt(playerid, "portfel_smsid", listitem);
  112.  
  113. new msg[512] = "{FFFFFF}Jeżeli chcesz doładować wirtualny portfel o";
  114.  
  115. format(msg, sizeof(msg), "%s %d zł wyślij SMS to treści {8CED15}SH%d.PSZ na numer{AC3E00} %d{FFFFFF} \nkoszt SMS to %d netto (%s brutto)", msg, API_sms[listitem][KWOTA], pokazdoladowanie(listitem+1), API_sms[listitem][NUMER], API_sms[listitem][SMS], API_sms[listitem][COST]);
  116. format(msg, sizeof(msg), "%s\nPo wysłaniu SMS wpisz poniżej kod zwrotny.\n\n", msg);
  117. format(msg, sizeof(msg), "%sWysyłając SMS akceptujesz regulamin usług płatnych dostepny pod komendą /portfel\n\n", msg);
  118. format(msg, sizeof(msg), "%sReklamacje dotyczące usługi należy składać pod adresem e-mail bok@servhost.pl\n", msg);
  119. format(msg, sizeof(msg), "%sUsługa zrealizowana przy współpracy z ServHost.pl - Profesjonalnym hostingiem serwerów\n", msg);
  120.  
  121.  
  122. ShowPlayerDialog(playerid, DIALOG_PORTFEL_SHOP_CODE, DIALOG_STYLE_INPUT, "Doładowanie Portfela", msg, "Dalej", "Anuluj");
  123. return 1;
  124. }
  125. case DIALOG_PORTFEL_SHOP_CODE:
  126. {
  127.  
  128. if(!response) return 1;
  129.  
  130. if(!text[0])
  131. {
  132. SendPlayerMessage(playerid, COLOR_ERROR, "* Podałeś błędny kod.");
  133. new msg[1300] = "{FF0000}Kod powinien składać się z 8 znaków. Wpisz poprawny kod\n{FFFFFF}Jeżeli chcesz doładować wirtualny portfel o";
  134.  
  135. format(msg, sizeof(msg), "%s %d zł wyślij SMS to treści {AC3E00}AD.PORTFELDS{FFFFFF} na numer{AC3E00} %d{FFFFFF} \nkoszt SMS to %d netto (%s brutto)", msg, API_sms[GetPVarInt(playerid, "portfel_smsid")][KWOTA], API_sms[GetPVarInt(playerid, "portfel_smsid")][NUMER], API_sms[GetPVarInt(playerid, "portfel_smsid")][SMS], API_sms[GetPVarInt(playerid, "portfel_smsid")][COST]);
  136. format(msg, sizeof(msg), "%s\nPo wysłaniu SMS wpisz poniżej kod zwrotny.\n\n", msg);
  137. format(msg, sizeof(msg), "%sWysyłając SMS akceptujesz regulamin usług płatnych dostepny pod komendą /portfel\n\n", msg);
  138. format(msg, sizeof(msg), "%sReklamacje dotyczące usługi należy składać pod adresem e-mail bok@servhost.pl\n", msg);
  139. format(msg, sizeof(msg), "%sUsługa zrealizowana przy współpracy z ServHost.pl - Profesjonalnym hostingiem serwerów\n", msg);
  140.  
  141.  
  142. ShowPlayerDialog(playerid, DIALOG_PORTFEL_SHOP_CODE, DIALOG_STYLE_INPUT, "Doładowanie Portfela", msg, "Dalej", "Anuluj");
  143.  
  144. return 1;
  145. }
  146.  
  147.  
  148. format(dbCod[playerid], 125, "%s", text);
  149. SendPlayerMessage(playerid, COLOR_INFO2, "* Trwa sprawdzanie kodu SMS {b}%s{/b}.", text);
  150.  
  151. new msg[256] = "servhost.pl/sms_api.php?key=p8x8sokymwaw2icafwnm90dpg";
  152. format(msg, sizeof(msg), "%s&code=%s&number=%d", msg, text, API_sms[GetPVarInt(playerid, "portfel_smsid")][NUMER]);
  153. HTTP(playerid, HTTP_GET, msg, "", "checkPortfelCode");
  154.  
  155. /* if(!response) return 0;
  156.  
  157. mysql_query_format("select id from p_SH_Log where msg = %d and amount = %d and server_active = 0 and `desc`='OK' order by ts desc limit 1", pInfo[playerid][playerAcId], API_sms[GetPVarInt(playerid, "portfel_smsid")][SMS]);
  158. mysql_store_result();
  159.  
  160. if(mysql_num_rows() != 0){
  161. new idd_ = mysql_fetch_int();
  162. mysql_free_result();
  163.  
  164. format(string2, sizeof(string2), "Sukcces\n\nWykryto wysłanego SMS\n\nAktualnie posiadasz %d w portfelu", getPlayerCashInPortfel(playerid));
  165. InfoBox(playerid, string2);
  166. mysql_query_format("update p_SH_Log set server_active = 1 where id = %d", idd_);
  167.  
  168. printf("[portfel] update p_SH_Log set server_active = 1 where id = %d", idd_);
  169.  
  170. } else {
  171. new porft = pInfo[playerid][playerPortfel]; //nie zmieniać
  172. if(porft != getPlayerCashInPortfel(playerid)){
  173. format(string2, sizeof(string2), "Sukcces/Błąd\n\nNie wykryto wysłanego SMS lecz stan konta w portfelu zmienił się\n\nAktualnie posiadasz %d w portfelu", getPlayerCashInPortfel(playerid));
  174. InfoBox(playerid, string2);
  175. } else {
  176. InfoBox(playerid, "Błąd\n\nNie odnaleziono SMS\nJeśli otrzymałeś SMS zwrotny\nSpróbuj połączyć się z serwerem od nowa (wyjsć i wejść)");
  177. }
  178. }
  179. */
  180. return 1;
  181. }
  182. case DIALOG_PORTFEL_WYBOR:
  183. {
  184. if(!response)
  185. return 1;
  186. switch(listitem)
  187. {
  188. case 0: ShowPlayerDialog(playerid, DIALOG_PORTFEL_VIP, 2, " {FFE5A1}Sklep-VIP", "{EAB171}14dni Cena:\\t {AC3E00}2{EAB171}zł\n{EAB171}30dni Cena:\\t {AC3E00}6{EAB171}zł\n{EAB171}45dni Cena:\\t {AC3E00}9{EAB171}zł\n{EAB171}60dni Cena:\\t {AC3E00}12{EAB171}zł\n{EAB171}90dni Cena:\\t {AC3E00}16{EAB171}zł\n", "Kup", "Anuluj");
  189. case 1: ShowPlayerDialog(playerid, DIALOG_PORTFEL_SCORE, 2, " {FFE5A1}Sklep-Exp", "{EAB171}500Exp Cena:\\t {AC3E00}1{EAB171}zł\n{EAB171}1000Exp Cena:\\t {AC3E00}3{EAB171}zł\n{EAB171}3000Exp Cena:\\t {AC3E00}6{EAB171}zł\n{EAB171}5000Exp Cena:\\t {AC3E00}8{EAB171}zł\n{EAB171}10000Exp Cena:\\t {AC3E00}15{EAB171}zł\n", "Kup", "Anuluj");
  190. case 2:
  191. {
  192.  
  193. new kwota = 16,
  194. dni = 30;
  195. if(getPlayerCashInPortfel(playerid) < kwota-0.01)
  196. return ShowPlayerDialog(playerid, DIALOG_PORTFEL_VIP+109, 0, "{FFE5A1}ERROR", "{FFE5A1}Nie masz takiej sumy w portfelu!\n{FFE5A1}Doładuj pierw portfel (16zł)", "OK", "");
  197.  
  198. pInfo[playerid][playerModeratorTime] = 30;
  199. pInfo[playerid][playerModeratorPermission] = 1;
  200. mysql_query_format("Update p_Players SET ModPlayer = 1, ModTime = IF(ModTime>NOW(), ModTime, NOW())+INTERVAL %d DAY WHERE id=%d LIMIT 1", dni, pInfo[playerid][playerAcId]);
  201. mysql_query_format("select ModTime FROM "prefix"Players where `Nick`='%s' limit 1", playerNick(playerid));
  202. mysql_store_result();
  203. mysql_fetch_row(string2);
  204. mysql_free_result();
  205. format(string2, sizeof ( string2 ), "{FFE5A1}Twój moderator jest ważny do {DEAF21}%s \n\n Logujesz się /mlogin %s", string2, current[modpass]);
  206. ShowPlayerDialog(playerid, DIALOG_PORTFEL_VIP+108, 0, "{FFE5A1}Sukces!", string2, "OK", "");
  207.  
  208. givePlayerPortfel(playerid, -kwota);
  209.  
  210. mysql_query_format("insert into "prefix"portfel_log (`Nick`, `Data`, `Status`, `Kod`) VALUES ('%s', NOW(), 'Moderator DO: %s', 'Portfel - ViP')", playerNick(playerid), string2);
  211. }
  212. }
  213. return 1;
  214. }
  215. case DIALOG_PORTFEL_VIP:{
  216. if(!response)
  217. return 1;
  218.  
  219. new str[ 80 ],
  220. buff[ 32 ],
  221. kwota = 0,
  222. dni = 0
  223. ;
  224. if(listitem == 0){
  225. kwota = 2;
  226. dni = 14;
  227. }
  228. else if(listitem == 1){
  229. kwota = 6;
  230. dni = 30;
  231. }
  232. else if(listitem == 2){
  233. kwota = 9;
  234. dni = 45;
  235. }
  236. else if(listitem == 3){
  237. kwota = 12;
  238. dni = 60;
  239. }
  240. else if(listitem == 4){
  241. kwota = 16;
  242. dni = 90;
  243. }
  244.  
  245. if(getPlayerCashInPortfel(playerid) < kwota-0.01)
  246. return ShowPlayerDialog(playerid, DIALOG_PORTFEL_VIP+109, 0, "{FFE5A1}ERROR", "{FFE5A1}Nie masz takiej sumy w portfelu!\n{FFE5A1}Doładuj pierw portfel", "OK", "");
  247.  
  248. pInfo[playerid][playerVip] = true;
  249. mysql_query_format("Update "prefix"Players SET Vip = IF(Vip>NOW(), Vip, NOW())+INTERVAL %d DAY WHERE id=%d LIMIT 1", dni, pInfo[playerid][playerAcId]);
  250. mysql_query_format("select Vip FROM "prefix"Players where `Nick`='%s' limit 1", playerNick(playerid));
  251. mysql_store_result();
  252. mysql_fetch_row(buff);
  253. mysql_free_result();
  254. format(str, sizeof str, "{FFE5A1}Twoje konto VIP ważne do {DEAF21}%s ", buff);
  255. ShowPlayerDialog(playerid, DIALOG_PORTFEL_VIP+108, 0, "{FFE5A1}Sukces!", str, "OK", "");
  256.  
  257. givePlayerPortfel(playerid, -kwota);
  258.  
  259. mysql_query_format("insert into "prefix"portfel_log (`Nick`, `Data`, `Status`, `Kod`) VALUES ('%s', NOW(), 'VIP DO: %s', 'Portfel - ViP')", playerNick(playerid), buff);
  260. return 1;
  261. }
  262. case DIALOG_PORTFEL_SCORE:
  263. {
  264. if(!response)
  265. return 1;
  266. new bufffs[ 162 ],
  267. kwotaa = 0,
  268. score = 0
  269. ;
  270. if(listitem == 0) {kwotaa = 1; score = 500; }
  271. else if(listitem == 1){kwotaa = 3; score = 1000; }
  272. else if(listitem == 2){kwotaa = 6; score = 3000; }
  273. else if(listitem == 3){kwotaa = 8; score = 5000; }
  274. else if(listitem == 4){kwotaa = 15; score = 10000;}
  275. if(getPlayerCashInPortfel(playerid) < kwotaa-0.01)
  276. return ShowPlayerDialog(playerid, DIALOG_PORTFEL_SCORE+189 , 0 , "{FFE5A1}ERROR", "{FFE5A1}Nie masz takiej sumy w portfelu!\n{FFE5A1}Doładuj pierw portfel", "OK", "");
  277.  
  278. mysql_query_format("INSERT INTO "prefix"portfel_log (`Nick`, `Data`, `Status`, `Kod`) VALUES ('%s', NOW(), 'Score: %d Kupil: %d', 'Portfel- Exp')", playerNick(playerid), pInfo[playerid][playerScore], score);
  279. givePlayerExp(playerid, score);
  280. givePlayerPortfel(playerid, -kwotaa);
  281. format(bufffs, sizeof bufffs, "{FFE5A1}Zakupiłeś {DEAF21}%d {FFE5A1}Exp, łącznie posiadasz{DEAF21}%d {FFE5A1}Score", score, pInfo[playerid][playerScore]);
  282. ShowPlayerDialog(playerid, DIALOG_PORTFEL_SCORE+187 , 0 , "{FFE5A1}Sukces!", bufffs, "OK", "");
  283. //pInfo[playerid][playerPortfel] -= kwotaa;
  284. return 1;
  285. }
  286. case DIALOG_PORTFEL_CMD:
  287. {
  288. if(!response) return 1;
  289.  
  290. switch(listitem){
  291. case 0:
  292. {
  293. new info[ 64 ],
  294. captcha[ 6 ],
  295. chars[] =
  296. {
  297. 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'r',
  298. 's', 'k', 'u', 'w', 'x', 'y', 'z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9'
  299. };
  300.  
  301. for(new c; c != sizeof captcha; c++)
  302. captcha[ c ] = chars[random(sizeof chars)];
  303. SetPVarString(playerid, "vip_captcha", captcha);
  304. format(info, sizeof info, "{EAB171}Przepisz kod, CAPTCHA aby kontynować:\n{AC3E00}%s", captcha);
  305. ShowPlayerDialog(playerid, DIALOG_PORTFEL_SHOP_CAPTCHA, DIALOG_STYLE_INPUT, "{FFE5A1}Portfel gracza", info, "Gotowe", "Anuluj");
  306. return 1;
  307. }
  308. case 1:
  309. {
  310. new str[ 128 ];
  311. format(str, sizeof str, "{FFE5A1}Stan twojego portfela wynosi {EAB171}%szł", getPlayerCashInPortfel(playerid));
  312. ShowPlayerDialog(playerid, DIALOG_PORTFEL_STAN, 0, "{FFE5A1}Stan Portfela", str, "OK", "");
  313. return 1;
  314. }
  315. case 2: ShowPlayerDialog(playerid, DIALOG_PORTFEL_WYBOR, 2, "{FFE5A1}Sklep", "{EAB171}Doladuj konto VIP\n{EAB171}Kup Exp\nKup moderatora (Uwaga operacja pobiera 16zl!)", "OK", "Anuluj");
  316. case 3:
  317. {
  318. new StrinG[ 1700 ];
  319. StrinG = "{FF0000}1.Administracja nie ponosi odpowiedzialności za:\n\\t";
  320. strcat(StrinG, "{FF0000}- Błędne treści smsa\n\\t");
  321. strcat(StrinG, "{FF0000}- Błędny numer smsa\n\\t");
  322. strcat(StrinG, "{FF0000}- Za utratę środków w portfelu wynikającą z działania siły wyższej lub niespodziewanych błędów systemu po stronie naszej jak i stronie operatora usług Premium SMS.\n\n");
  323. strcat(StrinG, "{FF0000}2.Nie ma możliwości zwrócenia kosztów za doładowania wykonane w celu doładowania portfela.\n\\t{FF0000}Doładowując portfel jest świadomy że może to wykorzystać tylko i wyłącznie na usługi dodatkowe na serwerze.\n\n");
  324. strcat(StrinG, "{FF0000}3.W przypadku otrzymania bana na serwerze, nie ma możliwości zwrotu środków wpłaconych do portfela.\n\\t{FF0000}Ważnośći usług wykupionych za pomocą środków z portfela, w przypadku bana upływa w normalny sposób. Jeśli chce odzyskać do nich dostęp, musi ubiegać się o odbanowanie.\n\n");
  325. strcat(StrinG, "{FF0000}4.Środki zgromadzone w portfelu mogą zostać wykorzystane na usługi dodatkowe na serwerze takie jak: Konto V.I.P, Score itp.\n\n");
  326. strcat(StrinG, "{FF0000}5.Doładowując swój portfel, akceptuje warunki niniejszego regulaminu oraz regulaminu operatora usług Premium SMS\n");
  327. strcat(StrinG, "{FF0000}6.Pamiętaj że jeśli kupisz i będziesz naużywał konta Moderatora/ViP mogą zostać Ci odebrane.\n");
  328. strcat(StrinG, "\n\n{C0C0C0}Pełny regulamin znajdziesz pod adresem {FFFFFF}black-gamers.eu/portfel");
  329. strcat(StrinG, "\n {C0C0C0}ˆ {FFFFFF}2012-2013");
  330. ShowPlayerDialog(playerid, DIALOG_PORTFEL_STAN, 0, "{FFE5A1}Regulamin portfela", StrinG, "OK", "");
  331. }
  332. case 4: ShowPlayerDialog(playerid, DIALOG_PORTFEL_PRZESLIJ, 2, "{FFE5A1}Sklep", "{EAB171}Prześlij wirtualne pieniądze\n{EAB171}Prześlij Exp", "OK", "Anuluj");
  333. case 5: ShowPlayerDialog(playerid,DIALOG_PORTFEL_FREE_CODE,1,"{FFE5A1} Darmowe kody","{AC3E00}Jeśli dostałeś darmowy kod możesz go tutaj wykorzystać\n{AC3E00}Wystarczy że podasz podasz poniżej ten kod", "OK", "Anuluj");
  334. }
  335. return 1;
  336. }
  337. case DIALOG_PORTFEL_FREE_CODE:
  338. {
  339. if(!response) return 0;
  340. if(!text[0] || strlen(text) != 8)
  341. {
  342. return ShowPlayerDialog(playerid,DIALOG_PORTFEL_FREE_CODE,1,"{FFE5A1} Darmowe kody","\t{FF0000}PODAŁEŚ NIEPRAWIDŁOWY KOD!\n\n\n{AC3E00}Jeśli dostałeś darmowy kod możesz go tutaj wykorzystać\n{AC3E00}Wystarczy że podasz podasz poniżej ten kod", "OK", "Anuluj");
  343. }
  344. new code_text[10];
  345. mysql_real_escape_string(text,code_text);
  346. new str[255],
  347.  
  348. id,
  349. code[9],
  350. days,
  351. status
  352. ;
  353. format(str, sizeof str, "select id,code,days,status from "prefix"Codes where code='%s' limit 1", code_text);
  354. mysql_query(str);
  355.  
  356. mysql_store_result();
  357.  
  358. if(!mysql_num_rows())
  359. {
  360. mysql_free_result();
  361. return ShowPlayerDialog(playerid,DIALOG_PORTFEL_FREE_CODE,1,"{FFE5A1} Darmowe kody","\t{FF0000}PODANY KOD NIE ZOSTAŁ ODNALEZIONY!\n\n\n{AC3E00}Jeśli dostałeś darmowy kod możesz go tutaj wykorzystać\n{AC3E00}Wystarczy że podasz podasz poniżej ten kod", "OK", "Anuluj");
  362. }
  363. if(mysql_fetch_row(string2,"|"))
  364. {
  365. sscanf(string2, "p<|>ds[9]dd",id,code,days,status);
  366. }
  367. mysql_free_result();
  368. switch(status)
  369. {
  370. case 0:
  371. {
  372. new buff[256];
  373. format(buff,sizeof buff,"\t{008000}PODANY KOD JEST POPRAWNY,\n{008000}Twoje konto VIP zostało przedłużone o: {00B300}%d {008000}dni!\n\n\n",days);
  374. ShowPlayerDialog(playerid,DIALOG_PORTFEL_FREE_CODE+69,DIALOG_STYLE_MSGBOX,"{FFE5A1} Darmowe kody",buff, "OK", "");
  375. format(str, sizeof str, "update "prefix"Codes set date_use=NOW(),used=%d,status=1 where code='%s' limit 1", pInfo[playerid][playerAcId],code_text);
  376. mysql_query(str);
  377. pInfo[playerid][playerVip] = true;
  378. mysql_query_format("Update "prefix"Players SET Vip = IF(Vip>NOW(), Vip, NOW())+INTERVAL %d DAY WHERE id=%d LIMIT 1", days, pInfo[playerid][playerAcId]);
  379. }
  380. case 1:ShowPlayerDialog(playerid,DIALOG_PORTFEL_FREE_CODE,1,"{FFE5A1} Darmowe kody","\t{FF0000}PODANY KOD ZOSTAŁ WYKORZYSTANY!\n\n\n{AC3E00}Jeśli dostałeś darmowy kod możesz go tutaj wykorzystać\n{AC3E00}Wystarczy że podasz podasz poniżej ten kod", "OK", "Anuluj");
  381. case 2:ShowPlayerDialog(playerid,DIALOG_PORTFEL_FREE_CODE,1,"{FFE5A1} Darmowe kody","\t{FF0000}PODANY KOD JEST UNIEWAŻNIONY!\n\n\n{AC3E00}Jeśli dostałeś darmowy kod możesz go tutaj wykorzystać\n{AC3E00}Wystarczy że podasz podasz poniżej ten kod", "OK", "Anuluj");
  382. }
  383. return 1;
  384. }
  385. case DIALOG_PORTFEL_PRZESLIJ:
  386. {
  387. if(!response) return 0;
  388. switch(listitem){
  389. case 0: ShowPlayerDialog(playerid, GUI_KASA_PRZELEW, 1, "{FFE5A1}Portfel > Portfel Gracza Przelew", "{EAB171}Podaj kwote w ZŁ którą chcesz przelać na konto innego gracza: ", "Przelej", "Wyjdź");
  390. case 1: ShowPlayerDialog(playerid, GUI_EXP_PRZELEW, 1, "{FFE5A1}Portfel > EXP", "{EAB171}Podaj kwote EXP którą chcesz przelać na konto innego gracza: ", "Przelej", "Wyjdź");
  391. }
  392. return 1;
  393. }
  394.  
  395. case GUI_EXP_PRZELEW:
  396. {
  397. if(!response)
  398. return 1;
  399. new str4[ 128 ];
  400. if(pInfo[playerid][playerScore] < strval(text))
  401. return ShowPlayerDialog(playerid, GUI_EXP_PRZELEW, 1, "{FFE5A1}Portfel > Przelew EXP", "{FFE5A1}Nie posiadasz takiej ilości EXP\n{FFE5A1}Podaj kwote którą chcesz przelać na konto innego gracza: ", "Przelej", "Wyjdź");
  402. if(strval(text) < 1 || strval(text) > 10000)
  403. return ShowPlayerDialog(playerid, GUI_EXP_PRZELEW, 1, "{FFE5A1}Portfel > Przelew EXP", "{FFE5A1}Zła liczba EXP\n{FFE5A1}Podaj kwote którą chcesz przelać na konto innego gracza: ", "Przelej", "Wyjdź");
  404. SetPVarInt(playerid, "e", strval(text));
  405. format(str4, sizeof str4, "{FFE5A1}Kwota: {AC3E00}%d EXP\n{FFE5A1}Podaj id gracza:", strval(text));
  406. ShowPlayerDialog(playerid, GUI_EXP_PRZELEW2, 1, "{FFE5A1}Portfel > Przelew", str4, "Przelej", "Wyjdz");
  407. return 1;
  408. }
  409. case GUI_EXP_PRZELEW2:
  410. {
  411. if(!response)
  412. return 1;
  413. if(!IsPlayerConnected(strval(text)))
  414. return SendPlayerMessage(playerid, COLOR_ERROR, "{FF0000} *{/b} {CC0000} Nie ma takiego gracza!"); //wygenerowany
  415. if(playerid == strval(text))
  416. return SendPlayerMessage(playerid, COLOR_ERROR, "{FF0000} *{/b} {CC0000} Nie możesz sobie przelac expa!"); //wygenerowany
  417. if(pInfo[strval(text)][playerLogged] != playerAccount_Logged)
  418. return SendPlayerMessage(playerid, COLOR_ERROR, "{FF0000} *{/b} {CC0000} Ten nie jest zarejestrowany!"); //wygenerowany
  419.  
  420. new player_exp = GetPVarInt(playerid, "e");
  421. givePlayerExp(playerid, -player_exp);
  422. givePlayerExp(strval(text), player_exp);
  423.  
  424. new buff[ 162 ];
  425. format(buff, sizeof buff, "Przelałeś graczowi {AC3E00}%s {FFE5A1}na jego konto {AC3E00}%d EXP{FFE5A1}. Obecnie posiadasz: {AC3E00}%d EXP", playerNick(strval(text)), GetPVarInt(playerid, "e"), pInfo[playerid][playerScore]);
  426. SendPlayerMessage(playerid, 0xFFE5A1FF, buff); //wygenerowany
  427. format(buff, sizeof buff, " %s {FFE5A1}przelał na twoje konto {AC3E00}%d EXP{FFE5A1}. Obecny stan konta: {AC3E00}%d EXP", playerNick(playerid), GetPVarInt(playerid, "e"), pInfo[strval(text)][playerScore]);
  428. SendPlayerMessage(strval(text), 0xFFE5A1FF, buff); //wygenerowany
  429. achievement(playerid, 11);
  430. // SendPlayerMessage(playerid, "FFE5A1", "Przelałeś graczowi {AC3E00}%s {FFE5A1}na jego konto {AC3E00}%d EXP{FFE5A1}. Obecnie posiadasz: {AC3E00}%d EXP", playerNick(strval(text)), GetPVarInt(playerid, "e"), pInfo[playerid][playerScore]); //wygenerowany
  431. // SendPlayerMessage(strval(text), "FFE5A1", " %s {FFE5A1}przelał na twoje konto {AC3E00}%d EXP{FFE5A1}. Obecny stan konta: {AC3E00}%d EXP", playerNick(playerid), GetPVarInt(playerid, "e"), pInfo[strval(text)][playerScore]); //wygenerowany
  432. mysql_query_format("INSERT INTO "prefix"portfel_log (`Nick`, `Data`, `Status`, `Kod`) VALUES ('%s', NOW(), 'Przelew na Nick: %s', 'Kwota: %d')", playerNick(playerid), playerNick(strval(text)), GetPVarInt(playerid, "e"));
  433. return 1;
  434. }
  435. case GUI_KASA_PRZELEW:
  436. {
  437. if(response == 0)
  438. return 1;
  439. new str4[ 128 ];
  440. if(getPlayerCashInPortfel(playerid) < strval(text))
  441. return ShowPlayerDialog(playerid, GUI_KASA_PRZELEW, 1, "{FFE5A1}Portfel > Przelew", "{FFE5A1}Nie posiadasz takiej ilości pieniędzy\n{FFE5A1}Podaj kwote którą chcesz przelać na konto innego gracza: ", "Przelej", "Wyjdź");
  442. if(strval(text) < 1 || strval(text) > 100)
  443. return ShowPlayerDialog(playerid, GUI_KASA_PRZELEW, 1, "{FFE5A1}Portfel > Przelew", "{FFE5A1}Nie posiadasz takiej ilości pieniędzy\n{FFE5A1}Podaj kwote którą chcesz przelać na konto innego gracza: ", "Przelej", "Wyjdź");
  444. SetPVarInt(playerid, "p", strval(text));
  445. format(str4, sizeof str4, "{FFE5A1}Kwota: {AC3E00}%dZŁ\n{FFE5A1}Podaj id gracza:", strval(text));
  446. ShowPlayerDialog(playerid, GUI_KASA_PRZELEW2, 1, "{FFE5A1}Portfel > Przelew", str4, "Przelej", "Wyjdz");
  447. return 1;
  448. }
  449. case GUI_KASA_PRZELEW2:
  450. {
  451. if(!response)
  452. return 1;
  453. if(!IsPlayerConnected(strval(text)))
  454. return SendPlayerMessage(playerid, COLOR_ERROR, "{FF0000} *{/b} {CC0000} Nie ma takiego gracza!"); //wygenerowany
  455. if(playerid == strval(text))
  456. return SendPlayerMessage(playerid, COLOR_ERROR, "{FF0000} *{/b} {CC0000} Nie możesz sobie przelac kasy!"); //wygenerowany
  457. if(pInfo[strval(text)][playerLogged] != playerAccount_Logged)
  458. return SendPlayerMessage(playerid, COLOR_ERROR, "{FF0000} *{/b} {CC0000} Ten nie jest zarejestrowany!"); //wygenerowany
  459.  
  460. // mysql_query_format("update "prefix"Players set Portfel =Portfel + %d where Nick = '%s' limit 1", GetPVarInt(playerid, "p"), playerNick(strval(text)));
  461. // mysql_query_format("update "prefix"Players set Portfel =Portfel - %d where Nick = '%s' limit 1", GetPVarInt(playerid, "p"), playerNick(playerid));
  462.  
  463. givePlayerPortfel(strval(text) , GetPVarInt(playerid, "p"));
  464. givePlayerPortfel(playerid, -GetPVarInt(playerid, "p"));
  465. // new portfel_cash = GetPVarInt(playerid, "p");
  466. //pInfo[playerid][playerPortfel] -= portfel_cash;
  467. //pInfo[strval(text)][playerPortfel] += portfel_cash;
  468. new buff[ 162 ];
  469. format(buff, sizeof buff, "Przelałeś graczowi {AC3E00}%s {FFE5A1}na jego konto kwotę {AC3E00}%iZŁ{FFE5A1}. Obecny stan konta: {AC3E00}%iZŁ", playerNick(strval(text)), GetPVarInt(playerid, "p"), getPlayerCashInPortfel(playerid));
  470. SendPlayerMessage(playerid, 0xFFE5A1FF, buff); //wygenerowany
  471. format(buff, sizeof buff, " %s {FFE5A1}przelał na twoje konto kwotę {AC3E00}%dZŁ{FFE5A1}. Obecny stan konta: {AC3E00}%iZŁ", playerNick(playerid), GetPVarInt(playerid, "p"), getPlayerCashInPortfel(strval(text)));
  472. SendPlayerMessage(strval(text), 0xFFE5A1FF, buff); //wygenerowany
  473.  
  474. // SendPlayerMessage(playerid, "FFE5A1", "Przelałeś graczowi {AC3E00}%s {FFE5A1}na jego konto kwotę {AC3E00}%dZŁ{FFE5A1}. Obecny stan konta: {AC3E00}%sZŁ", playerNick(strval(text)), GetPVarInt(playerid, "p"), mon); //wygenerowany
  475. // SendPlayerMessage(strval(text), "FFE5A1", " %s {FFE5A1}przelał na twoje konto kwotę {AC3E00}%dZŁ{FFE5A1}. Obecny stan konta: {AC3E00}%sZŁ", playerNick(playerid), GetPVarInt(playerid, "p"), monn); //wygenerowany
  476. mysql_query_format("insert into "prefix"portfel_log (`Nick`, `Data`, `Status`, `Kod`) VALUES ('%s', NOW(), 'Przelew na Nick: %s', 'Kwota: %d')", playerNick(playerid), playerNick(strval(text)), GetPVarInt(playerid, "p"));
  477. return 1;
  478. }
  479. }
  480. return 1;
  481. }
  482.  
  483. Public:checkPortfelCode(playerid, response_code, data[])
  484. {
  485.  
  486. printf("%d data %d response %d", data[0], strval(data[0]), response_code);
  487. systemprintf("portfel", "%s wpisał kod %s - brak odpowiedźi serwera ", true, playerNick(playerid), dbCod[playerid]);
  488. if(response_code != 200) //D
  489. {
  490. SendPlayerMessage(playerid, COLOR_ERROR, "* Brak odpowiedzi z strony serwera (%d).", data[0]);
  491. InfoBox(playerid, "Błąd połączenia z API SMS.\nSpróbuj ponownie.\n\nReklamacje dotyczące usługi należy składać pod adresem e-mail bok@servhost.pl");
  492.  
  493. return 1;
  494. }
  495.  
  496. switch(strval(data[0]))
  497. {
  498. case 0:
  499. {
  500. InfoBox(playerid, "Kod który wpisałeś jest nie prawidłowy.\nJeżeli jesteś pewien że wpisałeś dobry kod spróbuj ponownie\n\nReklamacje dotyczące usługi należy składać pod adresem e-mail bok@servhost.pl");
  501. systemprintf("portfel", "%s wpisał błędny kod %s", true, playerNick(playerid), dbCod[playerid]);
  502. }
  503. default:
  504. {
  505. givePlayerPortfel(playerid, API_sms[GetPVarInt(playerid, "portfel_smsid")][KWOTA]);
  506.  
  507. SendPlayerMessage(playerid, COLOR_INFO2, "* Twój wirtualny portfel został zasilony kwotą {d}%d{/b} zł.", API_sms[GetPVarInt(playerid, "portfel_smsid")][KWOTA]);
  508.  
  509. InfoBox(playerid, "Wpisałeś dobry kod!\nKwota została doładowana.");
  510. systemprintf("portfel", "%s wpisał poprawny kod %s", true, playerNick(playerid), dbCod[playerid]);
  511. }
  512.  
  513. }
  514.  
  515. return 1;
  516. }
  517. stock givePlayerPortfel(playerid, kasa)
  518. {
  519. pInfo[playerid][playerPortfel] = pInfo[playerid][playerPortfel] + kasa;
  520. new str[255];
  521. format(str, sizeof str, "update "prefix"Players set Portfel=%d where id=%d limit 1", pInfo[playerid][playerPortfel], pInfo[playerid][playerAcId]);
  522. mysql_query(str);
  523. print(str);
  524.  
  525. }
  526. stock getPlayerCashInPortfel(playerid)
  527. {
  528. mysql_query_format("select Portfel from "prefix"Players where id=%d limit 1", pInfo[playerid][playerAcId]);
  529. mysql_store_result();
  530. new rows = mysql_fetch_int();
  531. mysql_free_result();
  532. pInfo[playerid][playerPortfel] = rows;
  533. return rows;
  534. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement