void OnMessageReceived( const Telegram@ telegram )
{
switch( telegram.Type )
{
//*
case Messages::BODY_WITHIN_RADAR_RANGE:
{
TA_Body@ sensed_body = null;
telegram.Data.retrieve(@sensed_body);
if( sensed_body is null || !sensed_body.IsValid) { /*Println("The sensed body was null or invalid for whatever reason."); */ return; }
if( /*!IsFriendly(sensed_body) &&*/ !IsDead )
{
m_SensoryMemory.SaveMemoryEntry( TA_MemoryRecord(sensed_body.TA_Mind,sensed_body.Position) );
}
} break;
// */
case Messages::AGENT_ORDER_DROP_EVERYTHING:
case Messages::AGENT_ORDER_PATROL:
case Messages::AGENT_ORDER_WEAPONS_FREE:
case Messages::AGENT_ORDER_DEFEND:
case Messages::AGENT_ORDER_SEEK_AND_DESTROY:
{
//DispatchMessage( 0,m_ThinkGoal,message,data );
} break;
}
// The base class may have things to do in response as well.
TA_Mind::OnMessageReceived( telegram );
}