Beispiel #1
0
        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");
        }
Beispiel #2
0
 internal NomadLivePlayer(TcpPlayer player)
 {
     this.player = player;
     Id          = player.id.ToString();
     Character   = this;
     Object      = null; // TODO
 }
Beispiel #3
0
        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");
        }
Beispiel #4
0
        internal void NotifyPlayerConnect(TcpPlayer player)
        {
            var id = player.id.ToString();

            NotifyPlayerJoin(id, player.name);
            livePlayers[id] = new NomadLivePlayer(player);
        }
Beispiel #5
0
 internal NomadPlayer(TcpPlayer player) : this(player.id.ToString(), player.name)
 {
     // Store user object
     this.player = player;
 }
Beispiel #6
0
 internal void PlayerDisconnected(TcpPlayer player) => connectedPlayers.Remove(player.id.ToString());
Beispiel #7
0
 internal void PlayerConnected(TcpPlayer player)
 {
     allPlayers[player.id.ToString()]       = new NomadPlayer(player);
     connectedPlayers[player.id.ToString()] = new NomadPlayer(player);
 }
Beispiel #8
0
 internal void NotifyPlayerConnect(TcpPlayer player)
 {
     NotifyPlayerJoin(player);
     connectedPlayers[player.id.ToString()] = new NomadPlayer(player);
 }
Beispiel #9
0
 internal NomadPlayer(TcpPlayer player)
 {
     this.player = player;
     Name        = player.name;
     Id          = player.id.ToString();
 }
Beispiel #10
0
 internal void NotifyPlayerDisconnect(TcpPlayer player) => livePlayers.Remove(player.id.ToString());