Download
(20Kb)
Download
Compatible with Retail, Classic & TBC
Updated: 02-06-24 01:34 PM
Pictures
File Info
Compatibility:
Seeds of Renewal (10.2.5)
Classic (1.15.0)
WOTLK Patch (3.4.3)
Updated:02-06-24 01:34 PM
Created:01-09-10 06:41 PM
Downloads:85,536
Favorites:526
MD5:

tullaRange  Popular! (More than 5000 hits)

Version: 10.2.3
by: Tuller [More]

tullaRange is an addon that's main purpose is to make standard action buttons appear red when out of range. Colors for both the out of range indicator, and the out of mana/energy/rage indicator are customizable via the in game GUI.

Why use tullaRange over something like RedRange?
tullaRange is derived from RedRange. The main thing I do differently is that I replace each individual action button's OnUpdate handler with a single global one. The end result is that tullaRange uses less CPU than other implementations.

tullaRange release notes

10.2.3
  • Update TOCs for 1.15.1
  • Fixed an issue causing the options menu sliders to not render properly in Classic

10.2.2
  • Update TOCs for 10.2.5

10.2.1
  • Update TOCs for 3.4.3 and 1.15.0

10.2.0
  • Update TOCs for 10.2.0

10.1.8
  • Revert TOC back to 3.4.2

10.1.7
  • Update TOCs for 10.1.7, 3.4.3, and 1.14.4

10.1.6
  • Fix an issue causing acton buttons to be registered multiple times

10.1.5
  • Note: This version does not work on 10.1.0 realms (aka Retail)
  • (WoW 10.1.5) Rebuilt using the new ACTION_RANGE_CHECK_UPDATE event
  • (WoW 3.4.2) Fixed an error when loading the settings UI
  • Hotkeys are now colored red when an action is out of range, and white otherwise.
  • Pet actions now implement out of mana coloring

10.1.0
  • Update TOCs for World of Warcraft 10.1.0
  • Hook ActionBarActionButtonDerivedMixin, if it exists

10.0.11
  • Update TOCs for World of Warcraft 10.0.5

10.0.10
  • Update TOCs for World of Warcraft 3.4.1

10.0.9
  • Fix macro checks

10.0.8

10.0.7
  • Removed a leftover debug green background from the options menu

10.0.6
  • Apply Odjur's optimizations
  • Add desaturate to configuration settings
  • Add update frequency to internal configuration settings
  • Readjust UI to implement desaturate and opacity settings

10.0.5
  • No longer desaturating when unusable, just out of range or out of mana

10.0.4
  • Desaturate when recoloring abilities (thanks to Guema)

10.0.3
  • Updated TOC files for 10.0.2

10.0.2
  • Improve check for new Settings UI

10.0.1
  • Add support for 10.0.0

9.2.1
  • Updated TOC files for 9.2.5, 3.4.0, 2.5.4, and 1.14.3.

9.2.0
  • Updated TOC files for 9.2.0, 2.5.3, and 1.14.2.
  • Packaged the addon using multiple TOC files

9.1.1
  • Updated TOC files

9.1.0
  • Updated TOC files for 9.1.0

9.0.4
  • Add Burning Crusade Classic support

9.0.3
  • If you create a macro with a name that starts with #, tullaRange will now use spell cost checks to determine if the ability is usable (thanks merijn)
  • Updated TOCs for various wow versions

9.0.2
  • Updated TOC for 9.0.2

9.0.1
  • Fix a nil value exception when moving pet actions

9.0.0
  • Updated for World of Warcraft 9.0.1 - Shadowlands

8.3.2
  • Added support for pet action buttons. You can disable this via /run tullaRange:SetEnablePetActions(false)
  • Replaced the attack flash animation with a smoother one. You can disable this via /run tullaRange:SetEnableFlashAnimations(false)

8.3.1
  • Increase performance a bit by only updating attack actions and actions with a range

8.3.0
  • Update for WoW 8.3.0

8.2.7
  • Use a C_Timer.After handler for updates

8.2.6
  • Update classic TOC for 1.13.2
  • Update packager to use github actions

8.2.5
  • Updated TOC for 8.2.5

8.2.2
  • Added classic build

8.2.1
  • Automated releases

8.2.0
  • Updated TOC for 8.2.0
  • Verified the addon works with classic
  • Cleaned up code a tiny bit
Optional Files (1)
File Name
Version
Size
Author
Date
Type
10.1.5-beta2
19kB
05-22-23 05:56 AM
Patch


