getPoints() public method

public getPoints ( Vector2 off ) : Vector2[]
off Vector2
return Vector2[]
コード例 #1
0
    public override void OnInspectorGUI()
    {
        GUI.changed = false;
        DrawDefaultInspector();

        ac.advanced = EditorGUILayout.Toggle("Advanced", ac.advanced);
        if (ac.advanced)
        {
            ac.radius = EditorGUILayout.FloatField("Radius", ac.radius);
        }
        else
        {
            ac.radius = EditorGUILayout.Slider("Radius", ac.radius, 1, 25);
        }
        if (!ac.pizzaSlice)
        {
            if (ac.advanced)
            {
                ac.Thickness = EditorGUILayout.FloatField("Thickness", ac.Thickness);
            }
            else
            {
                ac.Thickness = EditorGUILayout.Slider("Thickness", ac.Thickness, 1, 25);
            }
        }

        if (GUI.changed || !off.Equals(polyCollider.offset))
        {
            polyCollider.points = ac.getPoints(polyCollider.offset);
        }
        off = polyCollider.offset;
    }
コード例 #2
0
    void OnEnable()
    {
        ac = (ArcCollider2D)target;
        if (ac.gameObject.transform.childCount == 0)
        {
            edgeHolder = new GameObject();
            edgeHolder.transform.SetParent(ac.transform, false);
        }
        else
        {
            edgeHolder = ac.gameObject.transform.GetChild(0).gameObject;
        }

        Vector2[] edges = ac.getPoints(Vector2.zero);
        if (edgeHolder.GetComponents <EdgeCollider2D> ().Length == 0)
        {
            for (int i = 0; i < edges.Length - 1; i++)
            {
                EdgeCollider2D ec     = edgeHolder.AddComponent <EdgeCollider2D> ();
                Vector2[]      points = new Vector2[2];
                points [0] = edges [i];
                points [1] = edges [i + 1];
                ec.points  = points;
            }
        }
    }
コード例 #3
0
    public override void OnInspectorGUI()
    {
        GUI.changed = false;
        DrawDefaultInspector();

        if (GUI.changed || !off.Equals(edgeCollider.offset))
        {
            edgeCollider.points = ac.getPoints(edgeCollider.offset);
        }
        off = edgeCollider.offset;
    }
コード例 #4
0
    void OnEnable()
    {
        ac = (ArcCollider2D)target;

        edgeCollider = ac.GetComponent<EdgeCollider2D>();
        if (edgeCollider == null) {
            ac.gameObject.AddComponent<EdgeCollider2D>();
            edgeCollider = ac.GetComponent<EdgeCollider2D>();
        }
        edgeCollider.points = ac.getPoints(edgeCollider.offset);
    }
コード例 #5
0
    void OnEnable()
    {
        ac = (ArcCollider2D)target;

        edgeCollider = ac.GetComponent <EdgeCollider2D>();
        if (edgeCollider == null)
        {
            ac.gameObject.AddComponent <EdgeCollider2D>();
            edgeCollider = ac.GetComponent <EdgeCollider2D>();
        }
        edgeCollider.points = ac.getPoints(edgeCollider.offset);
    }
コード例 #6
0
    void OnEnable()
    {
        ac = (ArcCollider2D)target;

        polyCollider = ac.GetComponent <PolygonCollider2D>();
        if (polyCollider == null)
        {
            ac.gameObject.AddComponent <PolygonCollider2D>();
            polyCollider = ac.GetComponent <PolygonCollider2D>();
        }
        polyCollider.points = ac.getPoints(polyCollider.offset);
    }
コード例 #7
0
    public override void OnInspectorGUI()
    {
        GUI.changed = false;
        DrawDefaultInspector();

        Vector2[] edges = ac.getPoints(Vector2.zero);

        //Check if we need to add/remove colliders
        if (edgeHolder.GetComponents <EdgeCollider2D> ().Length != edges.Length - 1)
        {
            EdgeCollider2D[] oldColliders = edgeHolder.GetComponents <EdgeCollider2D> ();
            for (int k = 0; k < oldColliders.Length; k++)
            {
                DestroyImmediate(oldColliders[k]);
            }

            for (int i = 0; i < edges.Length - 1; i++)
            {
                EdgeCollider2D ec = edgeHolder.AddComponent <EdgeCollider2D> ();

                Vector2[] points = new Vector2[2];
                points [0] = edges [i];
                points [1] = edges [i + 1];
                ec.points  = points;
            }
        }
        else
        {
            EdgeCollider2D[] ecs = edgeHolder.GetComponents <EdgeCollider2D> ();

            for (int i = 0; i < ecs.Length; i++)
            {
                EdgeCollider2D ec = ecs [i];

                Vector2[] points = new Vector2[2];
                points [0] = edges [i];
                points [1] = edges [i + 1];
                ec.points  = points;
            }
        }
    }