Example #1
0
        private string ResolveNameVariable(DungeonVariable variable)
        {
            using DiscordContext context = new DiscordContext();
            string text = "";

            switch ((DungeonVariableExtension.VariableType)variable.Type)
            {
            case DungeonVariableExtension.VariableType.Name_Mob:
                text = context.DungeonMob.Skip(Helpers.RandomGenerator.RandomInt(0, context.DungeonMob.Count())).First().Name;
                break;
            }

            return(text);
        }
Example #2
0
        private string ResolveTaskVariable(DungeonVariable variable)
        {
            switch ((DungeonVariableExtension.VariableType)variable.Type)
            {
            case DungeonVariableExtension.VariableType.RandomStrokes:
                var baseStrokes       = (int)_difficulty * 30;
                var randomSubtraction = Helpers.RandomGenerator.RandomInt(-(baseStrokes / 4), baseStrokes / 4);
                var endStrokes        = baseStrokes - randomSubtraction;

                WaitAfterMessage += baseStrokes / 5 * 1000;

                return(endStrokes.ToString());

            case DungeonVariableExtension.VariableType.RandomEdges:
                var add      = Helpers.RandomGenerator.RandomInt(0, 2);
                var endEdges = Convert.ToInt16((int)_difficulty * 0.7f + add);

                WaitAfterMessage += endEdges * 30000;

                return(endEdges.ToString());

            case DungeonVariableExtension.VariableType.RandomFlicks:
                var baseFlicks             = (int)_difficulty * 10;
                var randomFlickSubtraction = Helpers.RandomGenerator.RandomInt(-(baseFlicks / 4), baseFlicks / 4);
                var endFlicks = baseFlicks - randomFlickSubtraction;

                WaitAfterMessage += endFlicks * 1000;

                return(endFlicks.ToString());

            case DungeonVariableExtension.VariableType.RandomSlaps:
                var baseSlaps             = (int)_difficulty * 5;
                var randomSlapSubtraction = Helpers.RandomGenerator.RandomInt(-(baseSlaps / 4), baseSlaps / 4);
                var endSlaps = baseSlaps - randomSlapSubtraction;

                WaitAfterMessage += endSlaps * 1000;

                return(endSlaps.ToString());
            }

            return(null);
        }
Example #3
0
        private string ResolveTextVariable(DungeonVariable variable)
        {
            TextType textType = 0;

            // Note: Could also be realised through Reflection. Consider for future changes.
            switch ((DungeonVariableExtension.VariableType)variable.Type)
            {
            case DungeonVariableExtension.VariableType.Text_Enter:
                textType = TextType.RoomEnter;
                break;

            case DungeonVariableExtension.VariableType.Text_Greeting:
                textType = TextType.Greeting;
                break;

            case DungeonVariableExtension.VariableType.Text_Main:
                textType = TextType.Main;
                break;

            case DungeonVariableExtension.VariableType.Text_Dismissal:
                textType = TextType.Dismissal;
                break;

            case DungeonVariableExtension.VariableType.Text_Success:
                textType = TextType.Success;
                break;

            case DungeonVariableExtension.VariableType.Text_Failure:
                textType = TextType.Failure;
                break;
            }

            var text = GetText(textType);

            WaitAfterMessage += text.Length * 10;

            return(text);
        }
Example #4
0
        private string ResolveVariable(DungeonVariable variable)
        {
            var text = "";

            if (variable.Type > (int)DungeonVariableExtension.VariableType.None && variable.Type >= (int)DungeonVariableExtension.VariableType.Text_Enter && variable.Type < (int)DungeonVariableExtension.VariableType.RandomStrokes)
            {
                text = ResolveTextVariable(variable);
            }
            else if (variable.Type >= (int)DungeonVariableExtension.VariableType.RandomStrokes && variable.Type < (int)DungeonVariableExtension.VariableType.Content)
            {
                text = ResolveTaskVariable(variable);
            }
            else if (variable.Type >= (int)DungeonVariableExtension.VariableType.Content && variable.Type < (int)DungeonVariableExtension.VariableType.Name_Mob)
            {
                text = ResolveTaskVariable(variable);
            }
            else if (variable.Type >= (int)DungeonVariableExtension.VariableType.Name_Mob)
            {
                text = ResolveNameVariable(variable);
            }

            return(text);
        }