promotional bannermobile promotional banner

Bazooka

Data Broker Display similar to FuBar
Back to Files

v3.6.0

File nameBazooka-v3.6.0.zip
Uploader
mitchnullmitchnull
Uploaded
Oct 18, 2026
Downloads
2.4K
Size
186.8 KB
Flavors
MoP ClassicRetailClassic TBCClassicForever
File ID
9238384
Type
R
Release
Supported game versions
  • 12.1.5
  • 12.1.0
  • 5.5.4
  • 2.5.6
  • 1.60.1
  • 1.15.9

What's new

Bazooka

v3.6.0 (2026-10-18)

Full Changelog

  • remove redundant flag fiddling
  • Cut redundant work on hover, combat and layout paths
    • Modifier key presses while hovering a plugin no longer rebuild its
      tooltip (OnLeave + OnEnter) unless it matters: manual tooltips, or
      switching from the Alt simple tip back to the plugin's tip
    • Plugin:applySettings() renders and lays out the text once instead of
      up to 5 times (matters at login, profile change and font-metric fix)
    • globalSettingsChanged() no longer measures the text twice
    • Bar width sums use the plugin widths cached by updateLayout() instead
      of querying frame rects; center frame width only set when changed
    • Bar/plugin toggleMouse() skip EnableMouse calls when state is
      unchanged (runs for every bar and plugin on combat start/end)
    • closeStaticDialog() skips StaticPopup_Hide() when the dialog is not
      shown (runs on every combat start via lock())
      Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • Fix cross-flavor bugs found in review
    • Don't replace BackdropTemplate's OnSizeChanged handler (hook it instead):
      setting/clearing it broke backdrop texture coords when bars were resized
    • Gradient: use the backdrop's Center texture, GetTexture() returns a file
      id on current clients so the path lookup never matched
    • Register pet battle events wherever they exist (MoP Classic), not just
      on mainline
    • Unlock again after a pet battle (it locked until the next combat ended)
    • Drop leftover bars when switching to a profile with fewer bars; they were
      still used as drop targets and listed in the plugins' bar selection
    • getDropPlace(): don't error when every bar is hidden
    • Reset icon tex coords/vertex color when iconCoords/iconR are cleared or the
      border clip is set back to 0
    • Guard GetAddOnInfo() for unknown tocname, fall back to the default font
      path when a bar has none
    • Don't strip colors from / lay out by secret values (12.0)
    • Options: open the settings panel on classic flavors too (category ids are
      strings there, only numeric ids were opened); remove duplicate table
      Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com
  • Refactor hot paths and deduplicate core logic
    Performance:
    • Plugin:setText() builds its output from cached format strings and a
      reused argument table instead of a 90-line branch tree
    • Plugin:updateLayout() only re-anchors the icon/text when alignment or
      offset actually changes (it runs on every LDB text update)
    • Coalesce plugin options rebuilds triggered by data object creation into
      one per frame (was one full rebuild + sort per plugin during login)
    • forceHideFrames() iterates UIParent children in a loop instead of
      recursing over varargs
      Fixes:
    • Gradient backgrounds use Texture:SetGradient() when SetGradientAlpha()
      is not available (removed in 10.0)
      Maintainability:
    • Shared Bar:applyCombatState() for combat enter/leave and enableAndShow()
    • isFadeEnabled()/isMouseDisabled() helpers replace duplicated branches
    • hideActiveTip() helper, simplified hideTip(), getTopBottom(), updateWidth()
    • Launcher/data source defaults derived from PluginDefaults
    • Remove unused locals
      Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com