Exemplo n.º 1
0
    private static UIHotSpot ColliderToHotSpot(BoxCollider collider, bool nullChecked)
    {
        if (!nullChecked && !collider)
        {
            return(null);
        }
        Vector3    vector3    = collider.center;
        Vector3    vector31   = collider.size;
        GameObject gameObject = collider.gameObject;
        bool       flag       = collider.enabled;

        NGUITools.ColliderDestroy(collider);
        if (vector31.z > 0.001f)
        {
            UIBoxHotSpot uIBoxHotSpot = gameObject.AddComponent <UIBoxHotSpot>();
            uIBoxHotSpot.center  = vector3;
            uIBoxHotSpot.size    = vector31;
            uIBoxHotSpot.enabled = flag;
            return(uIBoxHotSpot);
        }
        UIRectHotSpot uIRectHotSpot = gameObject.AddComponent <UIRectHotSpot>();

        uIRectHotSpot.center  = vector3;
        uIRectHotSpot.size    = vector31;
        uIRectHotSpot.enabled = flag;
        return(uIRectHotSpot);
    }
Exemplo n.º 2
0
    private static UIHotSpot ColliderToHotSpot(Collider collider, bool nullChecked)
    {
        Bounds bound;

        if (!nullChecked && !collider)
        {
            return(null);
        }
        if (collider is BoxCollider)
        {
            return(NGUITools.ColliderToHotSpot((BoxCollider)collider));
        }
        if (collider is SphereCollider)
        {
            return(NGUITools.ColliderToHotSpot((SphereCollider)collider));
        }
        if (collider is TerrainCollider)
        {
            Debug.Log("Sorry not going to convert a terrain collider.. that sounds destructive.", collider);
            return(null);
        }
        Bounds    bound1    = collider.bounds;
        Matrix4x4 matrix4x4 = collider.transform.worldToLocalMatrix;

        AABBox.Transform3x4(ref bound1, ref matrix4x4, out bound);
        bool       flag       = collider.enabled;
        GameObject gameObject = collider.gameObject;

        NGUITools.ColliderDestroy(collider);
        Vector3 vector3 = bound.size;

        if (vector3.z > 0.001f)
        {
            UIBoxHotSpot uIBoxHotSpot = gameObject.AddComponent <UIBoxHotSpot>();
            uIBoxHotSpot.size    = vector3;
            uIBoxHotSpot.center  = bound.center;
            uIBoxHotSpot.enabled = flag;
            return(uIBoxHotSpot);
        }
        UIRectHotSpot uIRectHotSpot = gameObject.AddComponent <UIRectHotSpot>();

        uIRectHotSpot.size    = vector3;
        uIRectHotSpot.center  = bound.center;
        uIRectHotSpot.enabled = flag;
        return(uIRectHotSpot);
    }