[saco] Implement/match ScrUnk38; it is CNetGame::SetMapIcon, and the contiguous ascending X/Y/Z slots mean a VECTOR rather than three floats

This commit is contained in:
ricardoofnl committed 2026-09-05 08:11:28 +07:00
1 parent f904873daf
commit 26cbdd6983
1 file changed
+24 -1
+24 -1
View File
@@ -28,7 +28,30 @@ void ScrUnkA7(RPCParameters *rpcParams)
if(pNetGame) pNetGame->SetField232(bValue);
}
void ScrUnk38(RPCParameters *rpcParams) {}
void ScrUnk38(RPCParameters *rpcParams)
{
PCHAR Data = reinterpret_cast<PCHAR>(rpcParams->input);
int iBitLength = rpcParams->numberOfBitsOfData;
PlayerID sender = rpcParams->sender;
BYTE byteIndex;
VECTOR vecPos;
BYTE byteIcon;
DWORD dwColor;
BYTE byteStyle;
RakNet::BitStream bsData(Data,(iBitLength/8)+1,false);
bsData.Read(byteIndex);
bsData.Read(vecPos.X);
bsData.Read(vecPos.Y);
bsData.Read(vecPos.Z);
bsData.Read(byteIcon);
bsData.Read(dwColor);
bsData.Read(byteStyle);
pNetGame->SetMapIcon(byteIndex, vecPos.X, vecPos.Y, vecPos.Z, byteIcon, dwColor, byteStyle);
}
void ScrUnk90(RPCParameters *rpcParams)
{
PCHAR Data = reinterpret_cast<PCHAR>(rpcParams->input);