promotional bannermobile promotional banner
premium banner
Blocky Buffet is a WoW Classic addon with a draggable button that auto-detects the best food and drink in your bags and consumes both in one click. It tracks eating/drinking buffs, warns on low supplies, supports keybinds, and hides in combat.

Description

Blocky Buffet is a World of Warcraft Classic addon (v5.1.1) by Toomasu that streamlines out-of-combat recovery by automating food and drink usage through a single, customizable on-screen button.


## Features

Updated: CTRL+scroll anywhere on the tooltip to resize.

Also, added an "Automatic Resolution Scaler" so the tooltip renders according to your current resolution.

Core Functionality

Smart Bag Scanning Blocky Buffet automatically scans all your bags (slots 0–4) to find the best available food and drink. It identifies consumables by tooltip inspection — anything that restores Health is classified as food, and anything that restores Mana is classified as drink. Among all qualifying items, it always selects the highest item-level option, ensuring you're always using the most efficient consumable available.

One-Click Eat & Drink A left-click on the button uses both your best food and best drink simultaneously (if needed). It intelligently checks your current HP and mana percentages and only uses items you actually need — so if you're full on health but low on mana, it only drinks. It also checks for existing eating/drinking buffs to avoid interrupting an ongoing consumption.


The Button

Dynamic Label The button text updates in real time to reflect your current state:

  • "Eat & Drink" — ready to consume
  • "Eating..." / "Drinking..." / "Eating & Drinking..." — currently consuming
  • "[Name] is Full!" — no action needed
  • "No Food/Drink" — nothing usable found in bags

Draggable & Resizable The button frame can be freely dragged around the screen. Holding Ctrl and scrolling the mouse wheel resizes it, maintaining its aspect ratio. Position and size are saved per character and restored on login.

Lockable Right-clicking the button toggles the frame lock. When locked, it cannot be accidentally moved. A chat message confirms the lock state each time.


Tooltip

Hovering over the button shows a rich custom tooltip displaying:

  • Your best food and drink (with stack counts)
  • Current HP% and Mana%
  • Whether combat hiding is on or off
  • Your configured keybind
  • Interactive low-supply warning sliders (scroll to adjust thresholds)
  • A full command reference

Low Supply Warnings

Blocky Buffet tracks how many of your best food and drink items you have. When the count drops at or below a configurable threshold (default: 20), it fires a warning message in chat and briefly flashes the button red. It continues warning every 5 uses while you remain below the threshold, and resets once you restock.


Combat Behavior

By default, the button fades out when you enter combat and fades back in when combat ends. This behavior can be toggled on or off with /bb hide. The button never attempts to eat or drink while in combat.


Keybind Support

A keyboard shortcut can be bound directly to the button via /bb key [KEY] (e.g. /bb key F5). This uses the secure WoW binding system so it never taints the protected action environment. The binding is saved per character.


Slash Commands

Command Effect
/bb Clears cache, rescans bags, prints food/drink status
/bb hide Toggles combat hide on/off
/bb key X Sets a keybind (e.g. /bb key F5)
/bb key Clears the keybind
/bb warn f # Sets food warning threshold (10–200)
/bb warn d # Sets drink warning threshold (10–200)
/bb reset Resets the button to its default size and position

Technical Notes

  • Uses SecureActionButtonTemplate with a PreClick macro approach so item usage is never tainted by Lua and works reliably in all situations.
  • Item cache is debounced (0.1s) on bag updates to avoid unnecessary rescans. Conjured items (e.g. Mage food/water) are handled with escalating cache retries (0.1s → 0.3s) so they register almost instantly after conjuring.
  • Eating and drinking state is tracked via aura scanning (UnitBuff) rather than relying on events alone, keeping the button label accurate at all times.
  • All settings (position, size, lock state, keybind, warn thresholds, combat hide) are saved as SavedVariablesPerCharacter, so each character has its own independent configuration.