Since the last update my mouse over stack splitting macro doesn’t work anymore…
/run local x=GetMouseFocus();local b,s,c=x:GetParent():GetID(),x:GetID(),C_Container;c.SplitContainerItem(b,s,1)for i=0,4 do for j=1,c.GetContainerNumSlots(i)do if not c.GetContainerItemID(i,j)then c.PickupContainerItem(i,j)end end end
This was a very important macro for me. And I think it is ridiculous that I have to spend a long time researching an alternative to something that has worked for literally years…
You do Realize how irrelevant your comment is? Like I said, the macro was working for literally years, before this recent update… Now it doesn’t work… If you don’t have a solution or suggestion then maybe keep your completely useless comments to yourself.
I didn’t make the post so i could get someone to tell me the sky is blue… I made the post to gauge if anyone else has experienced this issue and/or if anyone has a solution to the issue. I want a mouse over macro that i can press, while hovering my cursor over a stack of items that splits it into singles. So instead of having to shift-rightclick -then- left click and drag 20 times , all I had to do was hover over a stack and press this macro X times to split in into singles. . .
Hi Babuchi! This is an interesting macro. I haven’t really messed around with these sorts of macros before, so I wasn’t immediately sure what you meant, and had to play around a bit, but I think I’ve figured out what’s going on.
I did a bit of a search online to find similar macros, and realized (I guess what’s pretty obvious from your title also) that you just want to be able to mouseover a stack of items in inventory, click a macro and have it place 1 from the stack in inventory separately, each time it is clicked.
Anyway, I tried assigning some variables and printing them to the console via a macro, and wasn’t getting any output for GetMouseFocus(), and I found some interesting information that the API had been updated/changed to now use GetMouseFoci().
You can pretty much just replace GetMouseFocus in your macro with a function call to GetMouseFoci at the first item returned in that list GetMouseFoci()[1], which means something like this should work for you:
/run local x=GetMouseFoci()[1]; local b,s,c=x:GetParent():GetID(), x:GetID(), C_Container; c.SplitContainerItem(b,s,1) for i=0,4 do for j=1, c.GetContainerNumSlots(i) do if not c.GetContainerItemID(i,j) then c.PickupContainerItem(i,j) end end end
There is a UI & Macros section on the forums where knowledgeable people may be of help, for future reference.
Here’s some information about the API changes that came with patch 11.0.0, if you’re interested: