aboutsummaryrefslogtreecommitdiff
path: root/Northstar.CustomServers/mod/scripts/vscripts/mp/_base_gametype_mp.gnut
diff options
context:
space:
mode:
authorBobTheBob <32057864+BobTheBob9@users.noreply.github.com>2022-01-17 00:06:23 +0000
committerGitHub <noreply@github.com>2022-01-17 00:06:23 +0000
commitd1b696c80c5001f6b62ca41be3bf6bc5647378d0 (patch)
tree7291aa44c4f7312f7a01f9cd20a3109213f77951 /Northstar.CustomServers/mod/scripts/vscripts/mp/_base_gametype_mp.gnut
parent89863e43f4bceb2ab842335e8c3aea3c3b25b269 (diff)
parent1f6c2ce8e7a5a5ba47e773bd6173f228b507e8fd (diff)
downloadNorthstarMods-d1b696c80c5001f6b62ca41be3bf6bc5647378d0.tar.gz
NorthstarMods-d1b696c80c5001f6b62ca41be3bf6bc5647378d0.zip
Merge pull request #96 from VITALISED/scoring
Add assist medals and scoring
Diffstat (limited to 'Northstar.CustomServers/mod/scripts/vscripts/mp/_base_gametype_mp.gnut')
-rw-r--r--Northstar.CustomServers/mod/scripts/vscripts/mp/_base_gametype_mp.gnut19
1 files changed, 17 insertions, 2 deletions
diff --git a/Northstar.CustomServers/mod/scripts/vscripts/mp/_base_gametype_mp.gnut b/Northstar.CustomServers/mod/scripts/vscripts/mp/_base_gametype_mp.gnut
index 4b2e539cf..b169de632 100644
--- a/Northstar.CustomServers/mod/scripts/vscripts/mp/_base_gametype_mp.gnut
+++ b/Northstar.CustomServers/mod/scripts/vscripts/mp/_base_gametype_mp.gnut
@@ -222,7 +222,7 @@ void function CodeCallback_OnPlayerRespawned( entity player )
player.SetPredictionEnabled( true )
Loadouts_TryGivePilotLoadout( player )
SetHumanRagdollImpactTable( player )
- ClearLastAttacker( player ) // so dying to anything doesn't credit the same attacker after respawning
+ ClearLastAttacker( player ) // so dying to anything doesn't credit the same attacker after respawning
foreach ( entity weapon in player.GetMainWeapons() )
weapon.SetProScreenOwner( player )
@@ -277,9 +277,24 @@ void function PostDeathThread_MP( entity player, var damageInfo ) // based on ga
player.s.inPostDeath = false
})
+
entity attacker = DamageInfo_GetAttacker( damageInfo )
int methodOfDeath = DamageInfo_GetDamageSourceIdentifier( damageInfo )
+ table<int, bool> alreadyAssisted
+ foreach( DamageHistoryStruct attackerInfo in player.e.recentDamageHistory )
+ {
+ bool exists = attackerInfo.attacker.GetEncodedEHandle() in alreadyAssisted ? true : false
+ if( attackerInfo.attacker != attacker && !exists )
+ {
+ alreadyAssisted[attackerInfo.attacker.GetEncodedEHandle()] <- true
+ Remote_CallFunction_NonReplay( attackerInfo.attacker, "ServerCallback_SetAssistInformation", attackerInfo.damageSourceId, attacker.GetEncodedEHandle(), player.GetEncodedEHandle(), attackerInfo.time )
+ AddPlayerScore(attackerInfo.attacker, "PilotAssist" )
+ }
+
+
+ }
+
player.p.rematchOrigin = player.p.deathOrigin
if ( IsValid( attacker ) && methodOfDeath == eDamageSourceId.titan_execution )
{
@@ -414,7 +429,7 @@ void function RespawnAsTitan( entity player, bool manualPosition = false )
player.isSpawning = true
entity spawnpoint = FindSpawnPoint( player, true, ( ShouldStartSpawn( player ) || Flag( "ForceStartSpawn" ) ) && !IsFFAGame() )
- TitanLoadoutDef titanLoadout = GetTitanLoadoutForPlayer( player )
+ TitanLoadoutDef titanLoadout = GetTitanLoadoutForPlayer( player )
asset model = GetPlayerSettingsAssetForClassName( titanLoadout.setFile, "bodymodel" )
Attachment warpAttach = GetAttachmentAtTimeFromModel( model, "at_hotdrop_01", "offset", spawnpoint.GetOrigin(), spawnpoint.GetAngles(), 0 )