diff --git a/OpenRA.Mods.Common/DiscordService.cs b/OpenRA.Mods.Common/DiscordService.cs index 860e833237ce..8df8a7f5cb56 100644 --- a/OpenRA.Mods.Common/DiscordService.cs +++ b/OpenRA.Mods.Common/DiscordService.cs @@ -115,6 +115,7 @@ void SetStatus(DiscordState state, string details = null, string secret = null, DateTime? timestamp = null; Party party = null; Secrets secrets = null; + Button[] buttons = null; switch (state) { @@ -161,6 +162,18 @@ void SetStatus(DiscordState state, string details = null, string secret = null, throw new ArgumentOutOfRangeException(nameof(state), state, null); } + if (party == null) + { + buttons = new[] + { + new Button + { + Label = "Visit Website", + Url = Game.ModData.Manifest.Metadata.Website + } + }; + } + var richPresence = new RichPresence { Details = details, @@ -173,14 +186,7 @@ void SetStatus(DiscordState state, string details = null, string secret = null, Timestamps = timestamp.HasValue ? new Timestamps(timestamp.Value) : null, Party = party, Secrets = secrets, - Buttons = new[] - { - new Button - { - Label = "Visit Website", - Url = Game.ModData.Manifest.Metadata.Website - } - } + Buttons = buttons }; client.SetPresence(richPresence);