Ok this post might end up going down in flames before I even finish writing it, but I have to try. I'm trying to use the following macro:
|Usage: /mac chantkite (radius) (heal%) (healsong) (selos) (#of dots) (dot1-9)
|ie. /mac chantkite 55 60 1 8 5 2 3 4 5 7
|radius of 55, heals at 60%, plays song 1 to heal, plays song 8 for selos, 5 dots, #'s 2 3 4 5 7
|
#event NeedTarget "You must first select a target for this spell!"
#event NeedTarget2 "Your target is out of range, get closer!"
#event seetarget "You cannot see your target."
#event exp "#*#experience!!"
Sub Main(int outer rad,int hp,int hps,int selos,int dots,int dots1,int dots2,int dots3,int dots4,int dots5,int
dots6,int dots7,int dots8,int dots9)
/declare radius int outer ${rad}
/declare health int outer ${hp}
/declare hpsong int outer ${hps}
/declare dotnumber int outer ${dots}
/declare dot1 int outer ${dots1}
/declare dot2 int outer ${dots2}
/declare dot3 int outer ${dots3}
/declare dot4 int outer ${dots4}
/declare dot5 int outer ${dots5}
/declare dot6 int outer ${dots6}
/declare dot7 int outer ${dots7}
/declare dot8 int outer ${dots8}
/declare dot9 int outer ${dots9}
/declare healsong int outer 0
/declare SeloSong int outer ${selos}
/declare targetammount int outer
/declare PrevSong int outer
/varset PrevSong 0
/echo Selo's: ${Me.Gem[${SeloSong}].Name}
/circle on ${radius}
/call normaltwist
:MainLoop
/doevents
/call gmcheck
/nomodkey /keypress forward hold
/call selosong
/call healsong
/delay 1S
/nomodkey /keypress forward hold
/goto :MainLoop
/return
Sub Event_exp
/tar npc radius 150
/call normaltwist
/return
Sub Event_NeedTarget
/if (!${Target.ID}) /target npc radius 150
/return
Sub Event_NeedTarget2
/target npc
/return
Sub Event_seetarget
/varcalc targetammount ${targetammount}+1
/if (${targetammount}>=10) {
/target npc
/varset targetammount 0
/return
}
/return
Sub Event_targetid
/varset targetammount 0
/return
sub selosong
/if (${Me.Buff[${Me.Gem[${SeloSong}].Name}].Duration}<=6) {
/echo Selos about to die
/stopsong
/twist ${SeloSong}
/delay 1S
/nomodkey /keypress forward hold
/delay 1S
/nomodkey /keypress forward hold
/delay 1S
/nomodkey /keypress forward hold
/delay 1S
/nomodkey /keypress forward hold
/call normaltwist
/varset PrevSong 0
/doevents
/return
}
/return
Sub healsong
/if (${healsong}==0) /if (${Me.PctHPs}<=${health}) {
/call healtwist
/varset healsong 1
/return
}
/if (${healsong}==1) /if (${Me.PctHPs}>=96) {
/call normaltwist
/varset healsong 0
/return
}
/return
sub normaltwist
/if (${dotnumber}==1) /twist ${dot1}
/if (${dotnumber}==2) /twist ${dot1} ${dot2}
/if (${dotnumber}==3) /twist ${dot1} ${dot2} ${dot3}
/if (${dotnumber}==4) /twist ${dot1} ${dot2} ${dot3} ${dot4}
/if (${dotnumber}==5) /twist ${dot1} ${dot2} ${dot3} ${dot4} ${dot5}
/if (${dotnumber}==6) /twist ${dot1} ${dot2} ${dot3} ${dot4} ${dot5} ${dot6}
/if (${dotnumber}==7) /twist ${dot1} ${dot2} ${dot3} ${dot4} ${dot5} ${dot6} ${dot7}
/if (${dotnumber}==8) /twist ${dot1} ${dot2} ${dot3} ${dot4} ${dot5} ${dot6} ${dot7} ${dot8}
/if (${dotnumber}==9) /twist ${dot1} ${dot2} ${dot3} ${dot4} ${dot5} ${dot6} ${dot7} ${dot8} ${dot9}
/return
sub healtwist
/if (${dotnumber}==1) /twist ${dot1} ${hpsong}
/if (${dotnumber}==2) /twist ${dot1} ${dot2} ${hpsong}
/if (${dotnumber}==3) /twist ${dot1} ${dot2} ${dot3} ${hpsong}
/if (${dotnumber}>=4) /twist ${dot1} ${dot2} ${dot3} ${dot4} ${hpsong}
/return
sub gmcheck
/if (${Spawn[gm].ID}) {
/MQLog GM entered the zone!
/mqlog For safty reasons ending the macro
/echo GM entered the zone!
/echo For safty reasons ending the macro
/endmac
/keypress instant_camp
}
/return
This one twists a different song after the mob hits whatever % hp
This is EXACTLY how it is pasted in my notepad. I have my hotkey in-game setup as follows:
/mac chantkite 70 0 0 1 1 2
I do this to achieve a 70 circle, never heal, selo's in slot 1, and brusco's bellow in slot 2 (wanna keep it simple till I get it down). Now this is what I see in my MQ window when I press the hotkey:
DoCommand - Couldn't parse 'dots6,int dots7,int dots8,int dots9)'
chantkite.mac@12 (Main(int outer rad,int hp,int hps,int selos,int dots,int dots1,int dots2,int dots3,int dots4,int dots5,int): dots6,int dots7,int dots8,int dots9)
[MQ2] Selo's: Selo's Accelerando
DoCommand - Couldn't parse '/circle on $(radius)'
chantkite.mac@33 (Main(int outer rad,int hp,int hps,int selos,int dots,int dots1/int dots2,int dots3,int dots4,int dots5,int): /circle on $(radius)
DoCommand - Couldn't parse '/twist 2'
Ugh......typing it out by hand hopefully someone reading this already knows the answer to fix lol but here's the short version of the rest:
blah blah blah
[MQ2] Selos about to die
DoCommand - Couldn't parse '/twist $(SeloSong)'
blah blah blah
My bard never targets a mob or runs in a circle....just runs strait. Hopefully this is an easy fix that everyone knows about because I just got carpal tunnel from all this typing lol.
P.S. All person's who help shall receive free 2-week vacations at my beach resort I just bought in Kansas (those salespeople are so nice!)
|Usage: /mac chantkite (radius) (heal%) (healsong) (selos) (#of dots) (dot1-9)
|ie. /mac chantkite 55 60 1 8 5 2 3 4 5 7
|radius of 55, heals at 60%, plays song 1 to heal, plays song 8 for selos, 5 dots, #'s 2 3 4 5 7
|
#event NeedTarget "You must first select a target for this spell!"
#event NeedTarget2 "Your target is out of range, get closer!"
#event seetarget "You cannot see your target."
#event exp "#*#experience!!"
Sub Main(int outer rad,int hp,int hps,int selos,int dots,int dots1,int dots2,int dots3,int dots4,int dots5,int
dots6,int dots7,int dots8,int dots9)
/declare radius int outer ${rad}
/declare health int outer ${hp}
/declare hpsong int outer ${hps}
/declare dotnumber int outer ${dots}
/declare dot1 int outer ${dots1}
/declare dot2 int outer ${dots2}
/declare dot3 int outer ${dots3}
/declare dot4 int outer ${dots4}
/declare dot5 int outer ${dots5}
/declare dot6 int outer ${dots6}
/declare dot7 int outer ${dots7}
/declare dot8 int outer ${dots8}
/declare dot9 int outer ${dots9}
/declare healsong int outer 0
/declare SeloSong int outer ${selos}
/declare targetammount int outer
/declare PrevSong int outer
/varset PrevSong 0
/echo Selo's: ${Me.Gem[${SeloSong}].Name}
/circle on ${radius}
/call normaltwist
:MainLoop
/doevents
/call gmcheck
/nomodkey /keypress forward hold
/call selosong
/call healsong
/delay 1S
/nomodkey /keypress forward hold
/goto :MainLoop
/return
Sub Event_exp
/tar npc radius 150
/call normaltwist
/return
Sub Event_NeedTarget
/if (!${Target.ID}) /target npc radius 150
/return
Sub Event_NeedTarget2
/target npc
/return
Sub Event_seetarget
/varcalc targetammount ${targetammount}+1
/if (${targetammount}>=10) {
/target npc
/varset targetammount 0
/return
}
/return
Sub Event_targetid
/varset targetammount 0
/return
sub selosong
/if (${Me.Buff[${Me.Gem[${SeloSong}].Name}].Duration}<=6) {
/echo Selos about to die
/stopsong
/twist ${SeloSong}
/delay 1S
/nomodkey /keypress forward hold
/delay 1S
/nomodkey /keypress forward hold
/delay 1S
/nomodkey /keypress forward hold
/delay 1S
/nomodkey /keypress forward hold
/call normaltwist
/varset PrevSong 0
/doevents
/return
}
/return
Sub healsong
/if (${healsong}==0) /if (${Me.PctHPs}<=${health}) {
/call healtwist
/varset healsong 1
/return
}
/if (${healsong}==1) /if (${Me.PctHPs}>=96) {
/call normaltwist
/varset healsong 0
/return
}
/return
sub normaltwist
/if (${dotnumber}==1) /twist ${dot1}
/if (${dotnumber}==2) /twist ${dot1} ${dot2}
/if (${dotnumber}==3) /twist ${dot1} ${dot2} ${dot3}
/if (${dotnumber}==4) /twist ${dot1} ${dot2} ${dot3} ${dot4}
/if (${dotnumber}==5) /twist ${dot1} ${dot2} ${dot3} ${dot4} ${dot5}
/if (${dotnumber}==6) /twist ${dot1} ${dot2} ${dot3} ${dot4} ${dot5} ${dot6}
/if (${dotnumber}==7) /twist ${dot1} ${dot2} ${dot3} ${dot4} ${dot5} ${dot6} ${dot7}
/if (${dotnumber}==8) /twist ${dot1} ${dot2} ${dot3} ${dot4} ${dot5} ${dot6} ${dot7} ${dot8}
/if (${dotnumber}==9) /twist ${dot1} ${dot2} ${dot3} ${dot4} ${dot5} ${dot6} ${dot7} ${dot8} ${dot9}
/return
sub healtwist
/if (${dotnumber}==1) /twist ${dot1} ${hpsong}
/if (${dotnumber}==2) /twist ${dot1} ${dot2} ${hpsong}
/if (${dotnumber}==3) /twist ${dot1} ${dot2} ${dot3} ${hpsong}
/if (${dotnumber}>=4) /twist ${dot1} ${dot2} ${dot3} ${dot4} ${hpsong}
/return
sub gmcheck
/if (${Spawn[gm].ID}) {
/MQLog GM entered the zone!
/mqlog For safty reasons ending the macro
/echo GM entered the zone!
/echo For safty reasons ending the macro
/endmac
/keypress instant_camp
}
/return
This one twists a different song after the mob hits whatever % hp
This is EXACTLY how it is pasted in my notepad. I have my hotkey in-game setup as follows:
/mac chantkite 70 0 0 1 1 2
I do this to achieve a 70 circle, never heal, selo's in slot 1, and brusco's bellow in slot 2 (wanna keep it simple till I get it down). Now this is what I see in my MQ window when I press the hotkey:
DoCommand - Couldn't parse 'dots6,int dots7,int dots8,int dots9)'
chantkite.mac@12 (Main(int outer rad,int hp,int hps,int selos,int dots,int dots1,int dots2,int dots3,int dots4,int dots5,int): dots6,int dots7,int dots8,int dots9)
[MQ2] Selo's: Selo's Accelerando
DoCommand - Couldn't parse '/circle on $(radius)'
chantkite.mac@33 (Main(int outer rad,int hp,int hps,int selos,int dots,int dots1/int dots2,int dots3,int dots4,int dots5,int): /circle on $(radius)
DoCommand - Couldn't parse '/twist 2'
Ugh......typing it out by hand hopefully someone reading this already knows the answer to fix lol but here's the short version of the rest:
blah blah blah
[MQ2] Selos about to die
DoCommand - Couldn't parse '/twist $(SeloSong)'
blah blah blah
My bard never targets a mob or runs in a circle....just runs strait. Hopefully this is an easy fix that everyone knows about because I just got carpal tunnel from all this typing lol.
P.S. All person's who help shall receive free 2-week vacations at my beach resort I just bought in Kansas (those salespeople are so nice!)