summaryrefslogtreecommitdiff
path: root/src/SMAPI/Events/ModMessageReceivedEventArgs.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/SMAPI/Events/ModMessageReceivedEventArgs.cs')
-rw-r--r--src/SMAPI/Events/ModMessageReceivedEventArgs.cs10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/SMAPI/Events/ModMessageReceivedEventArgs.cs b/src/SMAPI/Events/ModMessageReceivedEventArgs.cs
index d4370028..d75a7540 100644
--- a/src/SMAPI/Events/ModMessageReceivedEventArgs.cs
+++ b/src/SMAPI/Events/ModMessageReceivedEventArgs.cs
@@ -1,5 +1,6 @@
using System;
using StardewModdingAPI.Framework.Networking;
+using StardewModdingAPI.Toolkit.Serialization;
namespace StardewModdingAPI.Events
{
@@ -12,6 +13,9 @@ namespace StardewModdingAPI.Events
/// <summary>The underlying message model.</summary>
private readonly ModMessageModel Message;
+ /// <summary>The JSON helper used to deserialize models.</summary>
+ private readonly JsonHelper JsonHelper;
+
/*********
** Accessors
@@ -31,16 +35,18 @@ namespace StardewModdingAPI.Events
*********/
/// <summary>Construct an instance.</summary>
/// <param name="message">The received message.</param>
- internal ModMessageReceivedEventArgs(ModMessageModel message)
+ /// <param name="jsonHelper">The JSON helper used to deserialize models.</param>
+ internal ModMessageReceivedEventArgs(ModMessageModel message, JsonHelper jsonHelper)
{
this.Message = message;
+ this.JsonHelper = jsonHelper;
}
/// <summary>Read the message data into the given model type.</summary>
/// <typeparam name="TModel">The message model type.</typeparam>
public TModel ReadAs<TModel>()
{
- return this.Message.Data.ToObject<TModel>();
+ return this.Message.Data.ToObject<TModel>(this.JsonHelper.GetSerializer());
}
}
}