Browse Source

Merge branch 'master' of github.com:diasurgical/devilution

pull/414/head
Anders Jenbo 6 years ago
parent
commit
215ff59e65
  1. 10
      Source/control.cpp
  2. 20
      Source/diablo.cpp
  3. 2
      Source/diablo.h
  4. 4
      Source/engine.cpp
  5. 10
      Source/gamemenu.cpp
  6. 2
      Source/init.cpp
  7. 2
      Source/interfac.cpp
  8. 8
      Source/inv.cpp
  9. 4
      Source/items.cpp
  10. 22
      Source/monster.cpp
  11. 8
      Source/objects.cpp
  12. 6
      Source/player.cpp
  13. 8
      Source/scrollrt.cpp
  14. 6
      Source/stores.cpp
  15. 2
      SourceX/dx.cpp
  16. 2
      structs.h

10
Source/control.cpp

@ -383,7 +383,7 @@ void SetSpell()
ClearPanel();
plr[myplr]._pRSpell = pSpell;
plr[myplr]._pRSplType = pSplType;
drawpanflag = 255;
force_redraw = 255;
}
}
@ -427,7 +427,7 @@ void ToggleSpell(int slot)
if (spells & (__int64)1 << (plr[myplr]._pSplHotKey[slot] - 1)) {
plr[myplr]._pRSpell = plr[myplr]._pSplHotKey[slot];
plr[myplr]._pRSplType = plr[myplr]._pSplTHotKey[slot];
drawpanflag = 255;
force_redraw = 255;
}
}
@ -1819,7 +1819,7 @@ void CheckSBook()
}
plr[myplr]._pRSpell = sn;
plr[myplr]._pRSplType = st;
drawpanflag = 255;
force_redraw = 255;
}
}
if (MouseX >= RIGHT_PANEL + 7 && MouseX < RIGHT_PANEL + 313 && MouseY >= 320 && MouseY < 349) { /// BUGFIX: change `< 313` to `< 311`
@ -2094,7 +2094,7 @@ void control_type_message()
talkbtndown[i] = FALSE;
}
sgbPlrTalkTbl = PANEL_HEIGHT + 16;
drawpanflag = 255;
force_redraw = 255;
sgbTalkSavePos = sgbNextTalkSave;
}
@ -2102,7 +2102,7 @@ void control_reset_talk()
{
talkflag = FALSE;
sgbPlrTalkTbl = 0;
drawpanflag = 255;
force_redraw = 255;
}
BOOL control_talk_last_key(int vkey)

20
Source/diablo.cpp

@ -21,7 +21,7 @@ int glEndSeed[NUMLEVELS];
BOOL gbLoadGame;
int DebugMonsters[10];
BOOLEAN cineflag;
int drawpanflag;
int force_redraw;
BOOL visiondebug;
BOOL scrollflag; /* unused */
BOOL light4flag;
@ -150,10 +150,10 @@ void run_game_loop(unsigned int uMsg)
gbRunGame = TRUE;
gbProcessPlayers = TRUE;
gbRunGameResult = TRUE;
drawpanflag = 255;
force_redraw = 255;
DrawAndBlit();
PaletteFadeIn(8);
drawpanflag = 255;
force_redraw = 255;
gbGameLoopStartup = TRUE;
nthread_ignore_mutex(FALSE);
@ -194,7 +194,7 @@ void run_game_loop(unsigned int uMsg)
PaletteFadeOut(8);
SetCursor_(0);
ClearScreenBuffer();
drawpanflag = 255;
force_redraw = 255;
scrollrt_draw_game_screen(TRUE);
saveProc = SetWindowProc(saveProc);
/// ASSERT: assert(saveProc == GM_Game);
@ -617,7 +617,7 @@ LRESULT CALLBACK GM_Game(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
track_repeat_walk(FALSE);
sgbMouseDown = 0;
ShowProgress(uMsg);
drawpanflag = 255;
force_redraw = 255;
DrawAndBlit();
if (gbRunGame)
PaletteFadeIn(8);
@ -1062,7 +1062,7 @@ void diablo_pause_game()
FreeMonsterSnd();
track_repeat_walk(0);
}
drawpanflag = 255;
force_redraw = 255;
}
}
@ -1684,7 +1684,7 @@ void game_logic()
PauseMode = 2;
}
if (gbMaxPlayers == 1 && gmenu_exception()) {
drawpanflag |= 1;
force_redraw |= 1;
return;
}
@ -1718,7 +1718,7 @@ void game_logic()
ClearPlrMsg();
CheckTriggers();
CheckQuests();
drawpanflag |= 1;
force_redraw |= 1;
pfile_update(FALSE);
}
@ -1732,14 +1732,14 @@ void timeout_cursor(BOOL bTimeout)
AddPanelString("-- Network timeout --", TRUE);
AddPanelString("-- Waiting for players --", TRUE);
SetCursor_(CURSOR_HOURGLASS);
drawpanflag = 255;
force_redraw = 255;
}
scrollrt_draw_game_screen(1);
} else if (sgnTimeoutCurs) {
SetCursor_(sgnTimeoutCurs);
sgnTimeoutCurs = 0;
ClearPanel();
drawpanflag = 255;
force_redraw = 255;
}
}

