Ejemplo n.º 1
0
        private void Base_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e)
        {
            //Need to be careful to prevent StackOverFlow exceptions
            //UpdateCharacter triggers PropertyChanged
            if (e.PropertyName == "Base" || e.PropertyName == "EquipmentBonus")
            {
                Seyan.UpdateCharacter();

                OnPropertyChanged(nameof(Accuracy));
                OnPropertyChanged(nameof(AccuracyAndArmor));
                OnPropertyChanged(nameof(EffectiveArmor));
            }
        }
Ejemplo n.º 2
0
        public void Setup()
        {
            Seyan.SetupSkills();

            Parallel.ForEach(Seyan.Attributes, attributes =>
            {
                attributes.PropertyChanged += Base_PropertyChanged;
            });

            Parallel.ForEach(Seyan.Skills, skill =>
            {
                skill.PropertyChanged += Base_PropertyChanged;
            });

            Seyan.UpdateCharacter();
        }