Skip to content
View in the app

A better way to browse. Learn more.

WRobot

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

How to find what hostile player is casting

Featured Replies

I'm making a fight class for a holy pally follower. I need to be able to find what the player is casting so I can cast Blessing of Sacrifice to remove fear/polymorph. Any help would be appreciated. I tried pic related but it doesn't work. I assume it's because it isn't targeting the person trying to fear or poly me, so being able to find if someone is casting that on me is what I need.

FC.png

Hello, for this behavior you need to subscribe lua events with arguments(wManager.Wow.Helpers.EventsLuaWithArgs.OnEventsLuaWithArgs).

But i belive the event 'COMBAT_LOG_EVENT_UNFILTERED'  is also not working yet for 2.4.3(https://wrobot.eu/forums/topic/5519-register-combat_log-with-args/).

If it works you could add a c# code to your fightclass. It could look like this:

        //example
        private void EventsLuaWithArgsOnOnEventsLuaWithArgs(LuaEventsId id, List<string> args)
        {
            if (id == LuaEventsId.COMBAT_LOG_EVENT_UNFILTERED && args[8] == ObjectManager.Me.Name)
            {
                if (args[2] == "Polymorph")
                {
                    Logging.Write("Someone is casting Polymorph on me");
                    ///...
                }
            }
        }

 

Otherwise you can use 'UNIT_SPELLCAST_SENT' which should work as intend:

if (wManager.Statistics.RunningTimeInSec() < 2)
{
    robotManager.Helpful.Logging.Write("Register OnEventsLuaWithArgs");
    wManager.Wow.Helpers.EventsLuaWithArgs.OnEventsLuaWithArgs += delegate(wManager.Wow.Enums.LuaEventsId id, System.Collections.Generic.List<string> args)
    {
            if (id == wManager.Wow.Enums.LuaEventsId.UNIT_SPELLCAST_SENT && args[3] == wManager.Wow.ObjectManager.ObjectManager.Me.Name)
            {
                if (args[1] == "Polymorph" || args[1] == "Fear")
                {
                    robotManager.Helpful.Logging.Write("Someone casts " + args[1] + " on me");
                    wManager.Wow.Helpers.SpellManager.CastSpellByNameOn("Blessing of Sacrifice", "party1");
			//you could add here a task in case if you are on global cooldown to cast it later
                }
            }
     };
     System.Threading.Thread.Sleep(2000);
}

 

 

and here's an example how you can implement the c# code into your fightclass: BoS example.xml

  • 2 weeks later...

The 2.4.3 version of wManager.dll doesn't seem to have a class EventsLuaWithArgs.
Any current workaround for that? I'd love to read combatlog events to automate stuff for a PvP fightclass.

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.