static void OnAll_Identities_Players_Factions_Request(ref All_Identities_Players_Factions_RequestMsg msg, MyNetworkClient sender) { Debug.Assert(Sync.IsServer); var response = new All_Identities_Players_Factions_SuccessMsg(); response.Identities = Sync.Players.SaveIdentities(); response.Players = Sync.Players.SavePlayers(); response.Factions = MySession.Static.Factions.SaveFactions(); Sync.Layer.SendMessage(ref response, sender.SteamUserId, messageType: MyTransportMessageEnum.Success); }
static void OnAll_Identities_Players_Factions_Success(ref All_Identities_Players_Factions_SuccessMsg msg, MyNetworkClient sender) { Debug.Assert(!Sync.IsServer); // Multiplayer client must setup clients if ((MyMultiplayer.Static is MyMultiplayerClient) && msg.Players != null) { foreach (var player in msg.Players) { if (!Sync.Clients.HasClient(player.SteamId)) Sync.Clients.AddClient(player.SteamId); } } Sync.Players.m_allIdentities.Clear(); Sync.Players.m_npcIdentities.Clear(); Sync.Players.LoadIdentities(msg.Identities); Sync.Players.m_players.Clear(); Sync.Players.m_controlledEntities.Clear(); Sync.Players.m_playerIdentityIds.Clear(); Sync.Players.LoadPlayers(msg.Players); MySession.Static.Factions.LoadFactions(msg.Factions, true); }
static void OnAll_Identities_Players_Factions_Success(ref All_Identities_Players_Factions_SuccessMsg msg, MyNetworkClient sender) { Sync.Players.m_allIdentities.Clear(); Sync.Players.m_npcIdentities.Clear(); Sync.Players.LoadIdentities(msg.Identities); Sync.Players.m_players.Clear(); Sync.Players.m_controlledEntities.Clear(); Sync.Players.m_playerIdentityIds.Clear(); Sync.Players.LoadPlayers(msg.Players); MySession.Static.Factions.LoadFactions(msg.Factions, true); }