Пример #1
0
        public override Task Generate()
        {
            BanType previousBan = BanType.None;

            if (_settings.ContainsKey(SettingID.BanType))
            {
                previousBan = _settings[SettingID.BanType].GetValue <BanType>();
            }

            DateTime previousBanEnd = DateTime.Now;

            if (_settings.ContainsKey(SettingID.BanEnd))
            {
                previousBanEnd = _settings[SettingID.BanEnd].GetValue <DateTime>();
            }

            WheelExtension.WheelDifficultyPreference difficulty = WheelExtension.WheelDifficultyPreference.Default;
            if (_settings.ContainsKey(SettingID.WheelDifficulty))
            {
                difficulty = _settings[SettingID.WheelDifficulty].GetValue <WheelExtension.WheelDifficultyPreference>();
            }

            List <BanType> possibleBans = new List <BanType>()
            {
                BanType.NoHentai, BanType.OnlyHentai, BanType.NoRegularPorn, BanType.NoRegularPorn
            };

            if (_settings.TryGetValue(SettingID.TrapLevel, out UserSetting sissySetting))
            {
                if (sissySetting.GetValue <SissyLevel>() >= SissyLevel.Normal)
                {
                    possibleBans.Add(BanType.OnlyTrapPorn);
                }
            }

            var index     = Helpers.RandomGenerator.RandomInt(0, possibleBans.Count);
            var chosenBan = possibleBans[index];

            int days = (int)difficulty + 1;

            var builder = new DiscordEmbedBuilder()
            {
                Title       = "Ban!",
                Description = $"You are allowed to watch {chosenBan.ToFormattedText().ToLower()} for the next {days} days."
            };

            if (previousBan != BanType.None && previousBanEnd > DateTime.Now)
            {
                builder.Description += $" Your previous ban of {previousBan.ToFormattedText().ToLower()} has been lifted.";
            }

            Embed = builder.Build();

            return(Task.CompletedTask);
        }
Пример #2
0
        public override Task BuildAsync()
        {
            if (!Outcome.HasFlag(WheelExtension.Outcome.Denial))
            {
                Outcome = WheelExtension.Outcome.NotSet;
                return(Task.CompletedTask);
            }

            int minNum = 1;
            int maxNum = 4;

            WheelExtension.WheelDifficultyPreference difficulty = WheelExtension.WheelDifficultyPreference.Default;

            if (_settings.ContainsKey(UserSettingExtension.SettingID.WheelDifficulty))
            {
                difficulty = _settings.First(setting => setting.Key == UserSettingExtension.SettingID.WheelDifficulty).Value.GetValue <WheelExtension.WheelDifficultyPreference>();
            }

            maxNum *= (int)difficulty;

            int rndNumber = Helpers.RandomGenerator.RandomInt(minNum, maxNum);

            this.DenialTime = new TimeSpan(rndNumber, 0, 0);

            DiscordEmbedBuilder builder = new DiscordEmbedBuilder()
            {
                Title       = "No O****m for you!",
                Description = "Try again in a few hours :P"
            };

            this.Embed   = builder.Build();
            this.Text    = "No o****m for you! Try again in a few hours :P";
            this.Outcome = WheelExtension.Outcome.Denial;

            return(Task.CompletedTask);
        }
