Download
(2 Kb)
Download
Updated: 09-21-12 08:54 AM
Compatibility:
Mists of Pandaria (5.0.4)
Updated:09-21-12 08:54 AM
Created:08-18-12 08:40 AM
Downloads:862
Favorites:7
MD5:
Bulk Buy
Version: 1.02
by: Choonstertwo [More]
Bulk Buy lets you buy vendor items in quantities greater than a single stack using the default stack split frame (shown when you shift-click on a vendor item). Version 1.01 adds support for bulk buying of items that cost currencies other than gold.

This includes both stackable (e.g. buying 50 Weak Flux, which stacks in lots of 20) and non-stackable items (e.g. buying 5 Mining Picks at once even though they don't stack).

There is no in-game configuration, but if for some odd reason you need to buy more than 10,000 of an item at once you can edit the MAX_STACK number at the top of the core.lua file to raise the limit.

Bulk Buy was inspired by an AddOn with very similar functionality I used a long time ago whose name I can't remember. I couldn't find this AddOn on WoW Interface or Curse, so I decided to recreate its functionality myself. Although the functionality is borrowed, the code itself is completely my own work.



Click here to lend your support!
1.02
  • Buying items that cost proper currencies like Justice Points should now be fixed. This issue wasn't affecting items bought with other items like Inks from the Ink Trader.
1.01
  • Added support for bulk buying items that cost non-gold currencies.
Optional Files (0)


Archived Files (2)
File Name
Version
Size
Author
Date
1.01
2kB
Choonstertwo
09-21-12 06:01 AM
1.0
1kB
Choonstertwo
08-18-12 08:40 AM


Post A Reply Comment Options
Unread 09-21-12, 10:13 AM  
Angrysteel
A Murloc Raider

Forum posts: 6
File comments: 205
Uploads: 0
Originally Posted by Choonstertwo
Originally Posted by Angrysteel
Thanks for the quick fix, will try it out after it gets approved and we are able to DL it
If you want to try it out now, I've posted the code for 1.02 in a Gist here. Just overwrite your core.lua file with it.

I recommend you replace it with the downloaded version once it's approved.
Thanks, changes worked out well. No errors at all. Bought some VP stuff, and honor gear.
Angrysteel is offline Report comment to moderator  
Reply With Quote
Unread 09-21-12, 09:57 AM  
Choonstertwo
A Cliff Giant
 
Choonstertwo's Avatar
AddOn Author - Click to view AddOns

Forum posts: 71
File comments: 62
Uploads: 28
Originally Posted by Angrysteel
Thanks for the quick fix, will try it out after it gets approved and we are able to DL it
If you want to try it out now, I've posted the code for 1.02 in a Gist here. Just overwrite your core.lua file with it.

I recommend you replace it with the downloaded version once it's approved.
Choonstertwo is online now Report comment to moderator  
Reply With Quote
Unread 09-21-12, 08:59 AM  
Angrysteel
A Murloc Raider

Forum posts: 6
File comments: 205
Uploads: 0
Thanks for the quick fix, will try it out after it gets approved and we are able to DL it
Angrysteel is offline Report comment to moderator  
Reply With Quote
Unread 09-21-12, 08:58 AM  
Choonstertwo
A Cliff Giant
 
Choonstertwo's Avatar
AddOn Author - Click to view AddOns

Forum posts: 71
File comments: 62
Uploads: 28
1.02

I've just released 1.02 which should fix this issue. Thanks for the report.
Choonstertwo is online now Report comment to moderator  
Reply With Quote
Unread 09-21-12, 08:35 AM  
Angrysteel
A Murloc Raider

Forum posts: 6
File comments: 205
Uploads: 0
Double checked the error with all addons shut off except Bulk Buy.

I now get a longer error message, with all other addons disabled. New error:

Code:
Message: Interface\AddOns\BulkBuy\core.lua:10: attempt to compare number with nil
Time: 09/21/12 09:33:51
Count: 1
Stack: Interface\AddOns\BulkBuy\core.lua:10: in function `BulkBuyMerchantItem'
Interface\AddOns\BulkBuy\core.lua:36: in function `OnAccept'
Interface\FrameXML\StaticPopup.lua:3827: in function `StaticPopup_OnClick'
[string "*:OnClick"]:1: in function <[string "*:OnClick"]:1>

Locals: slot = 26
amount = nil
stackSize = 1
(*temporary) = 26
(*temporary) = 1
(*temporary) = nil
(*temporary) = "attempt to compare number with nil"
EDIT: Also tried to buy other items with justice points, same error as above. Tried to turn in tier tokens, also a no go. All the same error.
Last edited by Angrysteel : 09-21-12 at 08:43 AM.
Angrysteel is offline Report comment to moderator  
Reply With Quote
Unread 09-21-12, 08:30 AM  
Angrysteel
A Murloc Raider

Forum posts: 6
File comments: 205
Uploads: 0
That was the entire error from Blizzards Lua errors.

I installed Bugsack / Bug Grabber and it was the same.

Code:
1x BulkBuy-1.01\core.lua:10: attempt to compare number with nil
BulkBuy-1.01\core.lua:10: in function "BulkBuyMerchantItem"
BulkBuy-1.01\core.lua:36: in function "OnAccept"
FrameXML\StaticPopup.lua:3827: in function "StaticPopup_OnClick"
<string>:"*:OnClick":1: in function <string>:"*:OnClick":1

Locals:
That is from Bug Sack.
Angrysteel is offline Report comment to moderator  
Reply With Quote
Unread 09-21-12, 08:11 AM  
Choonstertwo
A Cliff Giant
 
Choonstertwo's Avatar
AddOn Author - Click to view AddOns

Forum posts: 71
File comments: 62
Uploads: 28
Originally Posted by Angrysteel
Vendor = Zulna in Org - <Justice Heirlooms>

Item = Burnished Warden Staff

Output:
Code:
[08:45]<Button:MerchantItem6ItemButton
[08:45]    CanChangeAttribute() => 1,
[08:45]    CanChangeProtectedState() => 1,
[08:45]    count = 1,
[08:45]    extendedCost = true,
[08:45]    GetAlpha() => 1,
[08:45]    GetAnimationGroups() => nil,
[08:45]    GetBackdrop() => nil,
[08:45]    GetBackdropBorderColor() => nil,
[08:45]    GetBackdropColor() => nil,
[08:45]    GetBottom() => 442,
[08:45]    GetBoundsRect() => 178.50003051758, 427.49996948242, 64, 64.000022888184,
[08:45]    GetButtonState() => "NORMAL",
[08:45]    GetCenter() => 210.50001525879, 460.5,
[08:45]    GetChildren() => nil,
[08:45]    GetClampRectInsets() => 0, 0, 0, 0,
[08:45]    GetDepth() => 0,
[08:45]    GetDisabledFontObject() => nil,
[08:45]    GetDisabledTexture() => nil,
[08:45]    GetDontSavePosition() => nil,
[08:45]    GetEffectiveAlpha() => 1,
[08:45]    GetEffectiveDepth() => 1,
[08:45]    GetEffectiveScale() => 1,
[08:45]    GetFontString() => nil,
[08:45]    GetFrameLevel() => 21,
[08:45]    GetFrameStrata() => "MEDIUM",
[08:45]    GetHeight() => 36.999988555908,
[08:45]    GetHighlightFontObject() => nil,
[08:45]    GetHighlightTexture() => <Texture:(anon)>,
[08:45]    GetHitRectInsets() => 0, 0, 0, 0,
[08:45]    GetID() => 26,
[08:45]    GetLeft() => 192.00001525879,
[08:45]    GetMaxResize() => 0, 0,
[08:45]    GetMinResize() => 0, 0,
[08:45]    GetMotionScriptsWhileDisabled() => false,
[08:45]    GetName() => "MerchantItem6ItemButton",
[08:45]    GetNormalFontObject() => nil,
[08:45]    GetNormalTexture() => <Texture:MerchantItem6ItemButtonNormalTexture>,
[08:45]    GetNumChildren() => 0,
[08:45]    GetNumPoints() => 1,
[08:45]    GetNumRegions() => 7,
[08:45]    GetObjectType() => "Button",
[08:45]    GetParent() => <Frame:MerchantItem6>,
[08:45]    GetPoint(1) => "TOPLEFT", <Frame:MerchantItem6>, "TOPLEFT", 0, 0,
[08:45]    GetPropagateKeyboardInput() => false,
[08:47]    GetPushedTextOffset() => 1.5670927762985, -1.5670927762985,
[08:47]    GetPushedTexture() => <Texture:(anon)>,
[08:47]    GetRect() => 192.00001525879, 442, 37, 36.999988555908,
[08:47]    GetRegions() => <Texture:MerchantItem6ItemButtonIconTexture>, <FontString:MerchantItem6ItemButtonCount>, <FontString:MerchantItem6ItemButtonStock>, <Texture:MerchantItem6ItemButtonSearchOverlay>, <Texture:MerchantItem6ItemButtonNormalTexture>, <Texture:(anon)>, <Texture:(anon)>,
[08:47]    GetRight() => 229.00001525879,
[08:47]    GetScale() => 1,
[08:47]    GetSize() => 37, 36.999988555908,
[08:47]    GetText() => nil,
[08:47]    GetTextHeight() => 0,
[08:47]    GetTextWidth() => 0,
[08:47]    GetTitleRegion() => nil,
[08:47]    GetTop() => 479,
[08:47]    GetWidth() => 37,
[08:47]    hasItem = true,
[08:47]    icon = <Texture:MerchantItem6ItemButtonIconTexture>,
[08:47]    IsClampedToScreen() => nil,
[08:47]    IsDragging() => false,
[08:47]    IsEnabled() => 1,
[08:47]    IsIgnoringDepth() => nil,
[08:47]    IsJoystickEnabled() => nil,
[08:47]    IsKeyboardEnabled() => nil,
[08:47]    IsMouseEnabled() => 1,
[08:47]    IsMouseOver() => true,
[08:47]    IsMouseWheelEnabled() => nil,
[08:47]    IsMovable() => nil,
[08:47]    IsProtected() => nil, nil,
[08:47]    IsResizable() => nil,
[08:47]    IsShown() => 1,
[08:47]    IsToplevel() => nil,
[08:47]    IsUserPlaced() => nil,
[08:47]    IsVisible() => 1,
[08:47]    link = "|cffe6cc80|Hitem:79131:0:0:0:0:0:0:0:85:0:0|h[Burnished Warden Staff]|h|r",
[08:47]    name = "Burnished Warden Staff",
[08:47]    numInStock = -1,
[08:47]    searchOverlay = <Texture:MerchantItem6ItemButtonSearchOverlay>,
[08:47]    SplitStack = function: 000000001E8C96D0,
[08:47]    texture = "Interface\\Icons\\INV_Staff_29",
[08:47]    UpdateTooltip = function: 0000000034857330
[08:47]>
This happens while trying to buy any Hierloom Item.

This also happens when trying to buy any pvp items (tried about 10 different items).
Was there any more to the error than you posted? If so, can you post the full error?
Choonstertwo is online now Report comment to moderator  
Reply With Quote
Unread 09-21-12, 07:48 AM  
Angrysteel
A Murloc Raider

Forum posts: 6
File comments: 205
Uploads: 0
Vendor = Zulna in Org - <Justice Heirlooms>

Item = Burnished Warden Staff

Output:
Code:
[08:45]<Button:MerchantItem6ItemButton
[08:45]    CanChangeAttribute() => 1,
[08:45]    CanChangeProtectedState() => 1,
[08:45]    count = 1,
[08:45]    extendedCost = true,
[08:45]    GetAlpha() => 1,
[08:45]    GetAnimationGroups() => nil,
[08:45]    GetBackdrop() => nil,
[08:45]    GetBackdropBorderColor() => nil,
[08:45]    GetBackdropColor() => nil,
[08:45]    GetBottom() => 442,
[08:45]    GetBoundsRect() => 178.50003051758, 427.49996948242, 64, 64.000022888184,
[08:45]    GetButtonState() => "NORMAL",
[08:45]    GetCenter() => 210.50001525879, 460.5,
[08:45]    GetChildren() => nil,
[08:45]    GetClampRectInsets() => 0, 0, 0, 0,
[08:45]    GetDepth() => 0,
[08:45]    GetDisabledFontObject() => nil,
[08:45]    GetDisabledTexture() => nil,
[08:45]    GetDontSavePosition() => nil,
[08:45]    GetEffectiveAlpha() => 1,
[08:45]    GetEffectiveDepth() => 1,
[08:45]    GetEffectiveScale() => 1,
[08:45]    GetFontString() => nil,
[08:45]    GetFrameLevel() => 21,
[08:45]    GetFrameStrata() => "MEDIUM",
[08:45]    GetHeight() => 36.999988555908,
[08:45]    GetHighlightFontObject() => nil,
[08:45]    GetHighlightTexture() => <Texture:(anon)>,
[08:45]    GetHitRectInsets() => 0, 0, 0, 0,
[08:45]    GetID() => 26,
[08:45]    GetLeft() => 192.00001525879,
[08:45]    GetMaxResize() => 0, 0,
[08:45]    GetMinResize() => 0, 0,
[08:45]    GetMotionScriptsWhileDisabled() => false,
[08:45]    GetName() => "MerchantItem6ItemButton",
[08:45]    GetNormalFontObject() => nil,
[08:45]    GetNormalTexture() => <Texture:MerchantItem6ItemButtonNormalTexture>,
[08:45]    GetNumChildren() => 0,
[08:45]    GetNumPoints() => 1,
[08:45]    GetNumRegions() => 7,
[08:45]    GetObjectType() => "Button",
[08:45]    GetParent() => <Frame:MerchantItem6>,
[08:45]    GetPoint(1) => "TOPLEFT", <Frame:MerchantItem6>, "TOPLEFT", 0, 0,
[08:45]    GetPropagateKeyboardInput() => false,
[08:47]    GetPushedTextOffset() => 1.5670927762985, -1.5670927762985,
[08:47]    GetPushedTexture() => <Texture:(anon)>,
[08:47]    GetRect() => 192.00001525879, 442, 37, 36.999988555908,
[08:47]    GetRegions() => <Texture:MerchantItem6ItemButtonIconTexture>, <FontString:MerchantItem6ItemButtonCount>, <FontString:MerchantItem6ItemButtonStock>, <Texture:MerchantItem6ItemButtonSearchOverlay>, <Texture:MerchantItem6ItemButtonNormalTexture>, <Texture:(anon)>, <Texture:(anon)>,
[08:47]    GetRight() => 229.00001525879,
[08:47]    GetScale() => 1,
[08:47]    GetSize() => 37, 36.999988555908,
[08:47]    GetText() => nil,
[08:47]    GetTextHeight() => 0,
[08:47]    GetTextWidth() => 0,
[08:47]    GetTitleRegion() => nil,
[08:47]    GetTop() => 479,
[08:47]    GetWidth() => 37,
[08:47]    hasItem = true,
[08:47]    icon = <Texture:MerchantItem6ItemButtonIconTexture>,
[08:47]    IsClampedToScreen() => nil,
[08:47]    IsDragging() => false,
[08:47]    IsEnabled() => 1,
[08:47]    IsIgnoringDepth() => nil,
[08:47]    IsJoystickEnabled() => nil,
[08:47]    IsKeyboardEnabled() => nil,
[08:47]    IsMouseEnabled() => 1,
[08:47]    IsMouseOver() => true,
[08:47]    IsMouseWheelEnabled() => nil,
[08:47]    IsMovable() => nil,
[08:47]    IsProtected() => nil, nil,
[08:47]    IsResizable() => nil,
[08:47]    IsShown() => 1,
[08:47]    IsToplevel() => nil,
[08:47]    IsUserPlaced() => nil,
[08:47]    IsVisible() => 1,
[08:47]    link = "|cffe6cc80|Hitem:79131:0:0:0:0:0:0:0:85:0:0|h[Burnished Warden Staff]|h|r",
[08:47]    name = "Burnished Warden Staff",
[08:47]    numInStock = -1,
[08:47]    searchOverlay = <Texture:MerchantItem6ItemButtonSearchOverlay>,
[08:47]    SplitStack = function: 000000001E8C96D0,
[08:47]    texture = "Interface\\Icons\\INV_Staff_29",
[08:47]    UpdateTooltip = function: 0000000034857330
[08:47]>
This happens while trying to buy any Hierloom Item.

This also happens when trying to buy any pvp items (tried about 10 different items).
Last edited by Angrysteel : 09-21-12 at 07:52 AM.
Angrysteel is offline Report comment to moderator  
Reply With Quote
Unread 09-21-12, 07:32 AM  
Choonstertwo
A Cliff Giant
 
Choonstertwo's Avatar
AddOn Author - Click to view AddOns

Forum posts: 71
File comments: 62
Uploads: 28
Originally Posted by Choonstertwo
Originally Posted by Angrysteel
Message: Interface\AddOns\BulkBuy\core.lua:10: attempt to compare number with nil
Time: 09/21/12 08:09:06
Count: 1
Stack: [C]: ?
Interface\AddOns\BulkBuy\core.lua:10: in function `BulkBuyMerchantItem'
Interface\AddOns\BulkBuy\core.lua:36: in function `OnAccept'
Interface\FrameXML\StaticPopup.lua:3827: in function `StaticPopup_OnClick'
[string "*:OnClick"]:1: in function <[string "*:OnClick"]:1>

Locals:

Got this error when trying to buy a heirloom item.
Thanks for the report, I'll look into this now.
Which item were you trying to buy and from what vendor? What output do you get when you mouseover the item icon and run this? /dump GetMouseFocus()
Choonstertwo is online now Report comment to moderator  
Reply With Quote
Unread 09-21-12, 07:21 AM  
Choonstertwo
A Cliff Giant
 
Choonstertwo's Avatar
AddOn Author - Click to view AddOns

Forum posts: 71
File comments: 62
Uploads: 28
Originally Posted by Angrysteel
Message: Interface\AddOns\BulkBuy\core.lua:10: attempt to compare number with nil
Time: 09/21/12 08:09:06
Count: 1
Stack: [C]: ?
Interface\AddOns\BulkBuy\core.lua:10: in function `BulkBuyMerchantItem'
Interface\AddOns\BulkBuy\core.lua:36: in function `OnAccept'
Interface\FrameXML\StaticPopup.lua:3827: in function `StaticPopup_OnClick'
[string "*:OnClick"]:1: in function <[string "*:OnClick"]:1>

Locals:

Got this error when trying to buy a heirloom item.
Thanks for the report, I'll look into this now.
Choonstertwo is online now Report comment to moderator  
Reply With Quote
Unread 09-21-12, 07:09 AM  
Angrysteel
A Murloc Raider

Forum posts: 6
File comments: 205
Uploads: 0
Message: Interface\AddOns\BulkBuy\core.lua:10: attempt to compare number with nil
Time: 09/21/12 08:09:06
Count: 1
Stack: [C]: ?
Interface\AddOns\BulkBuy\core.lua:10: in function `BulkBuyMerchantItem'
Interface\AddOns\BulkBuy\core.lua:36: in function `OnAccept'
Interface\FrameXML\StaticPopup.lua:3827: in function `StaticPopup_OnClick'
[string "*:OnClick"]:1: in function <[string "*:OnClick"]:1>

Locals:

Got this error when trying to buy a heirloom item.
Last edited by Angrysteel : 09-21-12 at 07:12 AM.
Angrysteel is offline Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: