• You've discovered RedGuides, an EverQuest multi-boxing and scripting community 🧙‍♀️⚙️. We want you to play several EQ characters at once, come join us and say hello! 👋

  • A TLP without truebox has thawed (Very Vanilla ready)
    Frostreaver

Emu Cleric Heal/Assist Macro

HardOne

Member
Joined
Jan 15, 2006
RedCents
61¢
Another simple macro that helps me box on Scars of Amerous. Cleric will follow, heal you/group, and Auto-Reverse DS if you want it to.


Rich (BB code):
|------------------------------------------------------------|
|		    Includes
|------------------------------------------------------------|
#Include spell_routines.inc
|------------------------------------------------------------|
|		    Events
|------------------------------------------------------------|
#Chat Chat
#Chat tell
#Event DEATH "You have entered#*#"
#Event DEATH "You have been slain#*#"  
#Event CHAT "#*# tells you, '#*#"
#Event CHAT "<#*#> #*#"
#Event HELP "[MQ2] help"
#Event SIT "[MQ2] sit #1#"
#Event ASSISTAT "[MQ2] assistat #1#"
#Event ASSIST "[MQ2] assist #1#"
#Event HEALAT "[MQ2] healat #1#
#Event TANK "[MQ2] tank #1#"
#Event GBUFFS "[MQ2] gbuffs #1#"
#Event GHEALS "[MQ2] gheals #1#"
#Event FOLLOW "[MQ2] follow #1#"
#Event REZ "<#1#> rez #2#"
#Event SFG "<#1#> sfg"
#Event HATE "<#1#> hate"
#Event CRYSTAL "<#1#> crystal"
#Event ACRYLIA "<#1#> acry"
#Event FIRE "<#1#> fire"
#Event FAYDARK "<#1#> faydark"
#Event BUTCHER "<#1#> butcher"
#Event UNREST "<#1#> unrest"
#Event KITHICOR "<#1#> kithicor"
#Event KEEP "<#1#> keep"
#Event LAIR "<#1#> lair"
#Event OVERTHERE "<#1#> overthere"
#Event LAKE "<#1#> lake"
#Event MAZE "<#1#> maze"
#Event MARR "<#1#> marr"
#Event SOLUSEK "<#1#> solusek"
|------------------------------------------------------------|

|------------------------------------------------------------|
|		    Main Loop
|------------------------------------------------------------|

sub Main 
|------------READ THIS SECTION AND EDIT IF NEEDED-----------|
   /declare Tank         		outer	0  
   /declare TankNameID	 		outer	0  
   /declare Follow	     		outer	TRUE  
   /declare DoGroupHeals     	outer	TRUE
   /declare DoGroupBuff	     	outer	TRUE
   /declare Sit              	outer	FALSE
   /declare Assist           	outer	FALSE 
   /Declare GateItem			outer	"Newbie Charm"
   /Declare ClickStick			outer	"Water Sprinkler of Nem Ankh"
|-----------IRC---------------------------------------------|
   /Declare UseIRC				 outer	TRUE
   /Declare IRCServerAddr		 outer	"127.0.0.1"
   /Declare IRCPort				 outer	"6667"
   /Declare IRCChannel			 outer	"#Bot"   
|-----------SPELLS------------------------------------------|
   /declare GHoT         		outer	"Elixir of Redemption"
   /declare HoT		 			outer	"Sacred Elixir"
   /declare Nuke        		outer	"Reproval"
   /declare Nuke2		 		outer	"Ancient: Pious Conscience"
   /declare Heal        		outer	"Ancient: Hallowed Light"
   /declare FHeal		 		outer	"Sacred Remedy"
   /declare SpellFocus   		outer	"Aura of Purpose"
   /declare DA           		outer	"Divine Custody"
   /declare RDS	       			outer	"Mark of the Martyr"
   /declare HPBuff				outer	"Tenacity"
   /declare GHPBuff	 			outer	"Hand of Tenacity"
   /declare Symbol	 			outer	"Symbol of Elushar"
   /declare GSymbol	 			outer	"Elushar's Mark"
   /declare MGuard	 			outer	"Rallied Aegis of Vie"
   /declare GResist	 			outer	"Shared Purity"
   /declare AC		 			outer	"Ward of the Dauntless"
   /declare Cure		 		outer	"Expunge Corruption"
