Ejemplo n.º 1
0
        public CraftingViewModel(EquipmentData equipmentData)
            : base(equipmentData,
                   equipmentData.ItemBases.Where(b => equipmentData.AffixesPerItemType.ContainsKey(b.ItemType)))
        {
            MsPrefix.ForEach(ms => ms.PropertyChanged += MsPrefixOnPropertyChanged);
            MsSuffix.ForEach(ms => ms.PropertyChanged += MsSuffixOnPropertyChanged);

            Init();
        }
Ejemplo n.º 2
0
        protected override void UpdateBaseSpecific()
        {
            _prefixes = CreateAffixes(_allPrefixes).ToList();
            _suffixes = CreateAffixes(_allSuffixes).ToList();

            _changingBase = true;
            MsPrefix.ForEach(ms => ms.Affixes = _prefixes);
            foreach (var ms in MsPrefix)
            {
                var blockedPrefixes = MsPrefix.Where(m => m != ms).Select(m => m.SelectedAffix);
                ms.Affixes = _prefixes.Except(blockedPrefixes).ToList();
            }
            MsSuffix.ForEach(ms => ms.Affixes = _suffixes);
            foreach (var ms in MsSuffix)
            {
                var blockedSuffixes = MsSuffix.Where(m => m != ms).Select(m => m.SelectedAffix);
                ms.Affixes = _suffixes.Except(blockedSuffixes).ToList();
            }
            _changingBase = false;
        }
Ejemplo n.º 3
0
        public CraftingViewModel(EquipmentData equipmentData)
            : base(equipmentData, SelectCraftableBases(equipmentData))
        {
            _allPrefixes = equipmentData.ModDatabase[ModGenerationType.Prefix];
            _allSuffixes = equipmentData.ModDatabase[ModGenerationType.Suffix];

            MsPrefix = new[] {
                new ModSelectorViewModel(EquipmentData.StatTranslator),
                new ModSelectorViewModel(EquipmentData.StatTranslator),
                new ModSelectorViewModel(EquipmentData.StatTranslator)
            };
            MsPrefix.ForEach(ms => ms.PropertyChanged += MsPrefixOnPropertyChanged);
            MsSuffix = new[] {
                new ModSelectorViewModel(EquipmentData.StatTranslator),
                new ModSelectorViewModel(EquipmentData.StatTranslator),
                new ModSelectorViewModel(EquipmentData.StatTranslator)
            };
            MsSuffix.ForEach(ms => ms.PropertyChanged += MsSuffixOnPropertyChanged);

            Init();
        }
Ejemplo n.º 4
0
        protected override void UpdateBaseSpecific()
        {
            var aaff = EquipmentData.AffixesPerItemType[Item.ItemType];

            _prefixes = aaff.Where(a => a.ModType == ModType.Prefix).ToList();
            _suffixes = aaff.Where(a => a.ModType == ModType.Suffix).ToList();

            _changingBase = true;
            MsPrefix.ForEach(ms => ms.Affixes = _prefixes);
            foreach (var ms in MsPrefix)
            {
                var blockedPrefixes = MsPrefix.Where(m => m != ms).Select(m => m.SelectedAffix);
                ms.Affixes = _prefixes.Except(blockedPrefixes).ToList();
            }
            MsSuffix.ForEach(ms => ms.Affixes = _suffixes);
            foreach (var ms in MsSuffix)
            {
                var blockedSuffixes = MsSuffix.Where(m => m != ms).Select(m => m.SelectedAffix);
                ms.Affixes = _suffixes.Except(blockedSuffixes).ToList();
            }
            _changingBase = false;
        }