Archived Files (31)
File Name
Version
Size
Author
Date
10.2.2
20kB
Tuller
01-17-24 05:48 PM
10.2.1
20kB
Tuller
12-09-23 11:28 AM
10.2.0
20kB
Tuller
11-12-23 03:07 PM
10.1.8
20kB
Tuller
10-01-23 08:44 AM
10.1.7
20kB
Tuller
10-01-23 07:47 AM
10.1.6
20kB
Tuller
07-17-23 04:06 PM
10.1.5
20kB
Tuller
07-11-23 03:48 PM
10.1.0
17kB
Tuller
05-03-23 08:25 PM
10.0.11
17kB
Tuller
01-28-23 02:51 PM
10.0.10
17kB
Tuller
01-22-23 03:33 PM
10.0.9
17kB
Tuller
12-29-22 04:16 PM
10.0.8
17kB
Tuller
12-28-22 09:54 AM
10.0.7
16kB
Tuller
12-27-22 04:17 PM
10.0.6
16kB
Tuller
12-27-22 04:04 PM
10.0.5
16kB
Tuller
12-11-22 02:20 PM
10.0.4
16kB
Tuller
12-09-22 05:52 PM
10.0.3
16kB
Tuller
11-28-22 05:18 PM
10.0.2
16kB
Tuller
10-28-22 06:59 PM
10.0.1
16kB
Tuller
10-27-22 04:52 PM
9.2.1
15kB
Tuller
08-06-22 10:18 AM
9.2.0
15kB
Tuller
02-26-22 11:52 AM
9.1.5
14kB
Tuller
12-28-21 10:50 AM
9.1.0
13kB
Tuller
07-02-21 02:09 PM
9.1.0
13kB
Tuller
07-02-21 02:09 PM
9.1.0
13kB
Tuller
07-02-21 02:09 PM
9.0.4
13kB
Tuller
05-19-21 04:08 PM
9.0.4
13kB
Tuller
05-19-21 04:08 PM
9.0.4
13kB
Tuller
05-19-21 04:08 PM
9.0.3
13kB
Tuller
04-04-21 03:04 PM
9.0.3
13kB
Tuller
04-04-21 03:04 PM
9.0.3
13kB
Tuller
04-04-21 03:04 PM


Post A Reply Comment Options
Unread 08-08-14, 03:13 AM  
txamethyst
An Aku'mai Servant
 
txamethyst's Avatar

Forum posts: 36
File comments: 101
Uploads: 0
WOD beta version?

since the tiny red numbers in the corner are too small for me - well, it never hurts to ask.

i don't see logically why this mod shouldn't work with just the toc change. i absolutely admit i know not a lot about lua, just enough to make minor changes if i know exactly where to look.

thanks in advance for any help from anyone.
Report comment to moderator  
Reply With Quote
Unread 05-27-13, 03:42 AM  
lynce
A Cyclonian
 
lynce's Avatar

Forum posts: 48
File comments: 92
Uploads: 0
This has bothered me for some time now.

Code:
2x [ADDON_ACTION_BLOCKED] AddOn "tullaRange_Config" tried to call the protected function "CompactRaidFrame1:ClearAllPoints()".
!BugGrabber-r193-release\BugGrabber.lua:587: in function <!BugGrabber\BugGrabber.lua:587>
<in C code>
FrameXML\FlowContainer.lua:157: in function "FlowContainer_DoLayout"
FrameXML\FlowContainer.lua:17: in function "FlowContainer_ResumeUpdates"
Blizzard_CompactRaidFrameContainer.lua:185: in function "CompactRaidFrameContainer_LayoutFrames"
Blizzard_CompactRaidFrameContainer.lua:130: in function "CompactRaidFrameContainer_TryUpdate"
Blizzard_CompactRaidFrameContainer.lua:57: in function "CompactRaidFrameContainer_OnEvent"
<string>:"*:OnEvent":1: in function <string>:"*:OnEvent":1

Locals:
nil
I get different errors every time, but it always seems to be with FlowContainer or CompactRaidFrameContainer.

Ideas?
Report comment to moderator  
Reply With Quote
Unread 04-18-13, 06:00 PM  
Tuller
A Warpwood Thunder Caller
 
Tuller's Avatar
AddOn Author - Click to view AddOns

Forum posts: 91
File comments: 1740
Uploads: 17
Originally Posted by itrulia
don't know why button:SetScript('OnUpdate', nil) is used. It crashes many addons and tullarange works without it
Since tullaRange actually completely replaces the functionality that's normally called by the OnUpdate handler on action buttons, I disable the script handler to improve performance.

What addons are crashing because of it?
Report comment to moderator  
Reply With Quote
Unread 04-18-13, 02:19 PM  
itrulia
A Defias Bandit
AddOn Author - Click to view AddOns

Forum posts: 2
File comments: 3
Uploads: 1
don't know why button:SetScript('OnUpdate', nil) is used. It crashes many addons and tullarange works without it
Report comment to moderator  
Reply With Quote
Unread 10-14-12, 06:08 PM  
Pusikas
A Murloc Raider

