aboutsummaryrefslogtreecommitdiff
path: root/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_riff_floor_is_lava.nut
diff options
context:
space:
mode:
authorBobTheBob <32057864+BobTheBob9@users.noreply.github.com>2021-12-05 16:03:50 +0000
committerBobTheBob <32057864+BobTheBob9@users.noreply.github.com>2021-12-05 16:03:50 +0000
commit51e16034230f4dd759900c7922b8db43941e0a70 (patch)
tree6492337f6855e2403db0376b8d1021196df80879 /Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_riff_floor_is_lava.nut
parentb48fd143624f2b887699acd98d9a4c55b792ab0e (diff)
downloadNorthstarMods-51e16034230f4dd759900c7922b8db43941e0a70.tar.gz
NorthstarMods-51e16034230f4dd759900c7922b8db43941e0a70.zip
big commit for playtesting
Diffstat (limited to 'Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_riff_floor_is_lava.nut')
-rw-r--r--Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_riff_floor_is_lava.nut21
1 files changed, 17 insertions, 4 deletions
diff --git a/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_riff_floor_is_lava.nut b/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_riff_floor_is_lava.nut
index b660e89ff..f8aa77998 100644
--- a/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_riff_floor_is_lava.nut
+++ b/Northstar.CustomServers/mod/scripts/vscripts/gamemodes/_riff_floor_is_lava.nut
@@ -1,5 +1,10 @@
global function RiffFloorIsLava_Init
+struct {
+ float pilotDamageMultiplier
+ float titanDamageMultiplier
+} file
+
void function RiffFloorIsLava_Init()
{
AddCallback_OnPlayerRespawned( FloorIsLava_PlayerRespawned )
@@ -83,20 +88,28 @@ void function FloorIsLava_ThinkForPlayer( entity player )
player.EndSignal( "OnDestroy" )
player.EndSignal( "OnDeath" )
+ float lastHeight
+
while ( true )
{
WaitFrame()
-
- if ( player.GetOrigin().z < GetLethalFogTop() )
+
+ float height = player.GetOrigin().z
+ if ( height < GetLethalFogTop() )
{
// do damage
float damageMultiplier = 0.08
if ( player.IsTitan() )
- damageMultiplier *= 0.05
-
+ damageMultiplier = 0.04
+
+ // scale damage by time spent in fog and depth
+ damageMultiplier *= 1 - ( height / GetLethalFogTop() )
+
player.TakeDamage( player.GetMaxHealth() * damageMultiplier, null, null, { damageSourceId = eDamageSourceId.floor_is_lava } )
wait 0.1
}
+
+ lastHeight = height
}
} \ No newline at end of file