32 lines
1.2 KiB
C#

using Aki.Reflection.Utils;
using EFT.Communications;
using System.Linq;
using System.Reflection;
using UnityEngine;
namespace SamSWAT.TimeWeatherChanger.Utils
{
static class Notifier
{
private static readonly MethodInfo notifierMessageMethod;
private static readonly MethodInfo notifierWarningMessageMethod;
static Notifier()
{
var notifierType = PatchConstants.EftTypes.Single(x => x.GetMethod("DisplayMessageNotification") != null);
notifierMessageMethod = notifierType.GetMethod("DisplayMessageNotification");
notifierWarningMessageMethod = notifierType.GetMethod("DisplayWarningNotification");
}
public static void DisplayMessageNotification(string message, ENotificationDurationType duration = ENotificationDurationType.Default, ENotificationIconType iconType = ENotificationIconType.Default, Color? textColor = null)
{
notifierMessageMethod.Invoke(null, new object[] { message, duration, iconType, textColor });
}
public static void DisplayWarningNotification(string message, ENotificationDurationType duration = ENotificationDurationType.Default)
{
notifierWarningMessageMethod.Invoke(null, new object[] { message, duration });
}
}
}