Browse Source

Remove some more use of miniwin

pull/2416/head
Anders Jenbo 5 years ago
parent
commit
a19e7b2a3b
  1. 2
      Source/DiabloUI/diabloui.cpp
  2. 2
      Source/DiabloUI/mainmenu.cpp
  3. 2
      Source/DiabloUI/ui_item.h
  4. 1
      Source/codec.cpp
  5. 2
      Source/control.cpp
  6. 2
      Source/controls/game_controls.cpp
  7. 3
      Source/controls/keymapper.cpp
  8. 2
      Source/controls/plrctrls.cpp
  9. 4
      Source/diablo.cpp
  10. 2
      Source/diablo.h
  11. 25
      Source/dvlnet/abstract_net.h
  12. 8
      Source/dvlnet/base.cpp
  13. 9
      Source/dvlnet/base.h
  14. 20
      Source/dvlnet/cdwrap.h
  15. 8
      Source/dvlnet/loopback.cpp
  16. 12
      Source/dvlnet/loopback.h
  17. 4
      Source/dx.cpp
  18. 2
      Source/dx.h
  19. 2
      Source/error.cpp
  20. 2
      Source/error.h
  21. 2
      Source/gmenu.cpp
  22. 12
      Source/inv.cpp
  23. 2
      Source/inv.h
  24. 2
      Source/items.cpp
  25. 2
      Source/mpqapi.cpp
  26. 19
      Source/nthread.cpp
  27. 12
      Source/nthread.h
  28. 2
      Source/path.cpp
  29. 2
      Source/storm/storm.h
  30. 5
      Source/storm/storm_net.cpp
  31. 2
      Source/storm/storm_svid.h

2
Source/DiabloUI/diabloui.cpp

