// 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(); }
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; } } }
// 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)); } } } } }