|-----------TIMERS------------------------------------------|
   /Declare CoHealing   timer 	outer 	0
   /Declare CoMana     	timer 	outer  	0
|-----------PERCENT TO DO THINGS----------------------------|
   /declare patchhealrange   	outer	100   
   /declare HealSelfAt       	outer	70
   /declare HealAt          	outer	70
   /declare ManaAt	     		outer	5
   /declare NukeAt	     		outer	40
   /declare AssistAt         	outer	99 
|-----------OTHER-------------------------------------------| 
   /declare MobRDS	     		outer	0
   /declare MobID            	outer	0
|-----------------------------------------------------------|
|-----------STOP EDITING -----------------------------------|

|------------------------------------------------------------|
|		    Main Loop (Start of Macro)
|------------------------------------------------------------|
   /echo
   /echo Cleric Bot 2.0 started!
   /echo Type /echo Help for more details!
   /echo  	
	/if (${UseIRC}) /iconnect ${IRCServerAddr} ${IRCPort} ${IRCChannel} ${Me} 
   
/if (!${Target.ID}) { 
/echo Target the Tank when you run this macro to designate him as MT 
/end 
} else { 
 /if (${Target.Type.Equal[PC]}) { 
	/varset Tank ${Target}
	/varset TankNameID ${Target.ID} 
	} else {
	/if (${Target.Type.Equal[NPC]}) {
	/echo Target the Tank when you run this macro not an NPC to designate him as MT. 
	/end
	} 
} 
/call MemSpells
 
  :MyMainLoop 
   /if (${Me.Casting.ID}) /goto :MyMainloop
   /if (${Sit} && !${Follow} && ${Me.Standing} && !${Me.Mount.ID}) /sit 
   /doevents
	/if (${Follow} && !${Sit}) {
		/target ${Tank}
			/delay 5
				/squelch /stick hold
				}
   /call Checks
   /if (${Target.PctHPs}<=${HealAt} && ${Target.ID}==${TankNameID} && ${Target.Distance}<=${patchhealrange}) { 
		/goto :heal
			} else { 
				/target ${Tank} 
					/delay 1 ${Target.ID}==${TankNameID}
						/goto :MyMainLoop
					}    
			:heal 
				/if (${UseIRC}) /i say Casting -- ${Heal} -- ${Tank}
					/call cast ${Heal} gem4
					/delay 10  
   /goto :MyMainLoop    
/return

|------------------------------------------------------------|
|		    Memorize your spells
|------------------------------------------------------------|
Sub MemSpells  
	/if (${UseIRC}) /i say -- Memming Spells --
   /if (!${Me.Gem[${GHoT}]}) { 
      /memspell 1 ${GHoT} 
      /delay 60 
      } 
   /if (!${Me.Gem[${HoT}]}) { 
      /memspell 2 ${HoT} 
      /delay 60 
      } 
   /if (!${Me.Gem[${FHeal}]}) { 
      /memspell 3 ${FHeal} 
      /delay 60 
      } 
   /if (!${Me.Gem[${Heal}]}) { 
      /memspell 4 ${Heal} 
      /delay 60 
      } 
   /if (!${Me.Gem[${HPBuff}]}) { 
      /memspell 5 ${HPBuff} 
      /delay 60 
      } 
   /if (!${Me.Gem[${GHPBuff}]}) { 
      /memspell 6 ${GHPBuff} 
      /delay 60 
      } 
   /if (!${Me.Gem[${SpellFocus}]}) { 
      /memspell 7 ${SpellFocus} 
      /delay 60 
      } 
   /if (!${Me.Gem[${MGuard}]}) { 
      /memspell 8 ${MGuard} 
      /delay 60 
      } 
   /if (!${Me.Gem[${RDS}]}) { 
      /memspell 9 ${RDS} 
      /delay 60 
      }  
/return 


Sub Checks
/call CheckMob
/if (${DoGroupBuff}) /call GroupBuff
/if (${DoGroupHeals} && ${Group}>1) /call GroupHeals
/call CheckMyHealth
/call CheckMyMana
/return		

Sub CheckMyHealth
	/if (${Me.PctHPs}<${HealAt}) {
	:HealMe_Loop
		/target myself
			/delay 1 ${Me.ID}==${Target.ID}
		/if (${UseIRC}) /i say Casting -- ${Heal} -- Myself!			
				/call Cast ${Heal} gem4
					/if (${Macro.Return.Equal["CAST_OUTOFMANA"]}) /goto :OOM_Loop
						/if (!${Macro.Return.Equal["CAST_SUCCESS"]}) /goto :HealMe_Loop
						/if (${Macro.Return.Equal["CAST_SUCCESS"]}) /return		
		:OOM_Loop			
				/echo *** Shit ! I don't have mana to heal myself!
				 /if (${UseIRC}) /i say *** Shit ! I don't have mana to heal myself!
					/call CharmHeal
} 
/return  

Sub CharmHeal
/if (${Me.PctHPs}<30 && ${CoHealing}==0) {
:HealMeC_Loop
	/target myself
	/delay 5
	/call cast "Charm of Healing" item 
	/delay 20	
					/if (${Macro.Return.Equal["CAST_NOTREADY"]}) {
					/varset CoHeal ${FindItem["Charm of Healing"].Timer}
					/return
						}
				/if (${Macro.Return.Equal["CAST_INTERRUPTED"]}) /goto :HealMeC_Loop
				/if (!${Macro.Return.Equal["CAST_SUCCESS"]}) /goto :HealMeC_Loop
				/if (${Macro.Return.Equal["CAST_SUCCESS"]}) /varset EpicTimer ${FindItem["Charm of Healing"].Timer}
}
/return  

Sub CheckMyMana
/if (${Me.PctMana}<5 && ${CoMana}==0) {
:COMana_Loop
	/target myself
	/delay 5
	/call cast "Charm of Mana" item 
	/delay 20
					/if (${Macro.Return.Equal["CAST_NOTREADY"]}) {
					/varset CoMana ${FindItem["Charm of Mana"].Timer}
					/return
						}
				/if (${Macro.Return.Equal["CAST_INTERRUPTED"]}) /goto :COMana_Loop
				/if (!${Macro.Return.Equal["CAST_SUCCESS"]}) /goto :COMana_Loop
				/if (${Macro.Return.Equal["CAST_SUCCESS"]}) /varset CoMana ${FindItem["Charm of Mana"].Timer}
}
/return

|------------------------------------------------------------|
|		    Check if RDS'ed Mob Dead
|------------------------------------------------------------|
Sub CheckMob
      /if (!${Spawn[${MobID}].Type.Equal[NPC]} && ${MobRDS}==1) { 
         /echo Mob defeated. Waiting for next. 
         /varset MobRDS 0 
} else {
   	/if (${Assist} && ${MobRDS}==0) {
		/target ${Tank}
			/assist
				/delay 10
		   			/if (${Target.Type.Equal[NPC]}) /call AutoRDS
				}
}
/return
|------------------------------------------------------------|

|------------------------------------------------------------|
|		    Auto-RDS
|------------------------------------------------------------|		
Sub AutoRDS
   /if (${Target.PctHPs}<=${AssistAt} && ${Target.Distance}<=${patchhealrange} && ${Target.Type.Equal[NPC]}) {
	/popup Assisting (&{Tank}) and Auto-Revere DSing!
      	    :RDS_Loop
      	       /delay 4
               /popup Casting Reverse DS on (${Target})!
			   /if (${UseIRC})  /i say Casting Reverse DS on (${Target})!
	       /delay 2
	       /Call Cast ${RDS} gem9
	       /delay 20
	  /if (${Macro.Return.Equal["CAST_RESISTED"]}) /goto :RDS_Loop
	  /if (${Macro.Return.Equal["CAST_SUCCESS"]} && ${Target.Type.Equal[NPC]}) {
		/varset MobRDS 1
		/Varset MobID ${Target.ID}
		/delay 2
		/Target ${Tank}
		}
      	} else {
   }
   /return
   
Sub GroupHeals 
   /declare i int local 1 
   
   /for i 1 to ${Group} 

   /if (${Group.Member[${i}].PctHPs}<=${HealAt} && ${Spawn[${Group.Member[${i}]}].Type.Equal[PC]} && ${Target.Distance}<=${patchhealrange}) { 
   :GHeal_Loop
      /target pc ${Group.Member[${i}]} 
	  	/delay 5 ${Target.ID}==${Group.Member[${i}].ID}
		/if (${UseIRC}) /i say Casting -- ${Heal} -- ${Target}
		/call cast ${Heal} gem4
				/delay 20	
	  		/if (${Macro.Return.Equal["CAST_OUTOFMANA"]}) {
				/echo *** Shit ! I don't have mana to heal ${Group.Member[$i]} !
				 /if (${UseIRC}) /i say *** Shit ! I don't have mana to heal ${Group.Member[$i]} !
					/return
					}
			/if (!${Macro.Return.Equal["CAST_SUCCESS"]}) /goto :GHeal_Loop
      } 
   } 
   /next i 