@ -64,7 +64,7 @@ std::size_t SelectedItem = 0;
namespace { namespace {
DWORD fadeTc; uint32_t fadeTc;
int fadeValue = 0; int fadeValue = 0;
struct ScrollBarState { struct ScrollBarState {

2
Source/DiabloUI/mainmenu.cpp

@ -7,7 +7,7 @@
namespace devilution { namespace devilution {
namespace { namespace {
int mainmenu_attract_time_out; //seconds int mainmenu_attract_time_out; //seconds
DWORD dwAttractTicks; uint32_t dwAttractTicks;
std::vector<std::unique_ptr<UiItemBase>> vecMainMenuDialog; std::vector<std::unique_ptr<UiItemBase>> vecMainMenuDialog;
std::vector<std::unique_ptr<UiListItem>> vecMenuItems; std::vector<std::unique_ptr<UiListItem>> vecMenuItems;

2
Source/DiabloUI/ui_item.h

@ -340,7 +340,7 @@ public:
int indexAt(Sint16 y) const int indexAt(Sint16 y) const
{ {
ASSERT(y >= m_rect.y); ASSERT(y >= m_rect.y);
const int index = (y - m_rect.y) / m_height; const size_t index = (y - m_rect.y) / m_height;
ASSERT(index < m_vecItems.size()); ASSERT(index < m_vecItems.size());
return index; return index;
} }

1
Source/codec.cpp

@ -7,7 +7,6 @@
#include <cstdint> #include <cstdint>
#include "appfat.h" #include "appfat.h"
#include "miniwin/miniwin.h"
#include "sha.h" #include "sha.h"
#include "utils/stdcompat/cstddef.hpp" #include "utils/stdcompat/cstddef.hpp"

2
Source/control.cpp

@ -1950,7 +1950,7 @@ bool control_talk_last_key(int vkey)
if (!talkflag) if (!talkflag)
return false; return false;
if ((DWORD)vkey < DVL_VK_SPACE) if (vkey >= 0 && vkey < DVL_VK_SPACE)
return false; return false;
std::size_t result = strlen(sgszTalkMsg); std::size_t result = strlen(sgszTalkMsg);

2
Source/controls/game_controls.cpp

@ -21,7 +21,7 @@ bool select_modifier_active = false;
namespace { namespace {
DWORD TranslateControllerButtonToKey(ControllerButton controllerButton) uint32_t TranslateControllerButtonToKey(ControllerButton controllerButton)
{ {
switch (controllerButton) { switch (controllerButton) {
case ControllerButton_BUTTON_A: // Bottom button case ControllerButton_BUTTON_A: // Bottom button

3
Source/controls/keymapper.cpp

@ -10,8 +10,7 @@
#include "utils/sdl2_to_1_2_backports.h" #include "utils/sdl2_to_1_2_backports.h"
#endif #endif
#include "../control.h" #include "control.h"
#include "../miniwin/miniwin.h"
#include "utils/log.hpp" #include "utils/log.hpp"
namespace devilution { namespace devilution {

2
Source/controls/plrctrls.cpp

@ -1188,7 +1188,7 @@ struct RightStickAccumulator {
lastTc = SDL_GetTicks(); lastTc = SDL_GetTicks();
} }
DWORD lastTc; uint32_t lastTc;
float hiresDX; float hiresDX;
float hiresDY; float hiresDY;
}; };

4
Source/diablo.cpp

@ -73,7 +73,7 @@
namespace devilution { namespace devilution {
SDL_Window *ghMainWnd; SDL_Window *ghMainWnd;
DWORD glSeedTbl[NUMLEVELS]; uint32_t glSeedTbl[NUMLEVELS];
dungeon_type gnLevelTypeTbl[NUMLEVELS]; dungeon_type gnLevelTypeTbl[NUMLEVELS];
Point MousePosition; Point MousePosition;
bool gbRunGame; bool gbRunGame;
@ -418,7 +418,7 @@ void RightMouseDown()
} }
} }
void DiabloHotkeyMsg(DWORD dwMsg) void DiabloHotkeyMsg(uint32_t dwMsg)
{ {
if (!gbIsMultiplayer) { if (!gbIsMultiplayer) {
return; return;

2
Source/diablo.h

@ -54,7 +54,7 @@ enum class MouseActionType : int {
}; };
extern SDL_Window *ghMainWnd; extern SDL_Window *ghMainWnd;
extern DWORD glSeedTbl[NUMLEVELS]; extern uint32_t glSeedTbl[NUMLEVELS];
extern dungeon_type gnLevelTypeTbl[NUMLEVELS]; extern dungeon_type gnLevelTypeTbl[NUMLEVELS];
extern Point MousePosition; extern Point MousePosition;
extern bool gbRunGame; extern bool gbRunGame;

25
Source/dvlnet/abstract_net.h

@ -24,26 +24,17 @@ class abstract_net {
public: public:
virtual int create(std::string addrstr, std::string passwd) = 0; virtual int create(std::string addrstr, std::string passwd) = 0;
virtual int join(std::string addrstr, std::string passwd) = 0; virtual int join(std::string addrstr, std::string passwd) = 0;
virtual bool SNetReceiveMessage(int *sender, void **data, virtual bool SNetReceiveMessage(int *sender, void **data, uint32_t *size) = 0;
uint32_t *size) virtual bool SNetSendMessage(int dest, void *data, unsigned int size) = 0;
= 0; virtual bool SNetReceiveTurns(char **data, size_t *size, uint32_t *status) = 0;
virtual bool SNetSendMessage(int dest, void *data,
unsigned int size)
= 0;
virtual bool SNetReceiveTurns(char **data, unsigned int *size,
DWORD *status)
= 0;
virtual bool SNetSendTurn(char *data, unsigned int size) = 0; virtual bool SNetSendTurn(char *data, unsigned int size) = 0;
virtual void SNetGetProviderCaps(struct _SNETCAPS *caps) = 0; virtual void SNetGetProviderCaps(struct _SNETCAPS *caps) = 0;
virtual bool SNetRegisterEventHandler(event_type evtype, virtual bool SNetRegisterEventHandler(event_type evtype, SEVTHANDLER func) = 0;
SEVTHANDLER func) virtual bool SNetUnregisterEventHandler(event_type evtype) = 0;
= 0;
virtual bool SNetUnregisterEventHandler(event_type evtype)
= 0;
virtual bool SNetLeaveGame(int type) = 0; virtual bool SNetLeaveGame(int type) = 0;
virtual bool SNetDropPlayer(int playerid, DWORD flags) = 0; virtual bool SNetDropPlayer(int playerid, uint32_t flags) = 0;
virtual bool SNetGetOwnerTurnsWaiting(DWORD *turns) = 0; virtual bool SNetGetOwnerTurnsWaiting(uint32_t *turns) = 0;
virtual bool SNetGetTurnsInTransit(DWORD *turns) = 0; virtual bool SNetGetTurnsInTransit(uint32_t *turns) = 0;
virtual void setup_gameinfo(buffer_t info) = 0; virtual void setup_gameinfo(buffer_t info) = 0;
virtual ~abstract_net() = default; virtual ~abstract_net() = default;

8
Source/dvlnet/base.cpp

@ -140,7 +140,7 @@ bool base::SNetSendMessage(int playerId, void *data, unsigned int size)
return true; return true;
} }
bool base::SNetReceiveTurns(char **data, unsigned int *size, DWORD *status) bool base::SNetReceiveTurns(char **data, size_t *size, uint32_t *status)
{ {
poll(); poll();
bool allTurnsArrived = true; bool allTurnsArrived = true;
@ -229,7 +229,7 @@ bool base::SNetLeaveGame(int type)
return true; return true;
} }
bool base::SNetDropPlayer(int playerid, DWORD flags) bool base::SNetDropPlayer(int playerid, uint32_t flags)
{ {
auto pkt = pktfty->make_packet<PT_DISCONNECT>(plr_self, auto pkt = pktfty->make_packet<PT_DISCONNECT>(plr_self,
PLR_BROADCAST, PLR_BROADCAST,
@ -250,13 +250,13 @@ plr_t base::GetOwner()
return PLR_BROADCAST; // should be unreachable return PLR_BROADCAST; // should be unreachable
} }
bool base::SNetGetOwnerTurnsWaiting(DWORD *turns) bool base::SNetGetOwnerTurnsWaiting(uint32_t *turns)
{ {
*turns = turn_queue[GetOwner()].size(); *turns = turn_queue[GetOwner()].size();
return true; return true;
} }
bool base::SNetGetTurnsInTransit(DWORD *turns) bool base::SNetGetTurnsInTransit(uint32_t *turns)
{ {
*turns = turn_queue[plr_self].size(); *turns = turn_queue[plr_self].size();
return true; return true;

9
Source/dvlnet/base.h

@ -19,17 +19,16 @@ public:
virtual bool SNetReceiveMessage(int *sender, void **data, uint32_t *size); virtual bool SNetReceiveMessage(int *sender, void **data, uint32_t *size);
virtual bool SNetSendMessage(int playerId, void *data, unsigned int size); virtual bool SNetSendMessage(int playerId, void *data, unsigned int size);
virtual bool SNetReceiveTurns(char **data, unsigned int *size, virtual bool SNetReceiveTurns(char **data, size_t *size, uint32_t *status);
DWORD *status);
virtual bool SNetSendTurn(char *data, unsigned int size); virtual bool SNetSendTurn(char *data, unsigned int size);
virtual void SNetGetProviderCaps(struct _SNETCAPS *caps); virtual void SNetGetProviderCaps(struct _SNETCAPS *caps);
virtual bool SNetRegisterEventHandler(event_type evtype, virtual bool SNetRegisterEventHandler(event_type evtype,
SEVTHANDLER func); SEVTHANDLER func);
virtual bool SNetUnregisterEventHandler(event_type evtype); virtual bool SNetUnregisterEventHandler(event_type evtype);
virtual bool SNetLeaveGame(int type); virtual bool SNetLeaveGame(int type);
virtual bool SNetDropPlayer(int playerid, DWORD flags); virtual bool SNetDropPlayer(int playerid, uint32_t flags);
virtual bool SNetGetOwnerTurnsWaiting(DWORD *turns); virtual bool SNetGetOwnerTurnsWaiting(uint32_t *turns);
virtual bool SNetGetTurnsInTransit(DWORD *turns); virtual bool SNetGetTurnsInTransit(uint32_t *turns);
virtual void poll() = 0; virtual void poll() = 0;
virtual void send(packet &pkt) = 0; virtual void send(packet &pkt) = 0;

20
Source/dvlnet/cdwrap.h

@ -24,19 +24,17 @@ public:
virtual int create(std::string addrstr, std::string passwd); virtual int create(std::string addrstr, std::string passwd);
virtual int join(std::string addrstr, std::string passwd); virtual int join(std::string addrstr, std::string passwd);
virtual bool SNetReceiveMessage(int *sender, void **data, uint32_t *size); virtual bool SNetReceiveMessage(int *sender, void **data, uint32_t *size);
virtual bool SNetSendMessage(int dest, void *data, virtual bool SNetSendMessage(int dest, void *data, unsigned int size);
unsigned int size); virtual bool SNetReceiveTurns(char **data, size_t *size, uint32_t *status);
virtual bool SNetReceiveTurns(char **data, unsigned int *size,
DWORD *status);
virtual bool SNetSendTurn(char *data, unsigned int size); virtual bool SNetSendTurn(char *data, unsigned int size);
virtual void SNetGetProviderCaps(struct _SNETCAPS *caps); virtual void SNetGetProviderCaps(struct _SNETCAPS *caps);
virtual bool SNetRegisterEventHandler(event_type evtype, virtual bool SNetRegisterEventHandler(event_type evtype,
SEVTHANDLER func); SEVTHANDLER func);
virtual bool SNetUnregisterEventHandler(event_type evtype); virtual bool SNetUnregisterEventHandler(event_type evtype);
virtual bool SNetLeaveGame(int type); virtual bool SNetLeaveGame(int type);
virtual bool SNetDropPlayer(int playerid, DWORD flags); virtual bool SNetDropPlayer(int playerid, uint32_t flags);
virtual bool SNetGetOwnerTurnsWaiting(DWORD *turns); virtual bool SNetGetOwnerTurnsWaiting(uint32_t *turns);
virtual bool SNetGetTurnsInTransit(DWORD *turns); virtual bool SNetGetTurnsInTransit(uint32_t *turns);
virtual void setup_gameinfo(buffer_t info); virtual void setup_gameinfo(buffer_t info);
virtual std::string make_default_gamename(); virtual std::string make_default_gamename();
@ -96,7 +94,7 @@ bool cdwrap<T>::SNetSendMessage(int playerID, void *data, unsigned int size)
} }
template <class T> template <class T>
bool cdwrap<T>::SNetReceiveTurns(char **data, unsigned int *size, DWORD *status) bool cdwrap<T>::SNetReceiveTurns(char **data, size_t *size, uint32_t *status)
{ {
return dvlnet_wrap->SNetReceiveTurns(data, size, status); return dvlnet_wrap->SNetReceiveTurns(data, size, status);
} }
@ -140,19 +138,19 @@ bool cdwrap<T>::SNetLeaveGame(int type)
} }
template <class T> template <class T>
bool cdwrap<T>::SNetDropPlayer(int playerid, DWORD flags) bool cdwrap<T>::SNetDropPlayer(int playerid, uint32_t flags)
{ {
return dvlnet_wrap->SNetDropPlayer(playerid, flags); return dvlnet_wrap->SNetDropPlayer(playerid, flags);
} }
template <class T> template <class T>
bool cdwrap<T>::SNetGetOwnerTurnsWaiting(DWORD *turns) bool cdwrap<T>::SNetGetOwnerTurnsWaiting(uint32_t *turns)
{ {
return dvlnet_wrap->SNetGetOwnerTurnsWaiting(turns); return dvlnet_wrap->SNetGetOwnerTurnsWaiting(turns);
} }
template <class T> template <class T>
bool cdwrap<T>::SNetGetTurnsInTransit(DWORD *turns) bool cdwrap<T>::SNetGetTurnsInTransit(uint32_t *turns)
{ {
return dvlnet_wrap->SNetGetTurnsInTransit(turns); return dvlnet_wrap->SNetGetTurnsInTransit(turns);
} }

8
Source/dvlnet/loopback.cpp

@ -37,7 +37,7 @@ bool loopback::SNetSendMessage(int dest, void *data, unsigned int size)
return true; return true;
} }
bool loopback::SNetReceiveTurns(char **data, unsigned int *size, DWORD * /*status*/) bool loopback::SNetReceiveTurns(char **data, size_t *size, uint32_t * /*status*/)
{ {
for (auto i = 0; i < MAX_PLRS; ++i) { for (auto i = 0; i < MAX_PLRS; ++i) {
size[i] = 0; size[i] = 0;
@ -85,7 +85,7 @@ bool loopback::SNetLeaveGame(int /*type*/)
return true; return true;
} }
bool loopback::SNetDropPlayer(int /*playerid*/, DWORD /*flags*/) bool loopback::SNetDropPlayer(int /*playerid*/, uint32_t /*flags*/)
{ {
return true; return true;
} }
@ -94,13 +94,13 @@ void loopback::setup_gameinfo(buffer_t info)
{ {
} }
bool loopback::SNetGetOwnerTurnsWaiting(DWORD *turns) bool loopback::SNetGetOwnerTurnsWaiting(uint32_t *turns)
{ {
*turns = 0; *turns = 0;
return true; return true;
} }
bool loopback::SNetGetTurnsInTransit(DWORD *turns) bool loopback::SNetGetTurnsInTransit(uint32_t *turns)
{ {
*turns = 0; *turns = 0;
return true; return true;

12
Source/dvlnet/loopback.h

@ -24,17 +24,15 @@ public:
virtual int join(std::string addrstr, std::string passwd); virtual int join(std::string addrstr, std::string passwd);
virtual bool SNetReceiveMessage(int *sender, void **data, uint32_t *size); virtual bool SNetReceiveMessage(int *sender, void **data, uint32_t *size);
virtual bool SNetSendMessage(int dest, void *data, unsigned int size); virtual bool SNetSendMessage(int dest, void *data, unsigned int size);
virtual bool SNetReceiveTurns(char **data, unsigned int *size, virtual bool SNetReceiveTurns(char **data, size_t *size, uint32_t *status);
DWORD *status);
virtual bool SNetSendTurn(char *data, unsigned int size); virtual bool SNetSendTurn(char *data, unsigned int size);
virtual void SNetGetProviderCaps(struct _SNETCAPS *caps); virtual void SNetGetProviderCaps(struct _SNETCAPS *caps);
virtual bool SNetRegisterEventHandler(event_type evtype, virtual bool SNetRegisterEventHandler(event_type evtype, SEVTHANDLER func);
SEVTHANDLER func);
virtual bool SNetUnregisterEventHandler(event_type evtype); virtual bool SNetUnregisterEventHandler(event_type evtype);
virtual bool SNetLeaveGame(int type); virtual bool SNetLeaveGame(int type);
virtual bool SNetDropPlayer(int playerid, DWORD flags); virtual bool SNetDropPlayer(int playerid, uint32_t flags);
virtual bool SNetGetOwnerTurnsWaiting(DWORD *turns); virtual bool SNetGetOwnerTurnsWaiting(uint32_t *turns);
virtual bool SNetGetTurnsInTransit(DWORD *turns); virtual bool SNetGetTurnsInTransit(uint32_t *turns);
virtual void setup_gameinfo(buffer_t info); virtual void setup_gameinfo(buffer_t info);
virtual std::string make_default_gamename(); virtual std::string make_default_gamename();
}; };

4
Source/dx.cpp

@ -351,9 +351,9 @@ void RenderPresent()
#endif #endif
} }
void PaletteGetEntries(DWORD dwNumEntries, SDL_Color *lpEntries) void PaletteGetEntries(int dwNumEntries, SDL_Color *lpEntries)
{ {
for (DWORD i = 0; i < dwNumEntries; i++) { for (int i = 0; i < dwNumEntries; i++) {
lpEntries[i] = system_palette[i]; lpEntries[i] = system_palette[i];
} }
} }

2
Source/dx.h

@ -23,6 +23,6 @@ void InitPalette();
void BltFast(SDL_Rect *srcRect, SDL_Rect *dstRect); void BltFast(SDL_Rect *srcRect, SDL_Rect *dstRect);
void Blit(SDL_Surface *src, SDL_Rect *srcRect, SDL_Rect *dstRect); void Blit(SDL_Surface *src, SDL_Rect *srcRect, SDL_Rect *dstRect);
void RenderPresent(); void RenderPresent();
void PaletteGetEntries(DWORD dwNumEntries, SDL_Color *lpEntries); void PaletteGetEntries(int dwNumEntries, SDL_Color *lpEntries);
} // namespace devilution } // namespace devilution

2
Source/error.cpp

@ -13,7 +13,7 @@
namespace devilution { namespace devilution {
DWORD msgdelay; uint32_t msgdelay;
diablo_message msgflag; diablo_message msgflag;
namespace { namespace {

2
Source/error.h

@ -69,7 +69,7 @@ enum diablo_message : uint8_t {
EMSG_SHRINE_MURPHYS, EMSG_SHRINE_MURPHYS,
}; };
extern DWORD msgdelay; extern uint32_t msgdelay;
extern diablo_message msgflag; extern diablo_message msgflag;
void InitDiabloMsg(diablo_message e); void InitDiabloMsg(diablo_message e);

2
Source/gmenu.cpp

@ -224,7 +224,7 @@ void gmenu_draw(const Surface &out)
if (gmenu_current_option != nullptr) if (gmenu_current_option != nullptr)
gmenu_current_option(); gmenu_current_option();
if (gbIsHellfire) { if (gbIsHellfire) {
const DWORD ticks = SDL_GetTicks(); const uint32_t ticks = SDL_GetTicks();
if ((int)(ticks - LogoAnim_tick) > 25) { if ((int)(ticks - LogoAnim_tick) > 25) {
LogoAnim_frame++; LogoAnim_frame++;
if (LogoAnim_frame > 16) if (LogoAnim_frame > 16)

12
Source/inv.cpp

@ -706,8 +706,8 @@ void CheckInvCut(int pnum, Point cursorPosition, bool automaticMove)
bool done = false; bool done = false;
int r = 0; uint32_t r = 0;
for (; (DWORD)r < NUM_XY_SLOTS; r++) { for (; r < NUM_XY_SLOTS; r++) {
int xo = RIGHT_PANEL; int xo = RIGHT_PANEL;
int yo = 0; int yo = 0;
if (r >= SLOTXY_BELT_FIRST) { if (r >= SLOTXY_BELT_FIRST) {
@ -1834,7 +1834,7 @@ int InvPutItem(PlayerStruct &player, Point position)
return ii; return ii;
} }
int SyncPutItem(PlayerStruct &player, Point position, int idx, uint16_t icreateinfo, int iseed, int id, int dur, int mdur, int ch, int mch, int ivalue, DWORD ibuff, int toHit, int maxDam, int minStr, int minMag, int minDex, int ac) int SyncPutItem(PlayerStruct &player, Point position, int idx, uint16_t icreateinfo, int iseed, int id, int dur, int mdur, int ch, int mch, int ivalue, uint32_t ibuff, int toHit, int maxDam, int minStr, int minMag, int minDex, int ac)
{ {
if (!PutItem(player, position)) if (!PutItem(player, position))
return -1; return -1;
@ -1878,8 +1878,8 @@ int SyncPutItem(PlayerStruct &player, Point position, int idx, uint16_t icreatei
char CheckInvHLight() char CheckInvHLight()
{ {
int r = 0; uint32_t r = 0;
for (; (DWORD)r < NUM_XY_SLOTS; r++) { for (; r < NUM_XY_SLOTS; r++) {
int xo = RIGHT_PANEL; int xo = RIGHT_PANEL;
int yo = 0; int yo = 0;
if (r >= SLOTXY_BELT_FIRST) { if (r >= SLOTXY_BELT_FIRST) {
@ -1895,7 +1895,7 @@ char CheckInvHLight()
} }
} }
if ((DWORD)r >= NUM_XY_SLOTS) if (r >= NUM_XY_SLOTS)
return -1; return -1;
int8_t rv = -1; int8_t rv = -1;

2
Source/inv.h

@ -111,7 +111,7 @@ void SyncGetItem(Point position, int idx, uint16_t ci, int iseed);
bool CanPut(Point position); bool CanPut(Point position);
bool TryInvPut(); bool TryInvPut();
int InvPutItem(PlayerStruct &player, Point position); int InvPutItem(PlayerStruct &player, Point position);
int SyncPutItem(PlayerStruct &player, Point position, int idx, uint16_t icreateinfo, int iseed, int Id, int dur, int mdur, int ch, int mch, int ivalue, DWORD ibuff, int toHit, int maxDam, int minStr, int minMag, int minDex, int ac); int SyncPutItem(PlayerStruct &player, Point position, int idx, uint16_t icreateinfo, int iseed, int Id, int dur, int mdur, int ch, int mch, int ivalue, uint32_t ibuff, int toHit, int maxDam, int minStr, int minMag, int minDex, int ac);
char CheckInvHLight(); char CheckInvHLight();
void RemoveScroll(PlayerStruct &player); void RemoveScroll(PlayerStruct &player);
bool UseScroll(); bool UseScroll();

2
Source/items.cpp

@ -2921,6 +2921,8 @@ void CalcPlrItemVals(int playerId, bool loadgfx)
case ITYPE_STAFF: case ITYPE_STAFF:
animWeaponId = PlayerWeaponGraphic::Staff; animWeaponId = PlayerWeaponGraphic::Staff;
break; break;
default:
break;
} }
PlayerArmorGraphic animArmorId = PlayerArmorGraphic::Light; PlayerArmorGraphic animArmorId = PlayerArmorGraphic::Light;

2
Source/mpqapi.cpp

@ -336,7 +336,7 @@ _BLOCKENTRY *NewBlock(int *blockIndex)
{ {
_BLOCKENTRY *blockEntry = cur_archive.sgpBlockTbl; _BLOCKENTRY *blockEntry = cur_archive.sgpBlockTbl;
for (DWORD i = 0; i < INDEX_ENTRIES; i++, blockEntry++) { for (int i = 0; i < INDEX_ENTRIES; i++, blockEntry++) {
if (blockEntry->offset != 0) if (blockEntry->offset != 0)
continue; continue;
if (blockEntry->sizealloc != 0) if (blockEntry->sizealloc != 0)

19
Source/nthread.cpp

@ -13,11 +13,11 @@
namespace devilution { namespace devilution {
BYTE sgbNetUpdateRate; BYTE sgbNetUpdateRate;
DWORD gdwMsgLenTbl[MAX_PLRS]; size_t gdwMsgLenTbl[MAX_PLRS];
static CCritSect sgMemCrit; static CCritSect sgMemCrit;
DWORD gdwDeltaBytesSec; DWORD gdwDeltaBytesSec;
bool nthread_should_run; bool nthread_should_run;
DWORD gdwTurnsInTransit; uint32_t gdwTurnsInTransit;
uintptr_t glpMsgTbl[MAX_PLRS]; uintptr_t glpMsgTbl[MAX_PLRS];
SDL_threadID glpNThreadId; SDL_threadID glpNThreadId;
char sgbSyncCountdown; char sgbSyncCountdown;
@ -25,8 +25,8 @@ uint32_t turn_upper_bit;
bool sgbTicsOutOfSync; bool sgbTicsOutOfSync;
char sgbPacketCountdown; char sgbPacketCountdown;
bool sgbThreadIsRunning; bool sgbThreadIsRunning;
DWORD gdwLargestMsgSize; uint32_t gdwLargestMsgSize;
DWORD gdwNormalMsgSize; uint32_t gdwNormalMsgSize;
int last_tick; int last_tick;
float gfProgressToNextGameTick = 0.0; float gfProgressToNextGameTick = 0.0;
@ -88,7 +88,7 @@ bool nthread_recv_turns(bool *pfSendAsync)
last_tick += gnTickDelay; last_tick += gnTickDelay;
return true; return true;
} }
if (!SNetReceiveTurns(0, MAX_PLRS, (char **)glpMsgTbl, (unsigned int *)gdwMsgLenTbl, &player_state[0])) { if (!SNetReceiveTurns(MAX_PLRS, (char **)glpMsgTbl, gdwMsgLenTbl, &player_state[0])) {
if (SErrGetLastError() != STORM_ERROR_NO_MESSAGES_WAITING) if (SErrGetLastError() != STORM_ERROR_NO_MESSAGES_WAITING)
nthread_terminate_game("SNetReceiveTurns"); nthread_terminate_game("SNetReceiveTurns");
sgbTicsOutOfSync = false; sgbTicsOutOfSync = false;
@ -139,10 +139,6 @@ void nthread_set_turn_upper_bit()
void nthread_start(bool setTurnUpperBit) void nthread_start(bool setTurnUpperBit)
{ {
const char *err;
DWORD largestMsgSize;
_SNETCAPS caps;
last_tick = SDL_GetTicks(); last_tick = SDL_GetTicks();
sgbPacketCountdown = 1; sgbPacketCountdown = 1;
sgbSyncCountdown = 1; sgbSyncCountdown = 1;
@ -151,6 +147,7 @@ void nthread_start(bool setTurnUpperBit)
nthread_set_turn_upper_bit(); nthread_set_turn_upper_bit();
else else
turn_upper_bit = 0; turn_upper_bit = 0;
_SNETCAPS caps;
caps.size = 36; caps.size = 36;
SNetGetProviderCaps(&caps); SNetGetProviderCaps(&caps);
gdwTurnsInTransit = caps.defaultturnsintransit; gdwTurnsInTransit = caps.defaultturnsintransit;
@ -160,7 +157,7 @@ void nthread_start(bool setTurnUpperBit)
sgbNetUpdateRate = 20 / caps.defaultturnssec; sgbNetUpdateRate = 20 / caps.defaultturnssec;
else else
sgbNetUpdateRate = 1; sgbNetUpdateRate = 1;
largestMsgSize = 512; uint32_t largestMsgSize = 512;
if (caps.maxmessagesize < 0x200) if (caps.maxmessagesize < 0x200)
largestMsgSize = caps.maxmessagesize; largestMsgSize = caps.maxmessagesize;
gdwDeltaBytesSec = caps.bytessec / 4; gdwDeltaBytesSec = caps.bytessec / 4;
@ -183,7 +180,7 @@ void nthread_start(bool setTurnUpperBit)
nthread_should_run = true; nthread_should_run = true;
sghThread = CreateThread(NthreadHandler, &glpNThreadId); sghThread = CreateThread(NthreadHandler, &glpNThreadId);
if (sghThread == nullptr) { if (sghThread == nullptr) {
err = SDL_GetError(); const char *err = SDL_GetError();
app_fatal("nthread2:\n%s", err); app_fatal("nthread2:\n%s", err);
} }
} }

12
Source/nthread.h

@ -5,22 +5,20 @@
*/ */
#pragma once #pragma once
#include "miniwin/miniwin.h"
#include "player.h" #include "player.h"
namespace devilution { namespace devilution {
extern BYTE sgbNetUpdateRate; extern BYTE sgbNetUpdateRate;
extern DWORD gdwMsgLenTbl[MAX_PLRS]; extern size_t gdwMsgLenTbl[MAX_PLRS];
extern DWORD gdwDeltaBytesSec; extern uint32_t gdwTurnsInTransit;
extern DWORD gdwTurnsInTransit;
extern uintptr_t glpMsgTbl[MAX_PLRS]; extern uintptr_t glpMsgTbl[MAX_PLRS];
extern DWORD gdwLargestMsgSize; extern uint32_t gdwLargestMsgSize;
extern DWORD gdwNormalMsgSize; extern uint32_t gdwNormalMsgSize;
extern float gfProgressToNextGameTick; // the progress as a fraction (0.0f to 1.0f) in time to the next game tick extern float gfProgressToNextGameTick; // the progress as a fraction (0.0f to 1.0f) in time to the next game tick
void nthread_terminate_game(const char *pszFcn); void nthread_terminate_game(const char *pszFcn);
DWORD nthread_send_and_recv_turn(DWORD curTurn, int turnDelta); uint32_t nthread_send_and_recv_turn(uint32_t curTurn, int turnDelta);
bool nthread_recv_turns(bool *pfSendAsync = nullptr); bool nthread_recv_turns(bool *pfSendAsync = nullptr);
void nthread_set_turn_upper_bit(); void nthread_set_turn_upper_bit();
void nthread_start(bool setTurnUpperBit); void nthread_start(bool setTurnUpperBit);

2
Source/path.cpp

@ -85,7 +85,7 @@ constexpr size_t MAXPATHNODES = 300;
/** Notes visisted by the path finding algorithm. */ /** Notes visisted by the path finding algorithm. */
PATHNODE path_nodes[MAXPATHNODES]; PATHNODE path_nodes[MAXPATHNODES];
/** the number of in-use nodes in path_nodes */ /** the number of in-use nodes in path_nodes */
int gdwCurNodes; uint32_t gdwCurNodes;
/** /**
* @brief zero one of the preallocated nodes and return a pointer to it, or NULL if none are available * @brief zero one of the preallocated nodes and return a pointer to it, or NULL if none are available
*/ */

2
Source/storm/storm.h

@ -173,7 +173,7 @@ bool SNetJoinGame(char *gameName, char *gamePassword, int *playerid);
bool SNetLeaveGame(int type); bool SNetLeaveGame(int type);
bool SNetReceiveMessage(int *senderplayerid, void **data, uint32_t *databytes); bool SNetReceiveMessage(int *senderplayerid, void **data, uint32_t *databytes);
bool SNetReceiveTurns(int a1, int arraysize, char **arraydata, unsigned int *arraydatabytes, DWORD *arrayplayerstatus); bool SNetReceiveTurns(int arraysize, char **arraydata, size_t *arraydatabytes, uint32_t *arrayplayerstatus);
typedef void (*SEVTHANDLER)(struct _SNETEVENT *); typedef void (*SEVTHANDLER)(struct _SNETEVENT *);

5
Source/storm/storm_net.cpp

@ -42,14 +42,11 @@ bool SNetSendMessage(int playerID, void *data, unsigned int databytes)
return dvlnet_inst->SNetSendMessage(playerID, data, databytes); return dvlnet_inst->SNetSendMessage(playerID, data, databytes);
} }
bool SNetReceiveTurns(int a1, int arraysize, char **arraydata, unsigned int *arraydatabytes, bool SNetReceiveTurns(int arraysize, char **arraydata, size_t *arraydatabytes, uint32_t *arrayplayerstatus)
DWORD *arrayplayerstatus)
{ {
#ifndef NONET #ifndef NONET
std::lock_guard<SdlMutex> lg(storm_net_mutex); std::lock_guard<SdlMutex> lg(storm_net_mutex);
#endif #endif
if (a1 != 0)
UNIMPLEMENTED();
if (arraysize != MAX_PLRS) if (arraysize != MAX_PLRS)
UNIMPLEMENTED(); UNIMPLEMENTED();
if (!dvlnet_inst->SNetReceiveTurns(arraydata, arraydatabytes, arrayplayerstatus)) { if (!dvlnet_inst->SNetReceiveTurns(arraydata, arraydatabytes, arrayplayerstatus)) {

2
Source/storm/storm_svid.h

@ -1,7 +1,5 @@
#pragma once #pragma once
#include "miniwin/miniwin.h"
namespace devilution { namespace devilution {
bool SVidPlayBegin(const char *filename, int flags); bool SVidPlayBegin(const char *filename, int flags);

Loading…
Cancel
Save