Пример #3
0
        public override Task BuildAsync()
        {
            if (!Outcome.HasFlag(WheelExtension.Outcome.Edge))
            {
                Outcome = WheelExtension.Outcome.NotSet;
                return(Task.CompletedTask);
            }

            int edgeMinutes = Helpers.RandomGenerator.RandomInt(5, 31);

            WheelExtension.WheelDifficultyPreference difficulty = WheelExtension.WheelDifficultyPreference.Default;

            if (_settings.ContainsKey(UserSettingExtension.SettingID.WheelDifficulty))
            {
                difficulty = _settings.First(setting => setting.Key == UserSettingExtension.SettingID.WheelDifficulty).Value.GetValue <WheelExtension.WheelDifficultyPreference>();
            }

            switch (difficulty)
            {
            case WheelExtension.WheelDifficultyPreference.Baby:
                edgeMinutes = Convert.ToInt32((double)edgeMinutes / 2);
                break;

            case WheelExtension.WheelDifficultyPreference.Easy:
                edgeMinutes = Convert.ToInt32((double)edgeMinutes / 1.5);
                break;

            case WheelExtension.WheelDifficultyPreference.Hard:
                edgeMinutes = Convert.ToInt32((double)edgeMinutes * 1.5);
                break;

            case WheelExtension.WheelDifficultyPreference.Masterbater:
                edgeMinutes = Convert.ToInt32((double)edgeMinutes * 2);
                break;
            }

            string flavorText = "Boring...";

            if (edgeMinutes > 10)
            {
                flavorText = "Too easy...";
            }
            else if (edgeMinutes > 15)
            {
                flavorText = "Not too bad!";
            }
            else if (edgeMinutes > 20)
            {
                flavorText = "Kind of difficult!";
            }
            else if (edgeMinutes > 25)
            {
                flavorText = "Ouch!";
            }

            DiscordEmbedBuilder builder = new DiscordEmbedBuilder()
            {
                Title  = flavorText,
                Footer = new DiscordEmbedBuilder.EmbedFooter()
                {
                    Text = "And spin again afterwards. If you cum/ruin, use ``//came`` or ``//ruined``"
                }
            };

            WheelExtension.WheelTaskPreferenceSetting?preference = null;

            if (_settings.ContainsKey(UserSettingExtension.SettingID.WheelTaskPreference))
            {
                preference = _settings.First(setting => setting.Key == UserSettingExtension.SettingID.WheelTaskPreference).Value.GetValue <WheelExtension.WheelTaskPreferenceSetting>();
            }

            if (Helpers.RandomGenerator.RandomInt(0, 2) == 0)
            {
                if (preference != null && preference.Value.HasFlag(WheelExtension.WheelTaskPreferenceSetting.Time))
                {
                    this.Chance *= 3;
                }

                this.Text = $"{flavorText} Edge over and over (at least 30s Cooldown) for {edgeMinutes} minutes, then spin again~";

                builder.Description = $"Edge over and over (at least 30s Cooldown) for {edgeMinutes} minutes";

                this.WheelLockedTime = new TimeSpan(0, edgeMinutes, 0);
            }
            else
            {
                if (preference != null && preference.Value.HasFlag(WheelExtension.WheelTaskPreferenceSetting.Amount))
                {
                    this.Chance *= 3;
                }

                this.Text = $"{flavorText} Edge {edgeMinutes / 2} times, with 30 seconds of Cooldown in between. Then spin again~";

                builder.Description = $"Edge {edgeMinutes / 2} times, with 30 seconds of Cooldown in between.";

                this.WheelLockedTime = new TimeSpan(0, 0, (edgeMinutes / 2 * 28) + (edgeMinutes / 2 * 5));
            }

            this.Embed   = builder.Build();
            this.Outcome = WheelExtension.Outcome.Edge;

            return(Task.CompletedTask);
        }
Пример #4
0
        public override Task BuildAsync()
        {
            if (!Outcome.HasFlag(WheelExtension.Outcome.Task))
            {
                Outcome = WheelExtension.Outcome.NotSet;
                return(Task.CompletedTask);
            }

            if (_settings.Any(setting => setting.Key == UserSettingExtension.SettingID.WheelTaskPreference))
            {
                var preference = (WheelExtension.WheelTaskPreferenceSetting) int.Parse(_settings.First(setting => setting.Key == UserSettingExtension.SettingID.WheelTaskPreference).Value.Value);

                if (preference.HasFlag(WheelExtension.WheelTaskPreferenceSetting.Task))
                {
                    this.Chance *= 6;
                }
            }

            DiscordEmbedBuilder builder = new DiscordEmbedBuilder();

            int time = Helpers.RandomGenerator.RandomInt(this.minBanTime, this.maxBanTime);

            if (Helpers.RandomGenerator.RandomInt(0, 2) == 0)
            {
                builder.Title       = "Content ban!";
                builder.Description =
                    $"You are banned from {bans[Helpers.RandomGenerator.RandomInt(0, bans.Length)]} for {time} days! If you already had the same ban, consider it reset.";
                builder.Footer = new DiscordEmbedBuilder.EmbedFooter()
                {
                    Text = "Now reroll!"
                };
            }
            else
            {
                int edgeAmount = Helpers.RandomGenerator.RandomInt(this.minEdgeAmount, this.maxEdgeAmount) * 2;

                WheelExtension.WheelDifficultyPreference difficulty = WheelExtension.WheelDifficultyPreference.Default;

                if (_settings.ContainsKey(UserSettingExtension.SettingID.WheelDifficulty))
                {
                    difficulty = _settings.First(setting => setting.Key == UserSettingExtension.SettingID.WheelDifficulty).Value.GetValue <WheelExtension.WheelDifficultyPreference>();
                }

                switch (difficulty)
                {
                case WheelExtension.WheelDifficultyPreference.Baby:
                    edgeAmount = edgeAmount / 4;
                    break;

                case WheelExtension.WheelDifficultyPreference.Easy:
                    edgeAmount = edgeAmount / 2;
                    break;

                case WheelExtension.WheelDifficultyPreference.Hard:
                    edgeAmount = edgeAmount * 2;
                    break;

                case WheelExtension.WheelDifficultyPreference.Masterbater:
                    edgeAmount = edgeAmount * 4;
                    break;
                }

                builder.Title       = "Edging Task!";
                builder.Description =
                    $"You'll have to Edge {edgeAmount} times a Day, for {time} days! If you already had the same task, consider it reset.";
                builder.Footer = new DiscordEmbedBuilder.EmbedFooter()
                {
                    Text = "Now reroll!"
                };
            }

            this.Embed   = builder.Build();
            this.Outcome = WheelExtension.Outcome.Task;

            return(Task.CompletedTask);
        }
