All pastes #470322 Raw Edit

c0ke

public cpp v1 · immutable
·published 2007-05-04 06:08 UTC
rendered paste body
	member CastSpellGUID(string GUID, string spellname)	{		If ${Spell[${spellname}](exists)} && !${Spell[${spellname}].Cooldown} && ${GUID.NotEqual[NULL]} && ${This.EnsureMana[${spellname}]}		{			/* Add here a test for instant Spell */			Move -stop			Target ${GUID}			if ${GUID.NotEqual[${Me.GUID}]}			{				Navigator:FaceXYZ[${Unit[${GUID}].X},${Unit[${GUID}].Y},${Unit[${GUID}].Z}]			}			Spell[${spellname}]:Cast			return TRUE		}		return FALSE	}	member NeedBuff(string GUID, string spellname)	{		If !${Object[${GUID}].Buff[${spellname}](exists)}		{			return TRUE		}		return FALSE	}		member EnsureBuff(string GUID, string spellname)	{		If ${This.NeedBuff[${GUID},${spellname}]}		{			return ${This.CastSpellGUID[${GUID}, ${spellname}]}		}		return FALSE	}	member EnsureMana(string spellname)	{		if ${Spell[${spellname}](exists)} && !${Spell[${spellname}].Mana}		{			return TRUE		}		if ${Me.Class.Equal[Rogue]}		{			if ${Spell[${spellname}](exists)} && ${Me.CurrentEnergy} >= ${Spell[${spellname}].Mana}			{				return TRUE			}		}		elseif ${Me.Class.Equal[Rogue]} || (${Me.Class.Equal[Druid]} && ${Me.Buff[Form](exists)})		{			if ${Spell[${spellname}](exists)} && ${Me.CurrentRage} >= ${Math.Calc[${Spell[${spellname}].Mana} / 1000]}			{				return TRUE			}		}		else		{			if ${Spell[${spellname}](exists)} && ${Me.CurrentMana} >= ${Spell[${spellname}].Mana}			{				return TRUE			}		}		return FALSE	}	member HasAction(string spellname)	{		if ${Me.Action[${spellname}](exists)} && ${Me.Action[${spellname}].Usable}		{			return TRUE		}		return FALSE	}