Fix regressions
This commit is contained in:
parent
66760656e9
commit
c185e709b3
|
@ -692,7 +692,7 @@ LRESULT WIN32Window::windowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lPar
|
||||||
}
|
}
|
||||||
case WM_GETMINMAXINFO: {
|
case WM_GETMINMAXINFO: {
|
||||||
LPMINMAXINFO pMMI = (LPMINMAXINFO)lParam;
|
LPMINMAXINFO pMMI = (LPMINMAXINFO)lParam;
|
||||||
Rect adjustedRect = adjustWindowRect(Rect(getWindowRect().topLeft(), m_minimumSize));
|
Rect adjustedRect = adjustWindowRect(Rect(0, 0, m_minimumSize));
|
||||||
pMMI->ptMinTrackSize.x = adjustedRect.width();
|
pMMI->ptMinTrackSize.x = adjustedRect.width();
|
||||||
pMMI->ptMinTrackSize.y = adjustedRect.height();
|
pMMI->ptMinTrackSize.y = adjustedRect.height();
|
||||||
break;
|
break;
|
||||||
|
@ -966,18 +966,26 @@ std::string WIN32Window::getPlatformType()
|
||||||
|
|
||||||
Rect WIN32Window::getClientRect()
|
Rect WIN32Window::getClientRect()
|
||||||
{
|
{
|
||||||
|
if(m_window) {
|
||||||
RECT clientRect = {0,0,0,0};
|
RECT clientRect = {0,0,0,0};
|
||||||
int ret = GetClientRect(m_window, &clientRect);
|
int ret = GetClientRect(m_window, &clientRect);
|
||||||
assert(ret != 0);
|
assert(ret != 0);
|
||||||
return Rect(Point(clientRect.left, clientRect.top), Point(clientRect.right, clientRect.bottom));
|
return Rect(Point(clientRect.left, clientRect.top), Point(clientRect.right, clientRect.bottom));
|
||||||
|
} else {
|
||||||
|
return Rect(m_position, m_size);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Rect WIN32Window::getWindowRect()
|
Rect WIN32Window::getWindowRect()
|
||||||
{
|
{
|
||||||
|
if(m_window) {
|
||||||
RECT windowRect = {0,0,0,0};
|
RECT windowRect = {0,0,0,0};
|
||||||
int ret = GetWindowRect(m_window, &windowRect);
|
int ret = GetWindowRect(m_window, &windowRect);
|
||||||
assert(ret != 0);
|
assert(ret != 0);
|
||||||
return Rect(Point(windowRect.left, windowRect.top), Point(windowRect.right, windowRect.bottom));
|
return Rect(Point(windowRect.left, windowRect.top), Point(windowRect.right, windowRect.bottom));
|
||||||
|
} else {
|
||||||
|
return adjustWindowRect(getClientRect());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Rect WIN32Window::adjustWindowRect(const Rect& clientRect)
|
Rect WIN32Window::adjustWindowRect(const Rect& clientRect)
|
||||||
|
|
|
@ -514,10 +514,17 @@ void Creature::setDirection(Otc::Direction direction)
|
||||||
|
|
||||||
void Creature::setOutfit(const Outfit& outfit)
|
void Creature::setOutfit(const Outfit& outfit)
|
||||||
{
|
{
|
||||||
if(!g_things.isValidDatId(outfit.getCategory() == ThingCategoryCreature ? outfit.getId() : outfit.getAuxId(), outfit.getCategory()))
|
if(outfit.getCategory() != ThingCategoryCreature) {
|
||||||
|
if(!g_things.isValidDatId(outfit.getAuxId(), outfit.getCategory()))
|
||||||
|
return;
|
||||||
|
m_outfit.setAuxId(outfit.getAuxId());
|
||||||
|
m_outfit.setCategory(outfit.getCategory());
|
||||||
|
} else {
|
||||||
|
if(!g_things.isValidDatId(outfit.getId(), ThingCategoryCreature))
|
||||||
return;
|
return;
|
||||||
m_walkAnimationPhase = 0; // might happen when player is walking and outfit is changed.
|
|
||||||
m_outfit = outfit;
|
m_outfit = outfit;
|
||||||
|
}
|
||||||
|
m_walkAnimationPhase = 0; // might happen when player is walking and outfit is changed.
|
||||||
}
|
}
|
||||||
|
|
||||||
void Creature::setSpeed(uint16 speed)
|
void Creature::setSpeed(uint16 speed)
|
||||||
|
|
Loading…
Reference in New Issue