Пример #5
0
        public override Task Generate()
        {
            WheelExtension.WheelDifficultyPreference difficulty = WheelExtension.WheelDifficultyPreference.Default;
            if (_settings.ContainsKey(SettingID.WheelDifficulty))
            {
                difficulty = _settings[SettingID.WheelDifficulty].GetValue <WheelExtension.WheelDifficultyPreference>();
            }

            AnalLevel analLevel = AnalLevel.None;

            if (_settings.ContainsKey(SettingID.AnalLevel))
            {
                analLevel = _settings[SettingID.AnalLevel].GetValue <AnalLevel>();
            }

            List <WheelUserItem> toys = _items.Where(item => WheelItemExtension.GetItemCategory((WheelItemExtension.Item)item.ItemId) == WheelItemExtension.Item.Toy).ToList();

            var toy = (WheelItemExtension.Item)toys[Helpers.RandomGenerator.RandomInt(0, toys.Count)].ItemId;

            var builder = new DiscordEmbedBuilder()
            {
                Title = "Backside fun"
            };

            int time = (int)difficulty * (int)analLevel;

            time = Helpers.RandomGenerator.RandomInt(time / 3 * 2, time / 3 * 4);

            switch (Helpers.RandomGenerator.RandomInt(0, 3))
            {
            case 0:
                string vibeText = "";

                if (toy == WheelItemExtension.Item.Vibrator)
                {
                    string vibeSpeed = "";

                    switch (analLevel)
                    {
                    case AnalLevel.Light:
                        vibeSpeed = "lowest";
                        break;

                    case AnalLevel.Normal:
                        vibeSpeed = "normal";
                        break;

                    case AnalLevel.Hardcore:
                        vibeSpeed = "highest";
                        break;
                    }

                    vibeText = $"Turn it on to the {vibeSpeed} setting.";
                }

                builder.Description = $"Put your {toy.ToFormattedText()} in your Ass. {vibeText}" + Environment.NewLine
                                      + $"Leave it there for the next {time * 2} minutes.";
                break;

            case 1:
                builder.Description = $"Take your {toy.ToFormattedText()}, lube it up, then shove it up your butt as fast as you can. Then take it out and give it a kiss." + Environment.NewLine
                                      + $"Do this {time} times.";
                break;

            case 2:
                builder.Description = $"Take your {toy.ToFormattedText()}, lube it up, and smack your ass with it." + Environment.NewLine
                                      + $"Do this {time} times. No cleaning up after that.";
                break;
            }

            Embed = builder.Build();

            return(Task.CompletedTask);
        }
