diff options
Diffstat (limited to 'Northstar.Custom/mod/scripts/vscripts/sh_bleedout_damage.gnut')
-rw-r--r-- | Northstar.Custom/mod/scripts/vscripts/sh_bleedout_damage.gnut | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/Northstar.Custom/mod/scripts/vscripts/sh_bleedout_damage.gnut b/Northstar.Custom/mod/scripts/vscripts/sh_bleedout_damage.gnut index 8b21184ad..2fd36e45a 100644 --- a/Northstar.Custom/mod/scripts/vscripts/sh_bleedout_damage.gnut +++ b/Northstar.Custom/mod/scripts/vscripts/sh_bleedout_damage.gnut @@ -114,11 +114,29 @@ void function HandleDamageForBleedout( entity player, var damageInfo ) void function OnPlayerBleedoutBegin( entity player ) { file.bleedingPlayers.append( player ) + EmitSoundOnEntity( player, "Player_Death_Begin" ) + + thread PlayerBleedoutGracePeriod( player ) // would prefer to use Bleedout_SetCallback_OnPlayerGiveFirstAid for this, but it doesn't expose the player that's receiving first aid for some reason thread TrackPlayerBleedout( player ) } +void function PlayerBleedoutGracePeriod( entity player ) +{ + player.EndSignal( "OnDeath" ) + player.EndSignal( "OnDestroy" ) + + OnThreadEnd( function() : ( player ) + { + player.ClearInvulnerable() + StopSoundOnEntity( player, "Player_Death_Begin" ) + }) + + player.SetInvulnerable() + wait 2.5 +} + void function TrackPlayerBleedout( entity player ) { player.EndSignal( "OnDeath" ) |