//-----------------------------------------------------------------------------
// Purpose: Test whether this antlion can hit the target
//-----------------------------------------------------------------------------
bool CNPC_Bullsquid::InnateWeaponLOSCondition(const Vector &ownerPos, const Vector &targetPos, bool bSetConditions)
{
	if (GetNextAttack() > gpGlobals->curtime)
		return false;

	// If we can see the enemy, or we've seen them in the last few seconds just try to lob in there
	if (SeenEnemyWithinTime(3.0f))
	{
		Vector vSpitPos;
		GetAttachment("mouth", vSpitPos);

		return GetSpitVector(vSpitPos, targetPos, &m_vecSaveSpitVelocity);
	}

	return BaseClass::InnateWeaponLOSCondition(ownerPos, targetPos, bSetConditions);
}
//---------------------------------------------------------
//---------------------------------------------------------
int CNPC_Combine_Cannon::RangeAttack1Conditions( float flDot, float flDist )
{
	if ( GetNextAttack() > gpGlobals->curtime )
		return COND_NONE;

	if ( HasCondition( COND_SEE_ENEMY ) && !HasCondition( COND_ENEMY_OCCLUDED ) )
	{
		if ( VerifyShot( GetEnemy() ) )
		{
			// Can see the enemy, have a clear shot to his midsection
			ClearCondition( COND_CANNON_NO_SHOT );
			return COND_CAN_RANGE_ATTACK1;
		}
		else
		{
			// Can see the enemy, but can't take a shot at his midsection
			SetCondition( COND_CANNON_NO_SHOT );
			return COND_NONE;
		}
	}

	return COND_NONE;
}