summaryrefslogtreecommitdiffstats
path: root/game/code/sound/avatar/avatarsoundplayer.h
blob: ce8bacdede20e1a49d11310903bc176a59a454e5 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
//=============================================================================
// Copyright (C) 2002 Radical Entertainment Ltd.  All rights reserved.
//
// File:        avatarsoundplayer.h
//
// Description: Declaration of AvatarSoundPlayer class, which directs the
//              playing of avatar-related sounds
//
// History:     30/06/2002 + Created -- Darren
//
//=============================================================================

#ifndef AVATARSOUNDPLAYER_H
#define AVATARSOUNDPLAYER_H

//========================================
// Nested Includes
//========================================
#include <constants/maxplayers.h>

//========================================
// Forward References
//========================================

class SoundAvatar;

//=============================================================================
//
// Synopsis:    AvatarSoundPlayer
//
//=============================================================================

class AvatarSoundPlayer
{
    public:
        AvatarSoundPlayer();
        virtual ~AvatarSoundPlayer();

        void Initialize();

        void UpdateOncePerFrame( unsigned int elapsedTime );
        
        //
        // Returns true if first player in car, false otherwise
        //
        bool OnBeginGameplay();

        void OnEndGameplay();

    private:
        //Prevent wasteful constructor creation.
        AvatarSoundPlayer( const AvatarSoundPlayer& original );
        AvatarSoundPlayer& operator=( const AvatarSoundPlayer& rhs );

        //
        // One SoundAvatar to track activity of each Avatar object
        //
        SoundAvatar* m_avatars[MAX_PLAYERS];
};


#endif // AVATARSOUNDPLAYER_H