Update: I found the 'fill bowl' event, but it's dependent on a tool and tool action.
}
if (t is WateringCan && (t as WateringCan).WaterLeft > 0 && this.getTileIndexAt(tileX, tileY, "Buildings") == 1938)
this.setMapTileIndex(tileX, tileY, 1939, "Buildings", 0);
return false;
}
This matches the 'empty' and 'full' bowl tile indexes from Farm.tbin.
It could be worth exploring whether the 'tool' dependency could be replaced with an object (in this case, a cooked dish) - currently, the 'use' function of a dish can be either 'consume' or 'gift' depending on who/what is clicked, so maybe it can be rewritten for the bowl tile?
I'll keep hunting, but I have no idea what I'm doing!