void ClientList::SendClientVersionSummary(const char *Name) { uint32 Client62Count = 0; uint32 ClientTitaniumCount = 0; uint32 ClientSoFCount = 0; uint32 ClientSoDCount = 0; uint32 ClientUnderfootCount = 0; uint32 ClientRoFCount = 0; LinkedListIterator<ClientListEntry*> Iterator(clientlist); Iterator.Reset(); while(Iterator.MoreElements()) { ClientListEntry* CLE = Iterator.GetData(); if(CLE && CLE->zone()) { switch(CLE->GetClientVersion()) { case 1: { ++Client62Count; break; } case 2: { ++ClientTitaniumCount; break; } case 3: { ++ClientSoFCount; break; } case 4: { ++ClientSoDCount; break; } case 5: { ++ClientUnderfootCount; break; } case 6: { ++ClientRoFCount; break; } default: break; } } Iterator.Advance(); } zoneserver_list.SendEmoteMessage(Name, 0, 0, 13, "There are %i 6.2, %i Titanium, %i SoF, %i SoD, %i UF, %i RoF clients currently connected.", Client62Count, ClientTitaniumCount, ClientSoFCount, ClientSoDCount, ClientUnderfootCount, ClientRoFCount); }
void ClientList::SendClientVersionSummary(const char *Name) { uint32 ClientUnusedCount = 0; uint32 ClientPCCount = 0; uint32 ClientIntelCount = 0; uint32 ClientPPCCount = 0; uint32 ClientEvolutionCount = 0; LinkedListIterator<ClientListEntry*> Iterator(clientlist); Iterator.Reset(); while(Iterator.MoreElements()) { ClientListEntry* CLE = Iterator.GetData(); if(CLE && CLE->zone()) { switch(CLE->GetClientVersion()) { case 1: { ++ClientUnusedCount; break; } case 2: { switch(CLE->GetMacClientVersion()) { case 2: { ++ClientPCCount; break; } case 4: { ++ClientIntelCount; break; } case 8: { ++ClientPPCCount; break; } } break; } case 3: { ++ClientEvolutionCount; break; } default: break; } } Iterator.Advance(); } zoneserver_list.SendEmoteMessage(Name, 0, 0, 13, "There are %i Unused, %i PC, %i Intel, %i PPC, %i Evolution clients currently connected.", ClientUnusedCount, ClientPCCount, ClientIntelCount, ClientPPCCount, ClientEvolutionCount); }