public static BaseMetaRelic GetRandomRelic() { BaseMetaRelic relic = null; Array values = Enum.GetValues(typeof(MetaSkillType)); Random random = new Random(); MetaSkillType RandomSkill = (MetaSkillType)values.GetValue(random.Next(values.Length)); switch (RandomSkill) { case MetaSkillType.Bleed: { relic = new BloodyRelic(); break; } case MetaSkillType.Molten: { relic = new MoltenRelic(); break; } case MetaSkillType.VenemousBlood: { relic = new NoxiousRelic(); break; } case MetaSkillType.Quicksilver: { relic = new QuicksilverRelic(); break; } case MetaSkillType.GoldFind: { relic = new GoldFindRelic(); break; } } return relic; }