castpractice.iss
Posted: Mon Apr 25, 2005 6:30 pm
Conversion of a casting macro for raising skill. FWIW.
SR.INC can be found over at http://macroquest2.com/phpBB2/viewtopic ... 5461#95461
SR.INC can be found over at http://macroquest2.com/phpBB2/viewtopic ... 5461#95461
Code: Select all
#include sr.inc
function main()
{
declare cpCurrentSpell int script
declare cpMaxSkill int script
declare cpSkillName string script
declare cpSpellName string script
declare skillStart int script
declare skillend int script
varset cpCurrentSpell 1
varset cpMaxSkill ${Math.Calc[${Me.Level}*5+5]}
if "${cpMaxSkill}>235"
varset cpMaxSkill 235
echo Maximum skill is ${cpMaxSkill}
Target myself
if "${Me.Pet.ID}"
target id ${Me.Pet.ID}
do
{
echo cpCurrentSpell=${cpCurrentSpell}
echo casting ${Me.Gem[${cpCurrentSpell}]}
varset cpSkillName ${Me.Gem[${cpCurrentSpell}].Skill}
varset skillStart ${Me.Skill[${cpSkillName}]}
if "${Me.Gem[${cpCurrentSpell}].ID}"
{
do
{
if "${Me.CurrentMana}<${Me.Gem[${cpCurrentSpell}].Mana}"
{
EQExecute /sit
echo ${Math.Calc[${Me.Skill[${cpSkillName}]}-${skillStart}].Int} skillups so far in ${cpSkillName}
call MedBreak
}
call CheckGM
if "${Me.Pet.ID}"
target id ${Me.Pet.ID}
wait 100 ${Me.SpellReady[${cpCurrentSpell}]}
call sr_cast "${Me.Gem[${cpCurrentSpell}]}" gem${cpCurrentSpell}
if "${Cursor.ID}"
{
EQExecute /autoinventory
wait 20 !${Cursor.ID}
}
}
while "${Me.Skill[${cpSkillName}]}<${cpMaxSkill}"
}
varcalc cpCurrentSpell ${cpCurrentSpell}+1
}
while "${cpCurrentSpell}<10"
EQExecute /sit
call MedBreak
EQExecute /camp
}
function CheckGM()
{
if "${Spawn[gm].ID} || ${SpawnCount[pc,radius,200]}>1"
{
do
{
echo 'Cast Macro' A GM or Guide has been detected in the zone, the macro will resume when the zone is clear of GM/Guides
if "!${Me.Sitting}"
EQExecute /sit
wait 300
}
while "${Spawn[gm].ID} || ${SpawnCount[pc,radius,200]}>1"
}
}
function MedBreak()
{
EQExecute /stand
EQExecute /sit
do
{
if "${Me.SpellReady[Cannibalize III]} && ${Me.PctHPs}>30"
call sr_cast "Cannibalize III"
if "!${Me.Sitting}"
EQExecute /sit
if "${Me.PctHPs}<65"
{
target myself
wait 5 ${Me.ID}==${Target.ID}
doability "Bind Wound"
wait 150 ${Me.AbilityReady[Bind Wound]}
}
wait 10
call CheckGM
}
while "${Me.CurrentMana}<${Me.MaxMana}"
}