예제 #1
0
    public void useItem()
    {
        ItemType type = Reference.GetComponent <ItemPickable>().itemType;

        if (type == ItemType.Bag)
        {
            ItemFunction.Bag(this);
        }
        else if (type == ItemType.Telescopes)
        {
            ItemFunction.Telescopes(this);
        }
        else if (type == ItemType.Apparel)
        {
            ItemFunction.Apparel(this);
        }
        else if (type == ItemType.ProjectileWeapon)
        {
            ItemFunction.ProjectileWeapon(this);
        }
        else if (type == ItemType.MeleeWeapon)
        {
            ItemFunction.MeleeWeapon(this);
        }
        else if (type == ItemType.Medical)
        {
            ItemFunction.Medical(this);
        }
        else if (type == ItemType.Ammunition)
        {
            ItemFunction.Ammunition(this);
        }
        else if (type == ItemType.Misc)
        {
            ItemFunction.Misc(this);
        }
    }
예제 #2
0
    void Update()
    {
        Ray ray = Camera.main.ViewportPointToRay(new Vector3(0.5F, 0.5F, 0));

        LookingAt = Physics.Raycast(ray, out Hit, distance);

        if (LookingAt)
        {
            if (ItemDebugMonitor(Hit.transform.gameObject) && !PlayerInventory.inUI)
            {
                PointingAtPickable = true;
                PointingAtStorage  = false;
                PointingAtDoor     = false;
                PointingAtObject   = Hit.transform.gameObject;
                CheckItemPickUp();

                /*if (PointingAtObject.GetComponent<WeaponHandler>() == null)
                 * {
                 *  DisplayNotificationBox(PointingAtObject.GetComponent<ItemPickable>().name,
                 *  PointingAtObject.GetComponent<ItemPickable>().Quantity.ToString(),
                 *  PointingAtObject.GetComponent<ItemPickable>().ItemIcon);
                 * }*/
            }
            else if (Hit.transform.gameObject.tag == "Door")
            {
                PointingAtDoor = true;
                DoorFunction();
            }
            else if (Hit.transform.gameObject.GetComponent <StorageViewable>() != null)
            {
                PointingAtStorage  = true;
                PointingAtPickable = false;
                PointingAtDoor     = false;
                PointingAtObject   = Hit.transform.gameObject;
                CheckStorageViewable();
            }
            else
            {
                UI.root.NotificationBox.SetActive(false);
                PointingAtDoor     = false;
                PointingAtStorage  = false;
                PointingAtPickable = false;
            }
        }
        else
        {
            try
            {
                UI.root.NotificationBox.SetActive(false);
            }
            catch (Exception) { }
            PointingAtDoor     = false;
            PointingAtStorage  = false;
            PointingAtPickable = false;
        }

        //CheckHold();

        if (openDoor)
        {
            OpenDoor();
        }
        else if (closeDoor)
        {
            CloseDoor();
        }

        InteractGUI();

        if (Input.GetMouseButtonDown(0) && UI.root.QuickSlotGrid.GetComponent <QuickSlotGridManager>().selectedSlot != -1)
        {
            ItemSprite sprite = UI.root.QuickSlotGrid.transform.GetChild(UI.root.QuickSlotGrid.GetComponent <QuickSlotGridManager>().selectedSlot).GetComponent <QuickSlotManager>().Reference;
            if (sprite != null && sprite.Reference != null)
            {
                switch (sprite.Reference.GetComponent <ItemPickable>().itemType)
                {
                case ItemType.Ammunition:
                    ItemFunction.Ammunition(sprite);
                    break;

                case ItemType.Apparel:
                    ItemFunction.Apparel(sprite);
                    break;

                case ItemType.Bag:
                    ItemFunction.Bag(sprite);
                    break;

                case ItemType.Medical:
                    ItemFunction.Medical(sprite);
                    break;

                case ItemType.MeleeWeapon:
                    ItemFunction.MeleeWeapon(sprite);
                    break;

                case ItemType.Misc:
                    ItemFunction.Misc(sprite);
                    break;

                case ItemType.ProjectileWeapon:
                    ItemFunction.ProjectileWeapon(sprite);
                    break;

                case ItemType.Telescopes:
                    ItemFunction.Telescopes(sprite);
                    break;
                }
            }
        }
    }