Match Score::Paint

This commit is contained in:
Christian Semmler 2024-12-24 11:02:33 -07:00
parent 04e04363d3
commit 82c144a2fb
7 changed files with 23 additions and 5 deletions

View File

@ -29,22 +29,28 @@ class AmbulanceMissionState : public LegoState {
MxResult Serialize(LegoFile* p_file) override; // vtable+0x1c MxResult Serialize(LegoFile* p_file) override; // vtable+0x1c
// FUNCTION: BETA10 0x10088770
MxS16 GetHighScore(MxU8 p_actorId) MxS16 GetHighScore(MxU8 p_actorId)
{ {
switch (p_actorId) { switch (p_actorId) {
case LegoActor::c_pepper: case LegoActor::c_pepper:
return m_peHighScore; return m_peHighScore;
break;
case LegoActor::c_mama: case LegoActor::c_mama:
return m_maHighScore; return m_maHighScore;
break;
case LegoActor::c_papa: case LegoActor::c_papa:
return m_paHighScore; return m_paHighScore;
break;
case LegoActor::c_nick: case LegoActor::c_nick:
return m_niHighScore; return m_niHighScore;
break;
case LegoActor::c_laura: case LegoActor::c_laura:
return m_laHighScore; return m_laHighScore;
default: break;
return 0;
} }
return 0;
} }
// FUNCTION: BETA10 0x100242d0 // FUNCTION: BETA10 0x100242d0

View File

@ -34,6 +34,8 @@ class RaceState : public LegoState {
} }
MxS16 GetUnknown0x02() { return m_unk0x02; } MxS16 GetUnknown0x02() { return m_unk0x02; }
// FUNCTION: BETA10 0x10088970
MxS16 GetHighScore() { return m_score; } MxS16 GetHighScore() { return m_score; }
// FUNCTION: BETA10 0x100c96f0 // FUNCTION: BETA10 0x100c96f0

View File

@ -148,6 +148,7 @@ class PizzaMissionState : public LegoState {
// FUNCTION: BETA10 0x100ef850 // FUNCTION: BETA10 0x100ef850
MxU32 GetUnknown0xb0() { return m_unk0xb0; } MxU32 GetUnknown0xb0() { return m_unk0xb0; }
// FUNCTION: BETA10 0x10088850
MxS16 GetHighScore(MxU8 p_actorId) { return GetMission(p_actorId)->m_hiScore; } MxS16 GetHighScore(MxU8 p_actorId) { return GetMission(p_actorId)->m_hiScore; }
// SYNTHETIC: LEGO1 0x10039350 // SYNTHETIC: LEGO1 0x10039350

View File

@ -30,22 +30,28 @@ class TowTrackMissionState : public LegoState {
MxResult Serialize(LegoFile* p_file) override; // vtable+0x1c MxResult Serialize(LegoFile* p_file) override; // vtable+0x1c
// FUNCTION: BETA10 0x10088890
MxS16 GetHighScore(MxU8 p_actorId) MxS16 GetHighScore(MxU8 p_actorId)
{ {
switch (p_actorId) { switch (p_actorId) {
case LegoActor::c_pepper: case LegoActor::c_pepper:
return m_peHighScore; return m_peHighScore;
break;
case LegoActor::c_mama: case LegoActor::c_mama:
return m_maHighScore; return m_maHighScore;
break;
case LegoActor::c_papa: case LegoActor::c_papa:
return m_paHighScore; return m_paHighScore;
break;
case LegoActor::c_nick: case LegoActor::c_nick:
return m_niHighScore; return m_niHighScore;
break;
case LegoActor::c_laura: case LegoActor::c_laura:
return m_laHighScore; return m_laHighScore;
default: break;
return 0;
} }
return 0;
} }
// FUNCTION: BETA10 0x100f8530 // FUNCTION: BETA10 0x100f8530

View File

@ -624,6 +624,7 @@ MxResult PizzaMissionState::Serialize(LegoFile* p_file)
} }
// FUNCTION: LEGO1 0x10039510 // FUNCTION: LEGO1 0x10039510
// FUNCTION: BETA10 0x100eed45
PizzaMissionState::Mission* PizzaMissionState::GetMission(MxU8 p_actorId) PizzaMissionState::Mission* PizzaMissionState::GetMission(MxU8 p_actorId)
{ {
for (MxS16 i = 0; i < 5; i++) { for (MxS16 i = 0; i < 5; i++) {

View File

@ -165,6 +165,7 @@ MxResult RaceState::Serialize(LegoFile* p_file)
} }
// FUNCTION: LEGO1 0x10016280 // FUNCTION: LEGO1 0x10016280
// FUNCTION: BETA10 0x100c7dfd
RaceState::Entry* RaceState::GetState(MxU8 p_id) RaceState::Entry* RaceState::GetState(MxU8 p_id)
{ {
for (MxS16 i = 0;; i++) { for (MxS16 i = 0;; i++) {

View File

@ -254,7 +254,8 @@ void Score::Paint()
memset(&desc, 0, sizeof(desc)); memset(&desc, 0, sizeof(desc));
desc.dwSize = sizeof(desc); desc.dwSize = sizeof(desc);
if (cube->m_surface->Lock(NULL, &desc, 0, NULL) == DD_OK) { HRESULT result = cube->m_surface->Lock(NULL, &desc, DDLOCK_SURFACEMEMORYPTR, NULL);
if (result == DD_OK) {
if (desc.lPitch != desc.dwWidth) { if (desc.lPitch != desc.dwWidth) {
cube->m_surface->Unlock(desc.lpSurface); cube->m_surface->Unlock(desc.lpSurface);
return; return;