public void MoveAsync(PlayerCharacterParameter param) { if (MagicOnionNetwork.IsConnected) { _gameHubClient.MoveAsync(param); } }
private void AfterJoinGameHub() { PlayerCharacterParameter param = new PlayerCharacterParameter(); param.ActorNumber = MagicOnionNetwork.LocalPlayer.ActorNumber; param.PlayerName = MagicOnionNetwork.LocalPlayer.Name; GameHubComponent.Instance.MoveAsync(param); }
private void OnUpdateLocalPlayerMove(Vector3 position, Quaternion rotation, Vector3 move, bool crouch, bool jump) { if (MagicOnionNetwork.IsJoined) { PlayerCharacterParameter param = new PlayerCharacterParameter(); param.ActorNumber = MagicOnionNetwork.LocalPlayer.ActorNumber; param.PlayerName = MagicOnionNetwork.LocalPlayer.Name; param.Position = position; param.Rotation = rotation; param.Move = move; param.Crouch = crouch; param.Jump = jump; GameHubComponent.Instance.MoveAsync(param); } }
private void OnMoveRemotePlayerCharacter(PlayerCharacterParameter param) { ModifiedThirdPersonCharacter remotePlayer; _remotePlayers.TryGetValue(param.ActorNumber, out remotePlayer); if (remotePlayer != null) { remotePlayer.transform.position = param.Position; remotePlayer.transform.rotation = param.Rotation; remotePlayer.Move(param.Move, param.Crouch, param.Jump); } else { GameObject go = GameObject.Instantiate(PlayerPrefab, Vector3.zero, Quaternion.identity); go.transform.SetParent(RemotePlayerRoot.transform); go.name = "RemotePlayer[" + param.ActorNumber + "]_" + param.PlayerName; _remotePlayers[param.ActorNumber] = go.GetComponent <ModifiedThirdPersonCharacter>(); } }
public async Task MoveAsync(PlayerCharacterParameter param) { BroadcastExceptSelf(group).OnMove(param); }
public async void MoveAsync(PlayerCharacterParameter param) { await _streamingHub.MoveAsync(param); }
void IGameHubReceiver.OnMove(PlayerCharacterParameter param) { OnMovePlayerCharacter?.Invoke(param); }