/*
 * Determines whether or not the target can be erased
 */
bool TemporalClass::CanWarpTarget(TechnoClass *target) {
  if ( !target )
    return 0;

  if ( !target->GetType()->Warpable )
    return 0;

  if ( target->IsIronCurtained() )
    return 0;

  if( target->What_Am_I() != IS_UNIT )
    return 1;

  // Radio_GetNthEntry returns the object caller is currently in (repair bay, exiting warfac, etc.)
  TechnoClass *entry = target->Radio_GetNthEntry(0);
  if( !entry )
    return 1;

  if( entry->What_Am_I() != IS_BUILDING )
    return 1;

  if( !entry->BuildingType->WeaponsFactory )
    return 1;

  return Map->GetCell(target->position)->GetBuilding() != entry;
}