fix #2453; MOTD for lobby (to be fetched from file); different motd for each mod
This commit is contained in:
@@ -36,7 +36,6 @@ namespace OpenRA.GameRules
|
||||
public int TimeOut = 0;
|
||||
public bool Dedicated = false;
|
||||
public bool DedicatedLoop = true;
|
||||
public string DedicatedMOTD = null;
|
||||
|
||||
public ServerSettings() { }
|
||||
|
||||
@@ -54,7 +53,6 @@ namespace OpenRA.GameRules
|
||||
TimeOut = other.TimeOut;
|
||||
Dedicated = other.Dedicated;
|
||||
DedicatedLoop = other.DedicatedLoop;
|
||||
DedicatedMOTD = other.DedicatedMOTD;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -78,7 +78,6 @@ namespace OpenRA.Network
|
||||
public bool LockTeams = true; // don't allow team changes after game start.
|
||||
public bool AllowCheats = false;
|
||||
public bool Dedicated;
|
||||
public string DedicatedMOTD;
|
||||
}
|
||||
|
||||
public Session(string[] mods)
|
||||
|
||||
@@ -119,7 +119,6 @@ namespace OpenRA.Server
|
||||
lobbyInfo.GlobalSettings.ServerName = settings.Name;
|
||||
lobbyInfo.GlobalSettings.Ban = settings.Ban;
|
||||
lobbyInfo.GlobalSettings.Dedicated = settings.Dedicated;
|
||||
lobbyInfo.GlobalSettings.DedicatedMOTD = settings.DedicatedMOTD;
|
||||
|
||||
foreach (var t in ServerTraits.WithInterface<INotifyServerStart>())
|
||||
t.ServerStarted(this);
|
||||
@@ -329,10 +328,14 @@ namespace OpenRA.Server
|
||||
SyncLobbyInfo();
|
||||
SendChat(newConn, "has joined the game.");
|
||||
|
||||
if ( File.Exists("{0}motd_{1}.txt".F(Platform.SupportDir, lobbyInfo.GlobalSettings.Mods[0])) )
|
||||
{
|
||||
var motd = System.IO.File.ReadAllText("{0}motd_{1}.txt".F(Platform.SupportDir, lobbyInfo.GlobalSettings.Mods[0]));
|
||||
SendChatTo(newConn, motd);
|
||||
}
|
||||
|
||||
if ( lobbyInfo.GlobalSettings.Dedicated )
|
||||
{
|
||||
if (lobbyInfo.GlobalSettings.DedicatedMOTD != null)
|
||||
SendChatTo(newConn, lobbyInfo.GlobalSettings.DedicatedMOTD);
|
||||
if (client.IsAdmin)
|
||||
SendChatTo(newConn, " You are admin now!");
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user