Right, the overflow will not create a crash, the counter is simply ignored for drop counting. There is one function evaluates the interval counter and calculates both rainVolume and eventFrequency. It does not distinguish between drop and bucket count. The differentiation comes through the serialization function, that creates a JSON document:

void serializeRainSensor(JsonObject &doc, rainsensor_data &data, String name) {
  JsonObject json = doc.createNestedObject(name);
  json["init"] = data.status;
  json["mode"] = data.mode == 0 ? "tipping bucket" : "drop detect";
  if (data.status) {
    json["count"] = data.count;     // only relevant in tipping bucket mode
   if (data.mode == 0) {
      json["rain volume"] = data.rainVolume;
   } else {
      json["drop freq"] = data.eventFrequency;
   }
 }
}
The count value is only for debugging purposes so that you can check whether an event has been recognized - nothing more.

Read More...