You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

79 lines
1.5 KiB

/**
* @file quests.cpp
*
* Interface of functionality for handling quests.
*/
#ifndef __QUESTS_H__
#define __QUESTS_H__
DEVILUTION_BEGIN_NAMESPACE
#ifdef __cplusplus
extern "C" {
#endif
typedef struct QuestStruct {
Uint8 _qlevel;
Uint8 _qtype;
Uint8 _qactive;
Uint8 _qlvltype;
Sint32 _qtx;
Sint32 _qty;
Uint8 _qslvl;
Uint8 _qidx;
Uint32 _qmsg;
Uint8 _qvar1;
Uint8 _qvar2;
bool _qlog;
} QuestStruct;
typedef struct QuestData {
Uint8 _qdlvl;
Sint8 _qdmultlvl;
Uint8 _qlvlt;
Uint8 _qdtype;
Uint8 _qdrnd;
Uint8 _qslvl;
Uint32 _qflags; /* unsigned char */
Sint32 _qdmsg;
const char *_qlstr;
} QuestData;
extern bool allquests;
extern bool questlog;
extern BYTE *pQLogCel;
extern QuestStruct quests[MAXQUESTS];
extern int ReturnLvlX;
extern int ReturnLvlY;
extern int ReturnLvlT;
extern int ReturnLvl;
void InitQuests();
void CheckQuests();
BOOL ForceQuests();
BOOL QuestStatus(int i);
void CheckQuestKill(int m, BOOL sendmsg);
void DRLG_CheckQuests(int x, int y);
void SetReturnLvlPos();
void GetReturnLvlPos();
void LoadPWaterPalette();
void ResyncMPQuests();
void ResyncQuests();
void DrawQuestLog();
void StartQuestlog();
void QuestlogUp();
void QuestlogDown();
void QuestlogEnter();
void QuestlogESC();
void SetMultiQuest(int q, int s, int l, int v1);
/* rdata */
extern QuestData questlist[];
#ifdef __cplusplus
}
#endif
DEVILUTION_END_NAMESPACE
#endif /* __QUESTS_H__ */