IEnumerator SpawnEnemy() { yield return(new WaitForSeconds(time)); //发送消息 让其他客户端产生敌人 ,包括数量和类型 foreach (GameObject go in enemyPrefabs) { List <CreateEnemyProperty> propertylist = new List <CreateEnemyProperty>(); foreach (Transform t in spawnPosArray) { GameObject temp = GameObject.Instantiate(go, t.position, Quaternion.identity) as GameObject; string guidStr = Guid.NewGuid().ToString(); //guidStr=GUID int targetRoleId = GameController.Instance.GetRandomRoleID(); if (temp.GetComponent <Enemy>() != null) { Enemy enemy = temp.GetComponent <Enemy>(); enemy.guid = guidStr; //为每一个新生产的敌人创建一个GUID //temp.GetComponent<Enemy>().enabled = true; enemy.targetRoleId = targetRoleId; } else { BossOrc bossOrc = temp.GetComponent <BossOrc>(); bossOrc.guid = guidStr; //为新生产的Boss敌人创建一个GUID bossOrc.targetRoleId = targetRoleId; } CreateEnemyProperty property = new CreateEnemyProperty() { guid = guidStr, position = new Vector3Obj(t.position), prefabName = go.name, targetRoleID = targetRoleId }; propertylist.Add(property); } if (GameController.Instance.battleType == BattleType.Team && GameController.Instance.isMaster) { CreateEnemyModel model = new CreateEnemyModel() { List = propertylist }; enemyController.SendCreateEnemy(model); } yield return(new WaitForSeconds(repeateRate)); } }
IEnumerator SpawnEnemy() { yield return new WaitForSeconds(time); //发送消息,让其他客户端产生相应的敌人(位置,敌人类型) foreach(GameObject go in enemyPrefabs) { List<CreateEnemyProperty> propertylist = new List<CreateEnemyProperty>( ); foreach(Transform t in spawnPosArray) { GameObject temp = GameObject.Instantiate(go,t.position,Quaternion.identity) as GameObject; string GUID = Guid.NewGuid().ToString(); int targetRoleId = GameController.Instance.GetRandomRoleID(); if (temp.GetComponent<Enemy>() != null) { Enemy enemy = temp.GetComponent<Enemy>(); enemy.guid = GUID; //为每一个新生成的敌人创建一个GUID enemy.targetRoleId =targetRoleId ; } else { Boss boss = temp.GetComponent<Boss>(); boss.guid = GUID; boss.targetRoleId = targetRoleId; } CreateEnemyProperty property = new CreateEnemyProperty() { guid = GUID, position = new Vector3Obj(t.position), prefabName = go.name, targetRoleID = targetRoleId }; propertylist.Add(property); } if (GameController.Instance.battleType == BattleType.Team && GameController.Instance.isMaster) { CreateEnemyModel model = new CreateEnemyModel(){list = propertylist}; enemyController.SendCreateEnemy(model); } yield return new WaitForSeconds(repeateRate); } }
IEnumerator SpawnEnemy() { yield return(new WaitForSeconds(time)); foreach (GameObject go in enemyPrefabs) { List <CreateEnemyProperty> list = new List <CreateEnemyProperty>(); foreach (Transform t in spawnPoint) { GameObject enemy = GameObject.Instantiate(go, t.position, Quaternion.identity) as GameObject; string guid = Guid.NewGuid().ToString(); if (enemy.GetComponent <Enemy>() != null) { enemy.GetComponent <Enemy>().guid = guid; } else if (enemy.GetComponent <Boss>() != null) { enemy.GetComponent <Boss>().guid = guid; } CreateEnemyProperty enemyProperty = new CreateEnemyProperty() { GUID = guid, PrefabName = go.name, Postion = new Vector3Obj(t.position) }; list.Add(enemyProperty); TranscriptManager._instance.AddEnemy(enemy); yield return(new WaitForSeconds(repeateTime)); } if (GameManger._instance.battleType == BattleType.Team && GameManger._instance.isMaster) { Debug.Log("this is master"); CreateEnemyModel model = new CreateEnemyModel(); model.list = list; enemyController.SendCreateEnemy(model); } } yield return(new WaitForSeconds(repeateTime)); }
IEnumerator SpawnEnemy() { yield return new WaitForSeconds(time); foreach(GameObject go in enemyPrefabs) { List<CreateEnemyProperty> list = new List<CreateEnemyProperty>(); foreach(Transform t in spawnPoint) { GameObject enemy=GameObject.Instantiate(go, t.position, Quaternion.identity) as GameObject; string guid = Guid.NewGuid().ToString(); if (enemy.GetComponent<Enemy>() != null) { enemy.GetComponent<Enemy>().guid = guid; } else if (enemy.GetComponent<Boss>() != null) { enemy.GetComponent<Boss>().guid = guid; } CreateEnemyProperty enemyProperty = new CreateEnemyProperty() { GUID = guid, PrefabName = go.name, Postion = new Vector3Obj(t.position) }; list.Add(enemyProperty); TranscriptManager._instance.AddEnemy(enemy); yield return new WaitForSeconds(repeateTime); } if(GameManger._instance.battleType==BattleType.Team && GameManger._instance.isMaster) { Debug.Log("this is master"); CreateEnemyModel model = new CreateEnemyModel(); model.list = list; enemyController.SendCreateEnemy(model); } } yield return new WaitForSeconds(repeateTime); }