public static InitialState Load(string file, Skills skillConfig) { InitialState state = Toml.ReadFile <InitialState> (file); state.SkillConfig = skillConfig; return(state); }
public static InitialState LoadDefault(Skills skillConfig) { Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("LS.Core.Configuration.InitialState.tml"); InitialState state = Toml.ReadStream <InitialState> (stream); state.SkillConfig = skillConfig; return(state); }
public GameClient() { CharacterBehavior behavior = new CharacterBehavior(Configuration.Behaviors.LoadDefault().GetBehaviorsSets()); EffectEngine effectEngine = new EffectEngine(new RandomGenerator(), Configuration.ConfigData.LoadDefault()); SkillEngine skillEngine = new SkillEngine(effectEngine); Configuration.Skills skills = Configuration.Skills.LoadDefault(); InitialState = Configuration.InitialState.LoadDefault(skills); GameState state = InitialState.CreateInitialBattle(); Engine = new GameEngine(state, behavior, skillEngine, effectEngine); Engine.DelayedActions += (o, e) => Delegate?.OnDelayedAction(e.Action); Engine.SkillUsed += (o, e) => Delegate?.OnSkillUsed(e.Character, e.Skill); Engine.SkillChannelStarted += (o, e) => Delegate?.OnSkillChannelStarted(e.Character, e.Skill); Engine.SkillChannelEnded += (o, e) => Delegate?.OnSkillChannelEnded(e.Character, e.Skill); }