From 7798b5725b251d9c8d5724e1fa9b9391ecdd3a4a Mon Sep 17 00:00:00 2001 From: Fayne Aldan Date: Fri, 14 Dec 2018 04:37:39 -0700 Subject: [PATCH] Update to SMAPI 3.0 --- SVRichPresence/RichPresenceMod.cs | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/SVRichPresence/RichPresenceMod.cs b/SVRichPresence/RichPresenceMod.cs index 0643ebe..3b2543a 100644 --- a/SVRichPresence/RichPresenceMod.cs +++ b/SVRichPresence/RichPresenceMod.cs @@ -101,15 +101,15 @@ public override void Entry(IModHelper helper) { } ); LoadConfig(); - InputEvents.ButtonReleased += HandleButton; - GameEvents.HalfSecondTick += DoUpdate; - SaveEvents.AfterLoad += SetTimestamp; - SaveEvents.AfterReturnToTitle += SetTimestamp; - SaveEvents.AfterLoad += (object sender, EventArgs e) => + Helper.Events.Input.ButtonReleased += HandleButton; + Helper.Events.GameLoop.UpdateTicked += DoUpdate; + Helper.Events.GameLoop.SaveLoaded += SetTimestamp; + Helper.Events.GameLoop.ReturnedToTitle += SetTimestamp; + Helper.Events.GameLoop.SaveLoaded += (object sender, SaveLoadedEventArgs e) => api.GamePresence = "Getting Started"; - SaveEvents.AfterCreate += (object sender, EventArgs e) => + Helper.Events.GameLoop.SaveCreated += (object sender, SaveCreatedEventArgs e) => api.GamePresence = "Starting a New Game"; - GameEvents.FirstUpdateTick += (object sender, EventArgs e) => { + Helper.Events.GameLoop.GameLaunched += (object sender, GameLaunchedEventArgs e) => { SetTimestamp(); timestampSession = GetTimestamp(); }; @@ -193,7 +193,7 @@ private void SetupLibs() { File.Copy(modPath, sdvPath, true); File.SetLastWriteTime(sdvPath, File.GetLastWriteTime(modPath)); // just making sure Monitor.Log("DiscordRP library updated. Please restart game.", LogLevel.Alert); - SaveEvents.AfterLoad += (object sender, EventArgs e) => { + Helper.Events.GameLoop.SaveLoaded += (object sender, SaveLoadedEventArgs e) => { Game1.addHUDMessage(new HUDMessage("DiscordRP library updated. Please restart game.", HUDMessage.newQuest_type)); }; } @@ -205,7 +205,7 @@ private void SetupLibs() { } } - private void HandleButton(object sender, EventArgsInput e) { + private void HandleButton(object sender, ButtonReleasedEventArgs e) { if (e.Button != config.ReloadConfigButton) return; try { @@ -230,8 +230,10 @@ private long GetTimestamp() { return Convert.ToInt64((DateTime.UtcNow - epoch).TotalSeconds); } - private void DoUpdate(object sender, EventArgs e) => - DiscordRpc.UpdatePresence(GetPresence()); + private void DoUpdate(object sender, UpdateTickedEventArgs e) { + if (e.IsMultipleOf(30)) + DiscordRpc.UpdatePresence(GetPresence()); + } private MenuPresence Conf => !Context.IsWorldReady ? config.MenuPresence : config.GamePresence;