using robotManager.Helpful; public class Main : wManager.Plugin.IPlugin { public void Initialize() { Logging.Write("CastSpellByName to /cast plugin loaded."); robotManager.Events.Events.OnCustomEvent += OnEventsOnOnCustomEvent; } private void OnEventsOnOnCustomEvent(string name, object[] args, System.ComponentModel.CancelEventArgs cancelable) { if (name.StartsWith("SpellManager.CastSpellByName") && args.Length >= 1 && args[0] is string) { var spellName = (string)args[0]; if (!string.IsNullOrWhiteSpace(spellName)){ string luaUnit = null; if (args.Length >= 2 && args[1] is string) luaUnit = (string)args[1]; cancelable.Cancel = true; if (!string.IsNullOrWhiteSpace(luaUnit) && luaUnit != "player") { Logging.WriteDebug("Casting " + spellName + " on " + luaUnit + " with macro /cast"); wManager.Wow.Helpers.Lua.RunMacroText("/cast [@" + luaUnit + "] " + spellName); } else { Logging.WriteDebug("Casting " + spellName + " with macro /cast"); wManager.Wow.Helpers.Lua.RunMacroText("/cast " + spellName); } } } } public void Dispose() { robotManager.Events.Events.OnCustomEvent -= OnEventsOnOnCustomEvent; } public void Settings() { } }