/return 
		 
|------------------------------------------------------------|
|------------------------------------------------------------|
|------------------------------------------------------------|
Sub GroupBuff
:GroupBuff 
  /if (${DoGroupBuff} && !${Me.Buff[${GHPBuff}].ID}) {
  /popup Group HP: ${GHPBuff} rebuffing
	/target myself
	/delay 5
 	/call cast ${GHPBuff} gem6
	/delay 40
	    /if (${Macro.Return.Equal["CAST_INTERRUPTED"]}) /goto :GroupBuff
	    /if (!${Macro.Return.Equal["CAST_SUCCESS"]}) /goto :GroupBuff
  } 
  :SpellG_Loop
    /if (${DoGroupBuff} && !${Me.Buff[${SpellFocus}].ID}) {
  /popup Group HP: ${SpellFocus} rebuffing
	/target myself
	/delay 5
 	/call cast ${SpellFocus} gem7
	/delay 40
	    /if (${Macro.Return.Equal["CAST_INTERRUPTED"]}) /goto :SpellG_Loop
	    /if (!${Macro.Return.Equal["CAST_SUCCESS"]}) /goto :SpellG_Loop
  } 
    :MeleeG_Loop
    /if (${DoGroupBuff} && !${Me.Buff[${MGuard}].ID}) {
  /popup Group HP: ${MGuard} rebuffing
	/target myself
	/delay 5
 	/call cast ${MGuard} gem8
	/delay 40
	    /if (${Macro.Return.Equal["CAST_INTERRUPTED"]}) /goto :MeleeG_Loop
	    /if (!${Macro.Return.Equal["CAST_SUCCESS"]}) /goto :MeleeG_Loop
  } 
/return 
|------------------------------------------------------------|

|------------------------------------------------------------|
|		    Find Person who just sent you a tell
|------------------------------------------------------------| 
Sub FindExactPC(string name)
   /declare nameid int local
   /declare counter int local 1
   :FindNext
   /if (!${NearestSpawn[${counter}, pc ${name}].ID}) /return NOT_FOUND
   /varset nameid ${NearestSpawn[${counter}, pc ${name}].ID}
   /if (${Spawn[${nameid}].CleanName.Equal[${name}]}) {
      /target id ${nameid}
      /delay 1s ${Target.ID}==${nameid}
      /if (${Target.ID}==${nameid}) /return TARGET_SUCCESS
   }
   /varcalc counter ${counter}+1
   /if (${NearestSpawn[${counter}, pc ${name}].ID}) /goto :FindNext
/return NOT_FOUND

Sub Event_Chat(string ChatType,string Sender,string ChatText)
   /if ((!${ChatType.Equal[${mychannel}]})&&(!${ChatType.Equal[TELL]})) /return
   /if (!${Spawn[${Sender}].ID}) {
      /e ${Sender} is not in the zone
      /return
   }
|------------------------------------------------------------|
|------------------------------------------------------------|
|		    Help Menu!				     													
|------------------------------------------------------------|
   /if ((${ChatText.Equal[Help]})) {
      /call FindExactPC ${Sender}
      /if (${String[${Macro.Return}].NotEqual[TARGET_SUCCESS]}) /return
      /if (${Target.Distance}<=${patchhealrange}) {
				/t ${Sender} ---------Janki Help Menu---------
					/delay 25
				/t ${Sender} HEAL, HOT, HP, And For more info on each command tell me (Example) E-HEAL!
      } else /tell ${Sender} your OOR
   }
|------------------------------------------------------------
|------------------------------------------------------------|
|		    Extended Help Menu!    											
|------------------------------------------------------------|   
   /if ((${ChatText.Equal[E-RDS]})) {
      /call FindExactPC ${Sender}
      /if (${String[${Macro.Return}].NotEqual[TARGET_SUCCESS]}) /return
      /if (${Target.Distance}<=${patchhealrange}) {
				/t ${Sender} -- RDS ---- ${RDS}
      } else /tell ${Sender} your OOR
   }  
   /if ((${ChatText.Equal[E-HEAL]})) {
      /call FindExactPC ${Sender}
      /if (${String[${Macro.Return}].NotEqual[TARGET_SUCCESS]}) /return
      /if (${Target.Distance}<=${patchhealrange}) {
				/t ${Sender} -- HEAL ---- ${Heal}
      } else /tell ${Sender} your OOR
   } 
   /if ((${ChatText.Equal[E-HOT]})) {
      /call FindExactPC ${Sender}
      /if (${String[${Macro.Return}].NotEqual[TARGET_SUCCESS]}) /return
      /if (${Target.Distance}<=${patchhealrange}) {
				/t ${Sender} -- HOT ---- Will cast Heal over Time: ${Heal}
      } else /tell ${Sender} your OOR
   } 
   /if ((${ChatText.Equal[E-HP]})) {
      /call FindExactPC ${Sender}
      /if (${String[${Macro.Return}].NotEqual[TARGET_SUCCESS]}) /return
      /if (${Target.Distance}<=${patchhealrange}) {
				/t ${Sender} -- HP -- ${HPBuff}
      } else /tell ${Sender} your OOR
   }     
|------------------------------------------------------------

|------------------------------------------------------------|
|		    RDS																	       		     |
|------------------------------------------------------------|
   /if ((${ChatText.Equal[RDS]})) {
      /call FindExactPC ${Sender}
      /if (${String[${Macro.Return}].NotEqual[TARGET_SUCCESS]}) /return
      /if (${Target.Distance}<=${patchhealrange}) {
      		/tell ${Sender} Assisting you and RDSing!
      		/delay 2
      		:RDS_Loop
      		/Assist ${Sender}
      		/delay 4
         	/popup Casting RDS on (${Target})!
						/delay 2
					/Call Cast ${RDS} gem7
			/delay 20
			/if (${Macro.Return.Equal["CAST_RESISTED"]}) /goto :RDS_Loop
			/Target ${Tank}
         /delay 15 ${Me.SpellReady[${RDS}]}
      } else /tell ${Sender} your OOR
   }
|------------------------------------------------------------

|------------------------------------------------------------|
|		    Heal																	       		     |
|------------------------------------------------------------|
   /if ((${ChatText.Equal[HEAL]})) {
      /call FindExactPC ${Sender}
      /if (${String[${Macro.Return}].NotEqual[TARGET_SUCCESS]}) /return
      /if (${Target.Distance}<=${patchhealrange}) {
         	/popup Casting ${Heal} on (${Sender})!
						/delay 2
					/Call Cast ${Heal}
				/delay 20
			/Target ${Tank}
         /delay 15 ${Me.SpellReady[${Heal}]}
      } else /tell ${Sender} your OOR
   }
|------------------------------------------------------------

|------------------------------------------------------------|
|		    HOT																		      		     |
|------------------------------------------------------------|
   /if ((${ChatText.Equal[HOT]})) {
      /call FindExactPC ${Sender}
      /if (${String[${Macro.Return}].NotEqual[TARGET_SUCCESS]}) /return
      /if (${Target.Distance}<=${patchhealrange}) {
         	/popup Casting ${Hot} on (${Sender})!
						/delay 2
					/Call Cast ${Hot}
				/delay 20
			/Target ${Tank}
         /delay 15 ${Me.SpellReady[${Hot}]}
      } else /tell ${Sender} your OOR
   }
|------------------------------------------------------------

|------------------------------------------------------------|
|		    HP		     		     |
|------------------------------------------------------------|
   /if ((${ChatText.Equal[HP]})) {
      /call FindExactPC ${Sender}
      /if (${String[${Macro.Return}].NotEqual[TARGET_SUCCESS]}) /return
      /if (${Target.Distance}<=${patchhealrange}) {
         	/popup Casting ${HPBuff} on (${Sender})!
						/delay 2
					/Call Cast ${HPBuff} gem5
					/delay 20
			/Target ${Tank}
         /delay 15 ${Me.SpellReady[${HPBuff}]}
      } else /tell ${Sender} your OOR
   }
|------------------------------------------------------------
|------------------------------------------------------------|
|The upcoming subroutines are called via an echo to turn on/off the options for the macro
Sub Event_GHEALS(Zero, DGH)
	/echo ============================================
	/echo Changing Automatic Group Healing to ${DGH}
	/echo ============================================
	/varset DoGroupHeals ${DGH}
/return
|------------------------------------------------------------|
|The upcoming subroutines are called via an echo to turn on/off the options for the macro
Sub Event_GBUFFS(Zero, DGB)
	/echo ============================================
	/echo Changing Automatic Group Healing to ${DGB}
	/echo ============================================
	/varset DoGroupBuffs ${DGB}
/return
|------------------------------------------------------------|
|------------------------------------------------------------
Sub Event_REZ(Zero, REZT)
	/echo ============================================
	/echo Resurrecting: ${REZT}
	/echo ============================================
	:Rez_Loop
		/target ${REZT}
			/call cast ${ClickStick} item
				/delay 10
				/if (${Macro.Return.Equal["CAST_INTERRUPTED"]}) /goto :Rez_Loop
				/if (!${Macro.Return.Equal["CAST_SUCCESS"]}) /goto :Rez_Loop
/return
|------------------------------------------------------------|

|------------------------------------------------------------|
|		    Events
|------------------------------------------------------------|

