Overview Package Class Source Class tree Glossary
previous class      next class frames      no frames

IGSoundEffectsSubsystem.SoundSet


00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
class SoundSet extends Core.Object
	native;

//=============================================================================
//  SoundSet.
// 
//  A SoundSet is a group of related sounds (usually variations of the same sound),
//  any of which can be marked as 'Available' for use or 'Used' (not available). 
//  A sound is chosen randomly for the list of available sounds.  It maintains a 
//  list of SoundRefs that handle the actual sound specific data like the 
//  USound object or the streaming sound data.  
//
//==============================================================================

import class Engine.Sound;

enum ESoundStatus 
{
    SS_Available,
    SS_Used
};

// Variables
var private array<SoundRef>		            AllSounds;              // List of SoundRefs in this soundset
var private array<ESoundStatus>	            StatusArray;            // List of Statuses that refer the AllSounds array
var private SoundRef               			LastSoundUsed;          // Last valid sound that this soundset chose

// Public UnrealScript Interface
native final function AddSoundRef (SoundRef inRef);

// Native c++ .h interface
cpptext
{
    // Returns true if there are no available sounds to play
    UBOOL IsAvailableEmpty();
    // Free up the soundref to be picked
    void  MakeSoundAvailable (class USoundRef* inSoundRef);
    // Make all sounds used, so this SoundSet will no longer return sounds
    void MakeNoSoundsAvailable ();
    // Free up all sounds to be picked
    void  MakeAllSoundsAvailable();
    // Pick a random sound from the available list of sounds
    class USoundRef* PickRandomSound (class USoundRef* inExcludedSoundRef = NULL);
    // Use up a sound 
    void  UseSound (class USoundRef* inSoundRef);
    
    // Add sounds to the set...
    void  AddSound (USound* inSound);
    void  AddStream (FString inStream);
    void  AddSoundRef (class USoundRef* inRef);

}

Overview Package Class Source Class tree Glossary
previous class      next class frames      no frames
Class file time: ne 5.9.2004 16:02:12.000 - Creation time: st 23.5.2018 00:10:47.194 - Created with UnCodeX