Public Macros The Low Level cleric macro that said it thinks it can
Reply
The Low Level cleric macro that said it thinks it can
Hear is just a starting place for a cleric macro....
Use it wisely and edit it and let it grow with you toon and as you learn how to write macros.

More +

#include Spell_routines.inc
#turbo 10
#chat group
#chat tell


|____________|
|   Events   |
|____________|
 
#event checkbuffs "#1# tells the group, 'check buffs'"
#event giveheal "#1# tells the group, 'plz heal'"
#event helpcommands "#1# tells the group, 'cleric help'"



|#event rezme "#1# tells the group, 'rez'"
|#event rezme "#1# tells you, 'rez'"
|#event evac     "#1# tells the group, 'EVAC'"



|_______________________________________________|


Sub Main

/declare DD1 string outer Strike
/declare B2 string outer Courage
/declare B1 string outer Holy Armor
/declare h1 string outer Minor Healing
/declare HealPct 60

/declare x int local

|/declare r1 string outer Reconstitution
|/declare B3 string outer Daring
|/declare h2 string outer Celestrial Remedy
|/declare g1 string outer Gate






:start
/if ((!${Me.Casting.ID}) && (${Me.State.Equal[STAND]}) & (${Me.PctMana}<98)) /sit
/doevents
/delay 10
/if (${Me.PctMana}>10) /goto :healloop
/goto :start



:healloop
  /if (${Group}<1) /goto :start
   /for x 0 to ${Group}
    /if (${Group.Member[${x}].Type.NotEqual[CORPSE]} && ${Group.Member[${x}].PctHPs}<${HealPct}) /call Heal ${Group.Member[${x}].CleanName}
|    /if (${Group.Member[${x}].Type.NotEqual[CORPSE]} && ${Group.Member[${x}].PctHPs}<75 && ${Group.Member[${x}].PctHPs}>70) /call Remedy ${Group.Member[${x}].CleanName}
    /if (${Group.Member[${x}].Pet.Name.NotEqual[NULL]} && ${Group.Member[${x}].Pet.PctHPs}<${HeaPct}) /call Heal ${Group.Member[${x}].Pet.CleanName}
   /next x
 /goto :nuke
 
:nuke
/assist Brel
/delay 1s
/if (${Target.PctHPs}<50 && ${Target.PctHPs}>35 && ${Target.Type.NotEqual[CORPSE]} && ${Target.Type.Equal["NPC"]} && ${Me.PctMana}>50) /call cast "${DD1}" gem1 3s
/goto :start
/return


|____________|
|  Healing   |
|____________|

Sub Heal(Targ)
/target ${Targ.Right[-2].Left[-1]}
/delay 1s
/if (${Target.ID}) /g ${h1} on %t
/if (${Target.Distance}>100) /g %t is out of range!
/if (${Target.Distance}<100) /call Cast "${h1}" gem8 4s
/return


|------------|
| Remedy     |
|------------|

|Sub Remedy(Targ)
|/target ${Targ.Right[-2].Left[-1]}
|/delay 1s
|/g ${h2} on  [ %t ]
|/call cast "${h2}" gem7 3s
|/return


|_____________|
| Buffs       |
|_____________|

Sub Event_checkbuffs(Line)
/declare z int local
  /if (${Group}<1) /return
   /for z 0 to ${Group}
   /if (${Group.Member[${z}].Type.NotEqual[CORPSE]}) /call Buffs ${Group.Member[${z}].CleanName}
/next z
/return

Sub Buffs(Targ)
/target ${Targ}
/delay 1s
/if (${Target.ID} && ${Select[${Target.Class.ShortName},SHD,PAL,RNG,BST,WAR,MNK,BER]}) {
/call Cast "${B2}" gem6 4s
/delay 3s
/call Cast "${B1}" gem7 4s
/delay 3s
}
/return


|___________________|
|       Rez         |
|___________________|

|Sub Event_rezme(Line,Targ)
|/target ${Targ.Right[-2].Left[-1]}
|/delay 1s
|/g Incoming 10% EXP rez on [ %t ]
|/call Cast "${r1}" gem3 12
|/if (${Macro.Return.Equal[CAST_SUCCESS]}) /goto :rezsuccess

|:rezsuccess
|/return




Sub Event_giveheal(Line,Targ)
/assist ${Targ.Right[-2].Left[-1]}
/delay 1s
/g Here ya go a heal just for [ %t ]
/call Cast "${h1}" gem8 3s
/if (${Macro.Return.Equal[CAST_SUCCESS]}) /return



|-------------|
|   gate out  |
|-------------|

|Sub Event_evac(line)
|/call cast "${g1}" gem2 3s
|/delay 7s
|/return




|_________________|
|  Help commands  |
|_________________|

Sub Event_helpcommands(Line)
|/g rez - I will rez you (I will breathe life into you)
|/delay 1s
/g plz Heal - I will heal you (Only because I care)
/delay 1s
/g check buffs - I will give you only what I can to make you better.
|/return



Yes this was taken from one of my earlier toons when I first started coding for macros. But this will give some a begining.
Mon May 28, 2012 7:32 pm
Public Macros The Low Level cleric macro that said it thinks it can
Reply