public CommanderViewModel(string commanderName, IEnumerable <string> logs, Languages languages, List <EntryData> entryDatas) { CommanderName = commanderName; var converter = new ItemNameConverter(entryDatas); State = new State(entryDatas, languages, SettingsManager.Comparer); commanderNotifications = new CommanderNotifications(State); journalEntryConverter = new JournalEntryConverter(converter, State.Cargo, languages); blueprintConverter = new BlueprintConverter(State.Cargo); LoadBlueprints(languages); languages.PropertyChanged += (o, e) => OnPropertyChanged(nameof(Filters)); LoadState(logs); var datas = State.Cargo.Select(c => c.Value.Data); var ingredientUsed = State.Blueprints.SelectMany(blueprint => blueprint.Ingredients); var ingredientUsedNames = ingredientUsed.Select(ingredient => ingredient.Entry.Data.Name).Distinct(); var unusedIngredients = datas.Where(data => !ingredientUsedNames.Contains(data.Name)); foreach (var data in unusedIngredients) { data.Unused = true; } }
public CommanderViewModel(string commanderName, List <string> logs, Languages languages) { CommanderName = commanderName; var entryDatas = JsonConvert.DeserializeObject <List <EntryData> >(IOUtils.GetEntryDatasJson()); var converter = new ItemNameConverter(entryDatas); State = new State(entryDatas, languages); journalEntryConverter = new JournalEntryConverter(converter, State.Cargo, languages); blueprintConverter = new BlueprintConverter(State.Cargo); LoadBlueprints(); languages.PropertyChanged += (o, e) => OnPropertyChanged(nameof(Filters)); LoadState(logs); var datas = State.Cargo.Select(c => c.Value.Data); var ingredientUsed = Blueprints.SelectMany(blueprint => blueprint.Ingredients); var ingredientUsedNames = ingredientUsed.Select(ingredient => ingredient.Entry.Data.Name).Distinct(); var unusedIngredients = datas.Where(data => !ingredientUsedNames.Contains(data.Name)); foreach (var data in unusedIngredients) { data.Unused = true; } }
public MainWindowViewModel() { var entryDatas = JsonConvert.DeserializeObject <List <EntryData> >(IOManager.GetEntryDatasJson()); var converter = new ItemNameConverter(entryDatas); State = new State(entryDatas); journalEntryConverter = new JournalEntryConverter(converter, State.Cargo); blueprintConverter = new BlueprintConverter(State.Cargo); LoadBlueprints(); LoadState(); }
public CommanderViewModel(string commanderName, List <string> logs) { CommanderName = commanderName; var entryDatas = JsonConvert.DeserializeObject <List <EntryData> >(IOUtils.GetEntryDatasJson()); var converter = new ItemNameConverter(entryDatas); State = new State(entryDatas); journalEntryConverter = new JournalEntryConverter(converter, State.Cargo); blueprintConverter = new BlueprintConverter(State.Cargo); LoadBlueprints(); LoadState(logs); }
public CommanderViewModel(string commanderName, List<string> logs, Languages languages) { CommanderName = commanderName; var entryDatas = JsonConvert.DeserializeObject<List<EntryData>>(IOUtils.GetEntryDatasJson()); var converter = new ItemNameConverter(entryDatas); State = new State(entryDatas, languages); journalEntryConverter = new JournalEntryConverter(converter, State.Cargo, languages); blueprintConverter = new BlueprintConverter(State.Cargo); LoadBlueprints(); languages.PropertyChanged += (o, e) => OnPropertyChanged(nameof(Filters)); LoadState(logs); }