diff options
author | BobTheBob <32057864+BobTheBob9@users.noreply.github.com> | 2022-04-09 22:01:35 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-04-09 23:01:35 +0200 |
commit | 67ec62f0c41d39fb605aad53c12d8d6fe02fb3aa (patch) | |
tree | 6110a6df58765f23cb27feea1e057c45d537b6b6 | |
parent | d8cbd386a5e1b76625e7192a147d41fc1ae12e1d (diff) | |
download | NorthstarMods-67ec62f0c41d39fb605aad53c12d8d6fe02fb3aa.tar.gz NorthstarMods-67ec62f0c41d39fb605aad53c12d8d6fe02fb3aa.zip |
Fix crash issues on infection and fastball respawn (#294)
-rw-r--r-- | Northstar.Custom/mod/scripts/vscripts/gamemodes/cl_gamemode_fastball.gnut | 2 | ||||
-rw-r--r-- | Northstar.Custom/mod/scripts/vscripts/gamemodes/cl_gamemode_inf.gnut | 10 |
2 files changed, 10 insertions, 2 deletions
diff --git a/Northstar.Custom/mod/scripts/vscripts/gamemodes/cl_gamemode_fastball.gnut b/Northstar.Custom/mod/scripts/vscripts/gamemodes/cl_gamemode_fastball.gnut index f5fae006..a8ce6a40 100644 --- a/Northstar.Custom/mod/scripts/vscripts/gamemodes/cl_gamemode_fastball.gnut +++ b/Northstar.Custom/mod/scripts/vscripts/gamemodes/cl_gamemode_fastball.gnut @@ -92,7 +92,7 @@ void function FastballRespawnPlayerEffects_Threaded() // sometimes this seems to get called before the player has respawned clientside, so we just wait until the client thinks they're alive entity player = GetLocalClientPlayer() - while ( !IsAlive( player ) ) + while ( !IsAlive( player ) || !IsValid( player.GetCockpit() ) ) WaitFrame() StartParticleEffectOnEntity( player.GetCockpit(), GetParticleSystemIndex( $"P_pod_screen_lasers_OUT" ), FX_PATTACH_ABSORIGIN_FOLLOW, -1 ) diff --git a/Northstar.Custom/mod/scripts/vscripts/gamemodes/cl_gamemode_inf.gnut b/Northstar.Custom/mod/scripts/vscripts/gamemodes/cl_gamemode_inf.gnut index 56763bd4..9374278a 100644 --- a/Northstar.Custom/mod/scripts/vscripts/gamemodes/cl_gamemode_inf.gnut +++ b/Northstar.Custom/mod/scripts/vscripts/gamemodes/cl_gamemode_inf.gnut @@ -22,9 +22,17 @@ void function ClGamemodeInfection_Init() void function ServerCallback_YouAreInfected() { + thread ServerCallback_YouAreInfected_Threaded() +} + +void function ServerCallback_YouAreInfected_Threaded() +{ // heavily based on mfd code entity localPlayer = GetLocalViewPlayer() - + + while ( !IsValid( localPlayer.GetCockpit() ) ) + WaitFrame() + StartParticleEffectOnEntity( localPlayer.GetCockpit(), GetParticleSystemIndex( $"P_MFD" ), FX_PATTACH_ABSORIGIN_FOLLOW, -1 ) EmitSoundOnEntity( localPlayer, "UI_InGame_MarkedForDeath_PlayerMarked" ) HideEventNotification() |