Moderator: MacroQuest Developers






You have to use a macro do /declare NewAddID and MobID -- you might as well make use of it. Take this whole /if statement, fix the syntax error, drop it in your macro, and you are done -- almost.browneyedlady1 wrote:holyshit0=/if (${Melee.Combat} && ${SpawnCount[npc radius 30 zradius 5]}>1 && ${Spawn[${MobID}].TypeEqual[NewAddID]} && ${Me.SpellReady[Crush of Compuction]}) /multiline ; /tar ${NewAddID} ; /casting 19143 ; /attack on
Code: Select all
sub main
/declare MobID int outer
/declare NewAddID int outer
:loop
| i have no idea what you were trying to do with TypeEqual -- i'm doing it here how i would do it
| i have also made the assumption that the IDs are ints
| i don't think this is what you want to do anyway since it will only
| switch targets if the spell is ready
/if (${Melee.Combat} && ${SpawnCount[npc radius 30 zradius 5]}>1 && ${MobID}!=${NewAddID} && ${Me.SpellReady[Crush of Compuction]}) {
/tar id ${NewAddID}
/delay 3s ${Target.ID}==${NewAddID}
/casting 19143
/attack on
/varset MobID ${NewAddID}
} else {
/delay 1
}
/goto loop
/returnCode: Select all
holyshit0=/if (${Melee.Combat} && ${MobID}!=${NewAddID}) /tar id ${NewAddID}
holyshit1=/if (!${Melee.Combat} && ${Target.ID}==${NewAddID}) /multiline ; /varset MobID ${NewAddID} ; /attack on
holyshit2=/if (${Me.SpellReady[Crush of Compuction]}) /casting 19143