]> icculus.org git repositories - taylor/freespace2.git/blob - include/missioncmdbrief.h
Initial revision
[taylor/freespace2.git] / include / missioncmdbrief.h
1 /*
2  * $Logfile: /Freespace2/code/MissionUI/MissionCmdBrief.h $
3  * $Revision$
4  * $Date$
5  * $Author$
6  *
7  * Mission Command Briefing Screen
8  *
9  * $Log$
10  * Revision 1.1  2002/05/03 03:28:12  root
11  * Initial revision
12  *
13  * 
14  * 2     10/07/98 10:53a Dave
15  * Initial checkin.
16  * 
17  * 1     10/07/98 10:49a Dave
18  * 
19  * 7     4/06/98 8:37p Hoffoss
20  * Fixed a few bugs with command brief screen.  Now the voice starts after
21  * the text has printed, and options screen doesn't reset cmd brief.
22  * 
23  * 6     3/26/98 5:24p Hoffoss
24  * Changed Command Brief to use memory mapped ani files instead, so we
25  * avoid the huge pauses for huge anis that play!
26  * 
27  * 5     3/19/98 4:25p Hoffoss
28  * Added remaining support for command brief screen (ANI and WAVE file
29  * playing).
30  * 
31  * 4     3/17/98 6:26p Hoffoss
32  * Added wave filename to command brief structure.
33  * 
34  * 3     3/05/98 9:38p Hoffoss
35  * Finished up command brief screen.
36  * 
37  * 2     3/05/98 3:59p Hoffoss
38  * Added a bunch of new command brief stuff, and asteroid initialization
39  * to Fred.
40  * 
41  * 1     3/02/98 6:14p Hoffoss
42  *
43  * $NoKeywords: $
44  */
45
46 #define CMD_BRIEF_TEXT_MAX              16384
47 #define CMD_BRIEF_STAGES_MAX    10
48
49 typedef struct {
50         char *text;  // text to display
51         char ani_filename[MAX_FILENAME_LEN];  // associated ani file to play
52         anim_t *anim;
53         anim_instance_t *anim_instance;
54         int anim_ref;  // potential reference to another index (use it's anim instead of this's)
55         char wave_filename[MAX_FILENAME_LEN];
56         int wave;  // instance number of above
57 } cmd_brief_stage;
58
59 typedef struct {
60         int num_stages;
61         cmd_brief_stage stage[CMD_BRIEF_STAGES_MAX];
62 } cmd_brief;
63
64 extern cmd_brief Cmd_briefs[MAX_TEAMS];
65 extern cmd_brief *Cur_cmd_brief;  // pointer to one of the Cmd_briefs elements (the active one)
66
67 void cmd_brief_init(int stages);
68 void cmd_brief_close();
69 void cmd_brief_do_frame(float frametime);
70 void cmd_brief_hold();
71 void cmd_brief_unhold();
72