void CreateOtherPlayer(ServerOtherPlayerMsg serverOtherPlayerCreateMsg) { int playerID = serverOtherPlayerCreateMsg.playerID; int playerHealth = serverOtherPlayerCreateMsg.playerHealth; Vector3 otherPlayerPosition = new Vector3 { x = serverOtherPlayerCreateMsg.location.x, y = serverOtherPlayerCreateMsg.location.y, z = serverOtherPlayerCreateMsg.location.z }; Quaternion otherPlayerRotation = Quaternion.Euler( serverOtherPlayerCreateMsg.rotation.x, serverOtherPlayerCreateMsg.rotation.y, serverOtherPlayerCreateMsg.rotation.z ); GameObject newOtherPlayer = null; newOtherPlayer = Instantiate(OtherPlayer, otherPlayerPosition, otherPlayerRotation); OtherPlayerControl otherPlayerControl = newOtherPlayer.GetComponent <OtherPlayerControl>(); otherPlayerControl.otherPlayerID = playerID; otherPlayerControl.otherPlayerHealth = playerHealth; AddServerGameObjects(GameSettings.OTHER_PLAYER_TYPE, playerID, newOtherPlayer); }
void SyncOtherPlayer(ServerOtherPlayerMsg serverSyncOtherPlayerMsg) { int entityID = serverSyncOtherPlayerMsg.playerID; int playerHealth = serverSyncOtherPlayerMsg.playerHealth; Vector3 otherPlayerPosition = new Vector3 { x = serverSyncOtherPlayerMsg.location.x, y = serverSyncOtherPlayerMsg.location.y, z = serverSyncOtherPlayerMsg.location.z }; Quaternion otherPlayerRotation = Quaternion.Euler( serverSyncOtherPlayerMsg.rotation.x, serverSyncOtherPlayerMsg.rotation.y, serverSyncOtherPlayerMsg.rotation.z ); GameObject targetPlayer = FindOtherPlayerWithID(entityID); if (targetPlayer != null) { OtherPlayerControl otherPlayerControl = targetPlayer.GetComponent <OtherPlayerControl>(); otherPlayerControl.SetWalking(Location.IsDifference(targetPlayer.transform.position, otherPlayerPosition)); //targetPlayer.transform.position = otherPlayerPosition; targetPlayer.transform.rotation = otherPlayerRotation; UpdateServerGameObjectsMovement( GameSettings.OTHER_PLAYER_TYPE, entityID, otherPlayerPosition - targetPlayer.transform.position ); if (playerHealth < otherPlayerControl.otherPlayerHealth) { otherPlayerControl.otherPlayerHurtAduio.Play(); otherPlayerControl.otherPlayerHealth = playerHealth; } } }