void CComStation::PossibleCollision(CInterval*& aInterval)
{
	//go through all objects and check if care to collide with them
	if(iAlive)
	{
		CPointerArray<CGameObject>* lGameObjects = aInterval->GetGameObjectsByType(EObjectTypesPlane);

		for(TInt lCurrentObjectIndex = 0; lCurrentObjectIndex < lGameObjects->GetCount(); lCurrentObjectIndex++)
		{
			CGameObject* lCurrentGameObject = lGameObjects->Get(lCurrentObjectIndex);

			//only collide with alive objects
			if(lCurrentGameObject->IsAlive())//don't compare to anything if already dead
			{
				//collide
				if(iHitBox->IntersectionL(lCurrentGameObject->GetHitBox()))
				{ //make sure plane is dead
					SDamage lDamage;
					lDamage.Damage = KILL_ANY_AIRPLANE_DAMAGE;
					lDamage.ArmorPenetration = KILL_ANY_AIRPLANE_ARMOR_PENETRATION;//should kill any object
					lCurrentGameObject->TakeDamage(lDamage, EDamageTypeTankPlaneCollision);
				}
			}
		}

		//clean up
		delete lGameObjects;
	}

	//check if this object got captured
	CGameObject* lCaptureObject = CheckIfObjectGotCaptured(aInterval);
	if(lCaptureObject)
	{
		iFlagPole->ChangeFlagConflictSide(lCaptureObject->GetConflictSide());
		iConflictSide = lCaptureObject->GetConflictSide();
	}
}
TBool CWeaponsTutorialLoseIfAllAmericanSoldiersDied::TutorialEventLogic() //checks if the Event Condition has been met
{
	CGameObjectManager* lObjectManager = CFighterPilotThePacificWar::FighterGame->iGameData->GetMap()->GetObjectManager();
	CPointerArray<CGameObject>*& lObjects = lObjectManager->GetAllGameObjects();

	for(TInt lIndex = 0; lIndex < lObjects->GetCount(); lIndex++)
	{
		CGameObject* lCurrentGameObject = lObjects->Get(lIndex);
		if(lCurrentGameObject->GetConflictSide() == EConflictSideAmerican && lCurrentGameObject->GetGameObjectType() == EObjectTypesGroundUnit)
		{
			if(lCurrentGameObject->IsAlive())
				return false;
		}
	}
	
	return true; //all American soldiers on the map died
}