本文整理汇总了C#中ItemSlot.OnDisMount方法的典型用法代码示例。如果您正苦于以下问题:C# ItemSlot.OnDisMount方法的具体用法?C# ItemSlot.OnDisMount怎么用?C# ItemSlot.OnDisMount使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ItemSlot
的用法示例。
在下文中一共展示了ItemSlot.OnDisMount方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: SwapItems
void SwapItems(ItemSlot slot1, ItemSlot slot2)
{
bool isSwappingBaseWeapon = false;
if(slot1.GetType() == typeof(BaseWeaponSlot))
{//swapping out the base weapon
if(!checkBaseWeaponMounts(slot2.getItem()) || slot2.getItem().BaseWeapon == null)
{
m_ItemBeingDragged.DraggedToPos = m_ItemBeingDragged.MountedTo.i_MountPoint.position;
m_ItemBeingDragged = null;
return;
}
m_ItemBeingDragged.IsBeingDragged = false;
isSwappingBaseWeapon = true;
}
else if (slot2.GetType() == typeof(BaseWeaponSlot))
{//swapping out the base weapon
if (!checkBaseWeaponMounts(slot1.getItem()) || slot1.getItem().BaseWeapon == null)
{
m_ItemBeingDragged.DraggedToPos = m_ItemBeingDragged.MountedTo.i_MountPoint.position;
m_ItemBeingDragged.IsBeingDragged = false;
m_ItemBeingDragged = null;
return;
}
Item TempItem = slot2.OnDisMount();
slot2.OnMount(slot1.OnDisMount());
slot1.OnMount(TempItem);
slot1.getItem().DraggedToPos = slot1.getItem().MountedTo.i_MountPoint.position;
slot2.getItem().DraggedToPos = slot2.getItem().MountedTo.i_MountPoint.position;
m_ItemBeingDragged = null;
CraftingMenu.Instance.ReAttachAllAttachments();
return;
}
else if(slot1.GetType() == typeof(AttachmentSlot) && slot2.GetType() == typeof(AttachmentSlot))
{//swapping two items that are already on the weapon
CraftingMenu.Instance.SwapItems(slot1, slot2);
slot1.getItem().DraggedToPos = slot1.getItem().MountedTo.i_MountPoint.position;
slot2.getItem().DraggedToPos = slot2.getItem().MountedTo.i_MountPoint.position;
m_ItemBeingDragged = null;
m_ItemBeingDragged.IsBeingDragged = false;
return;
}
Item tempItem = slot1.OnDisMount();
slot1.OnMount(slot2.OnDisMount());
slot2.OnMount(tempItem);
slot1.getItem().DraggedToPos = slot1.getItem().MountedTo.i_MountPoint.position;
slot2.getItem().DraggedToPos = slot2.getItem().MountedTo.i_MountPoint.position;
m_ItemBeingDragged = null;
if(isSwappingBaseWeapon)
{//since base weapon was swapped we need to make sure the correct attachment slots are open / being used
CraftingMenu.Instance.ReAttachAllAttachments();
}
}