public void WillTargetTypeLessThanSearchLevel() { Engine.Player = new PlayerMobile(0x01); Item backpack = new Item(0x40000000, Engine.Player.Serial) { Container = new ItemCollection(0x40000000) }; Engine.Items.Add(backpack); Engine.Player.SetLayer(Layer.Backpack, backpack.Serial); ItemCollection container = backpack.Container; for (int i = 0; i < 5; i++) { Item subitem = new Item(container.Serial + 1, container.Serial) { Container = new ItemCollection(container.Serial + 1), Owner = container.Serial }; container.Add(subitem); container = subitem.Container; } Item item = new Item(container.Serial + 1, container.Serial) { ID = 0xfeef }; container.Add(item); AutoResetEvent are = new AutoResetEvent(false); void PassOnTargetSent(byte[] data, int length) { if (data[0] == 0x6C) { are.Set(); } } Engine.InternalPacketSentEvent += PassOnTargetSent; TargetCommands.TargetType(item.ID, -1, 5); bool result = are.WaitOne(5000); Assert.IsTrue(result); Engine.InternalPacketSentEvent -= PassOnTargetSent; Engine.Items.Clear(); Engine.Player = null; }
public void WontTargetTypeGreaterThanSearchLevel() { Engine.Player = new PlayerMobile(0x01); Item backpack = new Item(0x40000000, Engine.Player.Serial) { Container = new ItemCollection(0x40000000) }; Engine.Items.Add(backpack); Engine.Player.SetLayer(Layer.Backpack, backpack.Serial); ItemCollection container = backpack.Container; for (int i = 0; i < 5; i++) { Item subitem = new Item(container.Serial + 1, container.Serial) { Container = new ItemCollection(container.Serial + 1), Owner = container.Serial }; container.Add(subitem); container = subitem.Container; } Item item = new Item(container.Serial + 1, container.Serial) { ID = 0xfeef }; container.Add(item); void FailOnTargetSent(byte[] data, int length) { if (data[0] == 0x6C) { Assert.Fail(); } } Engine.InternalPacketSentEvent += FailOnTargetSent; TargetCommands.TargetType(item.ID, -1, 4); Engine.InternalPacketSentEvent -= FailOnTargetSent; Engine.Items.Clear(); Engine.Player = null; }
public void WillTargetType() { Engine.Player = new PlayerMobile(0x01); Item backpack = new Item(0x40000000, Engine.Player.Serial) { Container = new ItemCollection(0x40000000) }; Engine.Items.Add(backpack); Engine.Player.SetLayer(Layer.Backpack, backpack.Serial); Item item = new Item(0x40000001, backpack.Serial) { ID = 0xfeef }; backpack.Container.Add(item); AutoResetEvent are = new AutoResetEvent(false); void PassOnTargetSent(byte[] data, int length) { if (data[0] == 0x6C) { are.Set(); } } Engine.InternalPacketSentEvent += PassOnTargetSent; TargetCommands.TargetType(item.ID); bool result = are.WaitOne(5000); Assert.IsTrue(result); Engine.InternalPacketSentEvent -= PassOnTargetSent; Engine.Items.Clear(); Engine.Player = null; }