Пример #6
0
        public override Task Generate()
        {
            CBTLevel cbtLevel = CBTLevel.None;

            if (_settings.ContainsKey(SettingID.CBTLevel))
            {
                cbtLevel = _settings[SettingID.CBTLevel].GetValue <CBTLevel>();
            }

            WheelExtension.WheelDifficultyPreference difficulty = WheelExtension.WheelDifficultyPreference.Default;
            if (_settings.ContainsKey(SettingID.WheelDifficulty))
            {
                difficulty = _settings[SettingID.WheelDifficulty].GetValue <WheelExtension.WheelDifficultyPreference>();
            }

            BondageLevel bondageLevel = BondageLevel.None;

            if (_settings.ContainsKey(SettingID.BondageLevel))
            {
                bondageLevel = _settings[SettingID.BondageLevel].GetValue <BondageLevel>();
            }

            List <WheelUserItem> gear = _items.Where(item => WheelItemExtension.GetItemCategory((WheelItemExtension.Item)item.ItemId) == WheelItemExtension.Item.Bondage).ToList();

            const int bondageGearChance = 10;
            var       bondageChancesSum = gear.Count * bondageGearChance;

            const int vanillaCbtChance = 30;

            var chanceSum = bondageChancesSum + vanillaCbtChance;

            var chanceValue = Helpers.RandomGenerator.RandomInt(0, chanceSum + 1);

            if (chanceValue < bondageChancesSum)
            {
                int gearIndex = -1;
                int cChance   = 0;

                int i = 0;
                while (gearIndex == -1)
                {
                    cChance += bondageGearChance;
                    if (cChance > chanceValue)
                    {
                        gearIndex = i;
                    }

                    if (gearIndex == -1)
                    {
                        i++;
                    }
                }

                var calcGear = gear[i];

                Embed = GenerateBondagePunishment((WheelItemExtension.Item)calcGear.ItemId, bondageLevel, cbtLevel, difficulty);
            }
            else if (chanceValue < bondageChancesSum + vanillaCbtChance)
            {
                var vanillaChanceValue = Helpers.RandomGenerator.RandomInt(0, 4);

                string bodypart = vanillaChanceValue < 2 ? "dick" : "balls";
                string cbtType  = vanillaChanceValue % 2 == 0 ? "flick" : "slap";

                int cbtAmount = GetPunishmentValue(cbtLevel, difficulty);

                var builder = new DiscordEmbedBuilder
                {
                    Title       = "Hit it! (literally)",
                    Description = $"I want you, to {cbtType} your {bodypart} {cbtAmount} times"
                };
                Embed = builder.Build();

                WheelLockTime = TimeSpan.FromSeconds(cbtAmount);
            }

            return(Task.CompletedTask);
        }
Пример #7
0
        private DiscordEmbed GenerateBondagePunishment(WheelItemExtension.Item gear, BondageLevel bondageLevel, CBTLevel cbtLevel, WheelExtension.WheelDifficultyPreference difficulty)
        {
            var builder = new DiscordEmbedBuilder
            {
                Title = "Get your toys ready!"
            };
            var punishValue = GetPunishmentValue(cbtLevel, difficulty) * (int)bondageLevel;

            WheelLockTime = TimeSpan.FromSeconds(punishValue);

            switch (WheelItemExtension.GetItemSubCategory(gear))
            {
            case WheelItemExtension.Item.ChastityDevice:
                var chastityTime = TimeSpan.FromMinutes(punishValue);

                builder.Description = $"You're going into the smallest chastity device you've got for the next {TimeResolver.TimeToString(chastityTime)}. Watch some p**n and hump your pillow while doing so..";
                DenialTime          = chastityTime;
                WheelLockTime       = chastityTime;
                break;

            case WheelItemExtension.Item.Rope:
                builder.Description = $"Tie a knot with your {gear.ToFormattedText()} and hit your balls {punishValue} times with it..";
                break;

            case WheelItemExtension.Item.Gag:
                var gagTieTime = TimeSpan.FromMinutes(punishValue);

                builder.Description = $"Tie your {gear.ToFormattedText()} to your c**k for {TimeResolver.TimeToString(gagTieTime)}. Make the connection as short as you can..";

                DenialTime    = gagTieTime;
                WheelLockTime = gagTieTime;
                break;

            case WheelItemExtension.Item.Cuffs:
                builder.Description = $"Cuff your hands behind your back with your {gear.ToFormattedText()} and tie them to your c**k/balls. Then bow down {punishValue} times for me.";
                break;

            case WheelItemExtension.Item.Clamps:
                builder.Description = $"Take a shoe of yours and tie it to your Nipples with your {gear.ToFormattedText()}. Then jump {punishValue} times for me.";
                break;

            case WheelItemExtension.Item.String:
                builder.Description = $"Use your {gear.ToFormattedText()}, to tie your balls together. It should be sting a bit. Leave it for at least {punishValue} minutes like that.";
                break;

            default:
                builder.Description = $"You get a freebie, because I don't have any CBT options for your {gear.ToFormattedText()}. Enjoy it.";
                break;
            }

            return(builder.Build());
        }
