Thanks. I want to figure out what the code designer thinks. And there may be more than one event using functionName, which may remove all or an incorrect one
If adding an event added it directly by reference, you would be able to modify it without the clip knowing. For example, in the event system I made in Animancer events must always be sorted by time for efficiency. Each frame it checks the next event and if its time has passed then it checks the next event but if its time hasn’t passed then it knows no other event has passed either so it doesn’t have to check every event every frame. But if you could add an event by reference then set its time, it could be out of order for the new time so the system wouldn’t work properly. I expect Unity’s system works similarly.
If you have multiple events with the same name, then you’ll just need to differentiate them with other parameters as well.
Unity behaves similar to what you describe because the results returned by the Animation.events property are in chronological order. In my opinion, the Event added in the Editor does not need to be supported by RemoveEvent, but if it is added by script, I think there should be corresponding RemoveEvent behavior support. I’ve always wondered how Unity handles the need for RemoveEvent, because this problem has been around for a long time.