public float mineralsAt(Tile t, byte type) {
    byte m = minerals[t.x][t.y] ;
    if (m == 0) return 0 ;
    if (m / NUM_TYPES != type) return 0 ;
    switch (m % NUM_TYPES) {
      case (DEGREE_TRACE)  : return AMOUNT_TRACE  ;
      case (DEGREE_COMMON) : return AMOUNT_COMMON ;
      case (DEGREE_HEAVY ) : return AMOUNT_HEAVY  ;
    }
    return 0 ;
  }