// Token: 0x06000455 RID: 1109 RVA: 0x0001F5C8 File Offset: 0x0001D9C8 public NodeEdgeDataFormat(NodeEdgeDataFormat original) { this.id = original.id; this.plug = original.plug; this.wayType = original.wayType; this.time = original.time; this.plusTime = original.plusTime; this.normalTag = original.normalTag; this.toolsTag = original.toolsTag; this.uniqueTag = original.uniqueTag; this.nTagPer = original.nTagPer; this.tTagPer = original.tTagPer; this.uTagPer = original.uTagPer; this.enc_name = original.enc_name; this.enc_per = original.enc_per; }
// Token: 0x06000323 RID: 803 RVA: 0x0000F1E0 File Offset: 0x0000D5E0 public void CreateMap(AreaType createArea) { int id = SuperGameMaster.sDataBase.get_NodeDB_AreaIndex(createArea); int num = SuperGameMaster.sDataBase.get_NodeDB_AreaIndex(createArea + 1); int i = SuperGameMaster.sDataBase.search_NodeDBIndex_forId(id); int num2 = 960; int num3 = 0; while (i < SuperGameMaster.sDataBase.count_NodeDB()) { NodeDataFormat nodeDataFormat = SuperGameMaster.sDataBase.get_NodeDB(i); if (nodeDataFormat.id == num) { break; } GameObject gameObject = UnityEngine.Object.Instantiate <GameObject>(this.nodePrefab); gameObject.transform.SetParent(base.gameObject.transform, false); gameObject.transform.SetAsFirstSibling(); gameObject.GetComponent <MapNodeButton>().CngIdText(nodeDataFormat.id); gameObject.GetComponent <MapNodeButton>().CngColor(nodeDataFormat.type); NodeConnectDataFormat nodeConnectDataFormat = SuperGameMaster.sDataBase.get_NodeConnectDB_forId(nodeDataFormat.id); gameObject.transform.localPosition = nodeConnectDataFormat.pos; List <NodeEdgeDataFormat> list = new List <NodeEdgeDataFormat>(); foreach (int id2 in nodeConnectDataFormat.edge) { list.Add(SuperGameMaster.sDataBase.get_NodeEdgeDB_forId(id2)); } List <NodeConnectDataFormat> list2 = new List <NodeConnectDataFormat>(); foreach (NodeEdgeDataFormat nodeEdgeDataFormat in list) { if (nodeEdgeDataFormat.plug[0] != nodeDataFormat.id) { list2.Add(SuperGameMaster.sDataBase.get_NodeConnectDB_forId(nodeEdgeDataFormat.plug[0])); } if (nodeEdgeDataFormat.plug[1] != nodeDataFormat.id) { list2.Add(SuperGameMaster.sDataBase.get_NodeConnectDB_forId(nodeEdgeDataFormat.plug[1])); } } bool[] array = new bool[4]; foreach (NodeConnectDataFormat nodeConnectDataFormat2 in list2) { if (nodeConnectDataFormat.pos.x > nodeConnectDataFormat2.pos.x) { array[0] = true; } if (nodeConnectDataFormat.pos.y > nodeConnectDataFormat2.pos.y) { array[1] = true; } if (nodeConnectDataFormat.pos.x < nodeConnectDataFormat2.pos.x) { array[2] = true; } if (nodeConnectDataFormat.pos.y < nodeConnectDataFormat2.pos.y) { array[3] = true; } } gameObject.GetComponent <MapNodeButton>().ConnectMark(array[0], array[1], array[2], array[3]); if ((float)num2 > nodeConnectDataFormat.pos.y) { num2 = (int)nodeConnectDataFormat.pos.y; } if ((float)num3 < nodeConnectDataFormat.pos.y) { num3 = (int)nodeConnectDataFormat.pos.y; } i++; } if (num3 + num2 < 960) { num3 += num2; } Vector2 sizeDelta = base.transform.GetComponent <RectTransform>().sizeDelta; sizeDelta.y = (float)num3; base.transform.GetComponent <RectTransform>().sizeDelta = sizeDelta; IEnumerator enumerator3 = base.transform.GetEnumerator(); try { while (enumerator3.MoveNext()) { object obj = enumerator3.Current; Transform transform = (Transform)obj; if (transform.name.Equals("MapNodeButton(Clone)")) { Vector2 v = transform.transform.localPosition; v.x -= sizeDelta.x / 2f; v.y += sizeDelta.y / 2f; v.y = (float)num3 - v.y; transform.transform.localPosition = v; } } } finally { IDisposable disposable; if ((disposable = (enumerator3 as IDisposable)) != null) { disposable.Dispose(); } } for (i = SuperGameMaster.sDataBase.search_NodeEdgeDBIndex_forId(id); i < SuperGameMaster.sDataBase.count_NodeEdgeDB(); i++) { NodeEdgeDataFormat nodeEdgeDataFormat2 = SuperGameMaster.sDataBase.get_NodeEdgeDB(i); if (nodeEdgeDataFormat2.id == num) { break; } GameObject gameObject2 = UnityEngine.Object.Instantiate <GameObject>(this.edgePrefab); gameObject2.transform.SetParent(base.gameObject.transform, false); gameObject2.transform.SetAsFirstSibling(); gameObject2.GetComponent <MapEdgeButton>().CngIdText(nodeEdgeDataFormat2.id); gameObject2.GetComponent <MapEdgeButton>().CngColor(nodeEdgeDataFormat2.wayType); Vector2[] array2 = new Vector2[2]; IEnumerator enumerator4 = base.transform.GetEnumerator(); try { while (enumerator4.MoveNext()) { object obj2 = enumerator4.Current; Transform transform2 = (Transform)obj2; if (transform2.name.Equals("MapNodeButton(Clone)")) { for (int k = 0; k < 2; k++) { if (nodeEdgeDataFormat2.plug[k] == transform2.GetComponent <MapNodeButton>().getNodeId()) { array2[k] = transform2.transform.localPosition; } } } } } finally { IDisposable disposable2; if ((disposable2 = (enumerator4 as IDisposable)) != null) { disposable2.Dispose(); } } Vector2 sizeDelta2 = new Vector2(15f, 15f); Vector2 v2 = array2[0]; if (array2[0].x != array2[1].x) { sizeDelta2.x = Mathf.Abs(array2[1].x - array2[0].x); v2.x = array2[0].x + (array2[1].x - array2[0].x) / 2f; } if (array2[0].y != array2[1].y) { sizeDelta2.y = Mathf.Abs(array2[1].y - array2[0].y); v2.y = array2[0].y + (array2[1].y - array2[0].y) / 2f; } gameObject2.transform.localPosition = v2; gameObject2.GetComponent <RectTransform>().sizeDelta = sizeDelta2; } }