All pastes #570549 Raw Edit

Anonymous

public text v1 · immutable
·published 2007-06-16 19:27 UTC
rendered paste body
function UsePetAbilities()
{
	if (${Math.Calc[${Math.Distance[${Me.Pet.ToPawn.Location.X},${Me.Pet.ToPawn.Location.Y},${Pawn[id,${PetsTarget}].Location.X},${Pawn[id,${PetsTarget}].Location.Y}].Int}/100]}<=10)
	{
		if ${Math.Calc[${Math.Distance[${Me.Pet.ToPawn.Location.X},${Me.Pet.ToPawn.Location.Y},${Me.ToPawn.Location.X},${Me.ToPawn.Location.Y}].Int}/100]}>=${PullBackDist}
		{
			Call BackoffPet
		}
		if ${Me.Pet.Ability[1].IsReady} && ${doPetAbility1}
		{
			Me.Pet.Ability[1]:Use
			Wait 3
		}
		if ${Me.Pet.Ability[2].IsReady} && ${doPetAbility2}
		{
			Me.Pet.Ability[2]:Use
			Wait 3
		}
		if ${Me.Pet.Ability[3].IsReady} && ${doPetAbility3}
		{
			Me.Pet.Ability[3]:Use
			Wait 3
		}
		if ${Me.Pet.Ability[4].IsReady} && ${doPetAbility4}
		{
			Me.Pet.Ability[4]:Use
			Wait 3
		}
		if ${Me.Pet.Ability[5].IsReady} && ${doPetAbility5}
		{
			Me.Pet.Ability[5]:Use
			Wait 3
		}
		if ${Me.Pet.Ability[6].IsReady} && ${doPetAbility6}
		{
			Me.Pet.Ability[6]:Use
			Wait 3
		}
	}
}

function AngroPet()
{
	PetsTarget:Set[${Me.Target.ID}]
	while ${Me.Pet.ToPawn.CombatState}==1
	{
		Call UseCombatAbilities
		Call UsePetAbilities
		Call UseDotAbilities
	}
}

function UseCombatAbilities()
{
	if !${Me.IsCasting} && ${Me.Ability[${CombatA1}].IsReady} && ${doCombatA1} && ${Me.Target.ID} && ${Me.Energy}>${Me.Ability[${CombatA1}].EnergyCost}
	{
		Me.Ability[${CombatA1}]:Use
		call MeCasting
		return
	}
	if !${Me.IsCasting} && ${Me.Ability[${CombatA2}].IsReady} && ${doCombatA2} && ${Me.Target.ID} && ${Me.Energy}>${Me.Ability[${CombatA2}].EnergyCost}
	{
		Me.Ability[${CombatA2}]:Use
		call MeCasting
		return
	}
	if !${Me.IsCasting} && ${Me.Ability[${CombatA3}].IsReady} && ${doCombatA3} && ${Me.Target.ID} && ${Me.Energy}>${Me.Ability[${CombatA3}].EnergyCost}
	{
		Me.Ability[${CombatA3}]:Use
		call MeCasting
		return
	}
	if !${Me.IsCasting} && ${Me.Ability[${CombatA4}].IsReady} && ${doCombatA4} && ${Me.Target.ID} && ${Me.Energy}>${Me.Ability[${CombatA4}].EnergyCost}
	{
		face
		waitframe
		Me.Ability[${CombatA4}]:Use
		call MeCasting
		return
	}
}

function UseDotAbilities()
{
	if !${Me.IsCasting} && ${Me.Ability[${Dot1}].IsReady} && ${doDot1} && ${Me.Energy}>${Me.Ability[${CombatA3}].EnergyCost}
	{
		if !${Me.TargetEffect[${Dot1}](exists)} && ${Me.Target.ID}
		{
			face
			waitframe
			Me.Ability[${Dot1}]:Use
			call MeCasting
			return
		}
	}
	if !${Me.IsCasting} && ${Me.Ability[${Dot2}].IsReady} && ${doDot2} && ${Me.Energy}>${Me.Ability[${CombatA3}].EnergyCost}
	{
		if !${Me.TargetEffect[${Dot2}](exists)} && ${Me.Target.ID}
		{
			face
			waitframe
			Me.Ability[${Dot2}]:Use
			call MeCasting
			return
		}
	}
	if !${Me.IsCasting} && ${Me.Ability[${Dot3}].IsReady} && ${doDot3} && ${Me.Energy}>${Me.Ability[${CombatA3}].EnergyCost}
	{
		if !${Me.TargetEffect[${Dot3}](exists)} && ${Me.Target.ID}
		{
			face
			waitframe
			Me.Ability[${Dot3}]:Use
			call MeCasting
			return
		}
	}
	if !${Me.IsCasting} && ${Me.Ability[${Dot4}].IsReady} && ${doDot4} && ${Me.Energy}>${Me.Ability[${CombatA3}].EnergyCost}
	{
		if !${Me.TargetEffect[${Dot4}](exists)} && ${Me.Target.ID}
		{
			face
			waitframe
			Me.Ability[${Dot4}]:Use
			call MeCasting
			return
		}
	}
}