/Tukui/modules/unitframes/core/oUF/blizzard.lua

http://github.com/Asphyxia/Tukui · Lua · 92 lines · 80 code · 10 blank · 2 comment · 30 complexity · 19c81bfb4488fff870bea5b070681f7e MD5 · raw file

  1. local parent, ns = ...
  2. local oUF = ns.oUF
  3. local HandleFrame = function(baseName)
  4. local frame
  5. if(type(baseName) == 'string') then
  6. frame = _G[baseName]
  7. else
  8. frame = baseName
  9. end
  10. if(frame) then
  11. frame:UnregisterAllEvents()
  12. frame.Show = frame.Hide
  13. frame:Hide()
  14. local health = frame.healthbar
  15. if(health) then
  16. health:UnregisterAllEvents()
  17. end
  18. local power = frame.manabar
  19. if(power) then
  20. power:UnregisterAllEvents()
  21. end
  22. local spell = frame.spellbar
  23. if(spell) then
  24. spell:UnregisterAllEvents()
  25. end
  26. local altpowerbar = frame.powerBarAlt
  27. if(altpowerbar) then
  28. altpowerbar:UnregisterAllEvents()
  29. end
  30. end
  31. end
  32. function oUF:DisableBlizzard(unit)
  33. if(not unit) then return end
  34. if(unit == 'player') then
  35. HandleFrame(PlayerFrame)
  36. -- For the damn vehicle support:
  37. PlayerFrame:RegisterEvent('UNIT_ENTERING_VEHICLE')
  38. PlayerFrame:RegisterEvent('UNIT_ENTERED_VEHICLE')
  39. PlayerFrame:RegisterEvent('UNIT_EXITING_VEHICLE')
  40. PlayerFrame:RegisterEvent('UNIT_EXITED_VEHICLE')
  41. elseif(unit == 'pet') then
  42. HandleFrame(PetFrame)
  43. elseif(unit == 'target') then
  44. HandleFrame(TargetFrame)
  45. HandleFrame(ComboFrame)
  46. elseif(unit == 'focus') then
  47. HandleFrame(FocusFrame)
  48. HandleFrame(TargetofFocusFrame)
  49. elseif(unit == 'targettarget') then
  50. HandleFrame(TargetFrameToT)
  51. elseif(unit:match'(boss)%d?$' == 'boss') then
  52. local id = unit:match'boss(%d)'
  53. if(id) then
  54. HandleFrame('Boss' .. id .. 'TargetFrame')
  55. else
  56. for i=1, 4 do
  57. HandleFrame(('Boss%dTargetFrame'):format(i))
  58. end
  59. end
  60. elseif(unit:match'(party)%d?$' == 'party') then
  61. local id = unit:match'party(%d)'
  62. if(id) then
  63. HandleFrame('PartyMemberFrame' .. id)
  64. else
  65. for i=1, 4 do
  66. HandleFrame(('PartyMemberFrame%d'):format(i))
  67. end
  68. end
  69. elseif(unit:match'(arena)%d?$' == 'arena') then
  70. local id = unit:match'arena(%d)'
  71. if(id) then
  72. HandleFrame('ArenaEnemyFrame' .. id)
  73. else
  74. for i=1, 4 do
  75. HandleFrame(('ArenaEnemyFrame%d'):format(i))
  76. end
  77. end
  78. -- Blizzard_ArenaUI should not be loaded
  79. Arena_LoadUI = function() end
  80. SetCVar('showArenaEnemyFrames', '0', 'SHOW_ARENA_ENEMY_FRAMES_TEXT')
  81. end
  82. end