From 8db5e4bf51b3b5526fff59312aab8c80ebf6a2b8 Mon Sep 17 00:00:00 2001 From: ChocoTaco Date: Fri, 22 Apr 2022 11:57:20 -0400 Subject: [PATCH] Larger dust puffs For cloak detection Line 1088 Line 1126 --- Classic/scripts/player.cs | 260 +++++++++++++++++++------------------- 1 file changed, 130 insertions(+), 130 deletions(-) diff --git a/Classic/scripts/player.cs b/Classic/scripts/player.cs index fbebed0..84abb9f 100755 --- a/Classic/scripts/player.cs +++ b/Classic/scripts/player.cs @@ -187,7 +187,7 @@ datablock AudioProfile(CorpseLootingSound) preload = true; effect = CorpseLootingEffect; }; - + datablock AudioProfile(ArmorMoveBubblesSound) { filename = "fx/armor/bubbletrail2.wav"; @@ -1085,8 +1085,8 @@ datablock ParticleData(LightPuff) textureName = "particleTest"; colors[0] = "0.46 0.36 0.26 0.4"; colors[1] = "0.46 0.46 0.36 0.0"; - sizes[0] = 0.4; - sizes[1] = 1.0; + sizes[0] = 0.8; //was 0.4 + sizes[1] = 1.4; //was 1.0 }; datablock ParticleEmitterData(LightPuffEmitter) @@ -1123,9 +1123,9 @@ datablock ParticleData(LiftoffDust) colors[0] = "0.46 0.36 0.26 0.0"; colors[1] = "0.46 0.46 0.36 0.4"; colors[2] = "0.46 0.46 0.36 0.0"; - sizes[0] = 0.2; - sizes[1] = 0.6; - sizes[2] = 1.0; + sizes[0] = 0.6; //was 0.2 + sizes[1] = 1.0; //was 0.6 + sizes[2] = 1.4; //was 1.0 times[0] = 0.0; times[1] = 0.5; times[2] = 1.0; @@ -1193,11 +1193,11 @@ datablock DebrisData( PlayerDebris ) velocity = 18.0; velocityVariance = 12.0; -}; +}; // z0dd - ZOD, 4/21/02. Altered most of these properties datablock PlayerData(LightMaleHumanArmor) : LightPlayerDamageProfile -{ +{ emap = true; className = Armor; @@ -1316,8 +1316,8 @@ datablock PlayerData(LightMaleHumanArmor) : LightPlayerDamageProfile splashEmitter[0] = PlayerFoamDropletsEmitter; splashEmitter[1] = PlayerFoamEmitter; splashEmitter[2] = PlayerBubbleEmitter; - mediumSplashSoundVelocity = 10.0; - hardSplashSoundVelocity = 20.0; + mediumSplashSoundVelocity = 10.0; + hardSplashSoundVelocity = 20.0; exitSplashSoundVelocity = 5.0; // Controls over slope of runnable/jumpable surfaces @@ -1436,7 +1436,7 @@ datablock PlayerData(LightMaleHumanArmor) : LightPlayerDamageProfile observeParameters = "0.5 4.5 4.5"; shieldEffectScale = "0.7 0.7 1.0"; - + //Kills autopoints detectsUsingLOSEnemy[1] = true; detectsUsingLOSEnemy[2] = true; @@ -1453,7 +1453,7 @@ datablock DecalData(MediumMaleFootprint) // z0dd - ZOD, 4/21/02. Altered most of these properties datablock PlayerData(MediumMaleHumanArmor) : MediumPlayerDamageProfile -{ +{ emap = true; className = Armor; @@ -1574,7 +1574,7 @@ datablock PlayerData(MediumMaleHumanArmor) : MediumPlayerDamageProfile boxHeadRightPercentage = 1; boxHeadBackPercentage = 0; boxHeadFrontPercentage = 1; - + //Foot Prints decalData = MediumMaleFootprint; decalOffset = 0.35; @@ -1594,8 +1594,8 @@ datablock PlayerData(MediumMaleHumanArmor) : MediumPlayerDamageProfile splashEmitter[0] = PlayerFoamDropletsEmitter; splashEmitter[1] = PlayerFoamEmitter; splashEmitter[2] = PlayerBubbleEmitter; - mediumSplashSoundVelocity = 10.0; - hardSplashSoundVelocity = 20.0; + mediumSplashSoundVelocity = 10.0; + hardSplashSoundVelocity = 20.0; exitSplashSoundVelocity = 5.0; footstepSplashHeight = 0.35; @@ -1694,7 +1694,7 @@ datablock PlayerData(MediumMaleHumanArmor) : MediumPlayerDamageProfile observeParameters = "0.5 4.5 4.5"; shieldEffectScale = "0.7 0.7 1.0"; - + //Kills autopoints detectsUsingLOSEnemy[1] = true; detectsUsingLOSEnemy[2] = true; @@ -1761,7 +1761,7 @@ datablock PlayerData(HeavyMaleHumanArmor) : HeavyPlayerDamageProfile maxDamage = 1.32; maxEnergy = 110; repairRate = 0.0033; - + //Value changed halfway between base and classic. //Classic is 54, Base is 75 //Shield breaks right at two mine-disc @@ -1853,8 +1853,8 @@ datablock PlayerData(HeavyMaleHumanArmor) : HeavyPlayerDamageProfile splashEmitter[0] = PlayerFoamDropletsEmitter; splashEmitter[1] = PlayerFoamEmitter; splashEmitter[2] = PlayerBubbleEmitter; - mediumSplashSoundVelocity = 10.0; - hardSplashSoundVelocity = 20.0; + mediumSplashSoundVelocity = 10.0; + hardSplashSoundVelocity = 20.0; exitSplashSoundVelocity = 5.0; footstepSplashHeight = 0.35; @@ -1953,7 +1953,7 @@ datablock PlayerData(HeavyMaleHumanArmor) : HeavyPlayerDamageProfile observeParameters = "0.5 4.5 4.5"; shieldEffectScale = "0.7 0.7 1.0"; - + //Kills autopoints detectsUsingLOSEnemy[1] = true; detectsUsingLOSEnemy[2] = true; @@ -1998,7 +1998,7 @@ datablock PlayerData(LightMaleBiodermArmor) : LightMaleHumanArmor debrisShapeName = "bio_player_debris.dts"; - + //Foot Prints decalData = LightBiodermFootprint; decalOffset = 0.3; @@ -2023,7 +2023,7 @@ datablock PlayerData(MediumMaleBiodermArmor) : MediumMaleHumanArmor debrisShapeName = "bio_player_debris.dts"; //Foot Prints - decalData = MediumBiodermFootprint; + decalData = MediumBiodermFootprint; decalOffset = 0.35; waterBreathSound = WaterBreathBiodermSound; @@ -2049,7 +2049,7 @@ datablock PlayerData(HeavyMaleBiodermArmor) : HeavyMaleHumanArmor //Foot Prints decalData = HeavyBiodermFootprint; decalOffset = 0.4; - + waterBreathSound = WaterBreathBiodermSound; }; @@ -2122,17 +2122,17 @@ function Armor::onMount(%this,%obj,%vehicle,%node) if(!%obj.inStation) %obj.lastWeapon = (%obj.getMountedImage($WeaponSlot) == 0 ) ? "" : %obj.getMountedImage($WeaponSlot).item; - + %obj.unmountImage($WeaponSlot); - + if(!%obj.client.isAIControlled()) { %obj.setControlObject(%vehicle); %obj.client.setObjectActiveImage(%vehicle, 2); } - + //E3 respawn... - + if(%obj == %obj.lastVehicle.lastPilot && %obj.lastVehicle != %vehicle) { schedule(15000, %obj.lastVehicle,"vehicleAbandonTimeOut", %obj.lastVehicle); @@ -2140,14 +2140,14 @@ function Armor::onMount(%this,%obj,%vehicle,%node) } if(%vehicle.lastPilot !$= "" && %vehicle == %vehicle.lastPilot.lastVehicle) %vehicle.lastPilot.lastVehicle = ""; - + %vehicle.abandon = false; %vehicle.lastPilot = %obj; %obj.lastVehicle = %vehicle; // update the vehicle's team if((%vehicle.getTarget() != -1) && %vehicle.getDatablock().cantTeamSwitch $= "") - { + { setTargetSensorGroup(%vehicle.getTarget(), %obj.client.getSensorGroup()); if( %vehicle.turretObject > 0 ) setTargetSensorGroup(%vehicle.turretObject.getTarget(), %obj.client.getSensorGroup()); @@ -2207,9 +2207,9 @@ function Armor::onUnmount( %this, %obj, %vehicle, %node ) %obj.use(%obj.lastWeapon); else { - if(%obj.getMountedImage($WeaponSlot) == 0) + if(%obj.getMountedImage($WeaponSlot) == 0) %obj.selectWeaponSlot( 0 ); - } + } //Inform gunner position when pilot leaves... //if(%vehicle.getDataBlock().showPilotInfo !$= "") // if((%gunner = %vehicle.getMountNodeObject(1)) != 0) @@ -2271,7 +2271,7 @@ function Armor::onCollision(%this,%obj,%col,%forceVehicleNode) //to ensure they mount the turret before the passenger seat, regardless of where they collide... if (%obj.client.isAIControlled()) { - %transform = %col.getTransform(); + %transform = %col.getTransform(); //either the AI is *required* to pilot, or they'll pick the first available passenger seat if (%client.pilotVehicle) @@ -2312,7 +2312,7 @@ function Armor::onCollision(%this,%obj,%col,%forceVehicleNode) } if(%col.noEnemyControl && %obj.team != %col.team) return; - + commandToClient(%obj.client,'SetDefaultVehicleKeys', true); //If pilot or passenger then bind a few extra keys if(%node == 0) @@ -2329,7 +2329,7 @@ function Armor::onCollision(%this,%obj,%col,%forceVehicleNode) if (%obj.client.isAIControlled() && %node == 1 && (%type $= "BomberFlyer" || %type $= "AssaultVehicle")) { //%client.player.setActionThread(%col.getDataBlock().mountPose[0], true, true); - %client.player.setActionThread(sitting, true, true); + %client.player.setActionThread(sitting, true, true); } %col.mountObject(%obj,%node); @@ -2350,7 +2350,7 @@ function Armor::onCollision(%this,%obj,%col,%forceVehicleNode) %gotSomething = false; // it's corpse-looting time! // weapons -- don't pick up more than you are allowed to carry! - for(%i = 0; ( %obj.weaponCount < %obj.getDatablock().maxWeapons ) && $InvWeapon[%i] !$= ""; %i++) + for(%i = 0; ( %obj.weaponCount < %obj.getDatablock().maxWeapons ) && $InvWeapon[%i] !$= ""; %i++) { %weap = $NameToInv[$InvWeapon[%i]]; if ( %col.hasInventory( %weap ) ) @@ -2498,7 +2498,7 @@ function Player::resetFlagTossWait(%this) function Player::resetSitMessage(%obj) { - %obj.noSitMessage = false; + %obj.noSitMessage = false; } function Player::setInvincible(%this, %val) @@ -2508,9 +2508,9 @@ function Player::setInvincible(%this, %val) function Player::causedRecentDamage(%this, %val) { - %this.causedRecentDamage = %val; + %this.causedRecentDamage = %val; } - + function hasLargePack(%player) { %pack = %player.getMountedImage($BackpackSlot); @@ -2609,7 +2609,7 @@ function Armor::doDismount(%this, %obj, %forced) %obj.unmount(); if(%obj.mVehicle) %obj.mVehicle.getDataBlock().playerDismounted(%obj.mVehicle, %obj); - + // bots don't change their control objects when in vehicles if(!%obj.client.isAIControlled()) { @@ -2652,7 +2652,7 @@ function resetObserveFollow( %client, %dismount ) if ( %client.observers[%i].clientObserve != %client ) continue; - %client.observers[%i].camera.setOrbitMode( %client.player, %client.player.getTransform(), 0.5, 4.5, 4.5); + %client.observers[%i].camera.setOrbitMode( %client.player, %client.player.getTransform(), 0.5, 4.5, 4.5); } } else @@ -2666,7 +2666,7 @@ function resetObserveFollow( %client, %dismount ) %params = %client.player.getTransform(); else %params = %mount.getDataBlock().observeParameters; - + for( %i = 0; %i < %client.observeCount; %i++ ) { // z0dd - ZOD, 5/21/03. Make sure this client actually obs this client @@ -2675,7 +2675,7 @@ function resetObserveFollow( %client, %dismount ) %client.observers[%i].camera.setOrbitMode(%mount, %mount.getTransform(), getWord( %params, 0 ), getWord( %params, 1 ), getWord( %params, 2 )); } - } + } } @@ -2683,7 +2683,7 @@ function resetObserveFollow( %client, %dismount ) function Player::scriptKill(%player, %damageType) { - %player.scriptKilled = 1; + %player.scriptKilled = 1; %player.setInvincible(false); %player.damage(0, %player.getPosition(), 10000, %damageType); } @@ -2695,7 +2695,7 @@ function Armor::damageObject(%data, %targetObject, %sourceObject, %position, %am return; //---------------------------------------------------------------- - // z0dd - ZOD, 6/09/02. Check to see if this vehicle is destroyed, + // z0dd - ZOD, 6/09/02. Check to see if this vehicle is destroyed, // if it is do no damage. Fixes vehicle ghosting bug. We do not // check for isObject here, destroyed objects fail it even though // they exist as objects, go figure. @@ -2730,7 +2730,7 @@ function Armor::damageObject(%data, %targetObject, %sourceObject, %position, %am } else { - if(%damageType != $DamageType::Laser && %damageType != $DamageType::Bullet && %damageType != $DamageType::Blaster) + if(%damageType != $DamageType::Laser && %damageType != $DamageType::Bullet && %damageType != $DamageType::Blaster) return; } } @@ -2740,7 +2740,7 @@ function Armor::damageObject(%data, %targetObject, %sourceObject, %position, %am %targetClient = %targetObject.getOwnerClient(); if(isObject(%mineSC)) - %sourceClient = %mineSC; + %sourceClient = %mineSC; else %sourceClient = isObject(%sourceObject) ? %sourceObject.getOwnerClient() : 0; @@ -2754,7 +2754,7 @@ function Armor::damageObject(%data, %targetObject, %sourceObject, %position, %am else if(%damageType == $DamageType::Suicide) %sourceTeam = 0; //-------------------------------------------------------------------------------------------------------------------- - // z0dd - ZOD, 4/8/02. Check to see if this turret has a valid owner, if not clear the variable. + // z0dd - ZOD, 4/8/02. Check to see if this turret has a valid owner, if not clear the variable. else if(isObject(%sourceObject) && %sourceObject.getClassName() $= "Turret") { %sourceTeam = getTargetSensorGroup(%sourceObject.getTarget()); @@ -2794,11 +2794,11 @@ function Armor::damageObject(%data, %targetObject, %sourceObject, %position, %am %damageScale = %data.damageScale[%damageType]; if(%damageScale !$= "") %amount *= %damageScale; - + %flash = %targetObject.getDamageFlash() + (%amount * 2); if (%flash > 0.75) %flash = 0.75; - + // Teratos: Originally from Eolk? Mine+Disc tracking/death message support. // No Schedules by DarkTiger Ver.2 %targetClient.mineDisc = false; @@ -2807,17 +2807,17 @@ function Armor::damageObject(%data, %targetObject, %sourceObject, %position, %am case $DamageType::Disc: if((getSimTime() - %targetClient.mdcTime1) < 256) %targetClient.mineDisc = true; - - %targetClient.mdcTime2 = getSimTime(); + + %targetClient.mdcTime2 = getSimTime(); case $DamageType::Mine: if((getSimTime() - %targetClient.mdcTime2) < 256) %targetClient.mineDisc = true; - - %targetClient.mdcTime1 = getSimTime(); + + %targetClient.mdcTime1 = getSimTime(); } // -- End Mine+Disc insert. - + %previousDamage = %targetObject.getDamagePercent(); %targetObject.setDamageFlash(%flash); %targetObject.applyDamage(%amount); @@ -2826,49 +2826,49 @@ function Armor::damageObject(%data, %targetObject, %sourceObject, %position, %am %targetClient.lastDamagedBy = %damagingClient; %targetClient.lastDamaged = getSimTime(); - //now call the "onKilled" function if the client was... you know... + //now call the "onKilled" function if the client was... you know... if(%targetObject.getState() $= "Dead") { // where did this guy get it? %damLoc = %targetObject.getDamageLocation(%position); - + // should this guy be blown apart? - if( %damageType == $DamageType::Explosion || + if( %damageType == $DamageType::Explosion || %damageType == $DamageType::TankMortar || %damageType == $DamageType::Mortar || %damageType == $DamageType::MortarTurret || %damageType == $DamageType::BomberBombs || %damageType == $DamageType::SatchelCharge || - %damageType == $DamageType::Missile ) + %damageType == $DamageType::Missile ) { if( %previousDamage >= 0.35 ) // only if <= 35 percent damage remaining { %targetObject.setMomentumVector(%momVec); - %targetObject.blowup(); + %targetObject.blowup(); } } - + // this should be funny... if( %damageType == $DamageType::VehicleSpawn ) - { + { %targetObject.setMomentumVector("0 0 1"); %targetObject.blowup(); } - + // If we were killed, max out the flash %targetObject.setDamageFlash(0.75); - + %damLoc = %targetObject.getDamageLocation(%position); Game.onClientKilled(%targetClient, %sourceClient, %damageType, %sourceObject, %damLoc); } else if ( %amount > 0.1 ) - { + { if( %targetObject.station $= "" && %targetObject.isCloaked() ) { %targetObject.setCloaked( false ); - %targetObject.reCloak = %targetObject.schedule( 500, "setCloaked", true ); + %targetObject.reCloak = %targetObject.schedule( 500, "setCloaked", true ); } - + playPain( %targetObject ); } } @@ -2883,101 +2883,101 @@ function Armor::applyConcussion( %this, %dist, %radius, %sourceObject, %targetOb { %percentage = 1 - ( %dist / %radius ); %random = getRandom(); - + if( %sourceObject == %targetObject ) - { + { %flagChance = 1.0; %itemChance = 1.0; } else - { + { %flagChance = 0.75; - %itemChance = 0.75; + %itemChance = 0.75; } - + %probabilityFlag = %flagChance * %percentage; - %probabilityItem = %itemChance * %percentage; - + %probabilityItem = %itemChance * %percentage; + if( %random <= %probabilityFlag ) - Game.applyConcussion( %targetObject ); - + Game.applyConcussion( %targetObject ); + if( %random <= %probabilityItem ) { %player = %targetObject; %numWeapons = 0; - + // blaster 0 // plasma 1 // chain 2 - // disc 3 + // disc 3 // grenade 4 // snipe 5 // elf 6 // mortar 7 - + //get our inventory - if( %weaps[0] = %player.getInventory("Blaster") > 0 ) %numWeapons++; - if( %weaps[1] = %player.getInventory("Plasma") > 0 ) %numWeapons++; - if( %weaps[2] = %player.getInventory("Chaingun") > 0 ) %numWeapons++; - if( %weaps[3] = %player.getInventory("Disc") > 0 ) %numWeapons++; - if( %weaps[4] = %player.getInventory("GrenadeLauncher") > 0 ) %numWeapons++; + if( %weaps[0] = %player.getInventory("Blaster") > 0 ) %numWeapons++; + if( %weaps[1] = %player.getInventory("Plasma") > 0 ) %numWeapons++; + if( %weaps[2] = %player.getInventory("Chaingun") > 0 ) %numWeapons++; + if( %weaps[3] = %player.getInventory("Disc") > 0 ) %numWeapons++; + if( %weaps[4] = %player.getInventory("GrenadeLauncher") > 0 ) %numWeapons++; if( %weaps[5] = %player.getInventory("SniperRifle") > 0 ) %numWeapons++; if( %weaps[6] = %player.getInventory("ELFGun") > 0 ) %numWeapons++; if( %weaps[7] = %player.getInventory("Mortar") > 0 ) %numWeapons++; - + %foundWeapon = false; %attempts = 0; - - if( %numWeapons > 0 ) - { + + if( %numWeapons > 0 ) + { while( !%foundWeapon ) { %rand = mFloor( getRandom() * 8 ); if( %weaps[ %rand ] ) { %foundWeapon = true; - + switch ( %rand ) { case 0: - %player.use("Blaster"); + %player.use("Blaster"); case 1: - %player.use("Plasma"); + %player.use("Plasma"); case 2: - %player.use("Chaingun"); + %player.use("Chaingun"); case 3: - %player.use("Disc"); + %player.use("Disc"); case 4: - %player.use("GrenadeLauncher"); - case 5: - %player.use("SniperRifle"); + %player.use("GrenadeLauncher"); + case 5: + %player.use("SniperRifle"); case 6: - %player.use("ElfGun"); + %player.use("ElfGun"); case 7: - %player.use("Mortar"); + %player.use("Mortar"); } - + %image = %player.getMountedImage( $WeaponSlot ); %player.throw( %image.item ); %player.client.setWeaponsHudItem( %image.item, 0, 0 ); %player.throwPack(); } else - { + { %attempts++; if( %attempts > 10 ) %foundWeapon = true; - } + } } } else { %targetObject.throwPack(); %targetObject.throwWeapon(); - } + } } - -} + +} //---------------------------------------------------------------------------- @@ -3000,7 +3000,7 @@ function playPain( %obj ) %client = %obj.client; %random = getRandom(1) + 1; %desc = AudioClosest3d; - + playTargetAudio( %client.target, $PainCry[%random], %desc, false); } @@ -3050,8 +3050,8 @@ function Player::pickup(%this,%obj,%amount) %this.getMountedImage($BackpackSlot) != 0) return 0; // don't pick up a weapon (other than targeting laser) if player's at maxWeapons - else if(%data.className $= Weapon - && %data.getName() !$= "TargetingLaser" // Special case + else if(%data.className $= Weapon + && %data.getName() !$= "TargetingLaser" // Special case && %this.weaponCount >= %this.getDatablock().maxWeapons) return 0; // don't allow players to throw large packs at pilots (thanks Wizard) @@ -3067,7 +3067,7 @@ function Player::use( %this,%data ) return false; // Convert the word "Backpack" to whatever is in the backpack slot. - if ( %data $= "Backpack" ) + if ( %data $= "Backpack" ) { if ( %this.inStation ) return false; @@ -3082,17 +3082,17 @@ function Player::use( %this,%data ) messageClient( %this.client, 'MsgCantUsePack', '\c2You can\'t use your pack while in a weaponry position.~wfx/misc/misc.error.wav' ); return( false ); } - + %image = %this.getMountedImage( $BackpackSlot ); if ( %image ) %data = %image.item; } // Can't use some items when piloting or your a weapon operator - if ( %this.isPilot() || %this.isWeaponOperator() ) + if ( %this.isPilot() || %this.isWeaponOperator() ) if ( %data.getName() !$= "RepairKit" ) return false; - + return ShapeBase::use( %this, %data ); } @@ -3125,13 +3125,13 @@ function Player::isWeaponOperator(%this) } return( false ); -} +} function Player::liquidDamage(%obj, %data, %damageAmount, %damageType) { if(%obj.getState() !$= "Dead") { - %data.damageObject(%obj, 0, "0 0 0", %damageAmount, %damageType); + %data.damageObject(%obj, 0, "0 0 0", %damageAmount, %damageType); %obj.lDamageSchedule = %obj.schedule(50, "liquidDamage", %data, %damageAmount, %damageType); } else @@ -3160,7 +3160,7 @@ function Armor::onEnterLiquid(%data, %obj, %coverage, %type) case 5: //Hot Lava %obj.liquidDamage(%data, $DamageHotLava, $DamageType::Lava); - case 6: + case 6: //Crusty Lava %obj.liquidDamage(%data, $DamageCrustyLava, $DamageType::Lava); case 7: @@ -3281,46 +3281,46 @@ function playDeathAnimation(%player, %damageLocation, %type) { %vertPos = firstWord(%damageLocation); %quadrant = getWord(%damageLocation, 1); - + //echo("vert Pos: " @ %vertPos); //echo("quad: " @ %quadrant); - - if( %type == $DamageType::Explosion || %type == $DamageType::Mortar || %type == $DamageType::Grenade) + + if( %type == $DamageType::Explosion || %type == $DamageType::Mortar || %type == $DamageType::Grenade) { - if(%quadrant $= "front_left" || %quadrant $= "front_right") + if(%quadrant $= "front_left" || %quadrant $= "front_right") %curDie = $PlayerDeathAnim::ExplosionBlowBack; else %curDie = $PlayerDeathAnim::TorsoBackFallForward; } - else if(%vertPos $= "head") + else if(%vertPos $= "head") { - if(%quadrant $= "front_left" || %quadrant $= "front_right" ) + if(%quadrant $= "front_left" || %quadrant $= "front_right" ) %curDie = $PlayerDeathAnim::HeadFrontDirect; - else + else %curDie = $PlayerDeathAnim::HeadBackFallForward; } - else if(%vertPos $= "torso") + else if(%vertPos $= "torso") { - if(%quadrant $= "front_left" ) + if(%quadrant $= "front_left" ) %curDie = $PlayerDeathAnim::TorsoLeftSpinDeath; - else if(%quadrant $= "front_right") + else if(%quadrant $= "front_right") %curDie = $PlayerDeathAnim::TorsoRightSpinDeath; - else if(%quadrant $= "back_left" ) + else if(%quadrant $= "back_left" ) %curDie = $PlayerDeathAnim::TorsoBackFallForward; - else if(%quadrant $= "back_right") + else if(%quadrant $= "back_right") %curDie = $PlayerDeathAnim::TorsoBackFallForward; } - else if (%vertPos $= "legs") + else if (%vertPos $= "legs") { - if(%quadrant $= "front_left" || %quadrant $= "back_left") + if(%quadrant $= "front_left" || %quadrant $= "back_left") %curDie = $PlayerDeathAnim::LegsLeftGimp; - if(%quadrant $= "front_right" || %quadrant $= "back_right") + if(%quadrant $= "front_right" || %quadrant $= "back_right") %curDie = $PlayerDeathAnim::LegsRightGimp; } - + if(%curDie $= "" || %curDie < 1 || %curDie > 11) %curDie = 1; - + %player.setActionThread("Death" @ %curDie); }