Forum posts: 5
File comments: 98
Uploads: 0
Does not seem to check for Demonic Fury cost while in Metamorphosis. Does not color Soul Fire blue, even when I do not have the required 160 Demomic Fury.
Report comment to moderator  
Reply With Quote
Unread 10-08-12, 12:44 PM  
xromania™
A Frostmaul Preserver
 
xromania™'s Avatar

Forum posts: 284
File comments: 136
Uploads: 0
this is not working for me for the new MOP skills , i have a mage, for example Living bomb, Frost bomb and more...... im bugged or for u guys didnt work too?
__________________
*sry my english
http://eu.battle.net/wow/en/characte...romania/simple
Last edited by xromania™ : 10-08-12 at 12:45 PM.
Report comment to moderator  
Reply With Quote
Unread 08-30-12, 02:41 AM  
zork
A Pyroguard Emberseer
 
zork's Avatar
AddOn Author - Click to view AddOns

Forum posts: 1740
File comments: 3728
Uploads: 77
Just wanted to report. Tested it on MoP Beta and on WoW Patch 5.0.4.
No errors and working good.
__________________
| Simple is beautiful.
| WoWI AddOns | GitHub | Zork (WoW)

"I wonder what the non-pathetic people are doing tonight?" - Rajesh Koothrappali (The Big Bang Theory)
Report comment to moderator  
Reply With Quote
Unread 04-21-12, 02:49 PM  
Derpstar
A Kobold Labourer

Forum posts: 0
File comments: 6
Uploads: 0
Error

Im also getting this error. Not sure why. But it seems to be destroying my fps on these fights. Im not sure though :s Only getting it past couple of resets however.
Report comment to moderator  
Reply With Quote
Unread 12-21-11, 12:59 PM  
Lexdivina
A Kobold Labourer
 
Lexdivina's Avatar

Forum posts: 0
File comments: 1
Uploads: 0
Originally Posted by Tuller
What error message are you getting?
Hi, I've got the same problem on Ultraxxion and Madness of Deathwing.
Might be a bug with the " ExtraActionButton1 " in those encounters.

I'll try to copy/paste the bug message next time I'll go there.

BTW really nice addon, especially for Holy Power management :P

Code:
1490x tullaRange\tullaRange-2.8.lua:277: attempt to index local "nt" (a nil value)
tullaRange\tullaRange-2.8.lua:277: in function "SetButtonColor"
tullaRange\tullaRange-2.8.lua:251: in function "UpdateButtonUsable"
tullaRange\tullaRange-2.8.lua:227: in function <tullaRange\tullaRange.lua:225>
<in C code>
FrameXML\ActionButton.lua:517: in function "ActionButton_OnEvent"
FrameXML\ActionButton.lua:141: in function <FrameXML\ActionButton.lua:139>

Locals:
button = ExtraActionButton1 {
 0 = <userdata>
 feedback_action = 121
 action = 121
 buttonType = "EXTRAACTIONBUTTON"
 UpdateTooltip = <func> @FrameXML\ActionButton.lua:568
 flashing = 0
 eventsRegistered = true
 rangeTimer = -1
 style = <unnamed> {}
 tullaRangeColor = "normal"
 flashtime = 0
 isExtra = true
 cooldown = ExtraActionButton1Cooldown {}
 icon = ExtraActionButton1Icon {}
}
action = 121
isUsable = 1
notEnoughMana = nil
ActionButton_GetPagedID = <func> @FrameXML\ActionButton.lua:641
IsUsableAction = <func> =[C]:-1
IsActionInRange = <func> =[C]:-1
tullaRange = tullaRange {
 0 = <userdata>
 OnButtonUpdate = <func> @..\tullaRange.lua:230
 UpdateButtons = <func> @..\tullaRange.lua:180
 Active = <func> @..\tullaRange.lua:71
 PLAYER_LOGIN = <func> @..\tullaRange.lua:133
 OnButtonShow = <func> @..\tullaRange.lua:217
 Update = <func> @..\tullaRange.lua:160
 OnUpdateButtonUsable = <func> @..\tullaRange.lua:225
 buttonsToUpdate = <table> {}
 SetButtonColor = <func> @..\tullaRange.lua:267
 OnButtonHide = <func> @..\tullaRange.lua:221
 GetDefaults = <func> @..\tullaRange.lua:307
 SetColor = <func> @..\tullaRange.lua:324
 GetHolyPowerThreshold = <func> @..\tullaRange.lua:342
 RegisterButton = <func> @..\tullaRange.lua:209
 SetHolyPowerThreshold = <func> @..\tullaRange.lua:338
 GetColor = <func> @..\tullaRange.lua:333
 UpdateButton = <func> @..\tullaRange.lua:190
 UpdateButtonStatus = <func> @..\tullaRange.lua:195
 sets = <table> {}
 OnEvent = <func> @..\tullaRange.lua:124
 UpdateActive = <func> @..\tullaRange.lua:170
 UpdateFlash = <func> @..\tullaRange.lua:281
 ForceColorUpdate = <func> @..\tullaRange.lua:164
 Stop = <func> @..\tullaRange.lua:64
 UpdateButtonUsable = <func> @..\tullaRange.lua:237
 Start = <func> @..\tullaRange.lua:57
 PLAYER_LOGOUT = <func> @..\tullaRange.lua:153
 Load = <func> @..\tullaRange.lua:115
 Reset = <func> @..\tullaRange.lua:317
}
PLAYER_IS_PALADIN = true
isHolyPowerAbility = <func> @..\tullaRange.lua:92
SPELL_POWER_HOLY_POWER = 9
HAND_OF_LIGHT = "Dessein divin"
Last edited by Lexdivina : 01-09-12 at 02:16 PM.
Report comment to moderator  
Reply With Quote
Unread 12-17-11, 10:47 AM  
Tuller
A Warpwood Thunder Caller
 
