From ed155c861a364eecbfcc01faaa5260bb7933d613 Mon Sep 17 00:00:00 2001 From: ChocoTaco Date: Mon, 15 Nov 2021 13:56:11 -0500 Subject: [PATCH] Cloak Animation Fix --- Classic/scripts/projectiles.cs | 36 +++++++++++++++++++++++----------- 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/Classic/scripts/projectiles.cs b/Classic/scripts/projectiles.cs index 81906b1..5da782d 100644 --- a/Classic/scripts/projectiles.cs +++ b/Classic/scripts/projectiles.cs @@ -88,11 +88,15 @@ function ShapeBaseImageData::onFire(%data, %obj, %slot) } else { - if( %obj.getEnergyLevel() > 20 ) - { - %obj.setCloaked( false ); - %obj.reCloak = %obj.schedule( 500, "setCloaked", true ); - } + // if( %obj.getEnergyLevel() > 20 ) + // { + // %obj.setCloaked( false ); + // %obj.reCloak = %obj.schedule( 500, "setCloaked", true ); + // } + + //We check if the player is still cloaked now. So no need to limit to 20% energy for the cloak in/out animation + %obj.setCloaked( false ); + %obj.reCloak = schedule( 500, 0, "checkCloakState", %obj); } } @@ -422,12 +426,16 @@ function ShockLanceImage::onFire(%this, %obj, %slot) } else { - if( %obj.getEnergyLevel() > 20 ) - { - %obj.setCloaked( false ); - %obj.reCloak = %obj.schedule( 500, "setCloaked", true ); - } - } + // if( %obj.getEnergyLevel() > 20 ) + // { + // %obj.setCloaked( false ); + // %obj.reCloak = %obj.schedule( 500, "setCloaked", true ); + // } + + //We check if the player is still cloaked now. So no need to limit to 20% energy for the cloak in/out animation + %obj.setCloaked( false ); + %obj.reCloak = schedule( 500, 0, "checkCloakState", %obj); + } } %muzzlePos = %obj.getMuzzlePoint(%slot); @@ -773,3 +781,9 @@ function Flag::shouldApplyImpulse(%data, %obj) else return true; } + +function checkCloakState(%obj) +{ + if(%obj.getImageState($BackpackSlot) $= "activate") + %obj.setCloaked(true); +} \ No newline at end of file