diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 36a7db9a9b..a946f00531 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -139,7 +139,7 @@ jobs: run: | reccmp-reccmp -S CONFIGPROGRESS.SVG --svg-icon assets/config.png --target CONFIG | tee CONFIGPROGRESS.TXT reccmp-reccmp -S ISLEPROGRESS.SVG --svg-icon assets/isle.png --target ISLE | tee ISLEPROGRESS.TXT - reccmp-reccmp -S LEGO1PROGRESS.SVG -T 4352 --svg-icon assets/lego1.png --target LEGO1 | tee LEGO1PROGRESS.TXT + reccmp-reccmp -S LEGO1PROGRESS.SVG -T 4354 --svg-icon assets/lego1.png --target LEGO1 | tee LEGO1PROGRESS.TXT - name: Compare Accuracy With Current Master shell: bash diff --git a/LEGO1/tgl/d3drm/group.cpp b/LEGO1/tgl/d3drm/group.cpp index a9df8fd65d..854788b8ba 100644 --- a/LEGO1/tgl/d3drm/group.cpp +++ b/LEGO1/tgl/d3drm/group.cpp @@ -106,10 +106,26 @@ Result GroupImpl::Remove(const Group* pGroup) return ResultVal(m_data->DeleteVisual(pGroupImpl->m_data)); } -// STUB: LEGO1 0x100a34b0 +// FUNCTION: LEGO1 0x100a34b0 Result GroupImpl::RemoveAll() { - return Error; + IDirect3DRMVisualArray* visuals; + IDirect3DRMFrame2* frame = m_data; + Result result = (Result) SUCCEEDED(frame->GetVisuals(&visuals)); + + if (result == Success) { + for (int i = 0; i < (int) visuals->GetSize(); i++) { + IDirect3DRMVisual* visual; + + result = (Result) SUCCEEDED(visuals->GetElement(i, &visual)); + frame->DeleteVisual(visual); + visual->Release(); + } + + visuals->Release(); + } + + return result; } // STUB: LEGO1 0x100a3540