Remove ChatSettings.NickName, use PlayerName always as default

This commit is contained in:
rob-v
2017-05-06 19:14:46 +02:00
committed by Chris Forbes
parent 5b8c313d55
commit 48abb7372b
3 changed files with 13 additions and 24 deletions

View File

@@ -79,6 +79,8 @@ namespace OpenRA.Chat
volatile ChatConnectionStatus connectionStatus = ChatConnectionStatus.Disconnected;
public ChatConnectionStatus ConnectionStatus { get { return connectionStatus; } }
string nickname;
public GlobalChat()
{
client.Encoding = System.Text.Encoding.UTF8;
@@ -128,11 +130,13 @@ namespace OpenRA.Chat
});
}
public void Connect()
public void Connect(string nickname)
{
if (client.IsConnected)
if (client.IsConnected || !IsValidNickname(nickname))
return;
this.nickname = nickname;
new Thread(() =>
{
try
@@ -183,12 +187,7 @@ namespace OpenRA.Chat
AddNotification("Connected.");
connectionStatus = ChatConnectionStatus.Connected;
// Guard against settings.yaml modification
var nick = SanitizedName(Game.Settings.Chat.Nickname);
if (nick != Game.Settings.Chat.Nickname)
Game.RunAfterTick(() => Game.Settings.Chat.Nickname = nick);
client.Login(nick, "in-game IRC client", 0, "OpenRA");
client.Login(nickname, "in-game IRC client", 0, "OpenRA");
client.RfcJoin("#" + Game.Settings.Chat.Channel);
}
@@ -339,7 +338,6 @@ namespace OpenRA.Chat
if (Rfc2812.IsValidNickname(nick))
{
client.RfcNick(nick);
Game.Settings.Chat.Nickname = nick;
return true;
}
@@ -366,7 +364,7 @@ namespace OpenRA.Chat
AddNotification("Disconnecting from {0}...".F(client.Address));
Game.RunAfterTick(() => Game.Settings.Chat.ConnectAutomatically = false);
Game.RunAfterTick(() => { Game.Settings.Chat.ConnectAutomatically = false; Game.Settings.Save(); });
}
public void Dispose()