*EDIT* There was a bug where it would not move to the next skill after maxing a skill. Also changed it to destroy summoned items.
Code: Select all
;Spell Skill trainer by Hendrix
;Put the skills you want to train in gem slots 1-5
;and the script will handle the rest.
;This script was converted from YAST by lorad
;Requires Spell_Routines.iss
#include ${LavishScript.HomeDirectory}/Scripts/Spell_Routines.iss
#define cast call Cast
variable int currentSpell=1
variable int maxSkill=${Math.Calc[${Me.Level}*5+5]}
variable string skillName
function main()
{
addtrigger inc_chat "@*@tells you@*@"
if ${maxSkill} > 235
maxSkill:Set[235]
echo "Max Skill level is ${maxSkill}"
EQExecute /target ${Me.Name}
do
{
echo "Casting ${Me.Gem[${currentSpell}]}"
do
{
if ${Me.CurrentMana} < ${Me.Gem[${currentSpell}].Mana}
call medbreak
call checkgm
cast "${Me.Gem[${currentSpell}]}"
While ${Cursor.ID(exists)}
destroy
}
while ${Me.Skill[${Me.Gem[${currentSpell}].Skill}]} < ${maxSkill}
}
while ${currentSpell:Inc} < 5
}
function checkgm()
{
do
{
waitframe
}
while ${Spawn[gm].ID(exists)}
}
function medbreak()
{
EQExecute /sit
do
{
waitframe
}
while ${Me.PctMana} < 100
EQExecute /stand
}
function inc_chat()
{
echo "Tell received, pausing for 5 minutes..."
EQExecute /afk
EQExecute /sit
wait 3000
EQExecute /stand
EQExecute /afk
}