예제 #1
0
        private static string GetValueTypeDescription(this CfgSkillEffect effect)
        {
            string FormattedValue = String.Format("{0:0.##}", effect.GetValue());
            string desc           = "";

            // Splitted by Value-Type :D
            if (effect.Value_type == 1)
            {
                desc += "Increase HP by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 2)
            {
                desc += "Increase attack by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 3)
            {
                desc += "Increase armor by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 4)
            {
                desc += "Increase speed by " + FormattedValue + ".";
            }
            if (effect.Value_type == 5)
            {
                desc += "Increase hit by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 6)
            {
                desc += "Increase dodge by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 7)
            {
                desc += "Increase crit by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 9)
            {
                desc += "Increase armor break by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 10)
            {
                desc += "Increase real damage by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 11)
            {
                desc += "Increase crit damage by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 12)
            {
                desc += "Increase control immune by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 13)
            {
                desc += "Increase damage immune by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 14)
            {
                desc += "Increase skill dmg by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 15)
            {
                desc += "Increase energy by " + FormattedValue + ".";
            }
            if (effect.Value_type == 16)
            {
                desc += "Increase damage against warrior by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 17)
            {
                desc += "Increase damage against mage by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 19)
            {
                desc += "Increase damage against ranger by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 20)
            {
                desc += "Increase damage against assassins by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 21)
            {
                desc += "Immune against DOT-effects.";
            }
            if (effect.Value_type == 24)
            {
                desc += "Immune against being burnt.";
            }
            if (effect.Value_type == 31)
            {
                desc += "Increase HP-recovery by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 32)
            {
                desc += "Reduces damage against DOT-effects by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 33)
            {
                desc += "Reduces crit received by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 41)
            {
                desc += "Increase all damage delt by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 1002)
            {
                desc += "Increase damage against frozen by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 1004)
            {
                desc += "Increase damage against poisoned by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 1006)
            {
                desc += "Increase damage against bleeding by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 1055)
            {
                desc += "Increase damage against isolated targets by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 2005)
            {
                desc += "Increase own burning damage by " + FormattedValue + "%.";
            }
            if (effect.Value_type == 7)
            {
                desc += "Increase healing by " + FormattedValue + "%.";
            }

            return(desc);
        }
예제 #2
0
        public static string GetGenericDescription(this CfgSkillEffect effect)
        {
            effect.VEffect = new ValueEffect(effect.Value);

            string desc = "";

            // Launchtypes
            {
                if (effect.Launch_type == 1)
                {
                    desc += "When the skill is activated.";
                }
                else if (effect.Launch_type == 2)
                {
                    desc += "[PASSIVE]";
                }
                else if (effect.Launch_type == 3)
                {
                    desc += "After the Hero attacked normally.";
                }
                else if (effect.Launch_type == 4)
                {
                    desc += "When a normal Attack is critical.";
                }
                else if (effect.Launch_type == 5)
                {
                    desc += "When a normal attack got dodged by an enemy.";
                }
                else if (effect.Launch_type == 6)
                {
                    desc += "When damaging a debuffed enemy.";
                }
                else if (effect.Launch_type == 7)
                {
                    desc += "When damaging an enemy with a specific profession.";
                }
                else if (effect.Launch_type == 9)
                {
                    desc += "When the hero dies.";
                }
                else if (effect.Launch_type == 10)
                {
                    desc += "When an ally dies.";
                }
                else if (effect.Launch_type == 11)
                {
                    desc += "When being attacked.";
                }
                else if (effect.Launch_type == 12)
                {
                    desc += "When receiving a critical attack.";
                }
                else if (effect.Launch_type == 14)
                {
                    desc += "When an enemy dies.";
                }
                else if (effect.Launch_type == 15)
                {
                    desc += "[NORMAL ATTACK REPLACEMENT]";
                }
                else if (effect.Launch_type == 16)
                {
                    desc += "While being in the frontline.";
                }
                else if (effect.Launch_type == 17)
                {
                    desc += "While being in the backline.";
                }
                else if (effect.Launch_type == 18)
                {
                    desc += "While having less than a specific percentage of max HP.";
                }
                else if (effect.Launch_type == 19)
                {
                    desc += "When a new Round starts.";
                }
                else if (effect.Launch_type == 20)
                {
                    desc += "When an ally realeases a skill.";
                }
                else if (effect.Launch_type == 21)
                {
                    desc += "When an ally strikes back.";
                }
                else if (effect.Launch_type == 22)
                {
                    desc += "When dodging an attack.";
                }
                else if (effect.Launch_type == 23)
                {
                    desc += "When dodging an attack of an enemy hero.";
                }
                else if (effect.Launch_type == 24)
                {
                    desc += "When an ally releases a critical attack.";
                }
                else if (effect.Launch_type == 26)
                {
                    desc += "When taking deadly damage.";
                }
                else if (effect.Launch_type == 27)
                {
                    desc += "When the round ends.";
                }
                else if (effect.Launch_type == 28)
                {
                    desc += "When an enemy has 3 Cursed Marks.";
                }
                else if (effect.Launch_type == 30)
                {
                    desc += "When taking skill damage.";
                }
                else if (effect.Launch_type == 31)
                {
                    desc += "When an attack or an skill is critical.";
                }
                else if (effect.Launch_type == 34)
                {
                    desc += "When a hero dies.";
                }
                else if (effect.Launch_type == 37)
                {
                    desc += "After the skill has been released.";
                }
                else if (effect.Launch_type == 39)
                {
                    desc += "When dealing damage to an enemy.";
                }
                else if (effect.Launch_type == 40)
                {
                    desc += "When the round ends (special, takes DoT-Debuffs into account).";
                }
                else if (effect.Launch_type == 41)
                {
                    desc += "When being controlled (stunned, petrified, frozen, silenced, disarmed, mocked or tagged with the Seal of Light).";
                }
                else if (effect.Launch_type == 42)
                {
                    desc += "When reviving.";
                }
                else if (effect.Launch_type == 43)
                {
                    desc += "When the battle starts.";
                }
                else if (effect.Launch_type == 44)
                {
                    desc += "When receiving a status effect.";
                }
                else if (effect.Launch_type == 46)
                {
                    desc += "|UNSURE| Whenever an ally deals damage to enemies.";
                }
                else if (effect.Launch_type == 47)
                {
                    desc += "When a hero releases a skill.";
                }
                else if (effect.Launch_type == 48)
                {
                    desc += "When an enemy gets petrified.";
                }
                else if (effect.Launch_type == 50)
                {
                    desc += "When an isolated enemy dies.";
                }
                else if (effect.Launch_type == 52)
                {
                    desc += "At the beginning of a round.";
                }
                else if (effect.Launch_type == 53)
                {
                    desc += "After an attack was landed and there are still other ally asassins alive.";
                }
                else if (effect.Launch_type == 55)
                {
                    desc += "|UNSURE| When allies hit vulnerable targets or targets tagged with firemarks.";
                }
                else if (effect.Launch_type == 56)
                {
                    desc += "When the skill was a critical.";
                }
                else if (effect.Launch_type == 58)
                {
                    desc += "When receiving damage over a given percentage (|UNSURE|: 10%).";
                }
                else if (effect.Launch_type == 59)
                {
                    desc += "|UNSURE| When a normal attack strikes the enemy with the lowest HP.";
                }
                else if (effect.Launch_type == 61)
                {
                    desc += "When recovering HP.";
                }
                else if (effect.Launch_type == 62)
                {
                    desc += "|NEED HELP :D Write me on Discord and i'll introduce you to the data :P (mention: launch_type #" + effect.Launch_type + ")|";
                }
                else if (effect.Launch_type == 63) // Mark remove?
                {
                    desc += "|NEED HELP :D Write me on Discord and i'll introduce you to the data :P (mention: launch_type #" + effect.Launch_type + ")|";
                }
                else if (effect.Launch_type == 64)
                {
                    desc += "|UNSURE| When gaining a mutation.";
                }
                else if (effect.Launch_type == 65)
                {
                    desc += "|NEED HELP :D Write me on Discord and i'll introduce you to the data :P (mention: launch_type #" + effect.Launch_type + ")|";
                }
                else if (effect.Launch_type == 66)
                {
                    desc += "When gaining a mutation.";
                }
                else if (effect.Launch_type == 67)
                {
                    desc += "When damaging enemies below a certain energy threshold.";
                }
                else if (effect.Launch_type == 68)
                {
                    desc += "When ally resurrected.";
                }
                else if (effect.Launch_type == 69)
                {
                    desc += "|NEED HELP :D Write me on Discord and i'll introduce you to the data :P (mention: launch_type #" + effect.Launch_type + ")|";
                }
                else if (effect.Launch_type == 72)
                {
                    desc += "|UNSURE| At the beginning of each round.";
                }
                else if (effect.Launch_type == 73)
                {
                    desc += "When an enemy gets controlled.";
                }
                else if (effect.Launch_type == 74)
                {
                    desc += "|NEED HELP :D Write me on Discord and i'll introduce you to the data :P (mention: launch_type #" + effect.Launch_type + ")|";
                }
                else if (effect.Launch_type == 75)
                {
                    desc += "|NEED HELP :D Write me on Discord and i'll introduce you to the data :P (mention: launch_type #" + effect.Launch_type + ")|";
                }
                else if (effect.Launch_type == 77)
                {
                    desc += "|TOTALLY UNKNOW - NEED EXPERT-LEVEL HELP HERE (mention: launch_type #" + effect.Launch_type + ")|";
                }
                else if (effect.Launch_type == 78)
                {
                    desc += "|NEED HELP :D Write me on Discord and i'll introduce you to the data :P (mention: launch_type #" + effect.Launch_type + ")|";
                }
                else if (effect.Launch_type == 79)
                {
                    desc += "When a hero resurrects.";
                }
                else if (effect.Launch_type == 80)
                {
                    desc += "|NEED HELP :D Write me on Discord and i'll introduce you to the data :P (mention: launch_type #" + effect.Launch_type + ")|";
                }
                else if (effect.Launch_type == 81)
                {
                    desc += "|NEED HELP :D Write me on Discord and i'll introduce you to the data :P (mention: launch_type #" + effect.Launch_type + ")|";
                }
                else if (effect.Launch_type == 82)
                {
                    desc += "|NEED HELP :D Write me on Discord and i'll introduce you to the data :P (mention: launch_type #" + effect.Launch_type + ")|";
                }
                else if (effect.Launch_type == 83)
                {
                    desc += "|NEED HELP :D Write me on Discord and i'll introduce you to the data :P (mention: launch_type #" + effect.Launch_type + ")|";
                }
                else if (effect.Launch_type == 84)
                {
                    desc += "When a refuged ally is attacked.";
                }
                else if (effect.Launch_type == 87)
                {
                    desc += "When dealing damage to an enemy (special).";
                }
                else if (effect.Launch_type == 88)
                {
                    desc += "|TOTALLY UNKNOW - NEED EXPERT-LEVEL HELP HERE (mention: launch_type #" + effect.Launch_type + ")|";
                }
                else if (effect.Launch_type == 89)
                {
                    desc += "|UNSURE| After releasing a spell.";
                }
                else if (effect.Launch_type == 90)
                {
                    desc += "|TOTALLY UNKNOW - NEED EXPERT-LEVEL HELP HERE (mention: launch_type #" + effect.Launch_type + ")|";
                }
                else if (effect.Launch_type == 91)
                {
                    desc += "|NEED HELP :D Write me on Discord and i'll introduce you to the data :P (mention: launch_type #" + effect.Launch_type + ")|";
                }
                else
                {
                    desc += "|UNKOWN launch_type # " + effect.Launch_type + "! Please write me on Discord (and mention die # +- 'launch_type') and i'll fix it.|";
                }
            }

            desc += "\n";

            string FormattedValue = String.Format("{0:0.##}", effect.GetValue()); // 0 sind wichtige stellen, # werden weggelassen wenn möglich

            // effect_type. Is dependend of the Value...
            {
                string Unknown = "Unknown Effect Type - |NEED HELP :D Write me on Discord and i'll introduce you to the data :P (mention: effect_type #" + effect.Effect_type + ")|";
                string uData   = "(unknown/non-existing-data)";
                string Unsure  = "(UNSURE, report wrong data to me on discord :D)";
                if (effect.Effect_type == 1)
                {
                    desc += "Deals " + FormattedValue + "% Damage.";
                }
                else if (effect.Effect_type == 2)
                {
                    desc += "Recover " + FormattedValue + "% HP (of attack).";
                }
                else if (effect.Effect_type == 3)
                {
                    desc += "Apply effect (for limited duration): " + effect.VEffect.GetValueDescription();
                }
                else if (effect.Effect_type == 4)
                {
                    desc += "Apply effect (permanent): ";
                    desc += effect.GetValueTypeDescription();
                }
                else if (effect.Effect_type == 5)
                {
                    desc += (effect.GetValue() < 0 ? "Remove " : "Add ") + FormattedValue + " energy.";
                }
                else if (effect.Effect_type == 6)
                {
                    desc += "Recover " + FormattedValue + "% of max HP";
                }
                else if (effect.Effect_type == 7)
                {
                    desc += "Deal " + FormattedValue + "% extra damage against " + uData + " special targets.";
                }
                else if (effect.Effect_type == 8)
                {
                    desc += "Deal " + FormattedValue + "% damage against bleeding targets.";
                }
                else if (effect.Effect_type == 9)
                {
                    desc += "Deal " + FormattedValue + "% damage of max HP.";
                }
                else if (effect.Effect_type == 10)
                {
                    desc += "Remove all buffs of the target.";
                }
                else if (effect.Effect_type == 12)
                {
                    desc += "Recover " + FormattedValue + "% of max HP";
                }
                else if (effect.Effect_type == 13)
                {
                    desc += "Recover " + FormattedValue + "% extra HP for allies (from own spells).";
                }
                else if (effect.Effect_type == 14)
                {
                    desc += "Remove " + FormattedValue + " debuff.";
                }
                else if (effect.Effect_type == 15)
                {
                    desc += "Whenever an enemy got " + FormattedValue + " (-1 since its adding one, you dont see it in time tho) Cursed Marks, set them to 0.";
                }
                else if (effect.Effect_type == 16)
                {
                    desc += "Deal " + FormattedValue + "% extra damage against an enemy with (number of pre-effect) Cursed Marks";
                }
                else if (effect.Effect_type == 18)
                {
                    desc += "Change all damage to be critical.";
                }
                else if (effect.Effect_type == 19)
                {
                    desc += "Deal " + FormattedValue + "% damage of max HP.";
                }
                else if (effect.Effect_type == 20)
                {
                    desc += Unknown;
                }
                else if (effect.Effect_type == 21)
                {
                    desc += Unknown;
                }
                else if (effect.Effect_type == 22)
                {
                    desc += "Reflects " + FormattedValue + "% of damage.";
                }
                else if (effect.Effect_type == 23)
                {
                    desc += "Recover " + FormattedValue + "% of max HP.";
                }
                else if (effect.Effect_type == 24)
                {
                    desc += Unknown;
                }
                else if (effect.Effect_type == 25)
                {
                    desc += Unknown;
                }
                else if (effect.Effect_type == 26)
                {
                    desc += "Deal " + FormattedValue + "% damage for " + uData + " special effect on the target.";
                }
                else if (effect.Effect_type == 27)
                {
                    desc += "Deal " + FormattedValue + "% damage equally.";
                }
                else if (effect.Effect_type == 28)
                {
                    desc += "Remove " + FormattedValue + " random buffs.";
                }
                else if (effect.Effect_type == 29)
                {
                    desc += "Deal " + FormattedValue + "% damage which ignores armor.";
                }
                else if (effect.Effect_type == 30)
                {
                    desc += (effect.Value < 0 ? "Reduce " : "Add ");
                    if (effect.Value_type == -1)
                    {
                        desc += Math.Abs(effect.Value) + " round to each debuff (wounded, bleeding, poisoned and/or burnt).";
                    }
                    else if (effect.Value_type == 2)
                    {
                        desc += Math.Abs(effect.Value) + " round to the frozen/petrified debuff " + Unknown + ".";
                    }
                    else if (effect.Value_type == 1)
                    {
                        desc += Math.Abs(effect.Value) + " round to the stunned debuff " + Unknown + ".";
                    }
                    else if (effect.Value_type == 3)
                    {
                        desc += Math.Abs(effect.Value) + " round to the silenced/disarmed debuff " + Unknown + ".";
                    }
                    else if (effect.Value_type == 7)
                    {
                        desc += Math.Abs(effect.Value) + " round to the mocked debuff " + Unknown + ".";
                    }
                    else if (effect.Value_type == 54)
                    {
                        desc += Math.Abs(effect.Value) + " round to the Seal of Light debuff " + Unknown + ".";
                    }
                }
                else if (effect.Effect_type == 32)
                {
                    desc += "Normal attacks are hitting " + FormattedValue + " extra targets.";
                }
                else if (effect.Effect_type == 33)
                {
                    desc += "Trigger all DOT-effects of the target (does not remove a counter).";
                }
                else if (effect.Effect_type == 35)
                {
                    desc += "Increase attack by " + FormattedValue + "% of living enemies.";
                }
                else if (effect.Effect_type == 36)
                {
                    desc += "Recover " + FormattedValue + "% of recovered HP as HP.";
                }
                else if (effect.Effect_type == 37)
                {
                    desc += "Reflects " + FormattedValue + "% of damage.";
                }
                else if (effect.Effect_type == 16)
                {
                    desc += "Reflects " + FormattedValue + "% of damage.";
                }
                else if (effect.Effect_type == 16)
                {
                    desc += "Reflects " + FormattedValue + "% of damage.";
                }
                else if (effect.Effect_type == 16)
                {
                    desc += "Reflects " + FormattedValue + "% of damage.";
                }
                else
                {
                    desc += "Unimplemented :D Comming soon :P.";
                }
            }

            return(desc);
        }