public void settrap(string str) { string[] arr1 = str.Split('t'); trapList = new List <TrapVo>(arr1.Length); for (int i = 0; i < arr1.Length; i++) { string[] arr = arr1[i].Split('='); if (arr[0] == "1") { TrapDoor trap = new TrapDoor(); trap.type = 1; trap.inittrap(arr); trapList.Add(trap); } else if (arr[0] == "2") { MonsterRefreshVo trap = new MonsterRefreshVo(); trap.type = 2; trap.inittrap(arr); trapList.Add(trap); } else if (arr[0] == "3") { AtkOffice trap = new AtkOffice(); trap.type = 3; trap.inittrap(arr); trapList.Add(trap); } else if (arr[0] == "4") { CubeTrap trap = new CubeTrap(); trap.type = 4; trap.inittrap(arr); trapList.Add(trap); } else if (arr[0] == "5") { Transfer trap = new Transfer(); trap.type = 5; trap.inittrap(arr); trapList.Add(trap); } else if (arr[0] == "6") { TrapLandmine trap = new TrapLandmine(); trap.type = 6; trap.inittrap(arr); trapList.Add(trap); } else if (arr[0] == "7") { TrapSpring trap = new TrapSpring(); trap.type = 7; trap.inittrap(arr); trapList.Add(trap); } } }
public void tirggerTrap() { string[] arr = tirggerArr; if (arr[1] == "6") { TrapLandmine trap = trapDataObject[trapObject[int.Parse(arr[0])]] as TrapLandmine; for (int j = 0; j < trap.clearPList.Count; j++) { GameObject obj1 = GameObject.Instantiate(placeGameObject, trap.clearPList[j], placeGameObject.transform.rotation); obj1.transform.localScale = trap.clearRList[j]; obj1.GetComponent <TrapCollisoon>().id = int.Parse(arr[0]); obj1.GetComponent <TrapCollisoon>().type = 6; obj1.GetComponent <TrapCollisoon>().use = "atk"; obj1.transform.SetParent(trapObject[int.Parse(arr[0])].transform); } } }
public void inittrap(List <TrapVo> list) { for (int i = 0; i < list.Count; i++) { list[i].id = nextTrapId; nextTrapId++; if (list[i].type == 1) { TrapDoor trap = list[i] as TrapDoor; trap.curLiveEnemy = 0; GameObject obj = GameObject.Instantiate(trapListPre[0], trap.v3, trapListPre[0].transform.rotation); trapObject[list[i].id] = obj; trapDataObject[trapObject[list[i].id]] = trap; obj.transform.SetParent(trapparent.transform); if (trap.triggerPList.Count > 0) { obj.transform.Translate(new Vector3(0, -50, 0)); } for (int j = 0; j < trap.triggerPList.Count; j++) { GameObject obj1 = GameObject.Instantiate(placeGameObject, trap.triggerPList[j], placeGameObject.transform.rotation); obj1.transform.localScale = trap.triggerRList[j]; obj1.GetComponent <TrapCollisoon>().id = list[i].id; obj1.GetComponent <TrapCollisoon>().type = 1; obj1.GetComponent <TrapCollisoon>().use = "trigger"; obj1.transform.SetParent(obj.transform); } for (int j = 0; j < trap.clearPList.Count; j++) { GameObject obj1 = GameObject.Instantiate(placeGameObject, trap.clearPList[j], placeGameObject.transform.rotation); obj1.transform.localScale = trap.clearRList[j]; obj1.GetComponent <TrapCollisoon>().id = list[i].id; obj1.GetComponent <TrapCollisoon>().type = 1; obj1.GetComponent <TrapCollisoon>().use = "clear"; obj1.transform.SetParent(obj.transform); } updataTrap(nextTrapId - 1); } else if (list[i].type == 2) { MonsterRefreshVo trap = list[i] as MonsterRefreshVo; trap.curLiveEnemy = 0; trap.currefreshindex = 0; GameObject obj = GameObject.Instantiate(trapListPre[1], trap.v3, trapListPre[1].transform.rotation); trapObject[list[i].id] = obj; trapDataObject[trapObject[list[i].id]] = trap; obj.transform.SetParent(trapparent.transform); } else if (list[i].type == 3) { AtkOffice trap = list[i] as AtkOffice; GameObject obj = GameObject.Instantiate(trapListPre[2], trap.v3, trapListPre[1].transform.rotation); trapObject[list[i].id] = obj; trapDataObject[trapObject[list[i].id]] = trap; obj.transform.SetParent(trapparent.transform); } else if (list[i].type == 4) { CubeTrap trap = list[i] as CubeTrap; GameObject obj = GameObject.Instantiate(placeGameObject, trap.v3, trapListPre[1].transform.rotation); obj.transform.localScale = trap.sv3; obj.GetComponent <TrapCollisoon>().id = list[i].id; obj.GetComponent <TrapCollisoon>().type = 4; obj.GetComponent <TrapCollisoon>().use = "atk" + trap.AtkType; trapObject[list[i].id] = obj; trapDataObject[trapObject[list[i].id]] = trap; obj.transform.SetParent(trapparent.transform); } else if (list[i].type == 5) { Transfer trap = list[i] as Transfer; GameObject obj = GameObject.Instantiate(trapListPre[3], trap.v3, trapListPre[3].transform.rotation); obj.AddComponent <TrapCollisoon>().id = list[i].id; obj.GetComponent <TrapCollisoon>().type = 5; trapObject[list[i].id] = obj; trapDataObject[trapObject[list[i].id]] = trap; obj.transform.SetParent(trapparent.transform); GameObject obj1 = GameObject.Instantiate(trapListPre[3], trap.tv3, trapListPre[3].transform.rotation); obj1.AddComponent <TrapCollisoon>().id = list[i].id; obj1.GetComponent <TrapCollisoon>().type = 5; obj1.transform.SetParent(obj.transform); } else if (list[i].type == 6) { TrapLandmine trap = list[i] as TrapLandmine; trap.curLiveEnemy = 0; GameObject obj = GameObject.Instantiate(trapListPre[5], trap.v3, trapListPre[0].transform.rotation); trapObject[list[i].id] = obj; trapDataObject[trapObject[list[i].id]] = trap; obj.transform.SetParent(trapparent.transform); for (int j = 0; j < trap.triggerPList.Count; j++) { GameObject obj1 = GameObject.Instantiate(placeGameObject, trap.triggerPList[j], placeGameObject.transform.rotation); obj1.transform.localScale = trap.triggerRList[j]; obj1.GetComponent <TrapCollisoon>().id = list[i].id; obj1.GetComponent <TrapCollisoon>().type = 6; obj1.GetComponent <TrapCollisoon>().use = "trigger"; obj1.transform.SetParent(obj.transform); } // updataTrap(nextTrapId - 1); } else if (list[i].type == 7) { TrapSpring trap = list[i] as TrapSpring; GameObject obj = GameObject.Instantiate(trapListPre[5], trap.v3, trapListPre[0].transform.rotation); trapObject[list[i].id] = obj; trapDataObject[trapObject[list[i].id]] = trap; obj.transform.SetParent(trapparent.transform); GameObject obj1 = GameObject.Instantiate(placeGameObject, trap.v3, placeGameObject.transform.rotation); obj1.transform.localScale = new Vector3(trap.range, 0.1f, 1); obj1.transform.Translate(new Vector3(-trap.range / 2 + .5f, 0, 0)); obj1.GetComponent <TrapCollisoon>().id = list[i].id; obj1.GetComponent <TrapCollisoon>().type = 7; obj1.GetComponent <TrapCollisoon>().use = "trigger"; obj1.transform.SetParent(obj.transform); obj.transform.Rotate(0, trap.rotiony, 0); Debug.Log(trap.rotiony); } } //Timer time = new Timer(13, () => { Debug.Log("alwaysDo"); // }, () => { Debug.Log("stopTimer1")}; }