View Single Post
  #88  
Unread 11-07-2007, 05:21 PM
gm9 gm9 is offline
gm10-1
Premium Member
EQ2Interface Super Mod
Featured
 
Join Date: Feb 2006
Posts: 6,479
Thumbs Up Yes it works

Good question. Was going to post this for RoK next week when everybody moves into T8 and gets shiny new spells, but I guess I can post it right now. This is also a FAQ entry, hence you get some nice coloring.
  1. Poor man's level detection
    The easy way of coding level dependant macro buttons is like this:

    useabilityonplayer Parent.Target SpellForLevel70
    useabilityonplayer Parent.Target SpellForLevel56
    useabilityonplayer Parent.Target SpellForLevel42
    useabilityonplayer Parent.Target SpellForLevel28
    useabilityonplayer Parent.Target SpellForLevel14
    clearallqueuedabilities
    The disadvantage is that you cannot queue those spells if you do it like that, but that's probably only a minor disadvantage.

    To edit this, you would replace the blue SpellForLevelXX with the name of the spell/ability in a line.

    Example:
    If in one line you only get spells at levels 25, 50, and 75, you would therefore have only three useabilityonplayer lines where you add the respective spellnames at the end. Always order your abilities from the highest level ability to the lowest, in this example 75, 50, 25.

  2. Exact Level Detection
    A bit harder to code would be an exact level based algorithm, but that is possible as well like this:
    SpellForMyLevel=SpellForLevel70
    COND=(Parent.Parent.Parent.GroupMembers.GroupMember0.MemberInfoPage.Level.Text < 70)
    SpellForMyLevel=COND ? SpellForLevel56 : SpellForMyLevel
    COND=(Parent.Parent.Parent.GroupMembers.GroupMember0.MemberInfoPage.Level.Text < 56)
    SpellForMyLevel=COND ? SpellForLevel42 : SpellForMyLevel
    COND=(Parent.Parent.Parent.GroupMembers.GroupMember0.MemberInfoPage.Level.Text < 42)
    SpellForMyLevel=COND ? SpellForLevel28 : SpellForMyLevel
    COND=(Parent.Parent.Parent.GroupMembers.GroupMember0.MemberInfoPage.Level.Text < 28)
    SpellForMyLevel=COND ? SpellForLevel14 : SpellForMyLevel
    useabilityonplayer Parent.Target SpellForMyLevel
    To edit this, you would again replace the blue SpellForLevelXX with the name of the spell/ability in a line. In addition, replace the red number with the exact levels the spells/abilities in that line get updated.

    Example:
    If in one spell line you get spells at levels 25, 50, and 75, you would put the lvl75 spellname in the first line, the lvl50 spellname in the third line and the lvl25 spellname in the fifth line.

    You would then change the number in the second line to 75 and the number in the fourth line to 50.

    In this example, you would remove all lines after the fifth line since the are not needed if you only get 3 versions of the spell in the entire line.
__________________
P R O F I T U I ∙ R E B O R N [Auto-Updater] | [Portal] | [F.A.Q.] | [Support Forums]
~ Retired ~
If it does not work, you likely installed it incorrectly. Always try a clean install before reporting bugs.
Reply With Quote