I have a problem with the EVENT_STEALTH_STATE_CHANGED event in regards to the Nightblade Shadowy Disguise ability.
Whenever a player unit is out of stealth, the event gets called with the StealthState of STEALTH_STATE_NONE.
When the player then hits the Crouch button the event triggers three times with:
When the player hits Crouch again, the player unit stands up and the event triggers with again STEALTH_STATE_NONE.
Now let's take a Nightblade with Shadowy Disguise.
They hit the ability to go invisible and the event fires with STEALTH_STATE_STEALTH and when the ability wears off in three seconds the event fires again with STEALTH_STATE_NONE.
But if the Nightblade hits the Crouch button while they are invisible due to Shadowy Disguise, we get no event firing with STEALTH_STATE_HIDING. All we get is an event firing with STEALTH_STATE_HIDDEN once the Shadowy Disguise ends.
Why is this a problem?
Since Nightblades have no good self-healing ability compared other classes, they are forced to use Shadowy Disguise to get away.
But because the the EVENT_STEALTH_STATE_CHANGED event doesn't fire with a STEALTH_STATE_HIDING message while the state is already STEALTH_STATE_STEALTH, it is utterly impossible to write a reticle add-on for Nightblades which lets them know they need to hit the Crouch button before their Shadowy Disguise ends or else they will no longer be in stealth. We have no way of knowing they hit the Crouch button while in STEALTH_STATE_STEALTH so every night blade needs to try to keep this in their heads as they fight.
My request would be either you fix it so that at least a STEALTH_STATE_HIDING event gets triggered even when in the player is in stealth because their Shadowy Disguise is active so that we know the player will still be hidden after their Shadowy Disguise ends, or else add more values to the event for specifically when the Crouch button is pressed while a Nightblade is in Shadowy Disguise: STEALTH_STATE_STEALTH_WILL_HIDE and STEALTH_STATE_STEALTH_WILL_NOT_HIDE which triggers the event with one of these two values whenever the player hits the crouch button while Shadowy Disguise is active. This lets us know that when the stealth ability ends whether or not the player will be visible or hidden.
This should be an easy fix and it would make it dead simple to write a reticle addon that works right for Nightblades using stealth and who want to know if they need to hit the Crouch button before their Shadowy Disguise runs out.