public void SyncEnemyPosition() { if (syncEnemyList != null || syncBoss != null) { EnemyPositionModel model = new EnemyPositionModel(); foreach (Enemy enemy in syncEnemyList) { if (enemy != null) //同步期间敌人可能被杀死而出现空指针 { EnemyPositionProperty property = new EnemyPositionProperty { guid = enemy.guid, position = new Vector3Object(enemy.transform.position), eulerAngles = new Vector3Object(enemy.transform.eulerAngles) }; model.list.Add(property); } } if (syncBoss != null) { EnemyPositionProperty property = new EnemyPositionProperty { guid = syncBoss.guid, position = new Vector3Object(syncBoss.transform.position), eulerAngles = new Vector3Object(syncBoss.transform.eulerAngles) }; model.list.Add(property); } enemyController.SyncEnemyPosition(model); syncEnemyList.Clear(); syncBoss = null; } }
void SyncEnemyPositionAndRotation() { if (enemyToSyncList != null && enemyToSyncList.Count > 0) { EnemyPositionModel model = new EnemyPositionModel(); foreach (Enemy enemy in enemyToSyncList) { if (enemy != null) { EnemyPositionProperty property = new EnemyPositionProperty() { guid = enemy.guid, position = new Vector3Obj(enemy.transform.position), eulerAngles = new Vector3Obj(enemy.transform.eulerAngles), }; model.list.Add(property); } } if (bossToSync != null) { EnemyPositionProperty property = new EnemyPositionProperty() { guid = bossToSync.guid, position = new Vector3Obj(bossToSync.transform.position), eulerAngles = new Vector3Obj(bossToSync.transform.eulerAngles), }; model.list.Add(property); } bossToSync = null; enemyController.SyncEnemyPosition(model); enemyToSyncList.Clear(); } }
//发起同步敌人位置和旋转的请求 private void SyncEnemyPositionAndRotation() { if (enemyToSyncList != null && enemyToSyncList.Count > 0) { EnemyPositionModel model = new EnemyPositionModel(); foreach (Enemy enemy in enemyToSyncList) { if (enemy != null) { EnemyPositionProperty property = new EnemyPositionProperty() { guid = enemy.guid, position = new Vector3Obj(enemy.transform.position), eulerAngles = new Vector3Obj(enemy.transform.eulerAngles) }; model.list.Add(property); } } if (bossToSync != null) { EnemyPositionProperty property = new EnemyPositionProperty() { guid = bossToSync.guid, position = new Vector3Obj(bossToSync.transform.position), eulerAngles = new Vector3Obj(bossToSync.transform.eulerAngles) }; model.list.Add(property); } bossToSync = null; enemyController.SyncEnemyPosition(model); enemyToSyncList.Clear(); } }