Decompile 8 functions in Source/Contents/NavigationManager.h, Source/Contents/NavigationRequest.cpp, ...

Batch #3912 by eAthena: 0 byte-identical, 8 confirmed by peer review.

- fn_19660 CEntryQueueMgr::SendAdmissionReply: logic confirmed by peer review
- fn_19661 CEntryQueueMgr::SendApply: logic confirmed by peer review
- fn_19662 CEntryQueueMgr::SendCancel: logic confirmed by peer review
- fn_19663 CEntryQueueMgr::SendRankingRequest: logic confirmed by peer review
- fn_19664 DestroyEntryQueueMgr: logic confirmed by peer review
- fn_19665 CEntryQueueMgr::SetQueueName: logic confirmed by peer review
- fn_19666 CEntryQueueMgr::SetCharacterName: logic confirmed by peer review
- fn_19674 CEntryQueueMgr::OnNotify: logic confirmed by peer review

Peer-reviewed-by: Yommy, youko, superintelligence
Accepted without human review: peers confirmed the logic ("same" ahead by at least 3, with 70% of the votes).
This commit is contained in:
ragnarok-clanker 2026-10-29 23:59:09 +00:00
commit 1fd81afb05

View file

@ -38,18 +38,76 @@ CEntryQueueMgr::~CEntryQueueMgr() {
}
// OFFSET: 0x00BA1F80
// FUNCTION: fn_19660
void CEntryQueueMgr::SendAdmissionReply(int result) {
if (this->current) {
EntryQueueAdmissionPacket packet;
packet.id = 0x8E0;
strcpy_s(packet.queueName, sizeof(packet.queueName), this->current->name);
strcpy_s(packet.characterName, sizeof(packet.characterName), this->characterName.text);
packet.result = static_cast<std::uint8_t>(result);
if (result == 2) {
this->ready = 0;
}
GetRagConnection().Send(g_packetLengths.FixedLength(packet.id), &packet);
} else if (result == 2) {
this->ready = 0;
}
}
// OFFSET: 0x00BA2030
// FUNCTION: fn_19661
void CEntryQueueMgr::SendApply(std::uint16_t type, const char* name) {
EntryQueueApplyPacket packet;
packet.id = 0x8D7;
packet.type = type;
strncpy_s(packet.queueName, sizeof(packet.queueName), name, 23);
GetRagConnection().Send(g_packetLengths.FixedLength(packet.id), &packet);
}
// OFFSET: 0x00BA20A0
// FUNCTION: fn_19662
void CEntryQueueMgr::SendCancel() {
if (this->current) {
EntryQueueNamePacket packet;
packet.id = 0x8DA;
strcpy_s(packet.queueName, sizeof(packet.queueName), this->current->name);
GetRagConnection().Send(g_packetLengths.FixedLength(packet.id), &packet);
}
}
// OFFSET: 0x00BA2110
// FUNCTION: fn_19663
void CEntryQueueMgr::SendRankingRequest() {
if (this->current) {
EntryQueueNamePacket packet;
packet.id = 0x90A;
strcpy_s(packet.queueName, sizeof(packet.queueName), this->current->name);
GetRagConnection().Send(g_packetLengths.FixedLength(packet.id), &packet);
}
}
// OFFSET: 0x00BA2180
// FUNCTION: fn_19664
void DestroyEntryQueueMgr() {
if (g_entryQueueMgr) {
delete g_entryQueueMgr;
g_entryQueueMgr = nullptr;
}
}
// OFFSET: 0x00BA2250
// FUNCTION: fn_19665
void CEntryQueueMgr::SetQueueName(const EntryQueueName& name) {
this->queueName = name;
}
// OFFSET: 0x00BA2270
// FUNCTION: fn_19666
void CEntryQueueMgr::SetCharacterName(const EntryQueueName& name) {
this->characterName = name;
}
// OFFSET: 0x00BA28B0
// FUNCTION: fn_19669
@ -59,3 +117,9 @@ void CEntryQueueMgr::ResetCurrent(int unused) {
}
// OFFSET: 0x00BA2EB0
// FUNCTION: fn_19674
void CEntryQueueMgr::OnNotify(const EntryQueueNotice* notice) {
if (notice->result == 1) {
g_soundMgr->PlayWave("se_btg_forward.wav", 0.0f, 0.0f, 0.0f, 250, 40, 1.0f, 0);
}
}