コード例 #1
0
    void SetAngleOn(int angleID, bool canBeClicked)
    {
        AnglesSignal anglesSignal = MappingManager.Instance.uiMapping.angles[angleID];

        anglesSignal.gameObject.SetActive(true);
        if (canBeClicked)
        {
            anglesSignal.SetOn();
        }
        else
        {
            anglesSignal.SetLastAngles();
        }
    }
コード例 #2
0
    public void OnAddAngle(VerticeAngle verticeAngle, VerticeAngle verticeAngleOther)
    {
        Vector3 pos  = verticeAngle.transform.position;
        Vector3 pos2 = verticeAngleOther.transform.position;

        pos.z = pos2.z = 0;
        AnglesSignal   newAnglesSignal   = Instantiate(anglesSignal, pos, Quaternion.identity, container);
        DistanceSignal newDistanceSignal = Instantiate(distanceSignal, Vector3.Lerp(pos, pos2, 0.5f), Quaternion.identity, container);

        int totalVertices = MappingManager.Instance.verticeAngleManager.all.Count - 1;

        bool angleLocked = false;

        if (verticeAngle.id == 0 || verticeAngle.id >= totalVertices - 1)
        {
            angleLocked = true;
        }



        VerticeAngleManager.VerticeData data = MappingManager.Instance.verticeAngleManager.GetVerticeData(verticeAngle.id);

        newAnglesSignal.Init(verticeAngle, data);
        newDistanceSignal.Init(verticeAngle, data);

        angles.Add(newAnglesSignal);
        distances.Add(newDistanceSignal);



        if (data.angle == 0)
        {
            newAnglesSignal.gameObject.SetActive(false);
        }
        if (data.distance == 0)
        {
            newDistanceSignal.gameObject.SetActive(false);
        }
    }