예제 #1
0
        public void WillOnlySetSecondaryAbilityOnce()
        {
            AbilitiesManager manager = AbilitiesManager.GetInstance();

            Engine.Player = new PlayerMobile(0x01);

            Engine.InternalPacketSentEvent += ExpectAbilityPacket;

            AbilitiesCommands.SetAbility("secondary", "on");

            bool result = _are.WaitOne(5000);

            if (!result)
            {
                Assert.Fail();
            }

            Assert.AreEqual(AbilityType.Secondary, manager.Enabled);
            Assert.IsTrue(manager.IsSecondaryEnabled);

            Engine.InternalPacketSentEvent -= ExpectAbilityPacket;
            Engine.InternalPacketSentEvent += NotExpectAbilityPacket;

            AbilitiesCommands.SetAbility("secondary", "on");

            Engine.InternalPacketSentEvent -= NotExpectAbilityPacket;

            AbilitiesCommands.ClearAbility();

            Engine.Player = null;
        }
예제 #2
0
        public void WillClearAbilities()
        {
            Engine.Player = new PlayerMobile(0x01);

            AbilitiesManager manager = AbilitiesManager.GetInstance();

            Engine.InternalPacketSentEvent += ExpectAbilityPacket;

            manager.Enabled = AbilityType.Primary;

            AbilitiesCommands.ClearAbility();

            bool result = _are.WaitOne(5000);

            if (!result)
            {
                Assert.Fail();
            }

            Assert.AreEqual(AbilityType.None, manager.Enabled);

            manager.Enabled = AbilityType.Secondary;

            AbilitiesCommands.ClearAbility();

            result = _are.WaitOne(5000);

            if (!result)
            {
                Assert.Fail();
            }

            Assert.AreEqual(AbilityType.None, manager.Enabled);

            Engine.InternalPacketSentEvent -= ExpectAbilityPacket;

            Engine.Player = null;
        }
예제 #3
0
 public override void Execute()
 {
     AbilitiesCommands.ClearAbility();
 }