Guest User

lotto

a guest
Mar 2nd, 2013
24
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.56 KB | None | 0 0
  1. #include <a_samp>
  2.  
  3. #define COLOR_RED 0xAA3333AA
  4. #define COLOR_GREY 0xAFAFAFAA
  5. #define COLOR_GREEN 0x9EC73DAA
  6. #define COLOR_YELLOW 0xFFFF00AA
  7.  
  8. new HaveTicket[MAX_PLAYERS];
  9. new PlayerNumber[6][MAX_PLAYERS];
  10. new Number[6];
  11.  
  12. forward TicketDraw();
  13. forward TicketDraw2();
  14.  
  15. public OnFilterScriptInit()
  16. {
  17. SetTimer("TicketDraw2", 300000, 0);
  18. return 1;
  19. }
  20.  
  21. public OnFilterScriptExit()
  22. {
  23. return 1;
  24. }
  25.  
  26. public OnPlayerCommandText(playerid, cmdtext[])
  27. {
  28. new tmp[256];
  29. new tmp2[128], tmp3[128], tmp4[128], tmp5[128], tmp6[128];
  30. new string[128];
  31. if(strcmp(strget(cmdtext,0),"/lotto",true) == 0)
  32. {
  33. if(HaveTicket[playerid] == 1) return SendClientMessage(playerid, COLOR_RED, "Du hast schon ein Lotto schein ---/nummern---");
  34. if(GetPlayerMoney(playerid) < 1) return SendClientMessage(playerid, COLOR_RED, "Lotto Schein kosten 1$");
  35. tmp = strget(cmdtext, 1);
  36. tmp2 = strget(cmdtext,2);
  37. tmp3 = strget(cmdtext,3);
  38. tmp4 = strget(cmdtext,4);
  39. tmp5 = strget(cmdtext,5);
  40. tmp6 = strget(cmdtext,6);
  41. if(!strlen(tmp) || !strlen(tmp2) || !strlen(tmp3) || !strlen(tmp4) || !strlen(tmp5) || !strlen(tmp6))
  42. {
  43. return SendClientMessage(playerid, COLOR_RED, "/lotto [Zahl 1][Zahl 2][Zahl 3][Zahl 4][Zahl 5][Zahl 6](Zahlen von 6 bis 46 sind erlaubt)");
  44. }
  45. GivePlayerMoney(playerid, -1);
  46. PlayerNumber[0][playerid] = strval(tmp);
  47. PlayerNumber[1][playerid] = strval(tmp2);
  48. PlayerNumber[2][playerid] = strval(tmp3);
  49. PlayerNumber[3][playerid] = strval(tmp4);
  50. PlayerNumber[4][playerid] = strval(tmp5);
  51. PlayerNumber[5][playerid] = strval(tmp6);
  52. for(new n = 0; n < 6; n++)
  53. {
  54. if(PlayerNumber[n][playerid] < 6 || PlayerNumber[n][playerid] > 46) { SendClientMessage(playerid, COLOR_GREY, "Deine Lotterienummer darf nicht unter 6 oder über 46 liegen!"); return SendClientMessage(playerid, COLOR_RED, "Zahlen von 6 bis 46 sind erlaubt"); }
  55. }
  56. format(string, sizeof(string), "Deine Lottonummern sind: %d, %d, %d, %d, %d, %d", PlayerNumber[0][playerid], PlayerNumber[1][playerid], PlayerNumber[2][playerid], PlayerNumber[3][playerid], PlayerNumber[4][playerid], PlayerNumber[5][playerid]);
  57. SendClientMessage(playerid, COLOR_YELLOW, string);
  58. HaveTicket[playerid] = 1;
  59. return 1;
  60. }
  61. if (strcmp("/nummern", cmdtext, true) == 0)
  62. {
  63. if(HaveTicket[playerid] == 0) return SendClientMessage(playerid, COLOR_RED, "Du hast kein Lotto schein '/lotto'");
  64. format(string, sizeof(string), "Deine Lottonummern sind: %d, %d, %d, %d, %d, %d", PlayerNumber[0][playerid], PlayerNumber[1][playerid], PlayerNumber[2][playerid], PlayerNumber[3][playerid], PlayerNumber[4][playerid], PlayerNumber[5][playerid]);
  65. SendClientMessage(playerid, COLOR_YELLOW, string);
  66. return 1;
  67. }
  68. if (strcmp("/startlotto", cmdtext, true) == 0)
  69. {
  70. if(IstSpielerEinAdmin(playerid,4))
  71. {
  72. TicketDraw();
  73. return 1;
  74. }
  75. else
  76. {
  77. return 1;
  78. }
  79. }
  80. return 1;
  81. }
  82. public TicketDraw()
  83. {
  84. MakeNumber();
  85. new Winning[MAX_PLAYERS];
  86. new string[256];
  87.  
  88. for(new i = 0; i < MAX_PLAYERS; i++)
  89. {
  90. SendClientMessage(i, COLOR_GREEN, "=== Lotto ===");
  91. if(HaveTicket[i] == 1)
  92. {
  93. for(new n = 0; n < 6; n++)
  94. {
  95. if(PlayerNumber[0][i] == Number[n])
  96. {
  97. Winning[i]++;
  98. }
  99. if(PlayerNumber[1][i] == Number[n])
  100. {
  101. Winning[i]++;
  102. }
  103. if(PlayerNumber[2][i] == Number[n])
  104. {
  105. Winning[i]++;
  106. }
  107. if(PlayerNumber[3][i] == Number[n])
  108. {
  109. Winning[i]++;
  110. }
  111. if(PlayerNumber[4][i] == Number[n])
  112. {
  113. Winning[i]++;
  114. }
  115. if(PlayerNumber[5][i] == Number[n])
  116. {
  117. Winning[i]++;
  118. }
  119. }
  120. format(string, sizeof(string), "Deine Lottonummern sind: %d, %d, %d, %d, %d, %d", PlayerNumber[0][i], PlayerNumber[1][i], PlayerNumber[2][i], PlayerNumber[3][i], PlayerNumber[4][i], PlayerNumber[5][i]);
  121. SendClientMessage(i, COLOR_GREEN, string);
  122. }
  123. format(string, sizeof(string), "Die Gewinnerzahlen lauten: %d, %d, %d, %d, %d, %d", Number[0], Number[1], Number[2], Number[3], Number[4], Number[5]);
  124. SendClientMessage(i, COLOR_GREEN, string);
  125. if(Winning[i] == 0)
  126. {
  127. SendClientMessage(i, COLOR_GREEN, "Du hast keine Richtigen");
  128. SendClientMessage(i, COLOR_GREEN, "Leider verlohren: 0$");
  129. }
  130. if(Winning[i] == 1)
  131. {
  132. SendClientMessage(i, COLOR_GREEN, "Du hast eine Richtige");
  133. SendClientMessage(i, COLOR_GREEN, "Gewinn 1$");
  134. GivePlayerMoney(i, 5);
  135. }
  136. if(Winning[i] == 2)
  137. {
  138. SendClientMessage(i, COLOR_GREEN, "Du hast 2 Richtige");
  139. SendClientMessage(i, COLOR_GREEN, "Gewinn 10$");
  140. GivePlayerMoney(i, 10);
  141. }
  142. if(Winning[i] == 3)
  143. {
  144. SendClientMessage(i, COLOR_GREEN, "Du hast 3 Richtige");
  145. SendClientMessage(i, COLOR_GREEN, "Gewinn 100$");
  146. GivePlayerMoney(i, 100);
  147. }
  148. if(Winning[i] == 4)
  149. {
  150. SendClientMessage(i, COLOR_GREEN, "Du hast 4 Richtige");
  151. SendClientMessage(i, COLOR_GREEN, "Gewinn 5000$");
  152. GivePlayerMoney(i, 5000);
  153. }
  154. if(Winning[i] == 5)
  155. {
  156. SendClientMessage(i, COLOR_GREEN, "Du hast 5 Richtige");
  157. SendClientMessage(i, COLOR_GREEN, "gewinn 100.000$");
  158. GivePlayerMoney(i, 100000);
  159. }
  160. if(Winning[i] == 6)
  161. {
  162. SendClientMessage(i, COLOR_GREEN, "Du hast 6 Richtige");
  163. SendClientMessage(i, COLOR_GREEN, "Glückwunch du hast 6 Richtige und damit den Jackpot von 10.000.000$ geknackt");
  164. GivePlayerMoney(i, 10000000);
  165. }
  166. SendClientMessage(i, COLOR_GREEN, "=== Lotto ===");
  167. HaveTicket[i] = 0;
  168. }
  169. SetTimer("TicketDraw2", 3600000, 0);
  170. }
  171. public TicketDraw2()
  172. {
  173. for(new i = 0; i < MAX_PLAYERS; i++)
  174. {
  175. SendClientMessage(i, COLOR_GREEN, "=== Lotto ===");
  176. SendClientMessage(i, COLOR_GREEN, "In 5 Minuten geht eine Lotto runde los. Schnell ticket holen mit /lotto");
  177. SendClientMessage(i, COLOR_GREEN, "=== Lotto ===");
  178. }
  179. SetTimer("TicketDraw", 300000, 0);
  180. }
  181.  
  182. MakeNumber()
  183. {
  184. Number[0] = 6+random(40);
  185. Number[1] = 6+random(40);
  186. Number[2] = 6+random(40);
  187. Number[3] = 6+random(40);
  188. Number[4] = 6+random(40);
  189. Number[5] = 6+random(40);
  190. }
  191. stock strget(strx[], pos, search = ' ')
  192. {
  193. new arg, ret[128], idxx;
  194. for (new i = 0; i < strlen(strx); i++)
  195. {
  196. if(strx[i] == search || i == strlen(strx) || strx[i + 1] == 10)
  197. {
  198. arg++;
  199. if (arg == pos + 1)
  200. {
  201. ret[i-idxx] = EOS;
  202. return ret;
  203. } else if (arg == pos)
  204. idxx= i+1;
  205. }
  206. else if (arg == pos)
  207. ret[i - idxx] = strx[i];
  208. }
  209. return ret;
  210. }
  211. stock IstSpielerEinAdmin(playerid,rang)
  212. {
  213. if(GetPVarInt(playerid,"Adminlevel")>=rang) return 1;
  214. return 0;
  215. }
Advertisement
Add Comment
Please, Sign In to add comment