Exemple #1
0
        public void ToggleBitTest()
        {
            var xbit = new ExtendedBitvector();

            xbit.SetBit(2);
            xbit.SetBit(8);

            Assert.That(xbit.IsSet(2), Is.True);
            xbit.ToggleBit(8);

            Assert.That(xbit.IsSet(8), Is.True);
        }
        public void ReadBitvectorWithSpacesReturnsValidObject(string stringToRead, int valueToCheck, bool expectedValue)
        {
            TextReaderProxy proxy = new TextReaderProxy(new StringReader("2 & 4 & 8~"));

            ExtendedBitvector result = proxy.ReadBitvector();

            Assert.That(result, Is.Not.Null);
            Assert.That(result.IsSet((int)valueToCheck), Is.EqualTo(expectedValue));
        }
Exemple #3
0
        public void RemoveBitTest()
        {
            var xbit = new ExtendedBitvector();

            xbit.SetBit(8);
            xbit.RemoveBit(8);

            Assert.That(xbit.IsSet(8), Is.False);
        }
Exemple #4
0
        public static string extra_bit_name(ExtendedBitvector extra_flags)
        {
            var sb = new StringBuilder();

            foreach (var type in Enum.GetValues(typeof(ItemExtraFlags))
                     .Cast <ItemExtraFlags>()
                     .Where(type => extra_flags.IsSet((int)type)))
            {
                sb.AppendFormat(" {0}", type.GetName());
            }
            return(sb.ToString());
        }
Exemple #5
0
        public static string affect_bit_name(ExtendedBitvector vector)
        {
            var sb = new StringBuilder();

            foreach (var type in Enum.GetValues(typeof(AffectedByTypes))
                     .Cast <AffectedByTypes>()
                     .Where(type => vector.IsSet((int)type)))
            {
                sb.AppendFormat(" {0}", type.GetName());
            }
            return(sb.ToString());
        }
Exemple #6
0
 public static bool CheckIfSet(CharacterInstance ch, ExtendedBitvector bits, int bitToCheck, string message = "")
 {
     return(bits.IsSet(bitToCheck) && SendToChar(ch, message));
 }