Пример #8
0
        private static int GetPunishmentValue(CBTLevel level, WheelExtension.WheelDifficultyPreference difficulty)
        {
            int third = ((int)level * (int)difficulty * 3) / 3;

            return(Helpers.RandomGenerator.RandomInt(third * 2, third * 4));
        }
Пример #9
0
        public async Task OverviewAsync(CommandContext ctx)
        {
            var context = new DiscordContext();

            DiscordEmbedBuilder builder = new DiscordEmbedBuilder()
            {
                Title = "These are all of your settings"
            };

            var settings = UserSettingExtension.GetAllSettings(ctx.Message.Author.Id, context).ToDictionary(setting => (UserSettingExtension.SettingID)setting.SettingId);
            var items    = await WheelItemExtension.GetUserItemsAsync(ctx.Message.Author.Id, context);

            AnalLevel analLevel = AnalLevel.None;

            if (settings.ContainsKey(SettingID.AnalLevel))
            {
                analLevel = settings[SettingID.AnalLevel].GetValue <AnalLevel>();
            }

            WheelExtension.WheelDifficultyPreference wheelDifficulty = WheelExtension.WheelDifficultyPreference.Default;
            if (settings.ContainsKey(SettingID.WheelDifficulty))
            {
                wheelDifficulty = settings[SettingID.WheelDifficulty].GetValue <WheelExtension.WheelDifficultyPreference>();
            }

            WheelExtension.WheelTaskPreferenceSetting wheelTaskPreference = WheelExtension.WheelTaskPreferenceSetting.Default;
            if (settings.ContainsKey(SettingID.WheelTaskPreference))
            {
                wheelTaskPreference = settings[SettingID.WheelTaskPreference].GetValue <WheelExtension.WheelTaskPreferenceSetting>();
            }

            BondageLevel bondageLevel = BondageLevel.None;

            if (settings.ContainsKey(SettingID.BondageLevel))
            {
                bondageLevel = settings[SettingID.BondageLevel].GetValue <BondageLevel>();
            }

            CBTLevel cbtLevel = CBTLevel.None;

            if (settings.ContainsKey(SettingID.CBTLevel))
            {
                cbtLevel = settings[SettingID.CBTLevel].GetValue <CBTLevel>();
            }

            DungeonDifficulty dungeonDifficulty = DungeonDifficulty.Normal;

            if (settings.ContainsKey(SettingID.DungeonDifficulty))
            {
                dungeonDifficulty = settings[SettingID.DungeonDifficulty].GetValue <DungeonDifficulty>();
            }

            //PeeLevel peeLevel = PeeLevel.None;
            //if (settings.ContainsKey(SettingID.PeeLevel))
            //{
            //    peeLevel = settings[SettingID.PeeLevel].GetValue<PeeLevel>();
            //}

            SissyLevel sissyLevel = SissyLevel.None;

            if (settings.ContainsKey(SettingID.SissyLevel))
            {
                sissyLevel = settings[SettingID.SissyLevel].GetValue <SissyLevel>();
            }

            //DegrationLevel degrationLevel = DegrationLevel.None;
            //if (settings.ContainsKey(SettingID.DegrationLevel))
            //{
            //    degrationLevel = settings[SettingID.DegrationLevel].GetValue<DegrationLevel>();
            //}

            PublicLevel publicLevel = PublicLevel.None;

            if (settings.ContainsKey(SettingID.PublicLevel))
            {
                publicLevel = settings[SettingID.PublicLevel].GetValue <PublicLevel>();
            }

            Gender gender = Gender.None;

            if (settings.ContainsKey(SettingID.Gender))
            {
                gender = settings[SettingID.Gender].GetValue <Gender>();
            }

            foreach (SettingID possibleSetting in Enum.GetValues(typeof(SettingID)))
            {
                Enum setting = null;

                switch (possibleSetting)
                {
                case SettingID.AnalLevel:
                    setting = analLevel;
                    break;

                case SettingID.BanType:
                    break;

                case SettingID.WheelDifficulty:
                    setting = wheelDifficulty;
                    break;

                case SettingID.WheelTaskPreference:
                    setting = wheelTaskPreference;
                    break;

                case SettingID.BondageLevel:
                    setting = bondageLevel;
                    break;

                case SettingID.Toys:
                    break;

                case SettingID.CBTLevel:
                    setting = cbtLevel;
                    break;

                case SettingID.DungeonDifficulty:
                    break;

                case SettingID.PeeLevel:
                    break;

                case SettingID.SissyLevel:
                    setting = sissyLevel;
                    break;

                case SettingID.DegrationLevel:
                    break;

                case SettingID.PublicLevel:
                    setting = publicLevel;
                    break;

                case SettingID.BanEnd:
                    break;

                case SettingID.Gender:
                    setting = gender;
                    break;
                }

                if (setting == null)
                {
                    continue;
                }

                var name  = possibleSetting.ToFormattedText();
                var value = $"{setting.ToFormattedText()} ({Convert.ToInt32(setting)})";

                builder.AddField(name, value, true);
            }

            await ctx.RespondAsync(embed : builder.Build());

            if (items.Any())
            {
                builder = new DiscordEmbedBuilder()
                {
                    Title = "Your Items"
                };

                foreach (var item in items.OrderBy(it => it.ItemId))
                {
                    var cItem = (WheelItemExtension.Item)item.ItemId;
                    builder.AddField(cItem.ToFormattedText(), item.ItemId.ToString());
                }

                await ctx.RespondAsync(embed : builder.Build());
            }
        }
