func void ZS_Flee ()
// Hauen wir mal ab 
{
	PrintDebug("ZS_Flee");
	if(Npc_IsNear (self,other)) 
	{
		
			if(Npc_IsInFightMode (other,FMODE_FIST) || Npc_IsInFightMode (other,FMODE_MELEE) || Npc_IsInFightMode (other,FMODE_FAR))// Böser Angreifer nahe
			{
				if (C_CanIFleeFrom (self))// Komme ich hier weg ?
				{
					/*var string  wphelp;
					wphelp = Npc_GetNearestWP (self);
					if (! (wphelp == Npc_GetNearestWP (other)))
					{
						AI_GotoWP(self,wphelp);
					}
					else 
					{
						AI_GotoWP(self,Npc_GetNextWP(self));
					};
					AI_GotoWP(self, Npc_GetNearestWp(self)); // Hier bleib ich erst mal stehen
					AI_GotoWP(self, Npc_GetNextWp(self)); // Hier bleib ich erst mal stehen
					AI_GotoWP(self, Npc_GetNearestWp(self)); // Hier bleib ich erst mal stehen
					AI_GotoWP(self, Npc_GetNextWp(self)); // Hier bleib ich erst mal stehen
					AI_GotoWP(self, Npc_GetNearestWp(self)); // Hier bleib ich erst mal stehen
					AI_GotoWP(self, Npc_GetNextWp(self)); // Hier bleib ich erst mal stehen
					AI_GotoWP(self, Npc_GetNearestWp(self)); // Hier bleib ich erst mal stehen
					AI_GotoWP(self, Npc_GetNextWp(self)); // Hier bleib ich erst mal stehen*/
					B_Say(self,"$LeaveMeAlone");
					AI_DoState (self,ZS_HelpAttack,0);
					/*if (Hlp_StrCmp(Npc_GetNearestWp (self),"ow_flee")== 0)
					{
						AI_SetWalkmode (self, NPC_RUN);
						AI_GotoWP (self,"ow_flee2");
					}
					else
					{
						AI_SetWalkMode (self,NPC_RUN);
						AI_GotoWP (self, "ow_flee");
					};*/
				}
				else
				{
					AI_DoState (self,ZS_Bezerk ,1); // Ich bin in die Enge getrieben also DoTheBezerk
				};
			
		};
	}
	else
	{	
		PrintDebug("ZS_FleeelseHeal");
		B_LookAt (self,other,2);// wirklich keiner da
		AI_DoState (self,ZS_Heal ,1);// Also mal was für die Gesundheit tun
	};
};