Пример #1
0
 public ReminderListListener(RemindMe remindMe, DiscordChannel channel, DiscordUser user, IQueryable <Reminder> scopedReminders, TimeZoneInfo userTimeZone, bool showUsernames, ReminderDatabaseContext db)
 {
     this.remindMe        = remindMe;
     this.user            = user;
     this.channel         = channel;
     message              = null;
     this.scopedReminders = scopedReminders;
     remindersOnPage      = new List <Reminder>();
     scopedRemindersCount = scopedReminders.Count();
     this.userTimeZone    = userTimeZone;
     this.showUsernames   = showUsernames;
     this.db              = db;
     page                  = 0;
     timeoutTimer          = new Timer(60000.0);
     timeoutTimer.Elapsed += TimeoutElapsed;
 }
Пример #2
0
        public ActionManager(RemindMe plugin, IntPtr actionManagerPtr)
        {
            this.actionManagerPtr = actionManagerPtr;
            this.plugin           = plugin;

            var isActionCooldownScan = plugin.PluginInterface.TargetModuleScanner.ScanText("E8 ?? ?? ?? ?? 3C 01 74 45");

            isActionCooldown = Marshal.GetDelegateForFunctionPointer <IsActionCooldownDelegate>(isActionCooldownScan);

            var getActionCooldownSlotScan = plugin.PluginInterface.TargetModuleScanner.ScanText("E8 ?? ?? ?? ?? 0F 57 FF 48 85 C0");

            getActionCooldownSlot = Marshal.GetDelegateForFunctionPointer <GetActionCooldownSlotDelegate>(getActionCooldownSlotScan);
#if DEBUG
            var startActionCooldownScan = plugin.PluginInterface.TargetModuleScanner.ScanText("E8 ?? ?? ?? ?? 48 8B 05 ?? ?? ?? ?? 48 8D 0D ?? ?? ?? ?? FF 50 18");
            startCooldownHook = new Hook <StartCooldownDelegate>(startActionCooldownScan, new StartCooldownDelegate(StartCooldownDetour));

            startCooldownHook.Enable();
#endif
            plugin.PluginInterface.Framework.OnUpdateEvent += FrameworkOnOnUpdateEvent;
        }
Пример #3
0
        public void Init(RemindMe plugin, DalamudPluginInterface pluginInterface)
        {
            this.plugin          = plugin;
            this.pluginInterface = pluginInterface;
            foreach (var t in Assembly.GetExecutingAssembly().GetTypes().Where(t => t.IsSubclassOf(typeof(GeneralReminder))))
            {
                GeneralReminders.Add((GeneralReminder)Activator.CreateInstance(t));
            }

            if (Version == 1)
            {
                // Update to Version 2
                // Remove Status Monitors with ClassJob of 0
                Version = 2;
                if (MonitorDisplays.Count > 0)
                {
                    foreach (var a in MonitorDisplays.Values)
                    {
                        a.StatusMonitors.RemoveAll(a => a.ClassJob == 0);
                    }
                }
                Save();
            }
        }
Пример #4
0
 public virtual ushort GetIconID(DalamudPluginInterface pluginInterface, RemindMe plugin, MonitorDisplay display)
 {
     return(0);
 }
Пример #5
0
 public virtual bool ShouldShow(DalamudPluginInterface pluginInterface, RemindMe plugin, MonitorDisplay display)
 {
     return(false);
 }
Пример #6
0
 public virtual string GetText(DalamudPluginInterface pluginInterface, RemindMe plugin, MonitorDisplay display)
 {
     return("General Reminder");
 }
Пример #7
0
 public virtual void ClickHandler(RemindMe plugin, object param)
 {
 }
Пример #8
0
 public virtual bool HasClickHandle(DalamudPluginInterface pluginInterface, RemindMe plugin, MonitorDisplay display)
 {
     return(false);
 }