From 224c5b2d1ef4655588b97569adead59bc8e11924 Mon Sep 17 00:00:00 2001 From: ChocoTaco Date: Wed, 18 Aug 2021 16:00:30 -0400 Subject: [PATCH] onKilled OOB damage cancel --- Classic/scripts/LakRabbitGame.cs | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/Classic/scripts/LakRabbitGame.cs b/Classic/scripts/LakRabbitGame.cs index 49710e0..8d5d683 100755 --- a/Classic/scripts/LakRabbitGame.cs +++ b/Classic/scripts/LakRabbitGame.cs @@ -1668,7 +1668,10 @@ function LakRabbitGame::onClientDamaged(%game, %clVictim, %clAttacker, %damageTy function LakRabbitGame::onClientKilled(%game, %clVictim, %clKiller, %damageType, %implement, %damageLoc) { -// borlak - make sure victim isn't killer + //Make sure OOB damage is cancelled + cancel(%clVictim.player.alertThread); + + // borlak - make sure victim isn't killer if(%clKiller != %clVictim) { %clKiller.kills++; @@ -1682,7 +1685,8 @@ function LakRabbitGame::onClientKilled(%game, %clVictim, %clKiller, %damageType, if(Game.duelMode && %killer.player.holdingFlag && %damageType != $DamageType::Missile) duelBonus(%killer); } -// borlak -- flag bug fix + + // borlak -- flag bug fix %clVictim.flagDeny = schedule(2500, 0, setFlagDeny, %clVictim, 0); DefaultGame::onClientKilled(%game, %clVictim, %clKiller, %damageType, %implement, %damageLoc); @@ -1765,11 +1769,11 @@ function LakRabbitGame::playerDroppedFlag(%game, %player) %flag.searchSchedule = Game.schedule(10, "startFlagCollisionSearch", %flag); %game.updateFlagTransform(%flag); // z0dd - ZOD, 8/4/02, Call to KineticPoet's flag updater -// borlak -- timer fix and re-catch fix + // borlak -- timer fix and re-catch fix %player.client.flagDeny = schedule(2500, 0, setFlagDeny, %player.client, 0); cancel(%player.client.duelTimer); -// borlak -- give bonus for duel mode + // borlak -- give bonus for duel mode if(%game.duelMode) { if(%player.lastDamageType == $DamageType::Suicide) @@ -1861,7 +1865,7 @@ function LakRabbitGame::playerTouchFlag(%game, %player, %flag) if(%flag.carrier $= "") { -// borlak cancel flag search and remove free diskjump + // borlak cancel flag search and remove free diskjump cancel(%flag.searchSchedule); cancel(%game.updateFlagThread[%flag]); // z0dd - ZOD, 8/4/02. Cancel this flag's thread to KineticPoet's flag updater %player.freeDJ = 0; @@ -1885,7 +1889,7 @@ function LakRabbitGame::playerTouchFlag(%game, %player, %flag) %flag.isHome = false; $flagStatus = %client.name; -// borlak -- points for MA flag grabs + // borlak -- points for MA flag grabs %mask = $TypeMasks::StaticShapeObjectType | $TypeMasks::InteriorObjectType | $TypeMasks::TerrainObjectType; %rayStart = %player.getWorldBoxCenter(); %rayEnd = getWord(%rayStart, 0) SPC getWord(%rayStart, 1) SPC getWord(%rayStart, 2) - 5;