Engine
Class MusicEvent

source: e:\games\UnrealTournament\Engine\Classes\MusicEvent.uc
Core.Object
   |
   +--Engine.Actor
      |
      +--Engine.Triggers
         |
         +--Engine.MusicEvent
Direct Known Subclasses:None

class MusicEvent
extends Engine.Triggers

//============================================================================= // MusicEvent. //=============================================================================
Variables
 byte CdTrack
 music Song
 byte SongSection
 EMusicTransition Transition
 bool bAffectAllPlayers
 bool bOnceOnly
 bool bSilence


Function Summary
 void BeginPlay()
     
// When gameplay starts.
 void Trigger(Actor Other, Pawn EventInstigator)
     
// When triggered.



Source Code


00001	//=============================================================================
00002	// MusicEvent.
00003	//=============================================================================
00004	class MusicEvent extends Triggers;
00005	
00006	// Variables.
00007	var() music            Song;
00008	var() byte             SongSection;
00009	var() byte             CdTrack;
00010	var() EMusicTransition Transition;
00011	var() bool             bSilence;
00012	var() bool             bOnceOnly;
00013	var() bool             bAffectAllPlayers;
00014	
00015	// When gameplay starts.
00016	function BeginPlay()
00017	{
00018		if( Song==None )
00019		{
00020			Song = Level.Song;
00021		}
00022		if( bSilence )
00023		{
00024			SongSection = 255;
00025			CdTrack     = 255;
00026		}
00027	}
00028	
00029	// When triggered.
00030	function Trigger( actor Other, pawn EventInstigator )
00031	{
00032		local PlayerPawn P;
00033		local Pawn A;
00034	
00035		if( bAffectAllPlayers )
00036		{
00037			A = Level.PawnList;
00038			While ( A != None )
00039			{
00040				if ( A.IsA('PlayerPawn') )
00041					PlayerPawn(A).ClientSetMusic( Song, SongSection, CdTrack, Transition );
00042				A = A.nextPawn;
00043			}
00044		}
00045		else
00046		{
00047			// Only affect the one player.
00048			P = PlayerPawn(EventInstigator);
00049			if( P==None )
00050				return;
00051				
00052			// Go to music.
00053			P.ClientSetMusic( Song, SongSection, CdTrack, Transition );
00054		}	
00055	
00056		// Turn off if once-only.
00057		if( bOnceOnly )
00058		{
00059			SetCollision(false,false,false);
00060			disable( 'Trigger' );
00061		}
00062	}
00063	
00064	defaultproperties
00065	{
00066	     CdTrack=255
00067	     Transition=MTRAN_Fade
00068	     bAffectAllPlayers=True
00069	}

End Source Code