Exemple #1
0
    public override void Drop()
    {
        Renderer r = GetComponent <Renderer>();

        if (player.GetComponent <flipScript>().space)
        {
            //Going to real
            ShaderUtility.ShaderWorldChange(r.material, false);

            this.gameObject.layer = 11;
            GetComponent <SelectionRenderChange>().OnDrop();
            GetComponent <Transition>().SetStart(0f);
            GetComponent <MorphController>().OnDeselection();
        }

        else
        {
            //Going to laser
            ShaderUtility.ShaderWorldChange(r.material, true);

            //GetComponent<Renderer>().material.shader = raycastManager.laserWorldShader;
            this.gameObject.layer = 10;
            GetComponent <SelectionRenderChange>().OnDrop();
            GetComponent <Transition>().SetStart(1f);
            GetComponent <MorphController>().OnDeselection();
        }

        _iconContainer.SetOpenHand();
        selected = false;
        rigidbody.freezeRotation = false;
        rigidbody.GetComponent <Rigidbody>().constraints = RigidbodyConstraints.FreezeAll;
        rigidbody.isKinematic = true;
        ResetWalk();
    }
Exemple #2
0
    public void FlipInternalRenderers(renderersAndProps[] internals, bool dir)
    {
        float currentTransitionState = internals[0].renderer.material.GetFloat("_TransitionState");

        foreach (renderersAndProps r in internals)
        {
            ShaderUtility.ShaderWorldChange(r.renderer.material, dir);
            r.renderer.GetPropertyBlock(r.propertyBlock);

            if (dir)
            {
                r.propertyBlock.SetFloat("_TransitionState", 1f - currentTransitionState);
            }
            else
            {
                r.propertyBlock.SetFloat("_TransitionState", currentTransitionState);
            }

            r.renderer.SetPropertyBlock(r.propertyBlock);
        }
    }