Advertisement
Guest User

Untitled

a guest
Mar 19th, 2011
113
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.03 KB | None | 0 0
  1. #include <a_samp>
  2.  
  3. #pragma tabsize 0
  4.  
  5. #if defined FILTERSCRIPT
  6. //=====================DEFINE
  7. #define DIALOGLOTTERIA 10004
  8. #define COMANDOBIGLIETTO "/biglietto"
  9. #define VINCITABASE 1000
  10. #define VINCITAEXTRA 100
  11. #define MINUTIESTRAZIONE 5
  12. #define COSTOBIGLIETTO 10
  13. //=====================VARIABILI
  14. new Biglietto[MAX_PLAYERS]=0
  15. new stringa[256]
  16. new nome[20]
  17. new numerofortunato
  18. new vincita
  19.  
  20. public OnFilterScriptInit()
  21. {
  22. print("\n--------------------------------------");
  23. print(" Sistema Lotteria");
  24. print("--------------------------------------\n");
  25. SetTimer("Estrazione",60000*MINUTIESTRAZIONE,true);
  26. return 1;
  27. }
  28.  
  29. public OnFilterScriptExit()
  30. {
  31. return 1;
  32. }
  33.  
  34. #else
  35.  
  36. #define ROSSO 0xAA3333AA
  37.  
  38. main()
  39. {
  40. print("\n----------------------------------");
  41. print(" Sistema Lotteria Terminato");
  42. print("----------------------------------\n");
  43. }
  44.  
  45. #endif
  46.  
  47. public OnPlayerConnect(playerid)
  48. {
  49. new stringa[128];
  50. new COMANDOBIGLIETTO;
  51. format(stringa,sizeof(stringa),"LOTTERIA: {FFFFFF}Se vuoi comprare un biglietto digita {C14124}%s{FFFFFF}.",COMANDOBIGLIETTO);
  52. SendClientMessage(playerid,0x338CD9FF,stringa);
  53. return 1;
  54. }
  55.  
  56. public OnPlayerDisconnect(playerid, reason)
  57. {
  58. new Biglietto[MAX_PLAYERS];
  59. Biglietto[playerid]=0;
  60. return 1;
  61. }
  62.  
  63. public OnPlayerCommandText(playerid, cmdtext[])
  64. {
  65. new COMANDOBIGLIETTO[MAX_PLAYERS];
  66. new DIALOGLOTTERIA;
  67. if (strcmp(COMANDOBIGLIETTO, cmdtext, true, 10) == 0)
  68. {
  69. ShowPlayerDialog(playerid,DIALOGLOTTERIA,DIALOG_STYLE_INPUT,"Acquista biglietto","{FFFFFF}Inserisci il {C14124}numero{FFFFFF} del biglietto che vuoi acquistare.\nInserisci un numero nell'intervallo {C14124}1-90{FFFFFF}.","Compra","Esci");
  70. return 1;
  71. }
  72. return 0;
  73. }
  74.  
  75. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  76. {
  77. new DIALOGLOTTERIA;
  78. new Biglietto[MAX_PLAYERS];
  79. new stringa[128];
  80. if(dialogid == DIALOGLOTTERIA)
  81. {
  82. if(GetPlayerMoney(playerid) < 10) return SendClientMessage(playerid, ROSSO, "Non hai abbastanza soldi per comprare il biglietto");
  83. if(Biglietto[playerid]!=0) return SendClientMessage(playerid,0xF5432EFF,"ERRORE: {FFFFFF}Possiedi già un biglietto. Attendi la prossima estrazione.");
  84. if(!isNumeric(inputtext)) return ShowPlayerDialog(playerid,DIALOGLOTTERIA,DIALOG_STYLE_INPUT,"Acquista biglietto","{C14124}ERRORE: Inserire caratteri numerici.\n{FFFFFF}Inserisci il {C14124}numero{FFFFFF} del biglietto che vuoi acquistare.\nInserisci un numero compreso tra {C14124}1-90{FFFFFF}.","Compra","Esci");
  85. if(strval(inputtext)<1 || strval(inputtext)>90) return ShowPlayerDialog(playerid,DIALOGLOTTERIA,DIALOG_STYLE_INPUT,"Acquista biglietto","{C14124}ERRORE: Inserire il numero del biglietto compreso tra 1-90.\n{FFFFFF}Inserisci il {C14124}numero{FFFFFF} del biglietto che vuoi acquistare.\nInserisci un numero comprso tra {C14124}1-90{FFFFFF}.","Compra","Esci");
  86. for(new i=0;i<MAX_PLAYERS;i++)
  87. if(strval(inputtext)==Biglietto[i]) return ShowPlayerDialog(i,DIALOGLOTTERIA,DIALOG_STYLE_INPUT,"Acquista il biglietto","{C14124}ERRORE: Questo biglietto è già stato acquistato.\n{FFFFFF}Inserisci il {C14124}numero{FFFFFF} del biglietto che vuoi acquistare.\nInserisci un numero compreso tra {C14124}1-90{FFFFFF}.","Compra","Esci");
  88. format(stringa,sizeof(stringa),"LOTTERIA: {FFFFFF}Hai acquistato il {8CE46C}%d{FFFFFF}. Buona fortuna.",strval(inputtext));
  89. SendClientMessage(playerid,0x338CD9FF,stringa);
  90. Biglietto[playerid]=strval(inputtext);
  91. }
  92. return 1;
  93. }
  94.  
  95. forward Estrazione();
  96. public Estrazione()
  97. {
  98. new numerofortunato;
  99. numerofortunato=random(90);
  100. new a=0;
  101. for(new i=0;i<MAX_PLAYERS;i++)
  102. {
  103. new Biglietto[MAX_PLAYERS];
  104. if(Biglietto[i]==numerofortunato)
  105. {
  106. new nome[20];
  107. new vincita;
  108. new VINCITABASE;
  109. new VINCITAEXTRA;
  110. GetPlayerName(i,nome,sizeof(nome));
  111. vincita=VINCITABASE+random(VINCITAEXTRA);
  112. GivePlayerMoney(i,vincita);
  113. a=1;
  114. }
  115. Biglietto[i]=0;
  116. }
  117. if(a==1)
  118. {
  119. new stringa[128];
  120. new nome[20];
  121. new vincita;
  122. format(stringa,sizeof(stringa),"LOTTERIA: {8CE46C}%s{FFFFFF} vince {C14124}%d{FFFFFF}$ con l'estrazione del numero {C14124}%d{FFFFFF}.",nome,vincita,numerofortunato);
  123. SendClientMessageToAll(0x338CD9FF,stringa);
  124. return 1;
  125. }
  126. else
  127. {
  128. new stringa[128];
  129. format(stringa,sizeof(stringa),"LOTTERIA: il numero estratto è {C14124}%d{FFFFFF}, ma nessuno ha vinto.",numerofortunato);
  130. SendClientMessageToAll(0x338CD9FF,stringa);
  131. }
  132. return 1;
  133. }
  134.  
  135. stock isNumeric(const string[])
  136. {
  137. new length=strlen(string);
  138. if (length==0) return false;
  139. for (new i = 0; i < length; i++)
  140. {
  141. if
  142. ((string[i] > '9' || string[i] < '0' && string[i]!='-' && string[i]!='+') || (string[i]=='-' && i!=0)|| (string[i]=='+' && i!=0))
  143. return false;
  144. }
  145. if (length==1 && (string[0]=='-' || string[0]=='+')) return false;
  146. return true;
  147. }
  148.  
  149. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  150. {
  151. return 1;
  152. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement