BTW Thanks to DeathSpiral for the starter.
Code: Select all
#define gemX v50
#define gemY v51
#define bookX v52
#define bookY v53
sub main
/varset gemX 25
/varset gemY 189
/varset bookX 340
/varset bookY 210
/press esc
/press esc
/press esc
/press esc
/press esc
/stand
/sit on
|||| Delete spell gems ||||
/for v1 1 to 8
/call ForgetSpellByNumber $v1
/next v1
|||| Open spell book ||||
/call MemorizeSpell "Celestial Healing" 1
/call MemorizeSpell "Superior Healing" 2
/call MemorizeSpell "Complete Healing" 3
/call MemorizeSpell "Greater Healing" 4
/call MemorizeSpell "Resolution" 5
/call MemorizeSpell "Instill" 6
/call MemorizeSpell "Retribution" 7
/call MemorizeSpell "Gate" 8
/return
sub ForgetSpellByName
/if "$char(gem,"$p0")"=="NULL" /goto :EndForgetSpellByName
/call ForgetSpellByNumber $char(gem,"$p0")
:EndForgetSpellByName
/return
| This function forgets a memorized spell by gem #
sub ForgetSpellByNumber
/if "$char(gem,$p0)"=="NULL" /return
/call MousetoSpellGem $p0
/delay 2
/click right
:WaitForGemFreeInForgetSpellByNumber
/doevents
/if "$char(gem,$p0)"!="NULL" /goto :WaitForGemFreeInForgetSpellByNumber
/return
Sub MousetoSpellGem
/mouseto $gemX $calc($p0*33+$gemY-33)
/return
| This function takes two arguments; the name of the spell to memorize and the
| spell gem to put it in
Sub MemorizeSpell
| Make sure we don't already have the spell memorized!
/if "$char(gem,"$p0")"=="NULL" /return
| Make sure we have the spell!
/if "$char(book,"$p0")"=="NULL" /return
/varset v10 0
/varset v11 $bookX
/varset v12 $bookY
/varset v13 $char(book,"$p0")
:looppage
/varadd v10 1
/if n $v13<17 /goto :bookside
/varsub v13 16
/varadd v10 1
/goto :looppage
:bookside
/if n $v13>8 {
/varsub v13 8
/varadd v11 186
}
/if n $v13==1 /goto :setmouse
/if n $v13==2 {
/varadd v11 85
/goto :setmouse
}
/if n $v13==3 {
/varadd v12 67
/goto :setmouse
}
/if n $v13==4 {
/varadd v11 85
/varadd v12 67
/goto :setmouse
}
/if n $v13==5 {
/varadd v12 134
/goto :setmouse
}
/if n $v13==6 {
/varadd v11 85
/varadd v12 134
/goto :setmouse
}
/if n $v13==7 {
/varadd v12 201
/goto :setmouse
}
/if n $v13==8 {
/varadd v11 85
/varadd v12 201
/goto :setmouse
}
:setmouse
/book $v10
/delay 1
/mouseto $v11 $v12
/delay 1
/click left
/delay 2
/call MousetoSpellGem $p1
/call ForgetSpellByNumber $p1
/click left
| Wait for the spell to finish memorizing
:WaitToFinishMemorizingSpell
/doevents
/if "$char(gem,$p1)"=="NULL" /goto :WaitToFinishMemorizingSpell
/return
Enjoy!