Tuller's Avatar
AddOn Author - Click to view AddOns

Forum posts: 91
File comments: 1740
Uploads: 17
What error message are you getting?
Report comment to moderator  
Reply With Quote
Unread 12-17-11, 08:19 AM  
kawe
A Cyclonian
 
kawe's Avatar

Forum posts: 40
File comments: 95
Uploads: 1
ultraxion

hi,

getting errors when in DS fight against ultraxion

gr
Report comment to moderator  
Reply With Quote
Unread 12-06-11, 04:27 PM  
Nallepuh
A Deviate Faerie Dragon

Forum posts: 19
File comments: 65
Uploads: 0
Color

Hi, LOVE the addon first of all!

Now to my question. Can you color the holy power as u gain holy power? You know 1 holy power you get little less blue 2 holy power almost not blue and 3 holy power usable, instead of you only see it when u have 3 holy power, kinda like Tukui uses for holy power thingy. I really hope you get the idea here!

/ Regards Winnethepoh
Report comment to moderator  
Reply With Quote
Unread 12-05-11, 03:21 AM  
asdf
A Deviate Faerie Dragon

Forum posts: 18
File comments: 60
Uploads: 0
is there a way to make this work for mouseover buttons to show the red color for out of range too?
Report comment to moderator  
Reply With Quote
Unread 09-10-11, 01:16 PM  
Tuller
A Warpwood Thunder Caller
 
Tuller's Avatar
AddOn Author - Click to view AddOns

Forum posts: 91
File comments: 1740
Uploads: 17
That's more or less how I'd write the code :P

I do wonder if it would be possible to add in some sort of plugin architecture to allow people to do things like that more easily.
Report comment to moderator  
Reply With Quote
Unread 09-07-11, 02:19 PM  
Kesava
A Murloc Raider
 
Kesava's Avatar
AddOn Author - Click to view AddOns

Forum posts: 4
File comments: 141
Uploads: 1
Not the best way of doing this I'm sure, but I've modified this to colour heroic strike and cleave as OOM when a warrior has below 60 rage. If anyone else likes the sound of that, here's the code.

Paste this below line 108.

Code:
local PLAYER_IS_WARRIOR = select(2, UnitClass('player')) == 'WARRIOR'
local isRageAbility
do
    local RAGE_SPELLS = {
        [78] = GetSpellInfo(78),
        [845] = GetSpellInfo(845)
    }
    
    isRageAbility = function(actionId)
        local actionType, id = GetActionInfo(actionId)
        if actionType == 'macro' then
            local macroSpell = GetMacroSpell(id)
            if macroSpell then
                for spellId, spellName in pairs(RAGE_SPELLS) do
                    if macroSpell == spellName then
                        return true
                    end
                end
            end
        else
            return RAGE_SPELLS[id]
        end
        return false
    end
end
Then find (ctrl+f) this line:
Code:
elseif PLAYER_IS_PALADIN and isHolyPowerAbility(action) and not(UnitPower('player', SPELL_POWER_HOLY_POWER) >= tullaRange:GetHolyPowerThreshold() or UnitBuff('player', HAND_OF_LIGHT)) then
And paste this above it, on its own line:
Code:
        --a rage ability and we're below the rage threshold
        elseif PLAYER_IS_WARRIOR and isRageAbility(action) and UnitPower('player') < 60 then
            tullaRange.SetButtonColor(button, 'oom')
Just a copy of your holy power segment without configuration really, but I was looking for something like this for a while. I've had this for some time but recently I overwrote it by accident so I thought I'd put it here this time.
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump: