コード例 #1
0
        void SetImpl <T>(T?newValue, ref T value, WeaponTuningModifiers modifer)
            where T : struct
        {
            var old_flags = Modifiers;
            int index     = Bits.TrailingZerosCount((uint)modifer);

            EnumFlags.Modify(newValue.HasValue, ref Modifiers, modifer);
            value = newValue.GetValueOrDefault();

            if (old_flags != Modifiers)
            {
                NotifyPropertyChanged(kIsUnchangedChanged);
            }

            NotifyPropertyChanged(kValueChanged[index]);
        }
コード例 #2
0
 T?GetImpl <T>(T value, WeaponTuningModifiers modifer)
     where T : struct
 {
     return(EnumFlags.Test(Modifiers, modifer) ? value : (T?)null);
 }
コード例 #3
0
 public void Clear()
 {
     Modifiers = 0;
 }