You can achieve all this by using events and without touching the fading behavior, or, using the fade behavior, it's all about logic.
I know, but still, I think those requests very trivial that could save precious time.
I want something generic so I would not repeat my code for each type (sprite, spriter, text... Because each type I can unite in family...)
I'm thinking about writing my own behavior, but I dont like the idea to extend scirras build-in behavior - because they could become not back-compatibility for future scirras updates.
More over TELLES0808, if every problem could be solved with events, why we need behaviors?
Or something more native to the machine, C++.
Wait, why we need code if we could use Assembly or machine code... Realy... Step by step... And we are back into 1960s.
Little off topic: https://youtu.be/8pTEmbeENF4
To follow the fading progress, simple follow the opacity of the object, and trigger any event with the desired condition, the same for waiting and fadeout.
It is not that simple, I want to stop fades, or other object react to fading of other objects, but some object have different starting opacities so that logic quickly can become a mess.
To know if the fade is active, you can simple check if the fade started yet or finished yet, if it start and don't finish, it still active...
How can I do that? Object with fade havo no fade related conditions, and only 3 fade values: FadeInTime, WaitTime and FadeOutTime.
So again, it is possible to solve all those problems witout fade. No doubt.
But it is my small request, I realy think that requests could save a lot of troubles to many developers.
I hope my opinion counts.