Ejemplo n.º 1
0
        public static MainSkillSelectionViewModel Create(
            SkillDefinitions skillDefinitions, IBuilderFactories builderFactories,
            CalculationNodeViewModelFactory nodeFactory,
            ObservableSet <IReadOnlyList <Skill> > skills)
        {
            var vm = new MainSkillSelectionViewModel(skillDefinitions, builderFactories, nodeFactory);

            vm.Initialize(skills);
            return(vm);
        }
        private async Task InitializeAsync(
            SkillDefinitions skillDefinitions, IBuilderFactories f, ObservableSet <IReadOnlyList <Skill> > skills)
        {
            MainSkillSelection = MainSkillSelectionViewModel.Create(skillDefinitions, f, _nodeFactory, skills);

            InitializeOffensiveStats(f);
            InitializeDefensiveStats(f);

            ConfigurationStats = await ConfigurationStatsViewModel.CreateAsync(_observableCalculator, _nodeFactory);

            AddConfigurationStat(f.StatBuilders.Level, Entity.Enemy);

            GainOnActionStats = await GainOnActionStatsViewModel.CreateAsync(_observableCalculator, _nodeFactory);

            SharedConfiguration = SharedConfigurationViewModel.Create(_nodeFactory, f);
        }