UnrealI
Class Dampener

source: e:\games\UnrealTournament\UnrealI\Classes\Dampener.uc
Core.Object
   |
   +--Engine.Actor
      |
      +--Engine.Inventory
         |
         +--Engine.Pickup
            |
            +--UnrealI.Dampener
Direct Known Subclasses:None

class Dampener
extends Engine.Pickup

//============================================================================= // Dampener. //=============================================================================
States
DeActivated, Activated
State DeActivated Function Summary


State Activated Function Summary
 void EndState()
 void Timer()



Source Code


00001	//=============================================================================
00002	// Dampener.
00003	//=============================================================================
00004	class Dampener extends PickUp;
00005	
00006	#exec AUDIO IMPORT FILE="..\UnrealShare\Sounds\Pickups\Dampndea.WAV" NAME="dampndea"       GROUP="Pickups"
00007	#exec AUDIO IMPORT FILE="..\UnrealShare\Sounds\Pickups\DAMPNER1.WAV" NAME="DampSnd"       GROUP="Pickups"
00008	
00009	#exec TEXTURE IMPORT NAME=I_Dampener FILE=TEXTURES\HUD\i_Damp.PCX GROUP="Icons" MIPS=OFF
00010	
00011	#exec MESH IMPORT MESH=DampenerM ANIVFILE=MODELS\acoust_a.3D DATAFILE=MODELS\acoust_d.3D X=0 Y=0 Z=0
00012	#exec MESH ORIGIN MESH=DampenerM X=0 Y=0 Z=-50 YAW=64
00013	#exec MESH SEQUENCE MESH=DampenerM SEQ=All STARTFRAME=0  NUMFRAMES=1
00014	#exec TEXTURE IMPORT NAME=Ainv1 FILE=..\unrealshare\MODELS\inv.PCX GROUP="Skins"
00015	#exec MESHMAP SCALE MESHMAP=DampenerM X=0.03 Y=0.03 Z=0.06
00016	#exec MESHMAP SETTEXTURE MESHMAP=DampenerM NUM=1 TEXTURE=Ainv1
00017	
00018	//
00019	// Player has activated the item.
00020	//
00021	// Count down the charge, turn acoustic damping on.  If charge runs out, remove from 
00022	// inventory and destroy, resetting sound to normal
00023	//
00024	state Activated
00025	{
00026		function Timer()
00027		{
00028			Charge -= 1;
00029			if (Charge<=0) {
00030				if ( Owner != None )
00031				{
00032					Owner.PlaySound(DeActivateSound);
00033					if ( Owner.IsA('Pawn') )
00034						Pawn(Owner).SoundDampening = 1.0;
00035				}
00036				UsedUp();		
00037			}
00038		}
00039		function EndState()
00040		{
00041			if ( Owner.IsA('Pawn') )
00042				Pawn(Owner).SoundDampening = 1.0;
00043			bActive = false;		
00044		}
00045	Begin:
00046		SetTimer(0.1,True);
00047		Owner.PlaySound(ActivateSound);	
00048		Pawn(Owner).SoundDampening = 0.1;	
00049	}
00050	
00051	state DeActivated
00052	{
00053	Begin:
00054		if ( Owner != None )
00055		{
00056			Owner.PlaySound(DeActivateSound);
00057			if ( Owner.IsA('Pawn') )
00058				Pawn(Owner).SoundDampening = 1.0;
00059		}
00060	}
00061	
00062	defaultproperties
00063	{
00064	     ExpireMessage="Acoustic dampener has run out."
00065	     bAutoActivate=True
00066	     bActivatable=True
00067	     bDisplayableInv=True
00068	     PickupMessage="You got the Acoustic Dampener"
00069	     RespawnTime=30.000000
00070	     PickupViewMesh=LodMesh'UnrealI.DampenerM'
00071	     Charge=200
00072	     PickupSound=Sound'UnrealShare.Pickups.GenPickSnd'
00073	     ActivateSound=Sound'UnrealI.Pickups.dampndea'
00074	     DeActivateSound=Sound'UnrealI.Pickups.DampSnd'
00075	     Icon=Texture'UnrealI.Icons.I_Dampener'
00076	     RemoteRole=ROLE_DumbProxy
00077	     Mesh=LodMesh'UnrealI.DampenerM'
00078	     AmbientGlow=69
00079	     CollisionRadius=15.000000
00080	     CollisionHeight=10.000000
00081	}

End Source Code