public void ClickObjectWillSendPacket() { AutoResetEvent are = new AutoResetEvent(false); void OnInternalPacketSentEvent(byte[] data, int length) { if (data[0] != 0x09) { return; } int serial = (data[1] << 24) | (data[2] << 16) | (data[3] << 8) | data[4]; Assert.AreEqual(0x00aabbcc, serial); are.Set(); } Engine.InternalPacketSentEvent += OnInternalPacketSentEvent; AliasCommands.SetAlias("thing", 0x00aabbcc); ActionCommands.ClickObject("thing"); bool result = are.WaitOne(5000); Assert.IsTrue(result); Engine.InternalPacketSentEvent -= OnInternalPacketSentEvent; Engine.Player = null; }
public void MoveItemWillSendDragPacket() { AutoResetEvent are = new AutoResetEvent(false); void OnInternalPacketSentEvent(byte[] data, int length) { if (data[0] != 0x07) { return; } int serial = (data[1] << 24) | (data[2] << 16) | (data[3] << 8) | data[4]; Assert.AreEqual(0x00aabbcc, serial); are.Set(); } Engine.InternalPacketSentEvent += OnInternalPacketSentEvent; Engine.Items.Add(new Item(0x00aabbcc) { Count = 50 }); ActionCommands.MoveItem(0x00aabbcc, 0xaabbdd); bool result = are.WaitOne(5000); Assert.IsTrue(result); Engine.InternalPacketSentEvent -= OnInternalPacketSentEvent; }
public void ClearHandsWillSendDragPacket() { AutoResetEvent are = new AutoResetEvent(false); void OnInternalPacketSentEvent(byte[] data, int length) { if (data[0] != 0x07) { return; } int serial = (data[1] << 24) | (data[2] << 16) | (data[3] << 8) | data[4]; Assert.AreEqual(0x00aabbcc, serial); are.Set(); } Engine.InternalPacketSentEvent += OnInternalPacketSentEvent; Engine.Player = new PlayerMobile(0x01); Engine.Player.SetLayer(Layer.OneHanded, 0x00aabbcc); ActionCommands.ClearHands("left"); bool result = are.WaitOne(5000); Assert.IsTrue(result); Engine.InternalPacketSentEvent -= OnInternalPacketSentEvent; Engine.Player = null; }
public void RenameWillSendRenamePacket() { AutoResetEvent are = new AutoResetEvent(false); void OnInternalPacketSentEvent(byte[] data, int length) { int serial = (data[1] << 24) | (data[2] << 16) | (data[3] << 8) | data[4]; Assert.AreEqual(0x00aabbcc, serial); string name = Encoding.ASCII.GetString(data, 5, 30).TrimEnd('\0'); Assert.AreEqual("Snorlax", name); are.Set(); } Engine.InternalPacketSentEvent += OnInternalPacketSentEvent; ActionCommands.Rename(0x00aabbcc, "Snorlax"); bool result = are.WaitOne(5000); Assert.IsTrue(result); Engine.InternalPacketSentEvent -= OnInternalPacketSentEvent; }
public void AttackWillSendAttackPacket() { AutoResetEvent are = new AutoResetEvent(false); void OnInternalPacketSentEvent(byte[] data, int length) { if (data[0] != 0x05) { return; } int serial = (data[1] << 24) | (data[2] << 16) | (data[3] << 8) | data[4]; Assert.AreEqual(0x00aabbcc, serial); are.Set(); } Engine.InternalPacketSentEvent += OnInternalPacketSentEvent; ActionCommands.Attack(0x00aabbcc); bool result = are.WaitOne(5000); Assert.IsTrue(result); Engine.InternalPacketSentEvent -= OnInternalPacketSentEvent; }
public AdminMenu(SodaMachine machine) : base(machine, "Stocker Menu") { ActionCommands.Add(new ActionCommand(Commands.NameItems, HandleNameItem)); ActionCommands.Add(new ActionCommand(Commands.AdjustQuantity, HandleAdjustQuantity)); ActionCommands.Add(new ActionCommand(Commands.ViewInventory, HandlePrintInventory)); ActionCommands.Add(new ActionCommand(Commands.ViewMachineBalance, HandleViewBalance)); ActionCommands.Add(ActionCommandFactory.CreateQuitToPreviousMenuCommand(QuitToPreviousMenu)); }
public MainMenu(SodaMachine machine) : base(machine, "Main Menu") { ActionCommands.Add(new ActionCommand(Commands.StockerMenu, NavigateToAdminMenu)); ActionCommands.Add(new ActionCommand(Commands.AddMoney, HandleAddMoney)); ActionCommands.Add(new ActionCommand(Commands.PrintCustomerBalance, HandlePrintCustomerBalance)); ActionCommands.Add(new ActionCommand(Commands.ViewProductList, HandleViewProductList)); ActionCommands.Add(new ActionCommand(Commands.ChooseItem, HandleBuyAnItem)); ActionCommands.Add(new ActionCommand(Commands.ReturnChange, HandleReturnChange)); ActionCommands.Add(ActionCommandFactory.CreateQuitToPreviousMenuCommand(Quit)); }
public void WillFindLayer() { Engine.Player = new PlayerMobile(1); Engine.Player.SetLayer(Layer.OneHanded, 0x40000001); AliasCommands.SetAlias("self", Engine.Player.Serial); Assert.IsTrue(ActionCommands.FindLayer("OneHanded")); Assert.IsFalse(ActionCommands.FindLayer("TwoHanded")); AliasCommands.UnsetAlias("self"); Engine.Player = null; }
public void FeedWillSendDragPacket() { PlayerMobile player = new PlayerMobile(0x01); Item backpack = new Item(0x02) { Container = new ItemCollection(0x02) { new Item(0x00aabbcc) { ID = 0xff, Count = 1 } }, Owner = 0x01, Layer = Layer.Backpack }; player.SetLayer(Layer.Backpack, 0x02); Engine.Player = player; Engine.Items.Add(backpack); AutoResetEvent are = new AutoResetEvent(false); void OnInternalPacketSentEvent(byte[] data, int length) { if (data[0] != 0x07) { return; } int serial = (data[1] << 24) | (data[2] << 16) | (data[3] << 8) | data[4]; Assert.AreEqual(0x00aabbcc, serial); are.Set(); } Engine.InternalPacketSentEvent += OnInternalPacketSentEvent; ActionCommands.Feed(0x01, 0xff); bool result = are.WaitOne(5000); Assert.IsTrue(result); Engine.InternalPacketSentEvent -= OnInternalPacketSentEvent; Engine.Items.Clear(); Engine.Player = null; }
public void EquipTypeWillSendDragPacket() { Item backpack = new Item(0x40000000) { Owner = 1, Container = new ItemCollection(0x40000000) }; Engine.Player = new PlayerMobile(1) { Equipment = { backpack } }; Engine.Player.SetLayer(Layer.Backpack, backpack.Serial); Engine.Items.Add(backpack); Item item = new Item(0x40000001, backpack.Serial) { ID = 0xff }; backpack.Container.Add(item); AutoResetEvent are = new AutoResetEvent(false); void OnInternalPacketSentEvent(byte[] data, int length) { if (data[0] != 0x07) { return; } int serial = (data[1] << 24) | (data[2] << 16) | (data[3] << 8) | data[4]; Assert.AreEqual(item.Serial, serial); are.Set(); } Engine.InternalPacketSentEvent += OnInternalPacketSentEvent; ActionCommands.EquipType(item.ID, Layer.OneHanded); bool result = are.WaitOne(5000); Assert.IsTrue(result); Engine.InternalPacketSentEvent -= OnInternalPacketSentEvent; Engine.Player = null; Engine.Items.Clear(); }
public void ShowNamesWillSendLookRequest() { PlayerMobile player = new PlayerMobile(0x01); Mobile mobile = new Mobile(0x00aabbcc); Engine.Player = player; Engine.Mobiles.Add(mobile); AutoResetEvent are = new AutoResetEvent(false); void OnInternalPacketSentEvent(byte[] data, int length) { Assert.AreEqual(0x09, data[0]); int serial = (data[1] << 24) | (data[2] << 16) | (data[3] << 8) | data[4]; Assert.AreEqual(0x00aabbcc, serial); are.Set(); } Engine.InternalPacketSentEvent += OnInternalPacketSentEvent; ActionCommands.ShowNames("mobiles"); bool result = are.WaitOne(5000); Assert.IsTrue(result); Engine.Mobiles.Remove(mobile); Engine.Items.Add(new Item(0x00aabbcc) { ID = 0x2006 }); ActionCommands.ShowNames("corpses"); result = are.WaitOne(5000); Assert.IsTrue(result); Engine.InternalPacketSentEvent -= OnInternalPacketSentEvent; Engine.Player = null; Engine.Mobiles.Clear(); Engine.Items.Clear(); }
public void ExecCommand(ActionCommands action) { switch (action) { case ActionCommands.ToggleToolbar: ToggleToolbar(); break; case ActionCommands.RestoreScene: ProjectionExample.Instance.RestoreScene(); break; case ActionCommands.ForgetScene: ProjectionExample.Instance.ForgetScene(); break; case ActionCommands.AnalyzeScene: ProjectionExample.Instance.StartDetection(); break; default: break; } }
public override void Execute() { ActionCommands.EquipLastWeapon(); }
public override void Execute() { ActionCommands.Attack("enemy"); }
public override void Execute() { ActionCommands.Attack("last"); }
public override void Execute() { ActionCommands.ToggleMounted(); }