Files
source/Laptop/files.h
T

95 lines
1.9 KiB
C

#ifndef __FILES_H
#define __FILES_H
#define FILES_DAT_FILE "TEMP\\files.dat"
void GameInitFiles();
void EnterFiles();
void ExitFiles();
void HandleFiles();
void RenderFiles();
struct files{
UINT8 ubCode; // the code index in the files code table
UINT8 ubFormat; // layout format
UINT32 uiIdNumber; // unique id number
UINT32 uiDate; // time in the world in global time (resolution, minutes)
BOOLEAN fRead;
STR8 pPicFileNameList[2];
struct files *Next; // next unit in the list
};
struct filestring{
STR16 pString;
struct filestring *Next;
};
typedef struct filestring FileString;
typedef struct filestring *FileStringPtr;
// files codes
enum{
FILES_WELCOME_NOTICE,
};
// special codes for special files
enum{
ENRICO_BACKGROUND = 0,
SLAY_BACKGROUND,
MATRON_BACKGROUND,
IMPOSTER_BACKGROUND,
TIFFANY_BACKGROUND,
REXALL_BACKGROUND,
ELGIN_BACKGROUND,
LAST_JA2_VANILLA_FILE = ELGIN_BACKGROUND,
ADDITIONAL_FILE_0 = 100,
ADDITIONAL_FILE_99 = 199,
ADDITIONAL_FILE_MAX = ADDITIONAL_FILE_99,
};
// file formats
typedef enum {
FFORMAT_MISSION_BRIEFING = 4,
FFORMAT_ADDITIONAL_TEXT = 5,
} FileFormats;
extern UINT8 ubFileRecordsLength[];
extern BOOLEAN fEnteredFileViewerFromNewFileIcon;
extern BOOLEAN fNewFilesInFileViewer;
typedef struct files FilesUnit;
typedef struct files *FilesUnitPtr;
extern FilesUnitPtr pFilesListHead;
struct filerecordwidth{
INT32 iRecordNumber;
INT32 iRecordWidth;
INT32 iRecordHeightAdjustment;
UINT8 ubFlags;
struct filerecordwidth *Next;
};
typedef struct filerecordwidth FileRecordWidth;
typedef struct filerecordwidth *FileRecordWidthPtr;
UINT32 AddFilesToPlayersLog(UINT8 ubCode, UINT32 uiDate , UINT8 ubFormat, STR8 pFirstPicFile, STR8 pSecondPicFile );
// add a file about this terrorist
BOOLEAN AddFileAboutTerrorist( INT32 iProfileId );
#endif