In construct 2, all function calls and naming is done using string names. This makes it very difficult to refactor a name of a function later on. I have resorted to using text search and replace in the XML structure.
Another Solution I have tried that is a little clunky is:
The advantage to the above process is that there are only 2 spots that I write out the string version of the function name. If I need to rename it, I just have to update those two locations and the whole project is refactored.
The disadvantage is that there are two locations now that I have to go to manage function names.
So my suggestion would be to create a way to have function names more static. One Possibility is to have a new object type to compliment the Function object. This new objects would be used throughout the project as the Call Function target which you would then have the appropriate On Function events for these objects.
In r54 we shipped 'Find all references' for functions, which provides a list of every reference of a function so you can easily update them all. Unfortunately we can't easily add a feature to automatically update references, since some references are ambiguous (e.g. call function "Func" & number).
Support for a completely redesigned built-in functions feature was added in r143. This new feature supports automatically renaming all references when functions - or any of their named parameters - are renamed.