Merge branch 'master' of https://github.com/isledecomp/isle-portable into draw-cursor

This commit is contained in:
Helloyunho 2025-07-03 23:59:54 +09:00
commit 3a6fa6c6a3
No known key found for this signature in database
GPG Key ID: 6AFA210B0150BE47

View File

@ -275,23 +275,18 @@ void MxVideoPresenter::PutFrame()
} }
} }
else { else {
MxRegionCursor cursor(region);
MxRect32* regionRect;
while ((regionRect = cursor.Next(rect))) {
if (regionRect->GetWidth() >= 1 && regionRect->GetHeight() >= 1) {
RECT src, dest; RECT src, dest;
if (m_unk0x58) { if (m_unk0x58) {
src.left = regionRect->GetLeft() - GetX(); src.left = 0;
src.top = regionRect->GetTop() - GetY(); src.top = 0;
src.right = src.left + regionRect->GetWidth(); src.right = GetWidth();
src.bottom = src.top + regionRect->GetHeight(); src.bottom = GetHeight();
dest.left = regionRect->GetLeft(); dest.left = GetX();
dest.top = regionRect->GetTop(); dest.top = GetY();
dest.right = dest.left + regionRect->GetWidth(); dest.right = dest.left + GetWidth();
dest.bottom = dest.top + regionRect->GetHeight(); dest.bottom = dest.top + GetHeight();
} }
if (m_action->GetFlags() & MxDSAction::c_bit4) { if (m_action->GetFlags() & MxDSAction::c_bit4) {
@ -301,16 +296,7 @@ void MxVideoPresenter::PutFrame()
} }
} }
else { else {
displaySurface->VTable0x30( displaySurface->VTable0x30(m_frameBitmap, 0, 0, GetX(), GetY(), GetWidth(), GetHeight(), FALSE);
m_frameBitmap,
regionRect->GetLeft() - GetX(),
regionRect->GetTop() - GetY(),
regionRect->GetLeft(),
regionRect->GetTop(),
regionRect->GetWidth(),
regionRect->GetHeight(),
FALSE
);
} }
} }
else if (m_unk0x58) { else if (m_unk0x58) {
@ -319,17 +305,7 @@ void MxVideoPresenter::PutFrame()
} }
} }
else { else {
displaySurface->VTable0x28( displaySurface->VTable0x28(m_frameBitmap, 0, 0, GetX(), GetY(), GetWidth(), GetHeight());
m_frameBitmap,
regionRect->GetLeft() - GetX(),
regionRect->GetTop() - GetY(),
regionRect->GetLeft(),
regionRect->GetTop(),
regionRect->GetWidth(),
regionRect->GetHeight()
);
}
}
} }
} }
} }