UnrealShare
Class CrucifiedNali

source: e:\games\UnrealTournament\UnrealShare\Classes\CrucifiedNali.uc
Core.Object
   |
   +--Engine.Actor
      |
      +--Engine.Decoration
         |
         +--Engine.Carcass
            |
            +--UnrealShare.CreatureCarcass
               |
               +--UnrealShare.NaliCarcass
                  |
                  +--UnrealShare.CrucifiedNali
Direct Known Subclasses:None

class CrucifiedNali
extends UnrealShare.NaliCarcass

//============================================================================= // CrucifiedNali. //=============================================================================
States
Dying
State Dying Function Summary
 void TakeDamage(int Damage, Pawn instigatedBy, Vector hitlocation, Vector momentum, name damageType)
 void AnimEnd()



Source Code


00001	//=============================================================================
00002	// CrucifiedNali.
00003	//=============================================================================
00004	class CrucifiedNali extends NaliCarcass;
00005	
00006	#exec MESH IMPORT MESH=CrossNali ANIVFILE=MODELS\nali_x.3D DATAFILE=MODELS\nali_d.3D X=0 Y=0 Z=0 ZEROTEX=1
00007	#exec MESH ORIGIN MESH=CrossNali X=00 Y=-130 Z=30 YAW=64 ROLL=-64
00008	
00009	#exec MESH SEQUENCE MESH=CrossNali SEQ=All      	STARTFRAME=0   NUMFRAMES=61
00010	#exec MESH SEQUENCE MESH=CrossNali SEQ=HeadDown 	STARTFRAME=0   NUMFRAMES=20	RATE=15
00011	#exec MESH SEQUENCE MESH=CrossNali SEQ=Writhe      	STARTFRAME=20  NUMFRAMES=30	RATE=15
00012	#exec MESH SEQUENCE MESH=CrossNali SEQ=Dead1      	STARTFRAME=50  NUMFRAMES=1			
00013	#exec MESH SEQUENCE MESH=CrossNali SEQ=Dead2      	STARTFRAME=51  NUMFRAMES=1
00014	#exec MESH SEQUENCE MESH=CrossNali SEQ=Dead3      	STARTFRAME=52  NUMFRAMES=1
00015	#exec MESH SEQUENCE MESH=CrossNali SEQ=Dead4      	STARTFRAME=53  NUMFRAMES=1
00016	#exec MESH SEQUENCE MESH=CrossNali SEQ=Hang1      	STARTFRAME=54  NUMFRAMES=1			GROUP=Upright
00017	#exec MESH SEQUENCE MESH=CrossNali SEQ=Hang2      	STARTFRAME=55  NUMFRAMES=1			GROUP=Upright
00018	#exec MESH SEQUENCE MESH=CrossNali SEQ=Hang3      	STARTFRAME=56  NUMFRAMES=1			GROUP=Upright
00019	#exec MESH SEQUENCE MESH=CrossNali SEQ=HangFeet    	STARTFRAME=57  NUMFRAMES=1			GROUP=Upright
00020	#exec MESH SEQUENCE MESH=CrossNali SEQ=Impaled     	STARTFRAME=58  NUMFRAMES=1			GROUP=Upright
00021	#exec MESH SEQUENCE MESH=CrossNali SEQ=Stocks      	STARTFRAME=59  NUMFRAMES=1			GROUP=Upright
00022	#exec MESH SEQUENCE MESH=CrossNali SEQ=Stretch     	STARTFRAME=60  NUMFRAMES=1
00023	
00024	
00025	#exec TEXTURE IMPORT NAME=JNali1 FILE=MODELS\nali.PCX GROUP=Skins 
00026	#exec MESHMAP SCALE MESHMAP=crossnali X=0.072 Y=0.072 Z=0.144
00027	#exec MESHMAP SETTEXTURE MESHMAP=crossnali NUM=0 TEXTURE=Jnali1
00028	
00029	auto state Dying
00030	{
00031		function AnimEnd()
00032		{
00033			if ( (AnimSequence == 'HeadDown') && (FRand() < 0.1) )
00034				PlayAnim('Writhe', 0.3 + 0.6 * FRand());
00035			else
00036				PlayAnim('HeadDown', 0.3 + 0.6 * FRand());
00037		}
00038		
00039		function TakeDamage( int Damage, Pawn instigatedBy, Vector hitlocation, 
00040								Vector momentum, name damageType)
00041		{
00042			if ( (Damage > 40) || (momentum.Z/mass > 150) || (CumulativeDamage > 100) )
00043			{
00044				Velocity = momentum/Mass;
00045				ChunkUp(Damage);
00046			}
00047			else
00048			{
00049				Spawn(class'BloodSpurt',,,HitLocation,rot(16384,0,0));
00050				CumulativeDamage += Damage;
00051				if ( CumulativeDamage > 40 )
00052				{
00053					Disable('AnimEnd');
00054					TweenAnim('HeadDown', 0.22);
00055				}
00056				else
00057					PlayAnim('Writhe', 0.7, 0.1);
00058			}
00059		}
00060		
00061	Begin:
00062		if ( AnimSequence == 'HeadDown' )
00063		{
00064			SetCollision(true,true,true);
00065			PlayAnim('HeadDown');
00066		}
00067		else
00068		{
00069			 if ( GetAnimGroup(AnimSequence) != 'Upright' )
00070			 	ReduceCylinder();
00071			bReducedHeight = true;
00072			GotoState('Dead');
00073		}
00074	}
00075	
00076	defaultproperties
00077	{
00078	     Physics=PHYS_None
00079	     LifeSpan=0.000000
00080	     AnimSequence=HeadDown
00081	     Mesh=LodMesh'UnrealShare.CrossNali'
00082	}

End Source Code