public BattleManager(IConfigurationFactory factory, IBattleGroup group) { _events = factory.GetEvents(); _msgCollector = ServiceLocator.GetServiceLocator().GetService<IMsgCollector>(); _group = group; _args = new BattleEventArgs(group); //建立戰鬥程序 InitailBattleProcess(); }
public ConfigurationFactory() { DragonQuestEngineConfigurationSection config = ConfigurationManager.GetSection("dragonQuestEngine") as DragonQuestEngineConfigurationSection; if (config != null) { events = new BattleEvents(); foreach (ProviderSettings moduleElement in config.Modules) { IBattleState state = Activator.CreateInstance(Type.GetType(moduleElement.Type)) as IBattleState; state.Initail(events); } } }
public abstract void Initail(BattleEvents events);
public override void Initail(BattleEvents events) { events.DropItemState += Execute; }
public override void Initail(BattleEvents events) { events.CharactorVictoryState += Execute; }
public override void Initail(BattleEvents events) { events.MonsterDieState += Execute; }
public override void Initail(BattleEvents events) { events.RaiseExpState += Execute; }