public byte[] SerializePlayerInfo() { var writer = new ByteWriter(); writer.WriteInt32(id); writer.WriteString(Username); writer.WriteInt32(Latency); writer.WriteByte((byte)type); writer.WriteByte((byte)status); writer.WriteULong(steamId); writer.WriteString(steamPersonaName); return(writer.ToArray()); }
public byte[] SerializePlayerInfo() { var writer = new ByteWriter(); writer.WriteInt32(id); writer.WriteString(Username); writer.WriteInt32(Latency); writer.WriteByte((byte)type); writer.WriteByte((byte)status); writer.WriteULong(steamId); writer.WriteString(steamPersonaName); writer.WriteInt32(ticksBehind); writer.WriteBool(simulating); writer.WriteByte(color.r); writer.WriteByte(color.g); writer.WriteByte(color.b); return(writer.ToArray()); }
public void OnConnectionRequest(ConnectionRequest req) { if (!arbiter && server.settings.maxPlayers > 0 && server.players.Count(p => !p.IsArbiter) >= server.settings.maxPlayers) { var writer = new ByteWriter(); writer.WriteString("Server is full"); req.Reject(writer.GetArray()); return; } req.Accept(); }
public bool DoAutosave(string saveName = "") { if (tmpMapCmds != null) { return(false); } if (settings.pauseOnAutosave) { SendCommand(CommandType.WorldTimeSpeed, ScheduledCommand.NoFaction, ScheduledCommand.Global, new byte[] { (byte)Verse.TimeSpeed.Paused }); } ByteWriter writer = new ByteWriter(); writer.WriteString(saveName); SendCommand(CommandType.Autosave, ScheduledCommand.NoFaction, ScheduledCommand.Global, writer.ToArray()); tmpMapCmds = new Dictionary <int, List <byte[]> >(); SendChat("Autosaving..."); autosaveCountdown = settings.autosaveInterval * 2500 * 24; return(true); }