diff --git a/Source/Contents/NavigationLink.cpp b/Source/Contents/NavigationLink.cpp index 886dbf05..03f4079c 100644 --- a/Source/Contents/NavigationLink.cpp +++ b/Source/Contents/NavigationLink.cpp @@ -291,6 +291,30 @@ bool CNavi_Object::SetId(int id) { return true; } +// OFFSET: 0x00B904E0 +// FUNCTION: fn_19514 +int CNaviInfo::LinkCount() const { + return static_cast(this->links.size()); +} + +// OFFSET: 0x00B904F0 +// FUNCTION: fn_19515 +int CNaviInfo::MobCount() const { + return static_cast(this->mobs.size()); +} + +// OFFSET: 0x00B90500 +// FUNCTION: fn_19516 +int CNaviInfo::NpcCount() const { + return static_cast(this->npcs.size()); +} + +// OFFSET: 0x00B90510 +// FUNCTION: fn_19517 +int CNavi_Link::LinkedLinkCount() const { + return static_cast(this->linkedLinks.size()); +} + // OFFSET: 0x00B90520 // FUNCTION: fn_19518 int CNavi_Link::LinkCount() const { diff --git a/Source/Contents/NavigationManager.h b/Source/Contents/NavigationManager.h index 00772a7f..d3a6066d 100644 --- a/Source/Contents/NavigationManager.h +++ b/Source/Contents/NavigationManager.h @@ -124,6 +124,7 @@ public: std::vector::iterator LinkedEnd(); void AddLinkedLink(const NaviLink& link); void ClearLinkedLinks(); + int LinkedLinkCount() const; CNavi_Link(int type, int index, const char* name, const char* title, int cellX, int cellY, CNaviInfo* info, CNaviInfo* linkedInfo, int unknown80, int unknown84); ~CNavi_Link() override; @@ -179,6 +180,9 @@ public: CNavi_Object* FindNpc(unsigned int key, bool byId); CNavi_Object* FindNpcAt(int cellX, int cellY); std::vector* Npcs(); + int LinkCount() const; + int MobCount() const; + int NpcCount() const; CNavi_Link* FindMatchingLink(CNavi_Link link); /* 0000 */ int index;