Пример #10
0
        public override Task Generate()
        {
            SissyLevel sissyLevel = SissyLevel.None;

            if (_settings.ContainsKey(SettingID.SissyLevel))
            {
                sissyLevel = _settings[SettingID.SissyLevel].GetValue <SissyLevel>();
            }

            PublicLevel publicLevel = PublicLevel.None;

            if (_settings.ContainsKey(SettingID.PublicLevel))
            {
                publicLevel = _settings[SettingID.PublicLevel].GetValue <PublicLevel>();
            }

            WheelExtension.WheelDifficultyPreference difficulty = WheelExtension.WheelDifficultyPreference.Default;
            if (_settings.ContainsKey(SettingID.WheelDifficulty))
            {
                difficulty = _settings[SettingID.WheelDifficulty].GetValue <WheelExtension.WheelDifficultyPreference>();
            }

            List <WheelUserItem> clothing = _items.Where(item => WheelItemExtension.GetItemCategory((WheelItemExtension.Item)item.ItemId) == WheelItemExtension.Item.Clothing).ToList();

            int maxItemCount = Convert.ToInt32((float)difficulty / 2 * (float)sissyLevel);

            maxItemCount = maxItemCount < 1 ? 1 : maxItemCount;

            int itemCount = Helpers.RandomGenerator.RandomInt(1, maxItemCount);

            DiscordEmbedBuilder builder = new DiscordEmbedBuilder()
            {
                Title       = "Hmm, i bet you'd look cute in something else...",
                Description = "I want you, to put some of your clothes on. In fact, you'll dress up with your "
            };

            for (int i = itemCount; i > 0; i--)
            {
                if (clothing.Count == 0)
                {
                    break;
                }

                var item = clothing[Helpers.RandomGenerator.RandomInt(0, clothing.Count)];

                string postfix = "";

                switch (i)
                {
                case 2:
                    postfix = " and ";
                    break;

                case 1:
                    postfix = ". ";
                    break;

                default:
                    postfix = ", ";
                    break;
                }

                builder.Description += ((WheelItemExtension.Item)item.ItemId).ToFormattedText() + postfix;

                clothing.Remove(item);
            }

            if (sissyLevel >= SissyLevel.Normal)
            {
                switch (publicLevel)
                {
                case PublicLevel.None:
                case PublicLevel.Light:
                    builder.Description += "When you're done, leave on everything you're comfortable with for at least 2 hours.";
                    break;

                case PublicLevel.Normal:
                    builder.Description += "When you're done, leave on everything you're comfortable with for at least 4 hours.";
                    break;

                case PublicLevel.Hardcore:
                    builder.Description += "When you're done, leave on everything for at least 6 hours.";
                    break;
                }
            }
            else
            {
                builder.Description += "You can take everything off when you're done with your tasks.";
            }

            Embed = builder.Build();

            return(Task.CompletedTask);
        }