[saco] Implement/match Unk24; it builds a 3D text label and the flag init lands between rep stosd and stosb

This commit is contained in:
ricardoofnl committed 2026-09-05 08:45:38 +07:00
1 parent 1ba74d3c0e
commit ac18ccbe0a
2 files changed
+45 -1

No files matched your search

+4
View File
@@ -20,4 +20,8 @@ public:
void FUNC_10001350(); // .text:10001350
// .text:100011D0
void sub_100011D0(WORD wLabelID, PCHAR szText, DWORD dwColor, float fX, float fY, float fZ,
float fDrawDistance, BYTE byteShowBehindWalls, WORD wAttachedPlayer, WORD wAttachedVehicle);
};
+41 -1
View File
@@ -1,5 +1,6 @@
#include "../main.h"
#include "../../raknet/StringCompressor.h"
extern CNetGame* pNetGame;
extern CGame * pGame;
@@ -113,7 +114,46 @@ void Unk22(RPCParameters *rpcParams)
}
}
}
void Unk24(RPCParameters *rpcParams) {}
void Unk24(RPCParameters *rpcParams)
{
PCHAR Data = reinterpret_cast<PCHAR>(rpcParams->input);
int iBitLength = rpcParams->numberOfBitsOfData;
RakNet::BitStream bsData(Data,(iBitLength/8)+1,false);
WORD wLabelID;
DWORD dwColor;
float fX, fY, fZ;
float fDrawDistance;
WORD wAttachedPlayer;
WORD wAttachedVehicle;
char szText[2049];
CLabelPool *pLabelPool = pNetGame->GetLabelPool();
if(pLabelPool)
{
BYTE byteShowBehindWalls = 0;
memset(szText,0,sizeof(szText));
bsData.Read(wLabelID);
bsData.Read(dwColor);
bsData.Read(fX);
bsData.Read(fY);
bsData.Read(fZ);
bsData.Read(fDrawDistance);
bsData.Read(byteShowBehindWalls);
bsData.Read(wAttachedPlayer);
bsData.Read(wAttachedVehicle);
stringCompressor->DecodeString(szText,2048,&bsData);
if(wLabelID < MAX_LABELS)
pLabelPool->sub_100011D0(wLabelID,szText,dwColor,fX,fY,fZ,fDrawDistance,
byteShowBehindWalls,wAttachedPlayer,wAttachedVehicle);
}
}
// MATCH
void Unk3A(RPCParameters *rpcParams)
{