public void mergeInto(WorldMap otherMap){
    // Loop over every entry in the arrays of the other map
    for(int y = 0; y < otherMap.lastSeenTimeStep.length; y++){
      for(int x = 0; x < otherMap.lastSeenTimeStep[y].length; x++){
        int myx = x - otherMap.xCenter + xCenter;
        int myy = y - otherMap.yCenter + yCenter;
        int ts = otherMap.lastSeenTimeStep[y][x];

        // If it is a valid position (within our current arrays), then we want
        // to check the timestep. Otherwise, we can just call update.
        if(validPosition(x - otherMap.xCenter, y - otherMap.yCenter)){
          if(ts > this.lastSeenTimeStep[myy][myx]){
            updateMap(x - otherMap.xCenter, y - otherMap.yCenter, 
                      otherMap.walls[y][x],
                      otherMap.foodAmounts[y][x],
                      otherMap.foodAmounts[y][x],
                      ts);
          }
        }else{
          updateMap(x - otherMap.xCenter, y - otherMap.yCenter, 
                    otherMap.walls[y][x],
                    otherMap.foodAmounts[y][x],
                    otherMap.foodAmounts[y][x],
                    ts);
        }
      }
    }
  }