public AddonExampleEventSource(RainbowMage.OverlayPlugin.ILogger logger) : base(logger)
        {
            Name = "AddonExampleES";

            // Register Events subscribe to other EventSources/Overlays
            RegisterEventTypes(new List <string>()
            {
                "onAddonExampleOriginalTimerFiredEvent", "onAddonExampleEmbeddedTimerFiredEvent",
            });


            // Register EventHandler
            // This EventHandler is called from other EventSources/Overlays
            // You can execute some process or response data.

            RegisterEventHandler("addonExampleSay", (msg) => {
                Advanced_Combat_Tracker.ActGlobals.oFormActMain.TTS(msg["text"].ToString());
                return(null);
            });
            RegisterEventHandler("addonExampleCurrentTime", (msg) => {
                var ret     = new JObject();
                ret["time"] = DateTimeOffset.UtcNow.ToString();
                return(ret);
            });
        }
        public DFAEventSource(RainbowMage.OverlayPlugin.ILogger logger) : base(logger)
        {
            Name = "DFA";
            ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;

            RegisterEventTypes(new List <string>()
            {
                "onDFAStatusUpdateEvent"
            });

            RegisterEventHandler("DFATTS", (msg) =>
            {
                string text = Config.TextToSpeech.Replace(@"${matched}", msg["text"].ToString());
                ActGlobals.oFormActMain.TTS(text);
                return(null);
            });
        }
Example #3
0
        public CactbotEventSource(RainbowMage.OverlayPlugin.ILogger logger)
            : base(logger)
        {
            Name = "Cactbot";

            RegisterEventTypes(new List <string>()
            {
                "onGameExistsEvent", "onGameActiveChangedEvent", "onLogEvent", "onImportLogEvent", "onInCombatChangedEvent",
                "onZoneChangedEvent", "onPlayerDied", "onPartyWipe", "onPlayerChangedEvent", "onFocusChangedEvent",
                "onTargetChangedEvent", "onUserFileChanged",
            });

            RegisterEventHandler("cactbotLoadUser", FetchUserFiles);
            RegisterEventHandler("cactbotReadDataFiles", FetchDataFiles);
            RegisterEventHandler("cactbotRequestPlayerUpdate", (msg) => {
                notify_state_.player = null;
                return(null);
            });
            RegisterEventHandler("cactbotRequestState", (msg) => {
                reset_notify_state_ = true;
                return(null);
            });
            RegisterEventHandler("cactbotSay", (msg) => {
                Advanced_Combat_Tracker.ActGlobals.oFormActMain.TTS(msg["text"].ToString());
                return(null);
            });
            RegisterEventHandler("cactbotSaveData", (msg) => {
                Config.OverlayData[msg["overlay"].ToString()] = msg["data"].ToString();
                return(null);
            });
            RegisterEventHandler("cactbotLoadData", (msg) => {
                if (Config.OverlayData.ContainsKey(msg["overlay"].ToString()))
                {
                    var ret     = new JObject();
                    ret["data"] = Config.OverlayData[msg["overlay"].ToString()];
                    return(ret);
                }
                else
                {
                    return(null);
                }
            });
        }
Example #4
0
        public CactbotEventSource(RainbowMage.OverlayPlugin.ILogger logger)
            : base(logger)
        {
            Name = "Cactbot";

            RegisterPresets();

            RegisterEventTypes(new List <string>()
            {
                "onForceReload",
                "onGameExistsEvent",
                "onGameActiveChangedEvent",
                "onLogEvent",
                "onImportLogEvent",
                "onInCombatChangedEvent",
                "onZoneChangedEvent",
                "onFateEvent",
                "onCEEvent",
                "onPlayerDied",
                "onPartyWipe",
                "onPlayerChangedEvent",
                "onUserFileChanged",
            });

            // Broadcast onConfigChanged when a cactbotNotifyConfigChanged message occurs.
            RegisterEventHandler("cactbotReloadOverlays", (msg) => {
                OnForceReload(new JSEvents.ForceReloadEvent());
                return(null);
            });
            RegisterEventHandler("cactbotLoadUser", FetchUserFiles);
            RegisterEventHandler("cactbotReadDataFiles", FetchDataFiles);
            RegisterEventHandler("cactbotRequestPlayerUpdate", (msg) => {
                notify_state_.player = null;
                return(null);
            });
            RegisterEventHandler("cactbotRequestState", (msg) => {
                reset_notify_state_ = true;
                return(null);
            });
            RegisterEventHandler("cactbotSay", (msg) => {
                Advanced_Combat_Tracker.ActGlobals.oFormActMain.TTS(msg["text"].ToString());
                return(null);
            });
            RegisterEventHandler("cactbotSaveData", (msg) => {
                Config.OverlayData[msg["overlay"].ToString()] = msg["data"];
                Config.OnUpdateConfig();
                return(null);
            });
            RegisterEventHandler("cactbotLoadData", (msg) => {
                if (Config.OverlayData.ContainsKey(msg["overlay"].ToString()))
                {
                    var ret     = new JObject();
                    ret["data"] = Config.OverlayData[msg["overlay"].ToString()];
                    return(ret);
                }
                else
                {
                    return(null);
                }
            });
            RegisterEventHandler("cactbotChooseDirectory", (msg) => {
                var ret     = new JObject();
                string data = (string)ActGlobals.oFormActMain.Invoke((ChooseDirectoryDelegate)ChooseDirectory);
                if (data != null)
                {
                    ret["data"] = data;
                }
                return(ret);
            });
        }
        public static CactbotEventSourceConfig LoadConfig(IPluginConfig pluginConfig, RainbowMage.OverlayPlugin.ILogger logger)
        {
            var result = new CactbotEventSourceConfig();

            if (pluginConfig.EventSourceConfigs.ContainsKey("CactbotESConfig"))
            {
                var obj = pluginConfig.EventSourceConfigs["CactbotESConfig"];

                // TODO: add try/catch here
                if (obj.TryGetValue("OverlayData", out JToken value))
                {
                    try {
                        result.OverlayData = value.ToObject <Dictionary <string, JToken> >();
                    } catch (Exception e) {
                        logger.Log(LogLevel.Error, "Failed to load OverlayData setting: {0}", e.ToString());
                    }
                }

                if (obj.TryGetValue("RemoteVersionSeen", out value))
                {
                    result.RemoteVersionSeen = value.ToString();
                }
            }

            return(result);
        }
Example #6
0
        public static CactbotEventSourceConfig LoadConfig(IPluginConfig pluginConfig, RainbowMage.OverlayPlugin.ILogger logger)
        {
            var result = new CactbotEventSourceConfig();

            if (pluginConfig.EventSourceConfigs.ContainsKey("CactbotESConfig"))
            {
                var obj = pluginConfig.EventSourceConfigs["CactbotESConfig"];

                if (obj.TryGetValue("OverlayData", out JToken value))
                {
                    try {
                        result.OverlayData = value.ToObject <Dictionary <string, JToken> >();
                    } catch (Exception e) {
                        logger.Log(LogLevel.Error, Strings.LoadOverlayDataSettingsFailed, e.ToString());
                    }
                }

                if (obj.TryGetValue("LastUpdateCheck", out value))
                {
                    try {
                        result.LastUpdateCheck = value.ToObject <DateTime>();
                    } catch (Exception e) {
                        logger.Log(LogLevel.Error, Strings.LoadLastUpdateCheckSettingsFailed, e.ToString());
                    }
                }
            }

            return(result);
        }