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.

Diff conditions

Featured Replies

Hello.

The first question. I'm trying to use

MovementManager.Face(ObjectManager.Target)

with

MovementManager.IsFacing(ObjectManager.Me.Position, ObjectManager.Me.Rotation, ObjectManager.Target.Position, 3.1f) == false

condition and it works but if once condition is true, my char facing to target every time while i dont move. I want facing once per condition is true. How i can to do it?

The second question. I'm using !TraceLine.TraceLineGo(ObjectManager.Target.Position) and some times i can cast through barriers (mountains) on private server, and i want do check on the Z coordinate. For example in Probably Engine exists function

function LoS_Check(ax, ay, az, bx, by, bz)
    if ax ~= nil and bx ~= nil then
    local los = TraceLine(ax, ay, az+1, bx, by, bz+1)
    return los == nil
    end
    return false
end

As you can see i can change coordinates manualy. In that way i can change Z, for example Z+10 and check can i cast through mountains. And that the question: how can i get Z coordinate and use it with TraceLineGo? I think about

Vector3 targetZ = ObjectManager.GetTargetPosition();

!TraceLine.TraceLineGo(nearestPlayerEnemy.targetZ+10)

or something like this.

And other question is about wrobot api. Where i can find list of conditions and functions like?

Conditions.InGameAndConnectedAndAliveAndProductStartedNotInPause or Conditions.IsAttackedAndCannotIgnore

For example i want check spell cd and trying to use Conditions.CounterSpell("Spell name") and i guess it is wrong form. Tried use lua

var resultLua =
           Lua.LuaDoString(
               "ret = \"false\"; spell, rank, displayName, icon, startTime, endTime, isTradeSkill, castID, interrupt = UnitChannelInfo(\"player\"); if spell ~='Hurricane' then ret = \"true\" end",
               "ret");

and condition is working but it ignored when checking all conditions, even if all conditions is true and lua condition (resultLua) is false, the function still performed.
Coding on C# on 3.3.5

Thanks in Advance

  • 2 weeks later...

Face target:

// Face target
if (!ObjectManager.Me.IsFacing(target.Position))
{
   MovementManager.Face(target);
}


Target with Z position:

Vector3 testTarget = ObjectManager.Me.TargetObject.Position;
testTarget.Z = testTarget.Z + 10;

!TraceLine.TraceLineGo(testTarget)

About the API: Short answer... there is no documentation and i think there will be no one, you need to check the libs and try and error. A big issue if you ask me.

The last question i don't understand, i don't know the condition "counter spell", sorry for that.
if you want to interrupt a spell this could be an example for it:

WoWUnit target = ObjectManager.Me.TargetObject;
Spell interruptSpell = new Spell("SpellName");
Spell targetSpell = target?.CastingSpell;

// Validate target and spell
if(ObjectManager.Me.HasTarget && target.IsCast && target?.CastingSpell.Name == "SpellName")
{
   // Interrup if specified time is left and interrupt spell is ready
   if(target.CastingTimeLeft <= (targetSpell.CastTime - 2) && interruptSpell.IsSpellUsable)
   {
      // Interrupt
      interruptSpell.Launch();
   }
}

Never tested, written right out of the mind. I would recommend to change the CastingSpell.Name to ingame name or ID.

Hope i could help you out a bit.

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.