func void ZS_ReactToDamage ()
// keine Loop, da hier nur kurz nachgesehen wird was und wer passiert ist !
{	
	PrintDebug("ZS_ReactToDamage");//Friendly ???
	B_DrawWeapon(self);
	Npc_WarnFriends	( self, other);
	if (!Wld_DetectPlayer(self))
	{
		AI_DoState(self,ZS_SeekEnemy,3);
	}
	else if (C_AreWeStronger (self,other))
	{
		PrintDebug("ZS_ReactToDamage_Else");
		AI_DoState(self,ZS_HelpAttack,0);
	}
	else if (! C_AreWeStronger (self,other))
	{
		AI_DoState (self, ZS_Flee,3);
	};

};

func void ZS_ReactToFriendsDamage ()
// keine Loop, da hier nur kurz nachgesehen wird was und wer mit wem passiert ist !
{
	if (Npc_IsPlayer (other))
	{
		PrintDebug("ZS_ReactToFriendsDamage");
		B_AssessAndMemorize(NEWS_ATTACK,0);
		B_LookAt (self, other,0); // Wo kam der Schaden an meinem Freund her ?
		PrintDebug ("HEY !!Mach meinen Kumpel nich an!"); // So ja nicht Freundchen
		B_Say (self,"$HoldHim");
		PrintDebug ("HEY >Hold him");
		if (Npc_GetAttitude(self,other) ==ATT_HOSTILE)
		{
			AI_DoState (self,ZS_AssessEnemy,0); // Ob wir den wohl kleinkriegen ?
		}
		else
		{
		};
	};
};

func void ZS_AssessFriendsDamage()
{
	AI_DoState (self,ZS_ReactToFriendsDamage,0);
}; 