示例#1
0
    public void interact(IItemUser user)
    {
        float dist = Vector3.Distance(user.getHandBone().transform.position, transform.position);

        if (dist < 5)
        {
            user.addItem(this);
        }
    }
示例#2
0
    /**
     * Adds the item to the inventory
     */
    public void addItem(Item item)
    {
        item.user = user;
        items.Add(item);
        item.GetComponent <Rigidbody>().isKinematic      = true;
        item.GetComponent <Rigidbody>().detectCollisions = false;
        var primaryTransform = item.transform;

        primaryTransform.parent        = user.getHandBone().transform;
        primaryTransform.localPosition = item.relativePosition;
        primaryTransform.rotation      = user.getHandBone().transform.rotation;
        primaryTransform.Rotate(item.relativeRotation);
        item.equipItem(user);
        item.gameObject.SetActive(false);
        if (getPrimaryItem() != null)
        {
            setSecondaryItem(getPrimaryItem());
        }
        setPrimaryItem(item);
    }
示例#3
0
 public void setTransforms(IItemUser user)
 {
     RecoilPositionTranform = user.getHandBone().transform.parent.parent;
     RecoilRotationTranform = user.getHandBone().transform.parent;
 }