2
Source/diablo.h

@ -107,7 +107,7 @@ extern BOOL gbLoadGame;
extern HINSTANCE ghInst;
extern int DebugMonsters[10];
extern BOOLEAN cineflag;
extern int drawpanflag;
extern int force_redraw;
extern BOOL visiondebug;
extern BOOL scrollflag; /* unused */
extern BOOL light4flag;

4
Source/engine.cpp

@ -1205,10 +1205,10 @@ void PlayInGameMovie(char *pszMovie)
PaletteFadeOut(8);
play_movie(pszMovie, 0);
ClearScreenBuffer();
drawpanflag = 255;
force_redraw = 255;
scrollrt_draw_game_screen(1);
PaletteFadeIn(8);
drawpanflag = 255;
force_redraw = 255;
}
DEVILUTION_END_NAMESPACE

10
Source/gamemenu.cpp

@ -100,7 +100,7 @@ void gamemenu_new_game(BOOL bActivate)
}
deathflag = FALSE;
drawpanflag = 255;
force_redraw = 255;
scrollrt_draw_game_screen(TRUE);
gbRunGame = FALSE;
gamemenu_off();
@ -118,13 +118,13 @@ void gamemenu_load_game(BOOL bActivate)
gamemenu_off();
SetCursor_(CURSOR_NONE);
InitDiabloMsg(EMSG_LOADING);
drawpanflag = 255;
force_redraw = 255;
DrawAndBlit();
LoadGame(FALSE);
ClrDiabloMsg();
PaletteFadeOut(8);
deathflag = FALSE;
drawpanflag = 255;
force_redraw = 255;
DrawAndBlit();
PaletteFadeIn(8);
SetCursor_(CURSOR_HAND);
@ -147,11 +147,11 @@ void gamemenu_save_game(BOOL bActivate)
SetCursor_(CURSOR_NONE);
gamemenu_off();
InitDiabloMsg(EMSG_SAVING);
drawpanflag = 255;
force_redraw = 255;
DrawAndBlit();
SaveGame();
ClrDiabloMsg();
drawpanflag = 255;
force_redraw = 255;
SetCursor_(CURSOR_HAND);
interface_msg_pump();
SetWindowProc(saveProc);

2
Source/init.cpp

@ -119,7 +119,7 @@ LRESULT __stdcall MainWndProc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
case WM_ERASEBKGND:
return 0;
case WM_PAINT:
drawpanflag = 255;
force_redraw = 255;
break;
case WM_CLOSE:
return 0;

2
Source/interfac.cpp

@ -47,7 +47,7 @@ void DrawCutscene()
}
unlock_buf(1);
drawpanflag = 255;
force_redraw = 255;
scrollrt_draw_game_screen(0);
}

8
Source/inv.cpp

@ -902,7 +902,7 @@ void CheckInvPaste(int pnum, int mx, int my)
if (plr[pnum].InvBody[INVLOC_HAND_LEFT]._itype == ITYPE_STAFF && plr[pnum].InvBody[INVLOC_HAND_LEFT]._iSpell != 0 && plr[pnum].InvBody[INVLOC_HAND_LEFT]._iCharges > 0) {
plr[pnum]._pRSpell = plr[pnum].InvBody[INVLOC_HAND_LEFT]._iSpell;
plr[pnum]._pRSplType = RSPLTYPE_CHARGES;
drawpanflag = 255;
force_redraw = 255;
}
break;
case ILOC_ARMOR:
@ -1289,7 +1289,7 @@ void RemoveInvItem(int pnum, int iv)
plr[pnum]._pRSpell = SPL_INVALID;
}
drawpanflag = 255;
force_redraw = 255;
}
}
}
@ -1311,7 +1311,7 @@ void RemoveSpdBarItem(int pnum, int iv)
}
}
}
drawpanflag = 255;
force_redraw = 255;
}
void CheckInvItem()
@ -2184,7 +2184,7 @@ int CalculateGold(int pnum)
for (i = 0; i < MAXBELTITEMS; i++) {
if (plr[pnum].SpdList[i]._itype == ITYPE_GOLD) {
gold += plr[pnum].SpdList[i]._ivalue;
drawpanflag = 255;
force_redraw = 255;
}
}
for (i = 0; i < plr[pnum]._pNumInv; i++) {

4
Source/items.cpp

@ -453,7 +453,7 @@ void CalcPlrItemVals(int p, BOOL Loadgfx)
&& !(spl & ((unsigned __int64)1 << (plr[p]._pRSpell - 1)))) {
plr[p]._pRSpell = SPL_INVALID;
plr[p]._pRSplType = RSPLTYPE_INVALID;
drawpanflag = 255;
force_redraw = 255;
}
plr[p]._pISplLvlAdd = spllvladd;
@ -627,7 +627,7 @@ void CalcPlrScrolls(int p)
if (!(plr[p]._pScrlSpells & 1 << (plr[p]._pRSpell - 1))) {
plr[p]._pRSpell = SPL_INVALID;
plr[p]._pRSplType = RSPLTYPE_INVALID;
drawpanflag = 255;
force_redraw = 255;
}
}
}

22
Source/monster.cpp

@ -598,15 +598,15 @@ void PlaceUniqueMonst(int uniqindex, int miniontype, int unpackfilesize)
}
}
if (uniqindex == 3) {
if (uniqindex == UMT_SNOTSPIL) {
xp = 2 * setpc_x + 24;
yp = 2 * setpc_y + 28;
}
if (uniqindex == 8) {
if (uniqindex == UMT_WARLORD) {
xp = 2 * setpc_x + 22;
yp = 2 * setpc_y + 23;
}
if (uniqindex == 2) {
if (uniqindex == UMT_ZHAR) {
zharflag = TRUE;
for (i = 0; i < themeCount; i++) {
if (i == zharlib && zharflag == TRUE) {
@ -617,37 +617,37 @@ void PlaceUniqueMonst(int uniqindex, int miniontype, int unpackfilesize)
}
}
if (gbMaxPlayers == 1) {
if (uniqindex == 4) {
if (uniqindex == UMT_LAZURUS) {
xp = 32;
yp = 46;
}
if (uniqindex == 5) {
if (uniqindex == UMT_RED_VEX) {
xp = 40;
yp = 45;
}
if (uniqindex == 6) {
if (uniqindex == UMT_BLACKJADE) {
xp = 38;
yp = 49;
}
if (uniqindex == 1) {
if (uniqindex == UMT_SKELKING) {
xp = 35;
yp = 47;
}
} else {
if (uniqindex == 4) {
if (uniqindex == UMT_LAZURUS) {
xp = 2 * setpc_x + 19;
yp = 2 * setpc_y + 22;
}
if (uniqindex == 5) {
if (uniqindex == UMT_RED_VEX) {
xp = 2 * setpc_x + 21;
yp = 2 * setpc_y + 19;
}
if (uniqindex == 6) {
if (uniqindex == UMT_BLACKJADE) {
xp = 2 * setpc_x + 21;
yp = 2 * setpc_y + 25;
}
}
if (uniqindex == 9) {
if (uniqindex == UMT_BUTCHER) {
done = FALSE;
for (yp = 0; yp < MAXDUNY && !done; yp++) {
for (xp = 0; xp < MAXDUNX && !done; xp++) {

8
Source/objects.cpp

@ -3417,7 +3417,7 @@ void OperateShrine(int pnum, int i, int sType)
}
CalcPlrInv(pnum, TRUE);
drawpanflag = 255;
force_redraw = 255;
if (pnum == myplr)
NetSendCmdParam2(FALSE, CMD_PLROPOBJ, pnum, i);
@ -3539,7 +3539,7 @@ void OperateGoatShrine(int pnum, int i, int sType)
object[i]._oVar1 = FindValidShrine(i);
OperateShrine(pnum, i, sType);
object[i]._oAnimDelay = 2;
drawpanflag = 255;
force_redraw = 255;
}
void OperateCauldron(int pnum, int i, int sType)
@ -3549,7 +3549,7 @@ void OperateCauldron(int pnum, int i, int sType)
OperateShrine(pnum, i, sType);
object[i]._oAnimFlag = 0;
object[i]._oAnimFrame = 3;
drawpanflag = 255;
force_redraw = 255;
}
BOOL OperateFountains(int pnum, int i)
@ -3667,7 +3667,7 @@ BOOL OperateFountains(int pnum, int i)
NetSendCmdParam1(FALSE, CMD_OPERATEOBJ, i);
break;
}
drawpanflag = 255;
force_redraw = 255;
return applied;
}

6
Source/player.cpp

@ -1894,7 +1894,7 @@ void DropHalfPlayersGold(int pnum)
}
}
}
drawpanflag = 255;
force_redraw = 255;
if (hGold > 0) {
for (i = 0; i < plr[pnum]._pNumInv && hGold > 0; i++) {
if (plr[pnum].InvList[i]._itype == ITYPE_GOLD && plr[pnum].InvList[i]._ivalue != GOLD_MAX_LIMIT) {
@ -2863,7 +2863,7 @@ BOOL PM_DoSpell(int pnum)
& (unsigned __int64)1 << (plr[pnum]._pRSpell - 1))) {
plr[pnum]._pRSpell = SPL_INVALID;
plr[pnum]._pRSplType = RSPLTYPE_INVALID;
drawpanflag = 255;
force_redraw = 255;
}
}
@ -2872,7 +2872,7 @@ BOOL PM_DoSpell(int pnum)
& (unsigned __int64)1 << (plr[pnum]._pRSpell - 1))) {
plr[pnum]._pRSpell = SPL_INVALID;
plr[pnum]._pRSplType = RSPLTYPE_INVALID;
drawpanflag = 255;
force_redraw = 255;
}
}
}

8
Source/scrollrt.cpp

@ -1142,8 +1142,8 @@ void scrollrt_draw_game_screen(BOOL draw_cursor)
{
int hgt;
if (drawpanflag == 255) {
drawpanflag = 0;
if (force_redraw == 255) {
force_redraw = 0;
hgt = SCREEN_HEIGHT;
} else {
hgt = 0;
@ -1176,7 +1176,7 @@ void DrawAndBlit()
return;
}
if (SCREEN_WIDTH > PANEL_WIDTH || SCREEN_HEIGHT > VIEWPORT_HEIGHT + PANEL_HEIGHT || drawpanflag == 255) {
if (SCREEN_WIDTH > PANEL_WIDTH || SCREEN_HEIGHT > VIEWPORT_HEIGHT + PANEL_HEIGHT || force_redraw == 255) {
drawhpflag = TRUE;
drawmanaflag = TRUE;
drawbtnflag = TRUE;
@ -1190,7 +1190,7 @@ void DrawAndBlit()
hgt = VIEWPORT_HEIGHT;
}
drawpanflag = 0;
force_redraw = 0;
lock_buf(0);
DrawView(ViewX, ViewY);

6
Source/stores.cpp

@ -1810,7 +1810,7 @@ void TakePlrsMoney(int cost)
}
}
}
drawpanflag = 255;
force_redraw = 255;
if (cost > 0) {
for (i = 0; i < plr[myplr]._pNumInv && cost > 0; i++) {
if (plr[myplr].InvList[i]._itype == ITYPE_GOLD && plr[myplr].InvList[i]._ivalue != GOLD_MAX_LIMIT) {
@ -2557,7 +2557,7 @@ void S_TalkEnter()
sn = 0;
for (i = 0; i < 16; i++) {
if (quests[i]._qlevel == 2 && ((DWORD *)&Qtalklist[talker])[i] != -1 && quests[i]._qlog)
if (quests[i]._qactive == 2 && ((DWORD *)&Qtalklist[talker])[i] != -1 && quests[i]._qlog)
sn++;
}
if (sn > 6) {
@ -2576,7 +2576,7 @@ void S_TalkEnter()
}
for (i = 0; i < 16; i++) {
if (quests[i]._qlevel == 2 && ((DWORD *)&Qtalklist[talker])[i] != -1 && quests[i]._qlog) {
if (quests[i]._qactive == 2 && ((DWORD *)&Qtalklist[talker])[i] != -1 && quests[i]._qlog) {
if (sn == stextsel) {
InitQTextMsg(((DWORD *)&Qtalklist[talker])[i]);
}

2
SourceX/dx.cpp

@ -152,7 +152,7 @@ void dx_reinit()
dx_cleanup();
drawpanflag = 255;
force_redraw = 255;
dx_init(ghMainWnd);

2
structs.h

@ -102,7 +102,7 @@ typedef struct ItemStruct {
int _iAnimFrame;
int _iAnimWidth;
int _iAnimWidth2; // width 2?
int _isin; // set when item is flagged for deletion, deprecated in 1.02
BOOL _iDelFlag; // set when item is flagged for deletion, deprecated in 1.02
char _iSelFlag;
BOOL _iPostDraw;
BOOL _iIdentified;

Loading…
Cancel
Save