Beispiel #1
0
    public void ReleaseCurrentTool()
    {
        //Drop current tool
        if (GetComponent <VRTK_InteractGrab>().GetGrabbedObject() == null)
        {
            return;
        }
        HideUnpickedTools();
        _lastTool = GetComponent <VRTK_InteractGrab>().GetGrabbedObject();
        Debug.Log("About to release object: " + _lastTool + " on " + _instance.GetInstanceID());
        GetComponent <VRTK_InteractTouch>().ForceStopTouching();
        GetComponent <VRTK_InteractGrab>().ForceRelease();
        _lastTool.SetActive(false);

        //Remove script
        switch (_mode)
        {
        case CurrentMode.Build:
            DestroyImmediate(GetComponent <BuildMode>());
            break;

        case CurrentMode.Destroy:
            DestroyImmediate(GetComponent <DestroyMode>());
            break;

        case CurrentMode.Paint:
            DestroyImmediate(GetComponent <PaintMode>());
            break;
        }
        Debug.Log("Released object: " + _lastTool);
    }