Browse Source

[hellfire] LoadPlrGFX

pull/876/head
Anders Jenbo 7 years ago
parent
commit
f6c7465e4f
  1. 17
      Source/init.h
  2. 57
      Source/player.cpp
  3. 6
      Source/player.h

17
Source/init.h

@ -13,6 +13,23 @@ extern char diabdat_mpq_path[MAX_PATH];
extern HANDLE patch_rt_mpq;
extern BOOL killed_mom_parent;
extern BOOLEAN screensaver_enabled_prev;
#ifdef HELLFIRE
extern char hellfire_mpq_path[MAX_PATH];
extern char hfmonk_mpq_path[MAX_PATH];
extern char hfbard_mpq_path[MAX_PATH];
extern char hfbarb_mpq_path[MAX_PATH];
extern char hfmusic_mpq_path[MAX_PATH];
extern char hfvoice_mpq_path[MAX_PATH];
extern char hfopt1_mpq_path[MAX_PATH];
extern char hfopt2_mpq_path[MAX_PATH];
extern HANDLE hfmonk_mpq;
extern HANDLE hfbard_mpq;
extern HANDLE hfbarb_mpq;
extern HANDLE hfmusic_mpq;
extern HANDLE hfvoice_mpq;
extern HANDLE hfopt1_mpq;
extern HANDLE hfopt2_mpq;
#endif
void init_cleanup(BOOL show_cursor);
void init_run_office_from_start_menu();

57
Source/player.cpp

@ -23,7 +23,26 @@ int plr_dframe_size;
const char ArmourChar[4] = { 'L', 'M', 'H', 0 };
const char WepChar[10] = { 'N', 'U', 'S', 'D', 'B', 'A', 'M', 'H', 'T', 0 };
const char CharChar[4] = { 'W', 'R', 'S', 0 };
const char CharChar[] = {
'W',
'R',
'S',
#ifdef HELLFIRE
'M',
'R',
'W',
0
};
const char CharCharHF[] = {
'W',
'R',
'S',
'M',
'B',
'C',
#endif
0
};
/* data */
@ -50,7 +69,16 @@ int MagicTbl[3] = { 10, 15, 35 };
int DexterityTbl[3] = { 20, 30, 15 };
int VitalityTbl[3] = { 25, 20, 20 };
int ToBlkTbl[3] = { 30, 20, 10 };
char *ClassStrTblOld[3] = { "Warrior", "Rogue", "Sorceror" }; // unused
char *ClassStrTblOld[] = {
"Warrior",
"Rogue",
"Sorceror",
#ifdef HELLFIRE
"Monk",
"Bard",
"Barbarian",
#endif
};
int MaxStats[3][4] = {
{ 250, 50, 60, 100 },
{ 55, 70, 250, 80 },
@ -109,7 +137,16 @@ int ExpLvlsTbl[MAXCHARLEVEL] = {
1310707109,
1583495809
};
char *ClassStrTbl[3] = { "Warrior", "Rogue", "Sorceror" };
char *ClassStrTbl[] = {
"Warrior",
"Rogue",
"Sorceror",
#ifdef HELLFIRE
"Monk",
"Rogue",
"Warrior",
#endif
};
BYTE fix[9] = { 0, 0, 3, 3, 3, 6, 6, 6, 8 }; /* PM_ChangeLightOff local type */
void SetPlayerGPtrs(BYTE *pData, BYTE **pAnim)
@ -136,8 +173,18 @@ void LoadPlrGFX(int pnum, player_graphic gfxflag)
}
p = &plr[pnum];
sprintf(prefix, "%c%c%c", CharChar[p->_pClass], ArmourChar[p->_pgfxnum >> 4], WepChar[p->_pgfxnum & 0xF]);
cs = ClassStrTbl[p->_pClass];
#ifdef HELLFIRE
if ((p->_pClass != PC_BARD || hfbard_mpq == NULL) && (p->_pClass != PC_BARBARIAN || hfbarb_mpq == NULL)) {
#endif
sprintf(prefix, "%c%c%c", CharChar[p->_pClass], ArmourChar[p->_pgfxnum >> 4], WepChar[p->_pgfxnum & 0xF]);
cs = ClassStrTbl[p->_pClass];
#ifdef HELLFIRE
} else {
sprintf(prefix, "%c%c%c", CharCharHF[p->_pClass], ArmourChar[p->_pgfxnum >> 4], WepChar[p->_pgfxnum & 0xF]);
cs = ClassStrTbl[p->_pClass];
cs = ClassStrTblOld[p->_pClass];
}
#endif
for (i = 1; i <= PFILE_NONDEATH; i <<= 1) {
if (!(i & gfxflag)) {

6
Source/player.h

@ -117,7 +117,7 @@ void PlayDungMsgs();
extern const char ArmourChar[4];
extern const char WepChar[10];
extern const char CharChar[4];
extern const char CharChar[];
/* data */
@ -133,10 +133,10 @@ extern int MagicTbl[3];
extern int DexterityTbl[3];
extern int VitalityTbl[3];
extern int ToBlkTbl[3];
extern char *ClassStrTblOld[3];
extern char *ClassStrTblOld[];
extern int MaxStats[3][4];
extern int ExpLvlsTbl[MAXCHARLEVEL];
extern char *ClassStrTbl[3];
extern char *ClassStrTbl[];
extern BYTE fix[9];
#endif /* __PLAYER_H__ */

Loading…
Cancel
Save