Jump to content

Rogue Poisons/Item usage


Recommended Posts

Rogue poisons later turned into a buff, on 3.3.5 they're an item that applies to a weapon and the weapon is displayed as the buff, how do you modify the fight class to compensate for this?

Link to comment
Share on other sites

otherwise you can make a LUA Script just edit the 3rd line with your poison

 

if applypoison and GetTime() - applypoison > 4 then applypoison = nil end
if UnitAffectingCombat("player") == nil and applypoison == nil then

local activepoisons = { "Instant Poison", "Deadly Poison" }
local _,poisonMH,_,_,poisonOH,_,_,poisonTR = GetWeaponEnchantInfo()
applypoison = GetTime()

if poisonMH == nil then 
  UseItemByName(activepoisons[1],"player") 
  if SpellIsTargeting() then PickupInventoryItem(16) end
elseif poisonOH == nil then
  UseItemByName(activepoisons[2],"player") 
  if SpellIsTargeting() then PickupInventoryItem(17) end
end

end

 

Link to comment
Share on other sites

Other method, but i think thats a bit shady, you can use the Macro function in the Bot.
Tested it myself it works.

Macros


MainHand

#showtooltip 
/use Instant Poison IX
/use 16
/click StaticPopup1Button1

OffHand

#showtooltip 
/use Deadly Poison IX
/use 17
/click StaticPopup1Button1



4d6d1abc7f.png
 

Link to comment
Share on other sites

Interesting solution, I'll probably use that for now, thanks dreamful.

Having it in the fight class would be preferable, we'll see if Droidz gives us a solution while we use your workaround. 

Link to comment
Share on other sites

  • 6 months later...

Hello All,

I stumbled upon this and found that it didn't have a solution.

It turns out you just have to put multiple lines of "RunMacroText" in the same "Not spell, is lua script"

RunMacroText("/use Instant Poison")
RunMacroText("/use 16")

The problem I'm running into is getting the bot to identify the buff - I've tried many things and it just wants to cast the darn thing over and over.

Thanks,

Link to comment
Share on other sites

  • 10 months later...
On 19/1/2016 at 1:49 PM, Dreamful said:

Other method, but i think thats a bit shady, you can use the Macro function in the Bot.
Tested it myself it works.

Macros


MainHand

#showtooltip 
/use Instant Poison IX
/use 16
/click StaticPopup1Button1

OffHand

#showtooltip 
/use Deadly Poison IX
/use 17
/click StaticPopup1Button1



4d6d1abc7f.png
 

I tried this method, once you start the bot it correctly runs the macro(s) but I think if after X seconds doesn't always refresh poisons (maybe its in combat, maybe someone kicked you, maybe you are mounted) and so the bot "looses" the turn and waits another X seconds to re-apply. Can anyone confirm this?

Link to comment
Share on other sites

  • 1 month later...
  • 4 weeks later...
On 19/7/2017 at 0:48 AM, Degix said:

Hi, I had the same problem and developed a Plugin for this process. 

Search for 'EasyPoison'. :) 

Hello, I'm trying your plugin on Battleground but doesn't work. In the settings i put in the fields "Wound Poison" and "Crippling Poison" with quotemarks, but it doesn't apply them. I tried without quotemarks and it says it "maybe no items in bag", so I assume the quotemarks are necessary.

I read the lua code and if I'm not wrong it doesn't apply if is mounted or is moving or is in combat. So I tried to manually dismount while out of combat, to see if it will apply poison but nothing, it runs by feet a bit without mount then stop, and mount again. I was hoping that the moment he stops he would apply poisons before mounting but doesn't happen. Same for when I start the bot while standing still, out of combat. It takes a while to start, then the first thing it does is mounting..

Any idea about what could be the reason? I don't see any "print" white message in chat so I assume the settings are ok.

Link to comment
Share on other sites

  • 1 year later...
        if (!ObjectManager.Me.HaveBuff(Rogue.CurrentSetting.p1) && ItemsManager.GetItemCountByNameLUA(Rogue.CurrentSetting.p1) < 1 && !(Rogue.CurrentSetting.p1 == string.Empty))
        {
            ItemsManager.UseItem(Rogue.CurrentSetting.p1);
            Thread.Sleep(10);
            Lua.LuaDoString("/click PickupInventoryItem(16)");
            Thread.Sleep(5000);
            return;
        }

        if (!ObjectManager.Me.HaveBuff(Rogue.CurrentSetting.p2) && ItemsManager.GetItemCountByNameLUA(Rogue.CurrentSetting.p2) < 1 && !(Rogue.CurrentSetting.p2 == string.Empty))
        {
            ItemsManager.UseItem(Rogue.CurrentSetting.p2);
            Thread.Sleep(10);
            Lua.LuaDoString("/click PickupInventoryItem(17)");
            Thread.Sleep(5000);
            return;
        }

 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...