Quote:
Originally Posted by paulgiamatti
[You must be logged in to view images. Log in or Register.]
Ah, that's an official Daybreak thing? That certainly works as evidence.
|
Nope, it's an emulator for EQMac, which has a client stuck at early PoP.
Also see the client disassembly from the binary:
Code:
int __cdecl do_hidecorpses(EQPlayer *a1, char *a2)
{
const char *v2; // eax@2
const char *v3; // eax@2
const char *v4; // eax@2
int result; // eax@2
EQPlayer *v6; // ebx@4
char *v7; // eax@4
const char *v8; // eax@5
const char *v9; // eax@9
char *v10; // eax@13
const char *v11; // eax@14
const char *v12; // eax@18
int v13; // esi@19
const char *v14; // eax@26
char v15; // [sp+10h] [bp-58h]@9
if ( *a2 )
{
v6 = EQPlayer::top;
v7 = (char *)StringTable::getString(g_stringTable, 0x3395u, 0);
if ( UTF8_stricmp(a2, v7) )
{
v10 = (char *)StringTable::getString(g_stringTable, 0x3397u, 0);
if ( UTF8_stricmp(a2, v10) )
{
v14 = (const char *)StringTable::getString(g_stringTable, 0x3399u, 0);
for ( result = CEverQuest::dsp_chat(EverQuestObject, v14, 15, 1); v6; v6 = (EQPlayer *)*((_DWORD *)v6 + 31) )
{
result = *((_BYTE *)v6 + 168) - 2;
if ( (unsigned __int8)result <= 1u )
{
result = *((_DWORD *)v6 + 33);
if ( result )
{
if ( *(_DWORD *)result )
{
*(_DWORD *)(result + 440) = 0;
result = t3dSetActorInvisible(**((_DWORD **)v6 + 33), 0);
}
}
}
}
}
else
{
v11 = (const char *)StringTable::getString(g_stringTable, 0x3398u, 0);
for ( result = CEverQuest::dsp_chat(EverQuestObject, v11, 15, 1); v6; v6 = (EQPlayer *)*((_DWORD *)v6 + 31) )
{
result = *((_BYTE *)v6 + 168) - 2;
if ( (unsigned __int8)result <= 1u )
{
v12 = (const char *)CEverQuest::stripName(EverQuestObject, (char *)v6 + 1);
strcpy(&v15, v12);
result = stricmp(&v15, (const char *)LocalPlayer + 1);
if ( result )
{
v13 = 0;
do
{
result = stricmp(&v15, (const char *)LocalPlayer + 1);
if ( result )
{
if ( EQ_PC::IsAGroupMember(LocalPC, &v15) )
{
result = *((_DWORD *)v6 + 33);
if ( result && *(_DWORD *)result )
{
*(_DWORD *)(result + 440) = 0;
result = t3dSetActorInvisible(**((_DWORD **)v6 + 33), 0);
}
}
else
{
result = *((_DWORD *)v6 + 33);
if ( result && *(_DWORD *)result )
{
*(_DWORD *)(result + 440) = 1;
result = t3dSetActorInvisible(**((_DWORD **)v6 + 33), 1);
}
}
}
++v13;
}
while ( v13 != 6 );
}
}
}
}
}
else
{
v8 = (const char *)StringTable::getString(g_stringTable, 0x3396u, 0);
for ( result = CEverQuest::dsp_chat(EverQuestObject, v8, 15, 1); v6; v6 = (EQPlayer *)*((_DWORD *)v6 + 31) )
{
result = *((_BYTE *)v6 + 168) - 2;
if ( (unsigned __int8)result <= 1u )
{
v9 = (const char *)CEverQuest::stripName(EverQuestObject, (char *)v6 + 1);
strcpy(&v15, v9);
result = stricmp(&v15, (const char *)LocalPlayer + 1);
if ( result )
{
result = *((_DWORD *)v6 + 33);
if ( result )
{
if ( *(_DWORD *)result )
{
*(_DWORD *)(result + 440) = 1;
result = t3dSetActorInvisible(**((_DWORD **)v6 + 33), 1);
}
}
}
}
}
}
}
else
{
v2 = (const char *)StringTable::getString(g_stringTable, 0x3392u, 0);
CEverQuest::dsp_chat(EverQuestObject, v2);
v3 = (const char *)StringTable::getString(g_stringTable, 0x3393u, 0);
CEverQuest::dsp_chat(EverQuestObject, v3);
v4 = (const char *)StringTable::getString(g_stringTable, 0x3394u, 0);
result = CEverQuest::dsp_chat(EverQuestObject, v4);
}
return result;
}