protected void configFromAdjacent(boolean[] near, int numNear) {
    final Tile o = origin() ;
    type = TYPE_SOLAR ;
    
    if (numNear > 0 && numNear <= 2) {
      if (near[N] || near[S]) {
        facing = Y_AXIS ;
        if (o.y % 8 == 0) {
          type = TYPE_WIND ;
          attachModel(MODEL_TRAP_RIGHT) ;
        }
        else attachModel(MODEL_RIGHT) ;
        return ;
      }
      if (near[W] || near[E]) {
        facing = X_AXIS ;
        if (o.x % 8 == 0) {
          type = TYPE_WIND ;
          attachModel(MODEL_TRAP_LEFT) ;
        }
        else attachModel(MODEL_LEFT) ;
        return ;
      }
    }
    
    facing = CORNER ;
    attachModel(MODEL_LEFT) ;
  }