public LibGroup() { HL = new HeroLib(); TL = new TuxLib(); NL = new NPCLib(); ML = new MonsterLib(); EL = new EvenementLib(); SL = new SkillLib(); ZL = new OperationLib(); NJL = new NCActionLib(); RL = new RuneLib(); ESL = new ExspLib(); }
public IDictionary<string, Evenement> RegisterDelegates(EvenementLib lib) { EveCottage ec = this; IDictionary<string, Evenement> ev01 = new Dictionary<string, Evenement>(); foreach (Evenement eve in lib.ListAllEves(0)) { string cardCode = string.Format(eve.Code) + ""; ev01.Add(cardCode, eve); var method = ec.GetType().GetMethod(cardCode); if (method != null) eve.Action += delegate(Player player) { method.Invoke(ec, new object[] { player }); }; var methodPers = ec.GetType().GetMethod(cardCode + "Pers"); if (methodPers != null) eve.Pers += new Evenement.ActionDelegate(delegate(Player player) { methodPers.Invoke(ec, new object[] { player }); }); var methodPersValid = ec.GetType().GetMethod(cardCode + "PersValid"); if (methodPersValid != null) eve.PersValid += new Evenement.ValidDelegate(delegate() { return (bool)methodPersValid.Invoke(ec, new object[] { }); }); } return ev01; }
public LibGroup(HeroLib hl, TuxLib tl, NPCLib nl, MonsterLib ml, EvenementLib el, SkillLib sl, OperationLib zl, NCActionLib njl, RuneLib rl, ExspLib esl) { HL = hl; TL = tl; NL = nl; ML = ml; EL = el; SL = sl; ZL = zl; NJL = njl; RL = rl; ESL = esl; }