Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include a_samp
- #include sscanf2
- new lotteryPlayer[MAX_PLAYERS];
- /******************************************************************************/
- enum lotteryEnum
- {
- bool:created,
- ticket,
- money,
- price
- };
- new lotteryInfo[lotteryEnum];
- ClearLotteryInfo()
- {
- lotteryInfo[created] = false;
- lotteryInfo[ticket] = 0;
- lotteryInfo[money] = 0;
- lotteryInfo[price] = 20;
- print("Function used ClearLotteryInfo()");
- }
- public OnGameModeInit()
- {
- ClearLotteryInfo();
- return 1;
- }
- public OnGameModeExit()
- {
- ClearLotteryInfo();
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- new cmd[32];
- new params[128];
- unformat(cmdtext, "p< >s[32]s[128]", cmd, params);
- if(!strcmp(cmd, "/lotto", true))
- {
- if(!lotteryInfo[created]) return SendClientMessage(playerid, -1, "Do not have tickets!");
- new tickets;
- unformat(params, "i", tickets);
- if(!(1 <= tickets <= 20)) return SendClientMessage(playerid, -1, "Invalid ID.");
- lotteryPlayer[playerid] = tickets;
- GivePlayerMoney(playerid, -lotteryInfo[price]);
- return 1;
- }
- return 0;
- }
- public Lottery();
- public Lottery()
- {
- lotteryInfo[created] = true,lotteryInfo[ticket] = random(20);
- lotteryInfo[money] = random(255255), lotteryInfo[price] = random(100);
- new string[128];
- format(string, sizeof string, "Prize Pool: %i$, to buy /lotto [1-20].",lotteryInfo[money]);
- SendClientMessageToAll(-1, string);
- return 1;
- }
- public StartLottery();
- public StartLottery()
- {
- if(!lotteryInfo[created]) return 1;
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(!IsPlayerConnected(i)) continue;
- if(lotteryPlayer[i] > 0)
- {
- if(lotteryPlayer[i] == lotteryInfo[ticket])
- {
- GivePlayerMoney(i, lotteryInfo[money]);
- SendClientMessage(i, -1, "You won the lottery!");
- }
- else
- {
- SendClientMessage(i, -1, "You have not won anything!");
- }
- }
- lotteryPlayer[i] = 0;
- }
- ClearLotteryInfo();
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment