Ejemplo n.º 1
0
 // Token: 0x06002671 RID: 9841 RVA: 0x000E247C File Offset: 0x000E087C
 public void removeVertex(int vertexIndex)
 {
     if (this.joints.Count < 2)
     {
         LevelRoads.removeRoad(this);
         return;
     }
     for (int i = vertexIndex + 1; i < this.paths.Count; i++)
     {
         this.paths[i].vertex.name = "Path_" + (i - 1);
     }
     this.paths[vertexIndex].remove();
     this.paths.RemoveAt(vertexIndex);
     this.joints.RemoveAt(vertexIndex);
     this.updatePoints();
 }
Ejemplo n.º 2
0
 public void removePoint(Transform select)
 {
     if (this.joints.Count < 2)
     {
         LevelRoads.removeRoad(this);
         return;
     }
     for (int i = 0; i < this.paths.Count; i++)
     {
         if (this.paths[i].vertex == select)
         {
             for (int j = i + 1; j < this.paths.Count; j++)
             {
                 this.paths[j].vertex.name = "Path_" + (j - 1);
             }
             UnityEngine.Object.Destroy(select.gameObject);
             this.joints.RemoveAt(i);
             this.paths.RemoveAt(i);
             this.updatePoints();
             return;
         }
     }
 }
Ejemplo n.º 3
0
 // Token: 0x06001F06 RID: 7942 RVA: 0x000AB8B0 File Offset: 0x000A9CB0
 private void Update()
 {
     if (!EditorRoads.isPaving)
     {
         return;
     }
     if (!EditorInteract.isFlying && GUIUtility.hotControl == 0)
     {
         if (EditorInteract.worldHit.transform != null)
         {
             EditorRoads.highlighter.position = EditorInteract.worldHit.point;
         }
         if ((Input.GetKeyDown(KeyCode.Delete) || Input.GetKeyDown(KeyCode.Backspace)) && EditorRoads.selection != null && EditorRoads.road != null)
         {
             if (Input.GetKey(ControlsSettings.other))
             {
                 LevelRoads.removeRoad(EditorRoads.road);
             }
             else
             {
                 EditorRoads.road.removeVertex(EditorRoads.vertexIndex);
             }
             EditorRoads.deselect();
         }
         if (Input.GetKeyDown(ControlsSettings.tool_2) && EditorInteract.worldHit.transform != null)
         {
             Vector3 point = EditorInteract.worldHit.point;
             if (EditorRoads.road != null)
             {
                 if (EditorRoads.tangentIndex > -1)
                 {
                     EditorRoads.road.moveTangent(EditorRoads.vertexIndex, EditorRoads.tangentIndex, point - EditorRoads.joint.vertex);
                 }
                 else if (EditorRoads.vertexIndex > -1)
                 {
                     EditorRoads.road.moveVertex(EditorRoads.vertexIndex, point);
                 }
             }
         }
         if (Input.GetKeyDown(ControlsSettings.primary))
         {
             if (EditorInteract.logicHit.transform != null)
             {
                 if (EditorInteract.logicHit.transform.name.IndexOf("Path") != -1 || EditorInteract.logicHit.transform.name.IndexOf("Tangent") != -1)
                 {
                     EditorRoads.select(EditorInteract.logicHit.transform);
                 }
             }
             else if (EditorInteract.worldHit.transform != null)
             {
                 Vector3 point2 = EditorInteract.worldHit.point;
                 if (EditorRoads.road != null)
                 {
                     if (EditorRoads.tangentIndex > -1)
                     {
                         EditorRoads.select(EditorRoads.road.addVertex(EditorRoads.vertexIndex + EditorRoads.tangentIndex, point2));
                     }
                     else
                     {
                         float num  = Vector3.Dot(point2 - EditorRoads.joint.vertex, EditorRoads.joint.getTangent(0));
                         float num2 = Vector3.Dot(point2 - EditorRoads.joint.vertex, EditorRoads.joint.getTangent(1));
                         if (num > num2)
                         {
                             EditorRoads.select(EditorRoads.road.addVertex(EditorRoads.vertexIndex, point2));
                         }
                         else
                         {
                             EditorRoads.select(EditorRoads.road.addVertex(EditorRoads.vertexIndex + 1, point2));
                         }
                     }
                 }
                 else
                 {
                     EditorRoads.select(LevelRoads.addRoad(point2));
                 }
             }
         }
     }
 }