示例#1
0
    public void HoldingItem(int index)
    {
        ItemBox itemBox = GetComponent <ItemBox>();
        Item    item    = itemBox.AccessItem(index);

        if (item != null)
        {
            if (holdingItemIndex != -1)
            {
                UnityEngine.Object.Destroy(holdingItem);
            }

            holdingItemIndex = index;
            holdingItem      = item.GetModel();

            Vector3 itemScale = Vector3.zero + holdingItem.transform.localScale;
            holdingItem.transform.parent           = rightHand.transform;
            holdingItem.layer                      = rightHand.layer;
            holdingItem.transform.localPosition    = new Vector3(0.45f, -0.45f, -0.2f);
            holdingItem.transform.localEulerAngles = Vector3.zero;
            holdingItem.transform.localScale       = new Vector3(
                itemScale.x / rightHand.transform.localScale.x,
                itemScale.y / rightHand.transform.localScale.y,
                itemScale.z / rightHand.transform.localScale.z);
            holdingItem.GetComponent <Animation>().Stop();
        }
    }