private static void Beat( SchedulerTask scheduledTask )
{
if ( Server.IsShuttingDown )
return;
if ( ConfigKey.HeartbeatEnabled.Enabled() ) {
SendMinecraftNetBeat();
Send800CraftNetBeat();
HbSave();
} else {
// If heartbeats are disabled, the server data is written
// to a text file instead (heartbeatdata.txt)
string[] data = new[]{
Salt,
Server.InternalIP.ToString(),
Server.Port.ToString(),
Server.CountPlayers( false ).ToString(),
ConfigKey.MaxPlayers.GetString(),
ConfigKey.ServerName.GetString(),
ConfigKey.IsPublic.GetString()
};
const string tempFile = Paths.HeartbeatDataFileName + ".tmp";
File.WriteAllLines( tempFile, data, Encoding.ASCII );
Paths.MoveOrReplace( tempFile, Paths.HeartbeatDataFileName );
}
}