Example #1
0
        public async Task AddTicket(SocketGuildUser holder, int ticketNumber)
        {
            var NumberHeld = 0;

            if (NumberHeld == 0)
            {
                foreach (var Ticket in GuildRaffles.guildRaffle)
                {
                    if (Ticket.TicketNumber == ticketNumber)
                    {
                        NumberHeld += 1;
                    }
                }
            }
            if (NumberHeld >= 1)
            {
                await ReplyAsync($"The ticket number {ticketNumber} is already taken.");

                return;
            }
            var Holder = holder.Id;
            var ticket = new GuildRaffle();

            ticket.HolderId     = Holder;
            ticket.TicketNumber = ticketNumber;
            GuildRaffles.guildRaffle.Add(ticket);
            GuildRaffles.SaveGuildRaffleList();
            await ReplyAsync($"{holder} now has the ticket number: {ticketNumber}");
        }
Example #2
0
        public async Task TownRaffleEmpty()
        {
            var list = GuildRaffles.guildRaffle;

            list.Clear();
            GuildRaffles.SaveGuildRaffleList();
            await ReplyAsync($"Raffle list has been purged. List count: {list.Count}");
        }
Example #3
0
        public async Task RunGuildRaffle()
        {
            var             max           = GuildRaffles.guildRaffle.Count;
            Random          Raffle        = new Random();
            var             WinningNumber = Raffle.Next(1, max);
            var             WinningTicket = GuildRaffles.GetGuildRaffleTicket(WinningNumber);
            var             embed         = new EmbedBuilder();
            SocketGuildUser TicketHolder  = Global.Client.GetGuild(Config.bot.guildID).GetUser(WinningTicket.HolderId);

            embed.WithTitle("**Winning Guild Raffle Ticket!**")
            .WithDescription($"**{TicketHolder.Mention} HAS WON THE GUILD RAFFLE WITH THE TICKET NUMBER {WinningTicket.TicketNumber}!**");
            await ReplyAsync("", false, embed.Build());
        }