IF
	AttackedBy([GOODCUTOFF],DEFAULT)
	OR(3)
		Allegiance(Myself,GOODBUTBLUE)
		Allegiance(Myself,NEUTRAL)
		Allegiance(Myself,EVILBUTBLUE)
THEN
	RESPONSE #100
		Shout(151)
		Enemy()
END

IF
	HitBy([GOODCUTOFF],CRUSHING)
THEN
	RESPONSE #100
		Shout(151)
		Continue()
END

IF
	See([GOODCUTOFF])
	Allegiance(Myself,ENEMY)
	ActionListEmpty()
THEN
	RESPONSE #100
		Shout(151)
		Continue()
END

IF
	Heard([ANYONE],151)
	InMyGroup(LastHeardBy(Myself))
	!Class(Myself,INNOCENT)
	OR(2)
		Allegiance(Myself,GOODBUTBLUE)
		Allegiance(Myself,NEUTRAL)
THEN
	RESPONSE #100
		Enemy()
		MoveToObject(LastHeardBy(Myself))
END

IF
	Heard([ANYONE],151)
	InMyGroup(LastHeardBy(Myself))
	OR(2)
		Allegiance(Myself,GOODBUTBLUE)
		Allegiance(Myself,NEUTRAL)
THEN
	RESPONSE #100
		Enemy()
END

IF
	Heard([ANYONE],151)
	InMyGroup(LastHeardBy(Myself))
	!Class(Myself,INNOCENT)
	!See(NearestEnemyOf(Myself))
THEN
	RESPONSE #100
		MoveToObject(LastHeardBy(Myself))
		Continue()
END

IF
	General(Myself,HUMANOID)
	HPPercentLT(Myself,20)
	HPGT(Myself,0)
	Global("whined","LOCALS",0)
	See(NearestMyGroupOfType)
	Allegiance(Myself,ENEMY)
	HPGT(LastSeenBy(Myself),0)
THEN
	RESPONSE #50
		SetGlobal("whined","LOCALS",1)
		DisplayStringHead(Myself,46151) // help!
		Shout(153)
	RESPONSE #50
		SetGlobal("whined","LOCALS",1)
		DisplayStringHead(Myself,49763) // I require assistance
		Shout(153)
	RESPONSE #50
		SetGlobal("whined","LOCALS",1)
		DisplayStringHead(Myself,49764) // Defend me!
		Shout(153)
	RESPONSE #50
		SetGlobal("whined","LOCALS",1)
		DisplayStringHead(Myself,49765) // Slay my attacker!
		Shout(153)
END

IF
	Heard([ANYONE],153)
	InMyGroup(LastHeardBy(Myself))
	!HaveAnySpells()
THEN
	RESPONSE #100
		EquipRanged()
		AttackReevaluate(LastAttackerOf(LastHeardBy(Myself)),30)
END

IF
	BreakingPoint()
	Global("Panic","LOCALS",0)
THEN
	RESPONSE #50
		SetGlobal("Panic","LOCALS",1)
		DisplayStringHead(Myself,49766) // I can't take this
	RESPONSE #50
		SetGlobal("Panic","LOCALS",1)
		DisplayStringHead(Myself,49767) // No more
	RESPONSE #50
		SetGlobal("Panic","LOCALS",1)
		DisplayStringHead(Myself,49768) // Mercy!
END

IF
	HitBy(Myself,CRUSHING)
THEN
	RESPONSE #100
		RunAwayFrom(NearestEnemyOf(Myself),15)
END

IF
	Global("attackSpellcaster","GLOBAL",1)
	!Allegiance(Myself,ENEMY)
THEN
	RESPONSE #100
		SetGlobal("attackSpellcaster","GLOBAL",0)
		Enemy()
END

IF
	See(NearestEnemyOf(Myself))
	HPPercentLT(Myself,20)
	HasItemSlot(Myself,SLOT_MISC1)
THEN
	RESPONSE #100
		DisplayStringHead(Myself,46150) // quaffs a potion
		UseItemSlot(Myself,SLOT_MISC1)
END

IF
	See(NearestEnemyOf(Myself))
	!StateCheck(Myself,STATE_INVISIBLE)
	!StateCheck(Myself,STATE_IMPROVEDINVISIBILITY)
	HasItemSlot(Myself,SLOT_MISC)
	Delay(6)
THEN
	RESPONSE #100
		DisplayStringHead(Myself,46150) // quaffs a potion
		UseItemSlot(Myself,SLOT_MISC)
END

IF
	See(NearestEnemyOf(Myself))
	HasItemSlot(Myself,SLOT_MISC2)
	Delay(12)
THEN
	RESPONSE #100
		DisplayStringHead(Myself,46150) // quaffs a potion
		UseItemSlot(Myself,SLOT_MISC2)
END

IF
	See(NearestEnemyOf(Myself))
	HasItemSlot(Myself,SLOT_MISC3)
THEN
	RESPONSE #100
		UseItemSlot(Myself,SLOT_MISC3)
END

IF
	See(NearestEnemyOf(Myself))
	HasItemSlot(Myself,SLOT_MISC4)
	Delay(12)
THEN
	RESPONSE #100
		UseItemSlot(Myself,SLOT_MISC4)
END

IF
	See(NearestEnemyOf(Myself))
	HasItemSlot(Myself,SLOT_MISC5)
THEN
	RESPONSE #100
		UseItemSlot(LastSeenBy(Myself),SLOT_MISC5)
END


