コード例 #1
0
        public static void ToggleRight()
        {
            if (World.Player == null)
            {
                return;
            }

            Item item = World.Player.GetItemOnLayer(Layer.RightHand);

            if (item == null)
            {
                if (m_Right != null)
                {
                    m_Right = World.FindItem(m_Right.Serial);
                }

                if (m_Right != null && m_Right.IsChildOf(World.Player.Backpack))
                {
                    // try to also undress conflicting hand(s)
                    Item conflict = World.Player.GetItemOnLayer(Layer.LeftHand);
                    if (conflict != null && (conflict.IsTwoHanded || m_Right.IsTwoHanded))
                    {
                        Item ub = DressList.FindUndressBag(conflict);
                        if (ub != null)
                        {
                            DragDropManager.DragDrop(conflict, ub);
                        }
                    }

                    DragDropManager.DragDrop(m_Right, World.Player, DressList.GetLayerFor(m_Right));
                }
                else
                {
                    World.Player.SendMessage(MsgLevel.Force, LocString.MustDisarm);
                }
            }
            else
            {
                Item ub = DressList.FindUndressBag(item);
                if (ub != null)
                {
                    DragDropManager.DragDrop(item, ub);
                }
                m_Right = item;
            }
        }
コード例 #2
0
        public static void ToggleRight()
        {
            if (World.Player == null)
            {
                return;
            }

            Item item = World.Player.GetItemOnLayer(Layer.RightHand);

            if (item == null)
            {
                if (m_Right != null)
                {
                    m_Right = World.FindItem(m_Right.Serial);
                }

                if (m_Right != null && m_Right.IsChildOf(World.Player.Backpack))
                {
                    // try to also undress conflicting hand(s)
                    Item conflict = World.Player.GetItemOnLayer(Layer.LeftHand);
                    if (conflict != null && (conflict.IsTwoHanded || m_Right.IsTwoHanded))
                    {
                        Unequip(DressList.GetLayerFor(conflict));
                    }

                    Equip(m_Right, DressList.GetLayerFor(m_Right));
                }
                else
                {
                    World.Player.SendMessage(MsgLevel.Force, LocString.MustDisarm);
                }
            }
            else
            {
                Unequip(DressList.GetLayerFor(item));
                m_Right = item;
            }
        }