Example #1
0
    private void DropResolve()
    {
        if (this.drop)
        {
            this.drop = false;
            OrigamiObject selectedObject = this._inventory.selectedObject;
            if (selectedObject == null)
            {
                return;
            }

            if (!selectedObject.IsFinalObject())
            {
                this.heldObjectContiner.StartErrorState();
                Debug.Log("non valide");
            }
            else
            {
                RaycastHit hit;
                if (Physics.Raycast(this.eyeCamera.transform.position, this.eyeCamera.transform.forward, out hit, this.interactionDistance))
                {
                    if (hit.collider.gameObject.tag == "TargetObject")
                    {
                        TargetObject targetObject = hit.collider.gameObject.GetComponent <TargetObject> ();
                        if (targetObject.Put(selectedObject))
                        {
                            this._inventory.DropSelected();
                        }
                        else
                        {
                            this.heldObjectContiner.StartErrorState();
                        }
                    }
                }
            }
        }
    }