|------------------------------------------------------------|
|This is called when you type /echo help.  Did I forget anything, probably?
Sub Event_HELP
/echo ----- Macro Information ------
/echo "/echo Master <Tank Name>" Sets who the bot will heal/assist.
/echo "/echo HealAt <Percent>" Sets the macro to Heal at selected Percentage.
/echo "/echo AssistAt <Percent>" Sets the macro to Assist at selected Percentage.
/echo "/echo Follow <TRUE / FALSE>" Sets if the bot will follow the Tank.
/echo "/echo Assist <TRUE or FALSE>" turns on/off auto-assisting.
/echo "/echo Sit <TRUE / FALSE>" turns on/off sitting when Follow is FALSE.
/echo "/echo Coh <Character Name>" Will target name and Call of the hero.
/echo ------------------------------
/return
|------------------------------------------------------------|
|The upcoming subroutines are called via an echo to turn on/off the options for the macro
Sub Event_MASTER(Zero, Name)
	/echo ============================================
	/echo Changing Master to ${Name}
	/echo ============================================
	/target ${Name} pc
		/delay 5 ${Target}==${Name}
			/target ${Name} pc
   /if (!${Target.ID}) { 
	/echo Failed to target the new Master! 
		/return
	} else { 
		/if (${Target.Type.Equal[PC]}) { 
			/varset Master ${Target}
			/varset MasterID ${Target.ID} 
				/echo I am now ${Master} 's Bitch.
			} else {
				/if (${Target.Type.Equal[NPC]}) {
				/echo Failed to target the New Master or New Master was an NPC/Corpse. 
					/return
							} 
					}
}
/return
|------------------------------------------------------------|
|The upcoming subroutines are called via an echo to turn on/off the options for the macro
Sub Event_ASSISTAT(Zero, PercentAssA)
	/echo ============================================
	/echo Changing AssistAt to ${PercentAssA}
	/echo ============================================
	/varset AssistAt ${PercentAssA}
/return
|------------------------------------------------------------|
|The upcoming subroutines are called via an echo to turn on/off the options for the macro
Sub Event_SIT(Zero, TFS)
	/echo ============================================
	/echo Changing Sit to ${TFS}
	/echo ============================================
	/varset Sit ${TFS}
/return
|------------------------------------------------------------|
|The upcoming subroutines are called via an echo to turn on/off the options for the macro
Sub Event_ASSIST(Zero, TFA)
	/echo ============================================
	/echo Changing Assist to ${TFA}
	/echo ============================================
	/varset Assist ${TFA}
/return
|------------------------------------------------------------|
|The upcoming subroutines are called via an echo to turn on/off the options for the macro
Sub Event_HEALAT(Zero, PercentHA)
	/echo ============================================
	/echo Changing HealAt to ${PercentHA}
	/echo ============================================
	/varset HealAt ${PercentHA}
/return
|------------------------------------------------------------|
|The upcoming subroutines are called via an echo to turn on/off the options for the macro
Sub Event_FOLLOW(Zero, TFF)
	/echo ============================================
	/echo Changing Follow to ${TFF}
	/echo ============================================
	/varset Follow ${TFF}
/return
|------------------------------------------------------------|
|The upcoming subroutines are called via an echo to turn on/off the options for the macro
Sub Event_DEATH(Zero, Death)
	/echo ============================================
	/echo Ohh shit! We died or zoned!
	/echo ============================================
	/end
/return
|------------------------------------------------------------|

Sub Event_SFG(Zero, SFGP)
|------------------------------------------------------------|
|		    SFG!				     													
|------------------------------------------------------------|
			:gosfg_Loop
			/call cast ${GateItem} item
			/delay 5 !${Me.Casting.ID}
						/if (${Macro.Return.Equal["CAST_INTERRUPTED"]}) /goto :gosfg_Loop
						/if (!${Macro.Return.Equal["CAST_SUCCESS"]}) /goto :gosfg_Loop
   /return
|------------------------------------------------------------
Sub Event_FAYDARK(Zero, FAYP)
|------------------------------------------------------------|
|		    Faydark!				     													
|------------------------------------------------------------|
			/target Sorin npc
			/stick 5
			/delay 15
				/say faydark
	/return
