Changed changed so default unly asisting on npc / pet's
Added: /mainAssist name [name] | mode [0-4]
Code: Select all
|**************************************************************************************************
| Assist_Rutine.inc
|
| Written by A_Enchanter_00
| Last Modified 01/22/2006
|
| Features:
| ***********************************************************************************************
| ** IMPORTANT: You Can Assign in your main macro
| ** ${isPaused} is Used For /return if macro is paused!
| ** -- /declare isPaused bool outer TRUE / FALSE
| ** ${AssistMode} is to define the Mode on how to assist
| ** AssistMode 0 OFF
| ** AssistMode 1 Assist in order Group / Raid / Normal
| ** AssistMode 2 Group Assist Mode
| ** AssistMode 3 Raid Asssist Mode
| ** AssistMode 4 Normal Assist Mode
| ** -- /declare AssistMode int outer 0 - 3
| ** Name of MainAssist, used ONLY when running AssistMode 0 and 3
| ** -- /declare MainAssist string outer NameOfMainAssist
| ** The ID off The Last / Curent MainAssist's Target ID
| ** -- /declare MainAssistTarget int outer 0
| ***********************************************************************************************
| Usage:
| ** /call Assist <- Assist whatever the is on target NOTE: AssistMode
|
| Events:
| ADD : /doevents SetMainAssist OR /doevents
| ** /mainAssist name [name] | mode [0-4]
***************************************************************************************************|
#Event SetMainAssist "[MQ2] SetMainAssist #1# #2#"
Sub Assist(bool targetSelf)
/if ( !${Defined[AssistMode]} ) /declare AssistMode int outer 0
/if ( !${Defined[MainAssist]} ) /declare MainAssist string outer NULL
/if ( !${Defined[MainAssistTarget]} ) /declare MainAssistTarget int outer 0
/if ( ${isPaused} || ${Me.Casting.ID} || !${AssistMode} ) /return
/if ( ( ${AssistMode} == 1 || ${AssistMode} == 2 ) && ${Me.GroupAssistTarget.ID} && ${Me.GroupAssistTarget.Distance} < 250 ) {
/if ( ${Me.GroupAssistTarget.Type.NotEqual[NPC]} || ${Me.GroupAssistTarget.Type.NotEqual[PET]} ) {
/if ( ${Me.GroupAssistTarget.Master.ID} && ${Me.GroupAssistTarget.Master.Type.NotEqual[PC]} ) {
/target id ${Me.GroupAssistTarget.ID}
/varset MainAssistTarget ${Me.GroupAssistTarget.ID}
} else {
/target id ${Me.GroupAssistTarget.ID}
/varset MainAssistTarget ${Me.GroupAssistTarget.ID}
}
} else {
/varset MainAssistTarget 0
}
} else /if ( ( ${AssistMode} == 1 || ${AssistMode} == 3 ) && ( ${Me.RaidAssistTarget[1].ID} || ${Me.RaidAssistTarget[2].ID} || ${Me.RaidAssistTarget[3].ID} ) ) {
/declare i int local
/for i 1 to 3
/if ( ${Me.RaidAssistTarget[${i}].ID} && ( ${Me.RaidAssistTarget[${i}].Type.Equal[NPC]} || ${Me.RaidAssistTarget[${i}].Type.Equal[PET]} ) ) {
/if ( ${Me.RaidAssistTarget[${i}].Master.ID} && ${Me.RaidAssistTarget[${i}].Master.Type.NotEqual[PC]} ) {
/target id ${Me.RaidAssistTarget[${i}].ID}
/varset MainAssistTarget ${Me.RaidAssistTarget[${i}].ID}
/return
} else {
/target id ${Me.RaidAssistTarget[${i}].ID}
/varset MainAssistTarget ${Me.RaidAssistTarget[${i}].ID}
/return
}
} else /if ( !${Me.RaidAssistTarget[${i}].ID} ) {
/varset MainAssistTarget 0
}
/next i
} else /if ( ( ${AssistMode} == 1 || ${AssistMode} == 4 ) && ${Spawn[pc ${MainAssist}].ID} ) {
/if ( ${targetSelf} ) /target myself
/assist ${MainAssist}
/if ( ${targetSelf} ) {
/delay 10 ${Target.ID} != ${Me.ID}
} else {
/delay 10
}
/if ( ${Target.ID} && ${Target.ID} != ${Me.ID} ) {
/if ( ${Target.Type.Equal[NPC]} || ${Target.Type.Equal[PET]} ) {
/if ( ${Target.Master.ID} && ${Target.Master.Type.NotEqual[PC]} ) {
/varset MainAssistTarget ${Target.ID}
} else {
/varset MainAssistTarget ${Target.ID}
}
} else {
/varset MainAssistTarget 0
/return
}
} else {
/varset MainAssistTarget 0
}
} else {
/varset MainAssistTarget 0
}
/return
|************************
Events
************************|
Sub Event_SetMainAssist(string Line, string Command, string Value)
/if ( !${Defined[AssistMode]} ) /declare AssistMode int outer 0
/if ( !${Defined[MainAssist]} ) /declare MainAssist string outer NULL
/if ( !${Defined[MainAssistTarget]} ) /declare MainAssistTarget int outer 0
/if ( ${Command.Find[mode]} ) {
/if ( ${Int[${Value}]} < 5 ) {
/varset AssistMode ${Int[${Value}]}
} else {
/varset AssistMode 0
}
} else /if ( ${Command.Find[name]} ) {
/if ( ${Defined[Value]} ) /varset MainAssist ${Value}
} else {
/echo ** Usage: /mainassist name [name] | mode [0-3] **
}
/echo **** Status Assist **********************************************************
/if ( ${AssistMode} == 1 ) {
/echo Assisting: In Order Group | Raid 1-3 | Normal @ ${MainAssist}% target health!
} else /if ( ${AssistMode} == 2 ) {
/echo Assisting: Group
} else /if ( ${AssistMode} == 3 ) {
/echo Assisting: Raid 1 - 3
} else /if ( ${AssistMode} == 4 ) {
/echo Assisting: Normal @ ${MainAssist}% target health!
}
/echo ******************************************************************************
/return
