private void NotifyPlayerJoin(TcpPlayer player) { var id = player.id.ToString(); // Do they exist? PlayerRecord record; if (playerData.TryGetValue(id, out record)) { // Update record.Name = player.name; playerData[id] = record; // Swap out Rust player allPlayers.Remove(id); allPlayers.Add(id, new NomadPlayer(player)); } else { // Insert record = new PlayerRecord { Id = id, Name = player.name }; playerData.Add(id, record); // Create Rust player allPlayers.Add(id, new NomadPlayer(player)); } // Save ProtoStorage.Save(playerData, "oxide.covalence"); }
internal NomadLivePlayer(TcpPlayer player) { this.player = player; Id = player.id.ToString(); Character = this; Object = null; // TODO }
internal void PlayerJoin(TcpPlayer player) { var id = player.id.ToString(); var name = player.name.Sanitize(); PlayerRecord record; if (playerData.TryGetValue(id, out record)) { record.Name = name; playerData[id] = record; allPlayers.Remove(id); allPlayers.Add(id, new NomadPlayer(player)); } else { record = new PlayerRecord { Id = id, Name = name }; playerData.Add(id, record); allPlayers.Add(id, new NomadPlayer(player)); } ProtoStorage.Save(playerData, "oxide.covalence"); }
internal void NotifyPlayerConnect(TcpPlayer player) { var id = player.id.ToString(); NotifyPlayerJoin(id, player.name); livePlayers[id] = new NomadLivePlayer(player); }
internal NomadPlayer(TcpPlayer player) : this(player.id.ToString(), player.name) { // Store user object this.player = player; }
internal void PlayerDisconnected(TcpPlayer player) => connectedPlayers.Remove(player.id.ToString());
internal void PlayerConnected(TcpPlayer player) { allPlayers[player.id.ToString()] = new NomadPlayer(player); connectedPlayers[player.id.ToString()] = new NomadPlayer(player); }
internal void NotifyPlayerConnect(TcpPlayer player) { NotifyPlayerJoin(player); connectedPlayers[player.id.ToString()] = new NomadPlayer(player); }
internal NomadPlayer(TcpPlayer player) { this.player = player; Name = player.name; Id = player.id.ToString(); }
internal void NotifyPlayerDisconnect(TcpPlayer player) => livePlayers.Remove(player.id.ToString());