Esempio n. 1
0
        public async Task ApplyAsync()
        {
            var channel = Context.Channel;
            var user    = Context.User;
            await Context.Message.DeleteAsync();

            TimeSpan last       = Cooldowns.GetApplyLast();
            TimeSpan current    = DateTime.Now.TimeOfDay;
            double   difference = current.TotalSeconds - last.TotalSeconds;

            if (difference >= Cooldowns.GetCommandCooldown() || difference < 0)
            {
                var embed = new EmbedBuilder()
                {
                    Color = Colours.generalCol
                };
                embed.WithAuthor("GTA5Police Applications", References.GetGta5policeLogo());
                embed.WithUrl(References.GetApplicationsURL());
                embed.Description = "Whitelist jobs and server applications.\n**Teamspeak IP: gta5police.com**";
                embed.WithThumbnailUrl(References.GetGta5policeLogo());
                embed.AddField(new EmbedFieldBuilder()
                {
                    Name = "Whitelist Servers", Value = References.GetWhitelistURL()
                });
                embed.AddField(new EmbedFieldBuilder()
                {
                    Name = "Police", Value = References.GetPoliceURL()
                });
                embed.AddField(new EmbedFieldBuilder()
                {
                    Name = "EMS", Value = References.GetEmsURL()
                });
                embed.AddField(new EmbedFieldBuilder()
                {
                    Name = "Mechanic", Value = References.GetMechanicURL()
                });
                embed.AddField(new EmbedFieldBuilder()
                {
                    Name = "Taxi", Value = References.GetTaxiURL()
                });
                embed.AddField(new EmbedFieldBuilder()
                {
                    Name = "Stream Verification", Value = References.GetStreamURL()
                });
                embed.WithFooter("Requested by " + Context.User);
                embed.WithCurrentTimestamp();

                var message = await Context.Channel.SendMessageAsync("", false, embed);

                await Delete.DelayDeleteEmbedAsync(message, (int)Cooldowns.GetCommandCooldown());

                await Program.Logger(new LogMessage(LogSeverity.Info, "GTA5Police Commands", "Apply command was used by " + user + "."));

                Cooldowns.SetApplyLast(current);
                Statistics.AddOutgoingMessages();
            }
            else
            {
                await errors.sendErrorTempAsync(channel, user + errorMessage + "\nCooldown " + difference + "/" + Cooldowns.GetCommandCooldown() + " seconds", Colours.errorCol);
            }
        }