rem: utwig_intelligence (ShipPtr, ObjectsOfConcern, ConcernCounter) PELEMENT ShipPtr; PEVALUATE_DESC ObjectsOfConcern; COUNT ConcernCounter;
add: utwig_intelligence (PELEMENT ShipPtr, PEVALUATE_DESC ObjectsOfConcern, COUNT ConcernCounter)
context: utwig_intelligence (ShipPtr, ObjectsOfConcern, ConcernCounter)PELEMENT ShipPtr;PEVALUATE_DESC ObjectsOfConcern;COUNT ConcernCounter;{	SIZE ShieldStatus;	STARSHIPPTR StarShipPtr;	PEVALUATE_DESC lpEvalDesc;	GetElementStarShip (ShipPtr, &StarShipPtr);	lpEvalDesc = &ObjectsOfConcern[ENEMY_WEAPON_INDEX];	if (StarShipPtr->RaceDescPtr->ship_info.energy_level == 0)		ShieldStatus = 0;	else	{		ShieldStatus = -1;		if (lpEvalDesc->ObjectPtr && lpEvalDesc->MoveState == ENTICE)		{			ShieldStatus = 0;			if (!(lpEvalDesc->ObjectPtr->state_flags & FINITE_LIFE))				lpEvalDesc->MoveState = PURSUE;			else if (lpEvalDesc->ObjectPtr->mass_points					|| (lpEvalDesc->ObjectPtr->state_flags & CREW_OBJECT))			{				if ((lpEvalDesc->which_turn >>= 1) == 0)					lpEvalDesc->which_turn = 1;				if (lpEvalDesc->ObjectPtr->mass_points)					lpEvalDesc->ObjectPtr = 0;				else					lpEvalDesc->MoveState = PURSUE;				ShieldStatus = 1;			}		}	}	if (StarShipPtr->special_counter == 0)	{		StarShipPtr->ship_input_state &= ~SPECIAL;		if (ShieldStatus)		{			if ((ShieldStatus > 0 || lpEvalDesc->ObjectPtr)					&& lpEvalDesc->which_turn <= 2					&& (ShieldStatus > 0					|| (lpEvalDesc->ObjectPtr->state_flags					& PLAYER_SHIP) /* means IMMEDIATE WEAPON */					|| PlotIntercept (lpEvalDesc->ObjectPtr,					ShipPtr, 2, 0))					&& (TFB_Random () & 3))			{				StarShipPtr->ship_input_state |= SPECIAL;				StarShipPtr->ship_input_state &= ~WEAPON;			}			lpEvalDesc->ObjectPtr = 0;		}	}	if (StarShipPtr->RaceDescPtr->ship_info.energy_level			&& (lpEvalDesc = &ObjectsOfConcern[ENEMY_SHIP_INDEX])->ObjectPtr)	{		STARSHIPPTR EnemyStarShipPtr;		GetElementStarShip (lpEvalDesc->ObjectPtr, &EnemyStarShipPtr);		if (!(EnemyStarShipPtr->RaceDescPtr->ship_info.ship_flags				& IMMEDIATE_WEAPON))			lpEvalDesc->MoveState = PURSUE;	}	ship_intelligence (ShipPtr, ObjectsOfConcern, ConcernCounter);}