private static void GameObject_OnIntegerPropertyChange(GameObject sender,
GameObjectIntegerPropertyChangeEventArgs args)
{
if (!args.Property.Equals("ActionState") || !(sender is AIHeroClient))
{
return;
}
var newState = (GameObjectCharacterState)args.Value;
if (newState.HasFlag(GameObjectCharacterState.IsStealth))
{
FireOnStealth(
new OnStealthEventArgs { Sender = (AIHeroClient)sender, Time = Game.Time, IsStealthed = true });
}
else if (!newState.HasFlag(GameObjectCharacterState.IsStealth))
{
FireOnStealth(new OnStealthEventArgs { Sender = (AIHeroClient)sender, IsStealthed = false });
}
}