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.
144 lines
4.1 KiB
144 lines
4.1 KiB
/** |
|
* @file control.h |
|
* |
|
* Interface of the character and main control panels |
|
*/ |
|
#ifndef __CONTROL_H__ |
|
#define __CONTROL_H__ |
|
|
|
DEVILUTION_BEGIN_NAMESPACE |
|
|
|
extern BYTE *pDurIcons; |
|
extern BYTE *pChrButtons; |
|
extern BOOL drawhpflag; |
|
extern BOOL dropGoldFlag; |
|
extern BOOL panbtn[8]; |
|
extern BOOL chrbtn[4]; |
|
extern BYTE *pMultiBtns; |
|
extern BYTE *pPanelButtons; |
|
extern BYTE *pChrPanel; |
|
extern BOOL lvlbtndown; |
|
extern int dropGoldValue; |
|
extern BOOL drawmanaflag; |
|
extern BOOL chrbtnactive; |
|
extern BYTE *pPanelText; |
|
extern BYTE *pLifeBuff; |
|
extern BYTE *pBtmBuff; |
|
extern BYTE *pTalkBtns; |
|
extern int pstrjust[4]; |
|
extern int pnumlines; |
|
extern BOOL pinfoflag; |
|
extern BOOL talkbtndown[3]; |
|
extern int pSpell; |
|
extern BYTE *pManaBuff; |
|
extern char infoclr; |
|
extern BYTE *pGBoxBuff; |
|
extern BYTE *pSBkBtnCel; |
|
extern char tempstr[256]; |
|
extern BOOLEAN whisper[MAX_PLRS]; |
|
extern int sbooktab; |
|
extern int pSplType; |
|
extern int initialDropGoldIndex; |
|
extern BOOL talkflag; |
|
extern BYTE *pSBkIconCels; |
|
extern BOOL sbookflag; |
|
extern BOOL chrflag; |
|
extern BOOL drawbtnflag; |
|
extern BYTE *pSpellBkCel; |
|
extern char infostr[256]; |
|
extern int numpanbtns; |
|
extern BYTE *pStatusPanel; |
|
extern char panelstr[4][64]; |
|
extern BOOL panelflag; |
|
extern BYTE SplTransTbl[256]; |
|
extern int initialDropGoldValue; |
|
extern BYTE *pSpellCels; |
|
extern BOOL panbtndown; |
|
extern BYTE *pTalkPanel; |
|
extern BOOL spselflag; |
|
|
|
void DrawSpellCel(int xp, int yp, BYTE *Trans, int nCel, int w); |
|
void SetSpellTrans(char t); |
|
void DrawSpell(); |
|
void DrawSpellList(); |
|
void SetSpell(); |
|
void SetSpeedSpell(int slot); |
|
void ToggleSpell(int slot); |
|
void PrintChar(int sx, int sy, int nCel, char col); |
|
void AddPanelString(char *str, BOOL just); |
|
void ClearPanel(); |
|
void DrawPanelBox(int x, int y, int w, int h, int sx, int sy); |
|
void InitPanelStr(); |
|
void SetFlaskHeight(BYTE *pCelBuff, int min, int max, int sx, int sy); |
|
void DrawFlask(BYTE *pCelBuff, int w, int nSrcOff, BYTE *pBuff, int nDstOff, int h); |
|
void DrawLifeFlask(); |
|
void UpdateLifeFlask(); |
|
void DrawManaFlask(); |
|
void control_update_life_mana(); |
|
void UpdateManaFlask(); |
|
void InitControlPan(); |
|
void DrawCtrlPan(); |
|
void DrawCtrlBtns(); |
|
void DoSpeedBook(); |
|
void DoPanBtn(); |
|
void control_set_button_down(int btn_id); |
|
void control_check_btn_press(); |
|
void DoAutoMap(); |
|
void CheckPanelInfo(); |
|
void CheckBtnUp(); |
|
void FreeControlPan(); |
|
BOOL control_WriteStringToBuffer(BYTE *str); |
|
void DrawInfoBox(); |
|
void PrintInfo(); |
|
void CPrintString(int y, char *str, BOOL center, int lines); |
|
void PrintGameStr(int x, int y, const char *str, int color); |
|
void DrawChr(); |
|
#define ADD_PlrStringXY(x, y, width, pszStr, col) MY_PlrStringXY(x, y, width, pszStr, col, 1) |
|
void MY_PlrStringXY(int x, int y, int width, char *pszStr, char col, int base); |
|
void CheckLvlBtn(); |
|
void ReleaseLvlBtn(); |
|
void DrawLevelUpIcon(); |
|
void CheckChrBtns(); |
|
void ReleaseChrBtns(); |
|
void DrawDurIcon(); |
|
int DrawDurIcon4Item(ItemStruct *pItem, int x, int c); |
|
void RedBack(); |
|
char GetSBookTrans(int ii, BOOL townok); |
|
void DrawSpellBook(); |
|
void PrintSBookStr(int x, int y, BOOL cjustflag, char *pszStr, char col); |
|
void CheckSBook(); |
|
char *get_pieces_str(int nGold); |
|
void DrawGoldSplit(int amount); |
|
void control_drop_gold(char vkey); |
|
void control_remove_gold(int pnum, int gold_index); |
|
void control_set_gold_curs(int pnum); |
|
void DrawTalkPan(); |
|
char *control_print_talk_msg(char *msg, int *x, int y, int just); |
|
BOOL control_check_talk_btn(); |
|
void control_release_talk_btn(); |
|
void control_reset_talk_msg(); |
|
void control_type_message(); |
|
void control_reset_talk(); |
|
BOOL control_talk_last_key(int vkey); |
|
BOOL control_presskeys(int vkey); |
|
void control_press_enter(); |
|
void control_up_down(int v); |
|
|
|
/* rdata */ |
|
extern const BYTE fontframe[128]; |
|
extern const BYTE fontkern[68]; |
|
extern const int lineOffsets[5][5]; |
|
extern const BYTE gbFontTransTbl[256]; |
|
|
|
/* data */ |
|
|
|
extern char SpellITbl[MAX_SPELLS]; |
|
extern int PanBtnPos[8][5]; |
|
extern char *PanBtnHotKey[8]; |
|
extern char *PanBtnStr[8]; |
|
extern RECT32 ChrBtnsRect[4]; |
|
extern int SpellPages[6][7]; |
|
|
|
DEVILUTION_END_NAMESPACE |
|
|
|
#endif /* __CONTROL_H__ */
|
|
|