public string GetWeaknessString(Enemy e, Files.SkillManager sm) { var str = new StringBuilder(); if (Weaknesses.ContainsKey(e.Name)) { var set = Weaknesses[e.Name]; foreach (int w in e.Weakness) { if (set.Contains(w)) { str.Append(sm.ElementToString(w)); } else { str.Append("???"); } str.Append(", "); } } else { foreach (int w in e.Weakness) { str.Append("???, "); } } string ret_str = str.ToString(); // "string, " --> 8 chars --> 8 - 2 = 6... string (excludes "right" value) return(ret_str.Substring(0, ret_str.Length - 2)); }
private List <Skill> MakeSkills(int type) { var skills = new List <Skill>(); // 3 types of minions -- BUFF, SUPPORT, ATTACK string image = _images[type]; switch (type) { // buff case 0: string[] bnames = { "Bucettack Up", "Bucefense Up", "Bucriticals Up" }; int stat = _rand.Next(0, bnames.Length); var obskill = new Skill() { S_Type = SkillType.OFFENSIVE_BUFF, Name = bnames[stat], Multiplier = 1, Damage = 0, Element = 0, Stat = stat }; // offensive buff minions only have 1 skill + their weapon skills.Add(obskill); break; // support case 1: var hskill = new Skill() { S_Type = SkillType.HEALING, Name = "Bucey HP", Multiplier = 1, Damage = _rand.Next(10, 21), Element = 0, Stat = 0 }; skills.Add(hskill); break; // by default, the minion is an attack minion default: var sm = new SkillManager(); string[] names = { "Bucire", "Bucater", "Buceyice", "Bushock", "Buwind", "Bucenuke", "Bucedark", "Bulight", "Buceical" }; for (int i = 0; i < 2; i++) { int n = _rand.Next(0, names.Length); var oskill = new Skill() { S_Type = SkillType.OFFENSIVE, Name = names[n], Multiplier = 1, Damage = _rand.Next(15, 21), Element = n, Stat = 0 }; skills.Add(oskill); } break; } return(skills); }