|------------------------------------------------------------
Sub Event_CRYSTAL(Zero, CRYP)
|------------------------------------------------------------|
|		    Crystal!				     													
|------------------------------------------------------------|
			/target Sorin npc
			/stick 5
			/delay 15
				/say crystal
	/return
|------------------------------------------------------------
Sub Event_ACRYLIA(Zero, ACRP)
|------------------------------------------------------------|
|		    Acrylia!				     													
|------------------------------------------------------------|
			/target Sorin npc
			/stick 5
			/delay 15
				/say acrylia
   /return
|------------------------------------------------------------
Sub Event_BUTCHER(Zero, BUTP)
|------------------------------------------------------------|
|		    Butcher!				     													
|------------------------------------------------------------|
			/target Sorin npc
			/stick 5
			/delay 15
				/say butcher
   /return
|------------------------------------------------------------
Sub Event_FIRE(Zero, FIRP)
|------------------------------------------------------------|
|		    Keep!				     													
|------------------------------------------------------------|
			/target Sorin npc
			/stick 5
			/delay 15
				/say fire
   /return
|------------------------------------------------------------
Sub Event_KEEP(Zero, KEEP)
|------------------------------------------------------------|
|		    Keep!				     													
|------------------------------------------------------------|
			/target Sorin npc
			/stick 5
			/delay 15
				/say keep
   /return
|------------------------------------------------------------
Sub Event_LAIR(Zero, LIAP)
|------------------------------------------------------------|
|		    Lair!				     													
|------------------------------------------------------------|
			/target Sorin npc
			/stick 5
			/delay 15
				/say lair
   /return
|------------------------------------------------------------
Sub Event_OVERTHERE(Zero, OVEP)
|------------------------------------------------------------|
|		    Overthere!				     													
|------------------------------------------------------------|
			/target Sorin npc
			/stick 5
			/delay 15
				/say overthere
   /return
|------------------------------------------------------------
Sub Event_HATE(Zero, HATP)
|------------------------------------------------------------|
|		    Hate!				     													
|------------------------------------------------------------|
			/target Sorin npc
			/stick 5
			/delay 15
				/say hate
   /return
|------------------------------------------------------------
Sub Event_UNREST(Zero, UNRP)
|------------------------------------------------------------|
|		    Unrest!				     													
|------------------------------------------------------------|
			/target "Aeridin of the Conclave" npc
			/stick 5
			/delay 15
				/say unrest
   /return
|------------------------------------------------------------
Sub Event_KITHICOR(Zero, KITP)
|------------------------------------------------------------|
|		    Kitchicor!				     													
|------------------------------------------------------------|
			/target "Aeridin of the Conclave" npc
			/stick 5
			/delay 15
				/say kitchicor
   /return
|------------------------------------------------------------
Sub Event_LAKE(Zero, LAKP)
|------------------------------------------------------------|
|		    Lake!				     													
|------------------------------------------------------------|
			/target "Aeridin of the Conclave" npc
			/stick 5
			/delay 15
				/say lake
   /return
|------------------------------------------------------------
Sub Event_MAZE(Zero, MAZP)
|------------------------------------------------------------|
|		    Maze!				     													
|------------------------------------------------------------|
			/target "Aeridin of the Conclave" npc
			/stick 5
			/delay 15
				/say maze
   /return
|------------------------------------------------------------
Sub Event_MARR(Zero, MARP)
|------------------------------------------------------------|
|		    Marr!				     													
|------------------------------------------------------------|
			/target "Aeridin of the Conclave" npc
			/stick 5
			/delay 15
				/say marr
   /return
|------------------------------------------------------------
Sub Event_SOLUSEK(Zero, SOLP)
|------------------------------------------------------------|
|		    solusek!				     													
|------------------------------------------------------------|
			/target "Aeridin of the Conclave" npc
			/stick 5
			/delay 15
				/say solusek
	/return
|------------------------------------------------------------
 
Last edited:
Emu Cleric Heal/Assist Macro

Users who are viewing this thread

Back
Top
Cart