Decompile 31 functions in Source/Contents/NavigationManager.h, Source/Contents/NavigationRequest.cpp, ...
Batch #1503 by ragnarok-clanker: 12 byte-identical, 19 confirmed by peer review. - fn_19461 CNavi_Object::GetFlag: logic confirmed by peer review - fn_19474 CNavi_Object::GetTitle: byte-identical - fn_19476 CNaviInfo::GetTitle: byte-identical - fn_19477 CNavi_Object::GetName: byte-identical - fn_19484 CNavi_Object::GetCell: logic confirmed by peer review - fn_19485 CNaviInfo::GetName: byte-identical - fn_19488 CNavi_Object::GetIndex: byte-identical - fn_19493 CNavi_Object::GetType: byte-identical - fn_19495 CNavi_Object::GetId: byte-identical - fn_19498 CNavi_Object::GetInfo: byte-identical - fn_19376 CNavigationManager::FindObject: logic confirmed by peer review - fn_19378 CNaviData::GetCell: logic confirmed by peer review - fn_19380 CNaviData::GetInfo: byte-identical - fn_19430 CNavi_Object::~CNavi_Object: logic confirmed by peer review - fn_19434 CNaviInfo::HasName: logic confirmed by peer review - fn_19604 CNavigationManager::SelectedNodeText: logic confirmed by peer review - fn_19605 CNavigationManager::SubDestinationText: logic confirmed by peer review - fn_19606 CNavigationManager::DestinationText: logic confirmed by peer review - fn_19607 CNavigationManager::DestinationTitle: logic confirmed by peer review - fn_19613 CNavigationManager::LoadSettings: logic confirmed by peer review - fn_19618 CNavigationManager::FitToSquare: logic confirmed by peer review - fn_45449 CNaviData::Clear: logic confirmed by peer review - fn_19588 CNavigationManager::GetCurrentTarget: logic confirmed by peer review - fn_19589 CNavigationManager::GetCurrentTargetName: logic confirmed by peer review - fn_19590 CNavigationManager::GetSavedTarget: logic confirmed by peer review - fn_19591 CNavigationManager::GetDestinationInfo: byte-identical - fn_19592 CNavigationManager::GetDestinationCell: logic confirmed by peer review - fn_19594 CNavigationManager::ClearData: logic confirmed by peer review - fn_19596 CNavigationManager::IsCurrentTarget: logic confirmed by peer review - fn_19597 CNavigationManager::GetCurrentTargetType: byte-identical - fn_19635 CNavigationManager::SaveCurrentTarget: byte-identical Reviewed-by: ragnarok-clanker Adds to the build: Source/Contents/NavigationRequest.cpp
This commit is contained in:
parent
9607e27ae2
commit
3c5e940a6d
6 changed files with 540 additions and 25 deletions
|
|
@ -1,26 +1,97 @@
|
|||
#include "Contents/NavigationManager.h"
|
||||
#include "Resource/ResourceMgr.h"
|
||||
|
||||
#include <cstring>
|
||||
|
||||
// OFFSET: 0x00B96980
|
||||
// FUNCTION: fn_19588
|
||||
NavigationTarget NavigationManager::GetCurrentTarget() const {
|
||||
NavigationTarget CNavigationManager::GetCurrentTarget() const {
|
||||
return this->currentTarget;
|
||||
}
|
||||
|
||||
// OFFSET: 0x00B96A10
|
||||
// FUNCTION: fn_19589
|
||||
std::string CNavigationManager::GetCurrentTargetName() const {
|
||||
std::string name;
|
||||
void* object = this->currentTarget.object;
|
||||
if (object != nullptr) {
|
||||
const int type = this->currentTarget.type;
|
||||
if (type == 0 || type == 1 || ((type == 2 || type == 3 || type == 6) && (object = static_cast<CNavi_Object*>(object)->GetInfo()) != nullptr)) {
|
||||
name.assign(static_cast<CNaviInfo*>(object)->GetName());
|
||||
}
|
||||
}
|
||||
|
||||
return name;
|
||||
}
|
||||
|
||||
// OFFSET: 0x00B96AE0
|
||||
// FUNCTION: fn_19590
|
||||
NavigationTarget NavigationManager::GetSavedTarget() const {
|
||||
NavigationTarget CNavigationManager::GetSavedTarget() const {
|
||||
return this->savedTarget;
|
||||
}
|
||||
|
||||
// OFFSET: 0x00B96B70
|
||||
// FUNCTION: fn_19591
|
||||
CNaviInfo* CNavigationManager::GetDestinationInfo() {
|
||||
return this->data.GetInfo();
|
||||
}
|
||||
|
||||
// OFFSET: 0x00B96B80
|
||||
// FUNCTION: fn_19592
|
||||
NaviCell* CNavigationManager::GetDestinationCell(NaviCell* out) {
|
||||
this->data.GetCell(out);
|
||||
return out;
|
||||
}
|
||||
|
||||
// OFFSET: 0x00B96F10
|
||||
// FUNCTION: fn_19594
|
||||
void CNavigationManager::ClearData() {
|
||||
this->unknown_12B4 = false;
|
||||
this->data.Clear();
|
||||
}
|
||||
|
||||
// OFFSET: 0x00B97090
|
||||
// FUNCTION: fn_19596
|
||||
bool CNavigationManager::IsCurrentTarget(const char* name) const {
|
||||
if (name == nullptr) {
|
||||
return false;
|
||||
}
|
||||
|
||||
void* object = this->currentTarget.object;
|
||||
if (object == nullptr) {
|
||||
return false;
|
||||
}
|
||||
|
||||
const int type = this->currentTarget.type;
|
||||
if (type != 0 && type != 1) {
|
||||
if (type != 2 && type != 3 && type != 6) {
|
||||
return false;
|
||||
}
|
||||
|
||||
object = static_cast<CNavi_Object*>(object)->GetInfo();
|
||||
if (object == nullptr) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
const CNaviInfo* info = static_cast<CNaviInfo*>(object);
|
||||
if (std::strcmp(info->GetName(), name) == 0) {
|
||||
return true;
|
||||
}
|
||||
|
||||
const std::string resolved = ResourceMgr::Instance().aliases.ResolveMapName(name);
|
||||
return std::strcmp(info->GetName(), resolved.c_str()) == 0;
|
||||
}
|
||||
|
||||
// OFFSET: 0x00B971D0
|
||||
// FUNCTION: fn_19597
|
||||
int NavigationManager::GetCurrentTargetType() const {
|
||||
int CNavigationManager::GetCurrentTargetType() const {
|
||||
return this->currentTarget.type;
|
||||
}
|
||||
|
||||
// OFFSET: 0x00BA0AE0
|
||||
// FUNCTION: fn_19635
|
||||
int NavigationManager::SaveCurrentTarget() {
|
||||
int CNavigationManager::SaveCurrentTarget() {
|
||||
const int type = this->currentTarget.type;
|
||||
if (type == 6) {
|
||||
return -92;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue