public virtual void DoAbility(MetaSkillType skill, BaseCreature target) { if (Metaskills != null && Metaskills.ContainsKey(skill)) { BaseMetaSkill metaskill = Metaskills[skill]; metaskill.FindAbility(target, this); } }
public BaseMetaSkill(MetaSkillType skilltype, string name, int nle, int maxlevel, double chance, TimeSpan cooldown, double multi) { Level = 1; Name = name; MetaSkillType = skilltype; Experience = 0; NextLevelExperience = nle; MaxLevel = maxlevel; ChanceToActivate = chance; CoolDown = cooldown; AbilityMultiplier = multi; }
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); }