Exemple #1
0
        public void TestNewMobileAnimation(int action, int frameCount, byte delay)
        {
            Serial mobile = 0x1;

            var expected = new NewMobileAnimation(
                mobile,
                action,
                frameCount,
                delay
                ).Compile();

            using var ns = PacketTestUtilities.CreateTestNetState();
            ns.SendNewMobileAnimation(
                mobile,
                action,
                frameCount,
                delay
                );

            var result = ns.SendPipe.Reader.TryRead();

            AssertThat.Equal(result.Buffer[0].AsSpan(0), expected);
        }
Exemple #2
0
        public void TestVendorBuyContent(ProtocolChanges protocolChanges)
        {
            var cont = new Container(World.NewItem);

            var buyStates = new List <BuyItemState>
            {
                new("First Item", cont.Serial, World.NewItem, 10, 1, 0x01, 0),
                new("Second Item", cont.Serial, World.NewItem, 20, 2, 0x0A, 0),
                new("Third Item", cont.Serial, World.NewItem, 30, 10, 0x0F, 0)
            };

            var ns = PacketTestUtilities.CreateTestNetState();

            ns.ProtocolChanges = protocolChanges;

            var expected = new VendorBuyContent(buyStates, ns.ContainerGridLines).Compile();

            ns.SendVendorBuyContent(buyStates);

            var result = ns.SendPipe.Reader.TryRead();

            AssertThat.Equal(result.Buffer[0].AsSpan(0), expected);
        }
        public void TestSecureTradeEquip6017()
        {
            var m = new Mobile(0x1);

            m.DefaultMobileInit();

            var cont       = new Container(World.NewItem);
            var itemInCont = new Item(World.NewItem)
            {
                Parent = cont
            };

            var expected = new SecureTradeEquip6017(itemInCont, m).Compile();

            using var ns        = PacketTestUtilities.CreateTestNetState();
            ns.ProtocolChanges |= ProtocolChanges.ContainerGridLines;

            ns.SendSecureTradeEquip(itemInCont, m);

            var result = ns.SendPipe.Reader.TryRead();

            AssertThat.Equal(result.Buffer[0].AsSpan(0), expected);
        }
        public void TestDisplayEquipmentInfo(string name, bool unidentified)
        {
            var m = new Mobile((Serial)0x1);

            m.DefaultMobileInit();
            m.RawName = name;

            var item = new Item(World.NewItem);

            var info = new EquipmentInfo(
                500000,
                m,
                unidentified,
                new[]
            {
                new EquipInfoAttribute(500001, 1),
                new EquipInfoAttribute(500002, 2),
                new EquipInfoAttribute(500002, 3)
            }
                );

            var expected = new DisplayEquipmentInfo(item, info).Compile();

            var ns = PacketTestUtilities.CreateTestNetState();

            ns.SendDisplayEquipmentInfo(
                item.Serial,
                info.Number,
                info.Crafter?.RawName,
                info.Unidentified,
                new List <EquipInfoAttribute>(info.Attributes)
                );

            var result = ns.SendPipe.Reader.TryRead();

            AssertThat.Equal(result.Buffer[0].AsSpan(0), expected);
        }
Exemple #5
0
        public void TestAsciiMessage()
        {
            Serial serial      = 0x1;
            var    graphic     = 0x100;
            var    messageType = MessageType.Label;
            var    hue         = 1024;
            var    font        = 3;
            var    name        = "Stuff";
            var    text        = "Some Text";

            var expected = new AsciiMessage(
                serial,
                graphic,
                messageType,
                hue,
                font,
                name,
                text
                ).Compile();

            using var ns = PacketTestUtilities.CreateTestNetState();
            ns.SendMessage(
                serial,
                graphic,
                messageType,
                hue,
                font,
                true,
                null,
                name,
                text
                );

            var result = ns.SendPipe.Reader.TryRead();

            AssertThat.Equal(result.Buffer[0].AsSpan(0), expected);
        }
Exemple #6
0
        public void TestVendorBuyList()
        {
            var vendor = new Mobile(0x1);

            vendor.DefaultMobileInit();

            var cont = new Container(World.NewItem);

            var buyStates = new List <BuyItemState>
            {
                new("First Item", cont.Serial, World.NewItem, 10, 1, 0x01, 0),
                new("Second Item", cont.Serial, World.NewItem, 20, 2, 0x0A, 0),
                new("Third Item", cont.Serial, World.NewItem, 30, 10, 0x0F, 0)
            };

            var expected = new VendorBuyList(vendor, buyStates).Compile();

            using var ns = PacketTestUtilities.CreateTestNetState();
            ns.SendVendorBuyList(vendor, buyStates);

            var result = ns.SendPipe.Reader.TryRead();

            AssertThat.Equal(result.Buffer[0].AsSpan(0), expected);
        }
        public void TestContainerContent6017()
        {
            var cont = new Container(World.NewItem);

            cont.AddItem(new Item(World.NewItem));
            cont.Map = Map.Felucca;

            var m = new Mobile((Serial)0x1);

            m.DefaultMobileInit();
            m.AccessLevel = AccessLevel.Administrator;
            m.Map         = Map.Felucca;

            var expected = new ContainerContent6017(m, cont).Compile();

            var ns = PacketTestUtilities.CreateTestNetState();

            ns.ProtocolChanges |= ProtocolChanges.ContainerGridLines;
            ns.SendContainerContent(m, cont);

            var result = ns.SendPipe.Reader.TryRead();

            AssertThat.Equal(result.Buffer[0].AsSpan(0), expected);
        }
        public void TestWorldItemPacket()
        {
            Serial serial = (Serial)0x1024;
            var    itemId = 1;

            // Move to fixture
            TileData.ItemTable[itemId] = new ItemData(
                "Test Item Data",
                TileFlag.Generic,
                1,
                1,
                1,
                1,
                1,
                1
                );

            var item = new Item(serial)
            {
                ItemID    = itemId,
                Hue       = 0x1024,
                Amount    = 10,
                Location  = new Point3D(1000, 100, -10),
                Direction = Direction.Left
            };

            var expected = new WorldItem(item).Compile();

            var ns = PacketTestUtilities.CreateTestNetState();

            ns.SendWorldItem(item);

            var result = ns.SendPipe.Reader.TryRead();

            AssertThat.Equal(result.Buffer[0].AsSpan(0), expected);
        }
        public void TestMobileStatusCompact(bool canBeRenamed)
        {
            var m = new Mobile(0x1)
            {
                Name = "Random Mobile 1"
            };

            m.DefaultMobileInit();
            m.Str  = 50;
            m.Hits = 100;
            m.Int  = 75;
            m.Mana = 100;
            m.Dex  = 25;
            m.Stam = 100;

            var expected = new MobileStatusCompact(canBeRenamed, m).Compile();

            using var ns = PacketTestUtilities.CreateTestNetState();
            ns.SendMobileStatusCompact(m, canBeRenamed);

            var result = ns.SendPipe.Reader.TryRead();

            AssertThat.Equal(result.Buffer[0].AsSpan(0), expected);
        }