From f72a61d9347857d126e5e7ea5969fdd531200974 Mon Sep 17 00:00:00 2001 From: Perize Date: Wed, 22 Nov 2017 00:29:42 +0900 Subject: [PATCH 01/29] Add a perform handler --- src/servers/Server_Common/Network/PacketDef/Ipcs.h | 2 ++ .../Network/PacketDef/Zone/ServerZoneDef.h | 6 ++++++ src/servers/Server_Zone/Network/GameConnection.cpp | 4 +++- src/servers/Server_Zone/Network/GameConnection.h | 2 ++ .../Server_Zone/Network/Handlers/PacketHandlers.cpp | 11 +++++++++++ 5 files changed, 24 insertions(+), 1 deletion(-) diff --git a/src/servers/Server_Common/Network/PacketDef/Ipcs.h b/src/servers/Server_Common/Network/PacketDef/Ipcs.h index da8be023..9f7cadc8 100644 --- a/src/servers/Server_Common/Network/PacketDef/Ipcs.h +++ b/src/servers/Server_Common/Network/PacketDef/Ipcs.h @@ -136,6 +136,7 @@ namespace Packets { IPCTYPE_UNK_320 = 0x0207, // updated 4.1 IPCTYPE_UNK_322 = 0x0209, // updated 4.1 + PerformNote = 0x0252, }; // TODO: Include structures for the individual packet segment types @@ -198,6 +199,7 @@ namespace Packets { ReqEquipDisplayFlagsChange = 0x014C, // updated 4.1 ?? + PerformNoteHandler = 0x0160, }; //////////////////////////////////////////////////////////////////////////////// diff --git a/src/servers/Server_Common/Network/PacketDef/Zone/ServerZoneDef.h b/src/servers/Server_Common/Network/PacketDef/Zone/ServerZoneDef.h index d5cb7675..9c5ac0ac 100644 --- a/src/servers/Server_Common/Network/PacketDef/Zone/ServerZoneDef.h +++ b/src/servers/Server_Common/Network/PacketDef/Zone/ServerZoneDef.h @@ -1314,6 +1314,12 @@ struct FFXIVIpcMount : FFXIVIpcBasePacket }; +struct FFXIVIpcPerformNote : FFXIVIpcBasePacket +{ + uint8_t data[32]; +}; + + } /* Server */ } /* Packets */ } /* Network */ diff --git a/src/servers/Server_Zone/Network/GameConnection.cpp b/src/servers/Server_Zone/Network/GameConnection.cpp index 3c0584ca..75834479 100644 --- a/src/servers/Server_Zone/Network/GameConnection.cpp +++ b/src/servers/Server_Zone/Network/GameConnection.cpp @@ -92,7 +92,9 @@ Core::Network::GameConnection::GameConnection( Core::Network::HivePtr pHive, setZoneHandler( ClientZoneIpcType::CFRegisterRoulette, "CFRegisterRoulette", &GameConnection::cfRegisterRoulette ); setZoneHandler( ClientZoneIpcType::CFCommenceHandler, "CFDutyAccepted", &GameConnection::cfDutyAccepted); - setZoneHandler( ClientZoneIpcType::ReqEquipDisplayFlagsChange, "ReqEquipDisplayFlagsChange",&GameConnection::reqEquipDisplayFlagsHandler); + setZoneHandler( ClientZoneIpcType::ReqEquipDisplayFlagsChange, "ReqEquipDisplayFlagsChange", &GameConnection::reqEquipDisplayFlagsHandler ); + + setZoneHandler( ClientZoneIpcType::PerformNoteHandler, "PerformNoteHandler", &GameConnection::performNoteHandler ); setChatHandler( ClientChatIpcType::TellReq, "TellReq", &GameConnection::tellHandler); diff --git a/src/servers/Server_Zone/Network/GameConnection.h b/src/servers/Server_Zone/Network/GameConnection.h index d89ae491..c319acb1 100644 --- a/src/servers/Server_Zone/Network/GameConnection.h +++ b/src/servers/Server_Zone/Network/GameConnection.h @@ -118,6 +118,8 @@ public: DECLARE_HANDLER( reqEquipDisplayFlagsHandler ); + DECLARE_HANDLER( performNoteHandler ); + DECLARE_HANDLER( tellHandler ); }; diff --git a/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp b/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp index 1942df5b..269ffb9e 100644 --- a/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp +++ b/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp @@ -596,3 +596,14 @@ void Core::Network::GameConnection::tellHandler( const Packets::GamePacket& inPa pTargetPlayer->queueChatPacket( tellPacket ); } + +void Core::Network::GameConnection::performNoteHandler( const Packets::GamePacket& inPacket, + Entity::PlayerPtr pPlayer ) +{ + GamePacketNew< FFXIVIpcPerformNote, ServerZoneIpcType > performPacket( pPlayer->getId() ); + + uint8_t inVal = inPacket.getValAt< uint8_t >( 20 ); + memcpy( &performPacket.data().data[0], &inVal, 32 ); + + pPlayer->sendToInRangeSet( performPacket ); +} From 8bac9270998c6b1f84a53207cb75a272ec84ec78 Mon Sep 17 00:00:00 2001 From: Perize Date: Wed, 22 Nov 2017 10:13:49 +0900 Subject: [PATCH 02/29] Fix typo --- src/servers/Server_Common/Network/PacketDef/Ipcs.h | 3 ++- src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/servers/Server_Common/Network/PacketDef/Ipcs.h b/src/servers/Server_Common/Network/PacketDef/Ipcs.h index 265a17b9..587bb96d 100644 --- a/src/servers/Server_Common/Network/PacketDef/Ipcs.h +++ b/src/servers/Server_Common/Network/PacketDef/Ipcs.h @@ -136,7 +136,8 @@ namespace Packets { IPCTYPE_UNK_320 = 0x0207, // updated 4.1 IPCTYPE_UNK_322 = 0x0209, // updated 4.1 - ActorGauge = 0x249 + ActorGauge = 0x0249, + PerformNote = 0x0252, }; diff --git a/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp b/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp index 16e03a02..4aaea8d7 100644 --- a/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp +++ b/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp @@ -604,7 +604,7 @@ void Core::Network::GameConnection::performNoteHandler( const Packets::GamePacke { GamePacketNew< FFXIVIpcPerformNote, ServerZoneIpcType > performPacket( pPlayer->getId() ); - uint8_t inVal = inPacket.getValAt< uint8_t >( 20 ); + uint8_t inVal = inPacket.getValAt< uint8_t >( 0x20 ); memcpy( &performPacket.data().data[0], &inVal, 32 ); pPlayer->sendToInRangeSet( performPacket ); From 564256385c62c46cd4fa54a4e5f89c2991dca02f Mon Sep 17 00:00:00 2001 From: GokuWeedLord Date: Wed, 22 Nov 2017 21:34:36 +1100 Subject: [PATCH 03/29] fix UPDATE_DATE in charainfo not being updated --- .../Server_Common/Database/CharaDbConnection.cpp | 2 +- src/servers/Server_Zone/Actor/PlayerSql.cpp | 13 +++++++++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/servers/Server_Common/Database/CharaDbConnection.cpp b/src/servers/Server_Common/Database/CharaDbConnection.cpp index 7ed7aada..f8683f99 100644 --- a/src/servers/Server_Common/Database/CharaDbConnection.cpp +++ b/src/servers/Server_Common/Database/CharaDbConnection.cpp @@ -44,7 +44,7 @@ void Core::Db::CharaDbConnection::doPrepareStatements() "ActiveTitle = ?, TitleList = ?, Achievement = ?, Aetheryte = ?, HowTo = ?, Minions = ?, Mounts = ?, " "EquippedMannequin = ?, ConfigFlags = ?, QuestCompleteFlags = ?, OpeningSequence = ?, " "QuestTracking = ?, GrandCompany = ?, GrandCompanyRank = ?, Discovery = ?, GMRank = ?, Unlocks = ?, " - "CFPenaltyUntil = ? WHERE CharacterId = ?;", CONNECTION_ASYNC ); + "CFPenaltyUntil = ?, UPDATE_DATE = ? WHERE CharacterId = ?;", CONNECTION_ASYNC ); prepareStatement( CHARA_SEL_MINIMAL, "SELECT Name, Customize, ModelEquip, TerritoryId, GuardianDeity, " diff --git a/src/servers/Server_Zone/Actor/PlayerSql.cpp b/src/servers/Server_Zone/Actor/PlayerSql.cpp index 737c9754..40cacdee 100644 --- a/src/servers/Server_Zone/Actor/PlayerSql.cpp +++ b/src/servers/Server_Zone/Actor/PlayerSql.cpp @@ -10,7 +10,7 @@ #include #include -#include +#include #include @@ -403,7 +403,16 @@ void Core::Entity::Player::updateSql() stmt->setInt( 53, m_cfPenaltyUntil ); - stmt->setInt( 54, m_id ); + // 54 = UPDATE_DATE + auto date_time = boost::posix_time::microsec_clock::universal_time(); + std::string time_out = boost::str( + boost::format{ "%1%-%2%-%3% %4%:%5%:%6%" } + % date_time.date().year() % date_time.date().month().as_number() % date_time.date().day().as_number() + % date_time.time_of_day().hours() % date_time.time_of_day().minutes() % date_time.time_of_day().seconds() + ); + stmt->setString( 54, time_out ); + + stmt->setInt( 55, m_id ); g_charaDb.execute( stmt ); From 492b58409182e7eafccb848712a1ed0365ffa5a9 Mon Sep 17 00:00:00 2001 From: GokuWeedLord Date: Wed, 22 Nov 2017 22:23:11 +1100 Subject: [PATCH 04/29] Revert "fix UPDATE_DATE in charainfo not being updated" This reverts commit 564256385c62c46cd4fa54a4e5f89c2991dca02f. --- .../Server_Common/Database/CharaDbConnection.cpp | 2 +- src/servers/Server_Zone/Actor/PlayerSql.cpp | 13 ++----------- 2 files changed, 3 insertions(+), 12 deletions(-) diff --git a/src/servers/Server_Common/Database/CharaDbConnection.cpp b/src/servers/Server_Common/Database/CharaDbConnection.cpp index f8683f99..7ed7aada 100644 --- a/src/servers/Server_Common/Database/CharaDbConnection.cpp +++ b/src/servers/Server_Common/Database/CharaDbConnection.cpp @@ -44,7 +44,7 @@ void Core::Db::CharaDbConnection::doPrepareStatements() "ActiveTitle = ?, TitleList = ?, Achievement = ?, Aetheryte = ?, HowTo = ?, Minions = ?, Mounts = ?, " "EquippedMannequin = ?, ConfigFlags = ?, QuestCompleteFlags = ?, OpeningSequence = ?, " "QuestTracking = ?, GrandCompany = ?, GrandCompanyRank = ?, Discovery = ?, GMRank = ?, Unlocks = ?, " - "CFPenaltyUntil = ?, UPDATE_DATE = ? WHERE CharacterId = ?;", CONNECTION_ASYNC ); + "CFPenaltyUntil = ? WHERE CharacterId = ?;", CONNECTION_ASYNC ); prepareStatement( CHARA_SEL_MINIMAL, "SELECT Name, Customize, ModelEquip, TerritoryId, GuardianDeity, " diff --git a/src/servers/Server_Zone/Actor/PlayerSql.cpp b/src/servers/Server_Zone/Actor/PlayerSql.cpp index 40cacdee..737c9754 100644 --- a/src/servers/Server_Zone/Actor/PlayerSql.cpp +++ b/src/servers/Server_Zone/Actor/PlayerSql.cpp @@ -10,7 +10,7 @@ #include #include -#include +#include #include @@ -403,16 +403,7 @@ void Core::Entity::Player::updateSql() stmt->setInt( 53, m_cfPenaltyUntil ); - // 54 = UPDATE_DATE - auto date_time = boost::posix_time::microsec_clock::universal_time(); - std::string time_out = boost::str( - boost::format{ "%1%-%2%-%3% %4%:%5%:%6%" } - % date_time.date().year() % date_time.date().month().as_number() % date_time.date().day().as_number() - % date_time.time_of_day().hours() % date_time.time_of_day().minutes() % date_time.time_of_day().seconds() - ); - stmt->setString( 54, time_out ); - - stmt->setInt( 55, m_id ); + stmt->setInt( 54, m_id ); g_charaDb.execute( stmt ); From f12f48eff11b22d081dc72005a30d03324e9daf6 Mon Sep 17 00:00:00 2001 From: GokuWeedLord Date: Wed, 22 Nov 2017 22:29:40 +1100 Subject: [PATCH 05/29] add sql triggers to update UPDATE_DATE --- sql/charaglobalitem.sql | 2 +- sql/charainfo.sql | 2 +- sql/charainfoblacklist.sql | 2 +- sql/charainfofriendlist.sql | 2 +- sql/charainfolinkshell.sql | 2 +- sql/charainfosearch.sql | 2 +- sql/charaitemcrystal.sql | 2 +- sql/charaitemcurrency.sql | 2 +- sql/charaitemgearset.sql | 2 +- sql/charaiteminventory.sql | 2 +- sql/charaquest.sql | 309 ------------------------------------ sql/charaquestnew.sql | 2 +- sql/charastatus.sql | 2 +- sql/infolinkshell.sql | 2 +- sql/uniqueiddata.sql | 2 +- sql/update.sql | 41 +++++ 16 files changed, 55 insertions(+), 323 deletions(-) delete mode 100644 sql/charaquest.sql diff --git a/sql/charaglobalitem.sql b/sql/charaglobalitem.sql index bca3438b..8cb2c302 100644 --- a/sql/charaglobalitem.sql +++ b/sql/charaglobalitem.sql @@ -48,7 +48,7 @@ CREATE TABLE `charaglobalitem` ( `buffer_4` int(3) DEFAULT '0', `IS_DELETE` int(3) DEFAULT '0', `IS_NOT_ACTIVE_FLG` int(3) DEFAULT '0', - `UPDATE_DATE` datetime DEFAULT CURRENT_TIMESTAMP, + `UPDATE_DATE` datetime DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`itemId`), KEY `CharacterId` (`CharacterId`), KEY `storageId` (`storageId`), diff --git a/sql/charainfo.sql b/sql/charainfo.sql index 5a1bbfa6..0997bb57 100644 --- a/sql/charainfo.sql +++ b/sql/charainfo.sql @@ -75,7 +75,7 @@ CREATE TABLE `charainfo` ( `GMRank` int(3) DEFAULT '0', `Unlocks` binary(64) DEFAULT NULL, `CFPenaltyUntil` int(11) DEFAULT NULL, - `UPDATE_DATE` datetime DEFAULT NULL + `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- Dumping data for table sapphire.charainfo: 0 rows diff --git a/sql/charainfoblacklist.sql b/sql/charainfoblacklist.sql index c263c5fe..332c1851 100644 --- a/sql/charainfoblacklist.sql +++ b/sql/charainfoblacklist.sql @@ -27,7 +27,7 @@ CREATE TABLE `charainfoblacklist` ( `CharacterIdList` blob, `IS_DELETE` int(3) DEFAULT '0', `IS_NOT_ACTIVE_FLG` int(3) DEFAULT '0', - `UPDATE_DATE` date DEFAULT NULL, + `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`CharacterId`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; diff --git a/sql/charainfofriendlist.sql b/sql/charainfofriendlist.sql index f65c174f..04943f3d 100644 --- a/sql/charainfofriendlist.sql +++ b/sql/charainfofriendlist.sql @@ -28,7 +28,7 @@ CREATE TABLE `charainfofriendlist` ( `InviteDataList` blob, `IS_DELETE` int(3) DEFAULT '0', `IS_NOT_ACTIVE_FLG` int(3) DEFAULT '0', - `UPDATE_DATE` date DEFAULT NULL, + `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`CharacterId`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; diff --git a/sql/charainfolinkshell.sql b/sql/charainfolinkshell.sql index 1a608f23..cb583e2c 100644 --- a/sql/charainfolinkshell.sql +++ b/sql/charainfolinkshell.sql @@ -27,7 +27,7 @@ CREATE TABLE `charainfolinkshell` ( `LinkshellIdList` binary(64) DEFAULT NULL, `IS_DELETE` int(3) DEFAULT '0', `IS_NOT_ACTIVE_FLG` int(3) DEFAULT '0', - `UPDATE_DATE` date DEFAULT NULL, + `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`CharacterId`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; diff --git a/sql/charainfosearch.sql b/sql/charainfosearch.sql index 8d88bd54..50651c4b 100644 --- a/sql/charainfosearch.sql +++ b/sql/charainfosearch.sql @@ -29,7 +29,7 @@ CREATE TABLE `charainfosearch` ( `SearchComment` binary(193) DEFAULT "", `IS_DELETE` int(3) DEFAULT '0', `IS_NOT_ACTIVE_FLG` int(3) DEFAULT '0', - `UPDATE_DATE` date DEFAULT NULL + `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; diff --git a/sql/charaitemcrystal.sql b/sql/charaitemcrystal.sql index e7fa731c..1f9c2d57 100644 --- a/sql/charaitemcrystal.sql +++ b/sql/charaitemcrystal.sql @@ -47,7 +47,7 @@ CREATE TABLE `charaitemcrystal` ( `container_17` int(20) DEFAULT '0', `IS_DELETE` int(3) DEFAULT '0', `IS_NOT_ACTIVE_FLG` int(3) DEFAULT '0', - `UPDATE_DATE` datetime DEFAULT CURRENT_TIMESTAMP, + `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`idx`), KEY `CharacterId` (`CharacterId`) ) ENGINE=MyISAM AUTO_INCREMENT=11 DEFAULT CHARSET=utf8; diff --git a/sql/charaitemcurrency.sql b/sql/charaitemcurrency.sql index e3d2c4cb..681dc036 100644 --- a/sql/charaitemcurrency.sql +++ b/sql/charaitemcurrency.sql @@ -41,7 +41,7 @@ CREATE TABLE `charaitemcurrency` ( `container_11` int(20) NOT NULL DEFAULT '0', `IS_DELETE` int(3) DEFAULT '0', `IS_NOT_ACTIVE_FLG` int(3) DEFAULT '0', - `UPDATE_DATE` datetime DEFAULT CURRENT_TIMESTAMP, + `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`idx`), UNIQUE KEY `CharacterId` (`CharacterId`) ) ENGINE=MyISAM AUTO_INCREMENT=11 DEFAULT CHARSET=utf8; diff --git a/sql/charaitemgearset.sql b/sql/charaitemgearset.sql index b318d00d..8bd9e314 100644 --- a/sql/charaitemgearset.sql +++ b/sql/charaitemgearset.sql @@ -43,7 +43,7 @@ CREATE TABLE `charaitemgearset` ( `container_13` int(20) DEFAULT '0', `IS_DELETE` int(3) DEFAULT '0', `IS_NOT_ACTIVE_FLG` int(3) DEFAULT '0', - `UPDATE_DATE` datetime DEFAULT CURRENT_TIMESTAMP, + `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`CharacterId`,`storageId`), UNIQUE KEY `idx` (`idx`) ) ENGINE=MyISAM AUTO_INCREMENT=11 DEFAULT CHARSET=utf8; diff --git a/sql/charaiteminventory.sql b/sql/charaiteminventory.sql index e3bcd1b3..34a4d281 100644 --- a/sql/charaiteminventory.sql +++ b/sql/charaiteminventory.sql @@ -54,7 +54,7 @@ CREATE TABLE IF NOT EXISTS `charaiteminventory` ( `container_34` int(20) DEFAULT '0', `IS_DELETE` int(3) DEFAULT '0', `IS_NOT_ACTIVE_FLG` int(3) DEFAULT '0', - `UPDATE_DATE` datetime DEFAULT CURRENT_TIMESTAMP, + `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`CharacterId`,`storageId`), UNIQUE KEY `idx` (`idx`) ) ENGINE=MyISAM AUTO_INCREMENT=161 DEFAULT CHARSET=utf8; diff --git a/sql/charaquest.sql b/sql/charaquest.sql deleted file mode 100644 index 3faacc74..00000000 --- a/sql/charaquest.sql +++ /dev/null @@ -1,309 +0,0 @@ -SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; -SET time_zone = "+00:00"; - -CREATE TABLE charaquest ( - `QuestId_0` int(5) DEFAULT '0', - `Sequence_0` int(3) DEFAULT '0', - `Flags_0` int(3) DEFAULT '0', - `Variables_0_0` int(3) DEFAULT '0', - `Variables_0_1` int(3) DEFAULT '0', - `Variables_0_2` int(3) DEFAULT '0', - `Variables_0_3` int(3) DEFAULT '0', - `Variables_0_4` int(3) DEFAULT '0', - `Variables_0_5` int(3) DEFAULT '0', - `Variables_0_6` int(3) DEFAULT '0', - `QuestId_1` int(5) DEFAULT '0', - `Sequence_1` int(3) DEFAULT '0', - `Flags_1` int(3) DEFAULT '0', - `Variables_1_0` int(3) DEFAULT '0', - `Variables_1_1` int(3) DEFAULT '0', - `Variables_1_2` int(3) DEFAULT '0', - `Variables_1_3` int(3) DEFAULT '0', - `Variables_1_4` int(3) DEFAULT '0', - `Variables_1_5` int(3) DEFAULT '0', - `Variables_1_6` int(3) DEFAULT '0', - `QuestId_2` int(5) DEFAULT '0', - `Sequence_2` int(3) DEFAULT '0', - `Flags_2` int(3) DEFAULT '0', - `Variables_2_0` int(3) DEFAULT '0', - `Variables_2_1` int(3) DEFAULT '0', - `Variables_2_2` int(3) DEFAULT '0', - `Variables_2_3` int(3) DEFAULT '0', - `Variables_2_4` int(3) DEFAULT '0', - `Variables_2_5` int(3) DEFAULT '0', - `Variables_2_6` int(3) DEFAULT '0', - `QuestId_3` int(5) DEFAULT '0', - `Sequence_3` int(3) DEFAULT '0', - `Flags_3` int(3) DEFAULT '0', - `Variables_3_0` int(3) DEFAULT '0', - `Variables_3_1` int(3) DEFAULT '0', - `Variables_3_2` int(3) DEFAULT '0', - `Variables_3_3` int(3) DEFAULT '0', - `Variables_3_4` int(3) DEFAULT '0', - `Variables_3_5` int(3) DEFAULT '0', - `Variables_3_6` int(3) DEFAULT '0', - `QuestId_4` int(5) DEFAULT '0', - `Sequence_4` int(3) DEFAULT '0', - `Flags_4` int(3) DEFAULT '0', - `Variables_4_0` int(3) DEFAULT '0', - `Variables_4_1` int(3) DEFAULT '0', - `Variables_4_2` int(3) DEFAULT '0', - `Variables_4_3` int(3) DEFAULT '0', - `Variables_4_4` int(3) DEFAULT '0', - `Variables_4_5` int(3) DEFAULT '0', - `Variables_4_6` int(3) DEFAULT '0', - `QuestId_5` int(5) DEFAULT '0', - `Sequence_5` int(3) DEFAULT '0', - `Flags_5` int(3) DEFAULT '0', - `Variables_5_0` int(3) DEFAULT '0', - `Variables_5_1` int(3) DEFAULT '0', - `Variables_5_2` int(3) DEFAULT '0', - `Variables_5_3` int(3) DEFAULT '0', - `Variables_5_4` int(3) DEFAULT '0', - `Variables_5_5` int(3) DEFAULT '0', - `Variables_5_6` int(3) DEFAULT '0', - `QuestId_6` int(5) DEFAULT '0', - `Sequence_6` int(3) DEFAULT '0', - `Flags_6` int(3) DEFAULT '0', - `Variables_6_0` int(3) DEFAULT '0', - `Variables_6_1` int(3) DEFAULT '0', - `Variables_6_2` int(3) DEFAULT '0', - `Variables_6_3` int(3) DEFAULT '0', - `Variables_6_4` int(3) DEFAULT '0', - `Variables_6_5` int(3) DEFAULT '0', - `Variables_6_6` int(3) DEFAULT '0', - `QuestId_7` int(5) DEFAULT '0', - `Sequence_7` int(3) DEFAULT '0', - `Flags_7` int(3) DEFAULT '0', - `Variables_7_0` int(3) DEFAULT '0', - `Variables_7_1` int(3) DEFAULT '0', - `Variables_7_2` int(3) DEFAULT '0', - `Variables_7_3` int(3) DEFAULT '0', - `Variables_7_4` int(3) DEFAULT '0', - `Variables_7_5` int(3) DEFAULT '0', - `Variables_7_6` int(3) DEFAULT '0', - `QuestId_8` int(5) DEFAULT '0', - `Sequence_8` int(3) DEFAULT '0', - `Flags_8` int(3) DEFAULT '0', - `Variables_8_0` int(3) DEFAULT '0', - `Variables_8_1` int(3) DEFAULT '0', - `Variables_8_2` int(3) DEFAULT '0', - `Variables_8_3` int(3) DEFAULT '0', - `Variables_8_4` int(3) DEFAULT '0', - `Variables_8_5` int(3) DEFAULT '0', - `Variables_8_6` int(3) DEFAULT '0', - `QuestId_9` int(5) DEFAULT '0', - `Sequence_9` int(3) DEFAULT '0', - `Flags_9` int(3) DEFAULT '0', - `Variables_9_0` int(3) DEFAULT '0', - `Variables_9_1` int(3) DEFAULT '0', - `Variables_9_2` int(3) DEFAULT '0', - `Variables_9_3` int(3) DEFAULT '0', - `Variables_9_4` int(3) DEFAULT '0', - `Variables_9_5` int(3) DEFAULT '0', - `Variables_9_6` int(3) DEFAULT '0', - `QuestId_10` int(5) DEFAULT '0', - `Sequence_10` int(3) DEFAULT '0', - `Flags_10` int(3) DEFAULT '0', - `Variables_10_0` int(3) DEFAULT '0', - `Variables_10_1` int(3) DEFAULT '0', - `Variables_10_2` int(3) DEFAULT '0', - `Variables_10_3` int(3) DEFAULT '0', - `Variables_10_4` int(3) DEFAULT '0', - `Variables_10_5` int(3) DEFAULT '0', - `Variables_10_6` int(3) DEFAULT '0', - `QuestId_11` int(5) DEFAULT '0', - `Sequence_11` int(3) DEFAULT '0', - `Flags_11` int(3) DEFAULT '0', - `Variables_11_0` int(3) DEFAULT '0', - `Variables_11_1` int(3) DEFAULT '0', - `Variables_11_2` int(3) DEFAULT '0', - `Variables_11_3` int(3) DEFAULT '0', - `Variables_11_4` int(3) DEFAULT '0', - `Variables_11_5` int(3) DEFAULT '0', - `Variables_11_6` int(3) DEFAULT '0', - `QuestId_12` int(5) DEFAULT '0', - `Sequence_12` int(3) DEFAULT '0', - `Flags_12` int(3) DEFAULT '0', - `Variables_12_0` int(3) DEFAULT '0', - `Variables_12_1` int(3) DEFAULT '0', - `Variables_12_2` int(3) DEFAULT '0', - `Variables_12_3` int(3) DEFAULT '0', - `Variables_12_4` int(3) DEFAULT '0', - `Variables_12_5` int(3) DEFAULT '0', - `Variables_12_6` int(3) DEFAULT '0', - `QuestId_13` int(5) DEFAULT '0', - `Sequence_13` int(3) DEFAULT '0', - `Flags_13` int(3) DEFAULT '0', - `Variables_13_0` int(3) DEFAULT '0', - `Variables_13_1` int(3) DEFAULT '0', - `Variables_13_2` int(3) DEFAULT '0', - `Variables_13_3` int(3) DEFAULT '0', - `Variables_13_4` int(3) DEFAULT '0', - `Variables_13_5` int(3) DEFAULT '0', - `Variables_13_6` int(3) DEFAULT '0', - `QuestId_14` int(5) DEFAULT '0', - `Sequence_14` int(3) DEFAULT '0', - `Flags_14` int(3) DEFAULT '0', - `Variables_14_0` int(3) DEFAULT '0', - `Variables_14_1` int(3) DEFAULT '0', - `Variables_14_2` int(3) DEFAULT '0', - `Variables_14_3` int(3) DEFAULT '0', - `Variables_14_4` int(3) DEFAULT '0', - `Variables_14_5` int(3) DEFAULT '0', - `Variables_14_6` int(3) DEFAULT '0', - `QuestId_15` int(5) DEFAULT '0', - `Sequence_15` int(3) DEFAULT '0', - `Flags_15` int(3) DEFAULT '0', - `Variables_15_0` int(3) DEFAULT '0', - `Variables_15_1` int(3) DEFAULT '0', - `Variables_15_2` int(3) DEFAULT '0', - `Variables_15_3` int(3) DEFAULT '0', - `Variables_15_4` int(3) DEFAULT '0', - `Variables_15_5` int(3) DEFAULT '0', - `Variables_15_6` int(3) DEFAULT '0', - `QuestId_16` int(5) DEFAULT '0', - `Sequence_16` int(3) DEFAULT '0', - `Flags_16` int(3) DEFAULT '0', - `Variables_16_0` int(3) DEFAULT '0', - `Variables_16_1` int(3) DEFAULT '0', - `Variables_16_2` int(3) DEFAULT '0', - `Variables_16_3` int(3) DEFAULT '0', - `Variables_16_4` int(3) DEFAULT '0', - `Variables_16_5` int(3) DEFAULT '0', - `Variables_16_6` int(3) DEFAULT '0', - `QuestId_17` int(5) DEFAULT '0', - `Sequence_17` int(3) DEFAULT '0', - `Flags_17` int(3) DEFAULT '0', - `Variables_17_0` int(3) DEFAULT '0', - `Variables_17_1` int(3) DEFAULT '0', - `Variables_17_2` int(3) DEFAULT '0', - `Variables_17_3` int(3) DEFAULT '0', - `Variables_17_4` int(3) DEFAULT '0', - `Variables_17_5` int(3) DEFAULT '0', - `Variables_17_6` int(3) DEFAULT '0', - `QuestId_18` int(5) DEFAULT '0', - `Sequence_18` int(3) DEFAULT '0', - `Flags_18` int(3) DEFAULT '0', - `Variables_18_0` int(3) DEFAULT '0', - `Variables_18_1` int(3) DEFAULT '0', - `Variables_18_2` int(3) DEFAULT '0', - `Variables_18_3` int(3) DEFAULT '0', - `Variables_18_4` int(3) DEFAULT '0', - `Variables_18_5` int(3) DEFAULT '0', - `Variables_18_6` int(3) DEFAULT '0', - `QuestId_19` int(5) DEFAULT '0', - `Sequence_19` int(3) DEFAULT '0', - `Flags_19` int(3) DEFAULT '0', - `Variables_19_0` int(3) DEFAULT '0', - `Variables_19_1` int(3) DEFAULT '0', - `Variables_19_2` int(3) DEFAULT '0', - `Variables_19_3` int(3) DEFAULT '0', - `Variables_19_4` int(3) DEFAULT '0', - `Variables_19_5` int(3) DEFAULT '0', - `Variables_19_6` int(3) DEFAULT '0', - `QuestId_20` int(5) DEFAULT '0', - `Sequence_20` int(3) DEFAULT '0', - `Flags_20` int(3) DEFAULT '0', - `Variables_20_0` int(3) DEFAULT '0', - `Variables_20_1` int(3) DEFAULT '0', - `Variables_20_2` int(3) DEFAULT '0', - `Variables_20_3` int(3) DEFAULT '0', - `Variables_20_4` int(3) DEFAULT '0', - `Variables_20_5` int(3) DEFAULT '0', - `Variables_20_6` int(3) DEFAULT '0', - `QuestId_21` int(5) DEFAULT '0', - `Sequence_21` int(3) DEFAULT '0', - `Flags_21` int(3) DEFAULT '0', - `Variables_21_0` int(3) DEFAULT '0', - `Variables_21_1` int(3) DEFAULT '0', - `Variables_21_2` int(3) DEFAULT '0', - `Variables_21_3` int(3) DEFAULT '0', - `Variables_21_4` int(3) DEFAULT '0', - `Variables_21_5` int(3) DEFAULT '0', - `Variables_21_6` int(3) DEFAULT '0', - `QuestId_22` int(5) DEFAULT '0', - `Sequence_22` int(3) DEFAULT '0', - `Flags_22` int(3) DEFAULT '0', - `Variables_22_0` int(3) DEFAULT '0', - `Variables_22_1` int(3) DEFAULT '0', - `Variables_22_2` int(3) DEFAULT '0', - `Variables_22_3` int(3) DEFAULT '0', - `Variables_22_4` int(3) DEFAULT '0', - `Variables_22_5` int(3) DEFAULT '0', - `Variables_22_6` int(3) DEFAULT '0', - `QuestId_23` int(5) DEFAULT '0', - `Sequence_23` int(3) DEFAULT '0', - `Flags_23` int(3) DEFAULT '0', - `Variables_23_0` int(3) DEFAULT '0', - `Variables_23_1` int(3) DEFAULT '0', - `Variables_23_2` int(3) DEFAULT '0', - `Variables_23_3` int(3) DEFAULT '0', - `Variables_23_4` int(3) DEFAULT '0', - `Variables_23_5` int(3) DEFAULT '0', - `Variables_23_6` int(3) DEFAULT '0', - `QuestId_24` int(5) DEFAULT '0', - `Sequence_24` int(3) DEFAULT '0', - `Flags_24` int(3) DEFAULT '0', - `Variables_24_0` int(3) DEFAULT '0', - `Variables_24_1` int(3) DEFAULT '0', - `Variables_24_2` int(3) DEFAULT '0', - `Variables_24_3` int(3) DEFAULT '0', - `Variables_24_4` int(3) DEFAULT '0', - `Variables_24_5` int(3) DEFAULT '0', - `Variables_24_6` int(3) DEFAULT '0', - `QuestId_25` int(5) DEFAULT '0', - `Sequence_25` int(3) DEFAULT '0', - `Flags_25` int(3) DEFAULT '0', - `Variables_25_0` int(3) DEFAULT '0', - `Variables_25_1` int(3) DEFAULT '0', - `Variables_25_2` int(3) DEFAULT '0', - `Variables_25_3` int(3) DEFAULT '0', - `Variables_25_4` int(3) DEFAULT '0', - `Variables_25_5` int(3) DEFAULT '0', - `Variables_25_6` int(3) DEFAULT '0', - `QuestId_26` int(5) DEFAULT '0', - `Sequence_26` int(3) DEFAULT '0', - `Flags_26` int(3) DEFAULT '0', - `Variables_26_0` int(3) DEFAULT '0', - `Variables_26_1` int(3) DEFAULT '0', - `Variables_26_2` int(3) DEFAULT '0', - `Variables_26_3` int(3) DEFAULT '0', - `Variables_26_4` int(3) DEFAULT '0', - `Variables_26_5` int(3) DEFAULT '0', - `Variables_26_6` int(3) DEFAULT '0', - `QuestId_27` int(5) DEFAULT '0', - `Sequence_27` int(3) DEFAULT '0', - `Flags_27` int(3) DEFAULT '0', - `Variables_27_0` int(3) DEFAULT '0', - `Variables_27_1` int(3) DEFAULT '0', - `Variables_27_2` int(3) DEFAULT '0', - `Variables_27_3` int(3) DEFAULT '0', - `Variables_27_4` int(3) DEFAULT '0', - `Variables_27_5` int(3) DEFAULT '0', - `Variables_27_6` int(3) DEFAULT '0', - `QuestId_28` int(5) DEFAULT '0', - `Sequence_28` int(3) DEFAULT '0', - `Flags_28` int(3) DEFAULT '0', - `Variables_28_0` int(3) DEFAULT '0', - `Variables_28_1` int(3) DEFAULT '0', - `Variables_28_2` int(3) DEFAULT '0', - `Variables_28_3` int(3) DEFAULT '0', - `Variables_28_4` int(3) DEFAULT '0', - `Variables_28_5` int(3) DEFAULT '0', - `Variables_28_6` int(3) DEFAULT '0', - `QuestId_29` int(5) DEFAULT '0', - `Sequence_29` int(3) DEFAULT '0', - `Flags_29` int(3) DEFAULT '0', - `Variables_29_0` int(3) DEFAULT '0', - `Variables_29_1` int(3) DEFAULT '0', - `Variables_29_2` int(3) DEFAULT '0', - `Variables_29_3` int(3) DEFAULT '0', - `Variables_29_4` int(3) DEFAULT '0', - `Variables_29_5` int(3) DEFAULT '0', - `Variables_29_6` int(3) DEFAULT '0', - `CharacterId` int(20) DEFAULT '0', - `IS_DELETE` int(3) DEFAULT '0', - `IS_NOT_ACTIVE_FLG` int(3) DEFAULT '0', - `UPDATE_DATE` date DEFAULT NULL -) ENGINE=MyISAM DEFAULT CHARSET=utf8; diff --git a/sql/charaquestnew.sql b/sql/charaquestnew.sql index ec1b0f16..98279a0d 100644 --- a/sql/charaquestnew.sql +++ b/sql/charaquestnew.sql @@ -16,5 +16,5 @@ CREATE TABLE charaquestnew ( `Variables_6` int(3) DEFAULT '0', `IS_DELETE` int(3) DEFAULT '0', `IS_NOT_ACTIVE_FLG` int(3) DEFAULT '0', - `UPDATE_DATE` date + `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ) ENGINE=MyISAM DEFAULT CHARSET=utf8; \ No newline at end of file diff --git a/sql/charastatus.sql b/sql/charastatus.sql index 231b9319..a601aab5 100644 --- a/sql/charastatus.sql +++ b/sql/charastatus.sql @@ -101,7 +101,7 @@ CREATE TABLE `charastatus` ( `CharacterId` int(20) DEFAULT NULL, `IS_DELETE` int(3) DEFAULT '0', `IS_NOT_ACTIVE_FLG` int(3) DEFAULT '0', - `UPDATE_DATE` date DEFAULT NULL + `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; diff --git a/sql/infolinkshell.sql b/sql/infolinkshell.sql index a9e54d6c..b8c84b19 100644 --- a/sql/infolinkshell.sql +++ b/sql/infolinkshell.sql @@ -31,7 +31,7 @@ CREATE TABLE `infolinkshell` ( `InviteIdList` blob, `IS_DELETE` int(3) DEFAULT '0', `IS_NOT_ACTIVE_FLG` int(3) DEFAULT '0', - `UPDATE_DATE` date DEFAULT NULL, + `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`LinkshellId`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; diff --git a/sql/uniqueiddata.sql b/sql/uniqueiddata.sql index e397fbec..0ca048ad 100644 --- a/sql/uniqueiddata.sql +++ b/sql/uniqueiddata.sql @@ -27,7 +27,7 @@ CREATE TABLE `uniqueiddata` ( `IdName` varchar(16) DEFAULT 'NOT SET', `IS_DELETE` int(3) DEFAULT '0', `IS_NOT_ACTIVE_FLG` int(3) DEFAULT '0', - `UPDATE_DATE` datetime DEFAULT CURRENT_TIMESTAMP, + `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`NextId`) ) ENGINE=MyISAM AUTO_INCREMENT=1000447 DEFAULT CHARSET=utf8; /*!40101 SET character_set_client = @saved_cs_client */; diff --git a/sql/update.sql b/sql/update.sql index e69de29b..4cd029d7 100644 --- a/sql/update.sql +++ b/sql/update.sql @@ -0,0 +1,41 @@ +ALTER TABLE charainfo +MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; + +ALTER TABLE charastatus +MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; + +ALTER TABLE charainfoblacklist +MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; + +ALTER TABLE charaglobalitem +MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; + +ALTER TABLE charainfofriendlist +MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; + +ALTER TABLE charainfolinkshell +MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; + +ALTER TABLE charainfosearch +MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; + +ALTER TABLE charaitemcrystal +MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; + +ALTER TABLE charaitemcurrency +MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; + +ALTER TABLE charaitemgearset +MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; + +ALTER TABLE charaiteminventory +MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; + +ALTER TABLE charaquestnew +MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; + +ALTER TABLE infolinkshell +MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; + +ALTER TABLE uniqueiddata +MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; \ No newline at end of file From 6f28586a726d2a74c6914fa603765e5444b9b98f Mon Sep 17 00:00:00 2001 From: GokuWeedLord Date: Thu, 23 Nov 2017 01:30:35 +1100 Subject: [PATCH 06/29] fix invalid sql --- sql/charaglobalitem.sql | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql/charaglobalitem.sql b/sql/charaglobalitem.sql index 8cb2c302..86025c3e 100644 --- a/sql/charaglobalitem.sql +++ b/sql/charaglobalitem.sql @@ -48,7 +48,7 @@ CREATE TABLE `charaglobalitem` ( `buffer_4` int(3) DEFAULT '0', `IS_DELETE` int(3) DEFAULT '0', `IS_NOT_ACTIVE_FLG` int(3) DEFAULT '0', - `UPDATE_DATE` datetime DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, + `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`itemId`), KEY `CharacterId` (`CharacterId`), KEY `storageId` (`storageId`), From 9e900520a6483c3465791ec276e92ee125478ca8 Mon Sep 17 00:00:00 2001 From: Ay'yaruq Dotharl Date: Sun, 26 Nov 2017 00:38:33 +1100 Subject: [PATCH 07/29] Fix #183 hardcoded Chai scripts path --- bin/config/settings_zone.xml | 2 ++ src/servers/Server_Zone/Script/ScriptManager.cpp | 2 ++ src/servers/Server_Zone/Script/ScriptManagerInit.cpp | 7 +++++-- src/servers/Server_Zone/ServerZone.cpp | 4 ++++ 4 files changed, 13 insertions(+), 2 deletions(-) diff --git a/bin/config/settings_zone.xml b/bin/config/settings_zone.xml index b1ab6081..18d33bf6 100644 --- a/bin/config/settings_zone.xml +++ b/bin/config/settings_zone.xml @@ -7,6 +7,8 @@ 127.0.0.1 C:\\SquareEnix\\FINAL FANTASY XIV - A Realm Reborn\\game\\sqpack\\ffxiv + + ../scripts/chai 127.0.0.1 diff --git a/src/servers/Server_Zone/Script/ScriptManager.cpp b/src/servers/Server_Zone/Script/ScriptManager.cpp index bc42558c..ad4ef9c1 100644 --- a/src/servers/Server_Zone/Script/ScriptManager.cpp +++ b/src/servers/Server_Zone/Script/ScriptManager.cpp @@ -38,6 +38,8 @@ Core::Scripting::ScriptManager::~ScriptManager() void Core::Scripting::ScriptManager::loadDir( std::string dirname, std::set& chaiFiles ) { + g_log.info( "ScriptEngine: loading scripts from " + dirname ); + boost::filesystem::path targetDir( dirname ); boost::filesystem::recursive_directory_iterator iter( targetDir ), eod; diff --git a/src/servers/Server_Zone/Script/ScriptManagerInit.cpp b/src/servers/Server_Zone/Script/ScriptManagerInit.cpp index 06d290cb..71b891cc 100644 --- a/src/servers/Server_Zone/Script/ScriptManagerInit.cpp +++ b/src/servers/Server_Zone/Script/ScriptManagerInit.cpp @@ -1,8 +1,11 @@ #include +#include #include #include +#include "src/servers/Server_Zone/ServerZone.h" + #include "src/servers/Server_Zone/Script/ScriptManager.h" #include "src/servers/Server_Zone/Zone/Zone.h" @@ -17,6 +20,7 @@ #include extern Core::Logger g_log; +extern Core::ServerZone g_serverZone; int Core::Scripting::ScriptManager::init() { @@ -169,8 +173,7 @@ int Core::Scripting::ScriptManager::init() std::set< std::string > chaiFiles; - g_log.info( "ScriptEngine: Loading Scripts..." ); - loadDir( "../scripts/chai", chaiFiles ); + loadDir( g_serverZone.getConfig()->getValue< std::string >( "Settings.General.ScriptPath", "../scripts/chai" ), chaiFiles ); uint16_t scriptCount = 0; uint16_t errorCount = 0; diff --git a/src/servers/Server_Zone/ServerZone.cpp b/src/servers/Server_Zone/ServerZone.cpp index d87b711b..64d53132 100644 --- a/src/servers/Server_Zone/ServerZone.cpp +++ b/src/servers/Server_Zone/ServerZone.cpp @@ -129,6 +129,10 @@ bool Core::ServerZone::loadSettings( int32_t argc, char* argv[] ) { m_pConfig->setValue< std::string >( "Settings.General.DataPath", val ); } + else if( arg == "s" || arg == "scriptpath" ) + { + m_pConfig->setValue< std::string >( "Settings.General.ScriptPath", val ); + } else if( arg == "h" || arg == "dbhost" ) { m_pConfig->setValue< std::string >( "Settings.General.Mysql.Host", val ); From 0cfe37703cf99038b5d83a00f5657a7fafd59de7 Mon Sep 17 00:00:00 2001 From: Ay'yaruq Dotharl Date: Sun, 26 Nov 2017 02:05:20 +1100 Subject: [PATCH 08/29] Update Travis config for hopefully builds Remove unnecessary dependencies and add a cache for the build files. Additionally limit Git clone depth and use build matrices properly. The CMake package dependency was removed since Travis comes with 3.2 and the installer only brings in 3.5, while the current minimum is 2.6. Add support for mtime_cache, a small Ruby gem for hashing file mtime and automatically updating unchanged files so that CMake knows which cached build files are still valid since Git doesn't track mtime. --- .gitignore | 5 ++++- .travis.yml | 54 ++++++++++++++++++++++++++++++++++++----------------- 2 files changed, 41 insertions(+), 18 deletions(-) diff --git a/.gitignore b/.gitignore index 97aa43f5..0747ffb3 100644 --- a/.gitignore +++ b/.gitignore @@ -106,4 +106,7 @@ src/libraries/external/boost_* src/servers/Server_Common/Version\.cpp # edit and continue files -/enc_temp_folder \ No newline at end of file +/enc_temp_folder + +# travis-ci build mtime cache +.mtime_cache diff --git a/.travis.yml b/.travis.yml index 6c5c62cd..21eb7833 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,24 +1,44 @@ +--- language: c++ -sudo: enabled -before_install: - - sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y - - sudo add-apt-repository universe - - sudo apt-get update - - sudo apt-get install -y software-properties-common - - sudo apt-get update - - sudo apt-get install gcc-7 g++-7 gcc-7-multilib g++-7-multilib cmake3 -y - - sudo apt-get install libboost-dev libboost-all-dev libmysqlclient-dev -y - - sudo apt-get install libmysqlcppconn-dev -y -compiler: - - g++ - - +sudo: enabled + +git: + depth: 5 + +matrix: + include: + - os: linux + addons: + apt: + sources: + - ubuntu-toolchain-r-test + packages: + - gcc-7 + - g++-7 + env: + - MATRIX_EVAL="CC=gcc-7 && CXX=g++-7" + +# Setup cache +cache: + directories: + - build + - .mtime_cache + +# Setup build matrix and dependencies +before_install: + - eval "${MATRIX_EVAL}" + - gem install --no-ri --no-rdoc mtime_cache + - sudo apt-get update + - sudo apt-get install -y libboost-dev libboost-all-dev + - sudo apt-get install -y libmysqlclient-dev libmysqlcppconn-dev + # Build steps script: - - g++ --version - - mkdir build + - $CXX --version + - mtime_cache src/**/*.{%{cpp}} -c .mtime_cache/cache.json + - mkdir -p build - cd build - - cmake .. -DSAPPHIRE_BOOST_VER="1.54.0" -DCMAKE_CXX_COMPILER=g++-7 && make -j 3 + - cmake .. -DSAPPHIRE_BOOST_VER="1.54.0" && make -j 3 - cd .. - bash sql_import.sh From 4c71428dc2b5d7ad77053139b0bdcfe11580b33c Mon Sep 17 00:00:00 2001 From: Mordred Date: Sun, 26 Nov 2017 01:12:26 +0100 Subject: [PATCH 09/29] renamed type in actors to ObjKind as thats what it is called internally, also less ambugious to modelType which i also added an enum for --- src/servers/Server_Common/Common.h | 10 +++++++--- src/servers/Server_Zone/Actor/Actor.cpp | 4 ++-- src/servers/Server_Zone/Actor/Actor.h | 18 ++++++++++-------- src/servers/Server_Zone/Actor/BattleNpc.cpp | 8 ++++---- src/servers/Server_Zone/Actor/Player.cpp | 2 +- 5 files changed, 24 insertions(+), 18 deletions(-) diff --git a/src/servers/Server_Common/Common.h b/src/servers/Server_Common/Common.h index fae2a31b..9b1c1126 100644 --- a/src/servers/Server_Common/Common.h +++ b/src/servers/Server_Common/Common.h @@ -802,10 +802,14 @@ namespace Common { MountSkill = 0xD, }; - struct ServerEntry + /*! ModelType as found in eventsystemdefine.exd */ + enum ModelType : uint8_t { - uint32_t serverId; - uint32_t flags; + Human = 1, + DemiHuman = 2, + Monster = 3, + SharedGroup = 4, + Parts = 5 }; typedef std::vector< PlayerStateFlag > PlayerStateFlagList; diff --git a/src/servers/Server_Zone/Actor/Actor.cpp b/src/servers/Server_Zone/Actor/Actor.cpp index dcf572d0..8869cfda 100644 --- a/src/servers/Server_Zone/Actor/Actor.cpp +++ b/src/servers/Server_Zone/Actor/Actor.cpp @@ -59,13 +59,13 @@ std::string Core::Entity::Actor::getName() const /*! \return true if the actor is of type player */ bool Core::Entity::Actor::isPlayer() const { - return m_type == ActorType::Player; + return m_objKind == ObjKind::Player; } /*! \return true if the actor is of type mob */ bool Core::Entity::Actor::isMob() const { - return m_type == ActorType::BattleNpc; + return m_objKind == ObjKind::BattleNpc; } /*! \return list of actors currently in range */ diff --git a/src/servers/Server_Zone/Actor/Actor.h b/src/servers/Server_Zone/Actor/Actor.h index 5a784f28..9378d67c 100644 --- a/src/servers/Server_Zone/Actor/Actor.h +++ b/src/servers/Server_Zone/Actor/Actor.h @@ -20,21 +20,23 @@ namespace Entity { class Actor : public boost::enable_shared_from_this< Actor > { public: - enum ActorType : uint8_t + enum ObjKind : uint8_t { None = 0x00, Player = 0x01, BattleNpc = 0x02, EventNpc = 0x03, - unk1 = 0x04, - AetheryteNpc = 0x05, - ResourceNode = 0x06, + Treasure = 0x04, + Aetheryte = 0x05, + GatheringPoint = 0x06, EventObj = 0x07, Mount = 0x08, - Minion = 0x09, + Companion = 0x09, Retainer = 0x0A, - unk2 = 0x0B, - Furniture = 0x0C, + Area = 0x0B, + Housing = 0x0C, + Cutscene = 0x0D, + CardStand = 0x0E, }; enum Stance : uint8_t @@ -125,7 +127,7 @@ protected: /*! Id of the actor */ uint32_t m_id; /*! Type of the actor */ - ActorType m_type; + ObjKind m_objKind; /*! Ptr to the ZoneObj the actor belongs to */ ZonePtr m_pCurrentZone; /*! Last tick time for the actor ( in ms ) */ diff --git a/src/servers/Server_Zone/Actor/BattleNpc.cpp b/src/servers/Server_Zone/Actor/BattleNpc.cpp index d990369d..b7f18cc9 100644 --- a/src/servers/Server_Zone/Actor/BattleNpc.cpp +++ b/src/servers/Server_Zone/Actor/BattleNpc.cpp @@ -29,7 +29,7 @@ uint32_t Core::Entity::BattleNpc::m_nextID = 1149241694; Core::Entity::BattleNpc::BattleNpc() { m_id = 0; - m_type = ActorType::BattleNpc; + m_objKind = ObjKind::BattleNpc; m_status = ActorStatus::Idle; } @@ -49,7 +49,7 @@ Core::Entity::BattleNpc::BattleNpc( uint32_t modelId, uint32_t nameid, const Com m_pos = spawnPos; m_posOrigin = spawnPos; - m_type = ActorType::BattleNpc; + m_objKind = ObjKind::BattleNpc; m_mode = MODE_IDLE; m_targetId = INVALID_GAME_OBJECT_ID; @@ -83,7 +83,7 @@ Core::Entity::BattleNpc::BattleNpc( uint32_t modelId, uint32_t nameid, const Com m_invincibilityType = InvincibilityType::InvincibilityNone; - //m_type = static_cast< Common::ActorType >( type ); + //m_type = static_cast< Common::ObjKind >( type ); } @@ -147,7 +147,7 @@ void Core::Entity::BattleNpc::spawn( Core::Entity::PlayerPtr pTarget ) spawnPacket.data().rotation = Math::Util::floatToUInt16Rot( getRotation() ); - spawnPacket.data().type = static_cast< uint8_t >( m_type ); + spawnPacket.data().type = static_cast< uint8_t >( m_objKind ); spawnPacket.data().state = static_cast< uint8_t >( m_status ); diff --git a/src/servers/Server_Zone/Actor/Player.cpp b/src/servers/Server_Zone/Actor/Player.cpp index 6474ef01..ba6f075d 100644 --- a/src/servers/Server_Zone/Actor/Player.cpp +++ b/src/servers/Server_Zone/Actor/Player.cpp @@ -76,7 +76,7 @@ Core::Entity::Player::Player() : m_mount( 0 ) { m_id = 0; - m_type = ActorType::Player; + m_objKind = ObjKind::Player; m_currentStance = Stance::Passive; m_onlineStatus = 0; m_queuedZoneing = nullptr; From 7352a24a071db054ab8f456340c04b55fae0fbec Mon Sep 17 00:00:00 2001 From: Robert Baker Date: Mon, 27 Nov 2017 09:53:20 -0800 Subject: [PATCH 10/29] Add a more windows-friendly SQL import script. Always runs update.sql last. --- sql/import.bat | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 sql/import.bat diff --git a/sql/import.bat b/sql/import.bat new file mode 100644 index 00000000..73359eae --- /dev/null +++ b/sql/import.bat @@ -0,0 +1,48 @@ +@ECHO OFF +SETLOCAL +REM ============= +REM IMPORT CONFIG +REM ============= +REM NOTE: No spaces before or after the '='!!! + +REM ============= +SET PATH_MYSQL="Path\to\mysql.exe" +SET PATH_MYSQLADMIN="Path\to\mysqladmin.exe" +SET PATH_SQL="Path\to\Sapphire\sql" + +SET USER=root +SET PASSWORD= +SET DBADDRESS=localhost +SET DBPORT=3306 +SET DBNAME=sapphire +REM ============= + +IF DEFINED PASSWORD (SET PASSWORD=-p%PASSWORD%) + +ECHO Deleteing old database +%PATH_MYSQLADMIN% -h %DBADDRESS% -u %USER% %PASSWORD% DROP %DBNAME% + +ECHO Creating new database +%PATH_MYSQLADMIN% -h %DBADDRESS% -u %USER% %PASSWORD% CREATE %DBNAME% + +ECHO Loading tables into the database +cd %PATH_SQL% +FOR %%X IN (*.sql) DO ( + IF "%%X"=="update.sql" ( + REM handle update.sql last + ) ELSE ( + ECHO Importing %%X + %PATH_MYSQL% %DBNAME% -h %DBADDRESS% -u %USER% < %%X + ) +) + +IF EXIST "update.sql" ( + ECHO Importing update.sql + %PATH_MYSQL% %DBNAME% -h %DBADDRESS% -u %USER% < update.sql +) + +ECHO Finished! + +ENDLOCAL +PAUSE +@ECHO ON From 5f5ce9970b397995eca5291ded4ee673ec69e3b4 Mon Sep 17 00:00:00 2001 From: Mordred Date: Tue, 28 Nov 2017 00:09:36 +0100 Subject: [PATCH 11/29] refactoring various files --- src/servers/Server_Zone/Actor/BattleNpc.cpp | 34 ++++---- src/servers/Server_Zone/Actor/BattleNpc.h | 3 +- src/servers/Server_Zone/Actor/Player.cpp | 45 +++++----- src/servers/Server_Zone/Actor/Player.h | 29 ++++--- src/servers/Server_Zone/Actor/PlayerEvent.cpp | 9 +- .../Server_Zone/Actor/PlayerInventory.cpp | 2 - src/servers/Server_Zone/Actor/PlayerQuest.cpp | 5 +- .../Server_Zone/Network/GameConnection.cpp | 63 +------------- .../Server_Zone/Network/GameConnection.h | 2 +- .../Network/Handlers/ActionHandler.cpp | 8 +- .../Network/Handlers/InventoryHandler.cpp | 82 +++++++++---------- .../Network/Handlers/PacketHandlers.cpp | 2 +- src/servers/Server_Zone/Zone/Zone.cpp | 9 +- src/servers/Server_Zone/Zone/ZoneMgr.cpp | 8 +- 14 files changed, 119 insertions(+), 182 deletions(-) diff --git a/src/servers/Server_Zone/Actor/BattleNpc.cpp b/src/servers/Server_Zone/Actor/BattleNpc.cpp index b7f18cc9..0bd002f7 100644 --- a/src/servers/Server_Zone/Actor/BattleNpc.cpp +++ b/src/servers/Server_Zone/Actor/BattleNpc.cpp @@ -38,8 +38,8 @@ Core::Entity::BattleNpc::~BattleNpc() } -Core::Entity::BattleNpc::BattleNpc( uint32_t modelId, uint32_t nameid, const Common::FFXIVARR_POSITION3& spawnPos, - uint32_t sizeId, uint32_t type, uint32_t level, uint32_t behaviour, +Core::Entity::BattleNpc::BattleNpc( uint16_t modelId, uint16_t nameid, const Common::FFXIVARR_POSITION3& spawnPos, + uint16_t bnpcBaseId, uint32_t type, uint8_t level, uint8_t behaviour, uint32_t mobType ) { BattleNpc::m_nextID++; @@ -52,7 +52,7 @@ Core::Entity::BattleNpc::BattleNpc( uint32_t modelId, uint32_t nameid, const Com m_objKind = ObjKind::BattleNpc; m_mode = MODE_IDLE; - m_targetId = INVALID_GAME_OBJECT_ID; + m_targetId = static_cast< uint64_t >( INVALID_GAME_OBJECT_ID ); m_maxHp = 150; m_maxMp = 100; @@ -66,14 +66,14 @@ Core::Entity::BattleNpc::BattleNpc( uint32_t modelId, uint32_t nameid, const Com m_currentStance = Stance::Passive; m_class = ClassJob::Gladiator; - m_level = level > 0 ? level : 70; + m_level = level > uint8_t{0} ? level : uint8_t{70}; m_modelId = modelId; m_nameId = nameid; m_behavior = behaviour; - m_bnpcBaseId = sizeId; + m_bnpcBaseId = bnpcBaseId; m_status = ActorStatus::Idle; @@ -189,7 +189,7 @@ uint8_t Core::Entity::BattleNpc::getbehavior() const void Core::Entity::BattleNpc::hateListAdd( Core::Entity::ActorPtr pActor, int32_t hateAmount ) { - HateListEntry* hateEntry = new HateListEntry(); + auto hateEntry = new HateListEntry(); hateEntry->m_hateAmount = hateAmount; hateEntry->m_pActor = pActor; @@ -253,7 +253,7 @@ bool Core::Entity::BattleNpc::moveTo( Common::FFXIVARR_POSITION3& pos ) return true; float rot = Math::Util::calcAngFrom( getPos().x, getPos().z, pos.x, pos.z ); - float newRot = PI - rot + (PI / 2); + float newRot = PI - rot + ( PI / 2 ); face( pos ); float angle = Math::Util::calcAngFrom( getPos().x, getPos().z, pos.x, pos.z ) + PI; @@ -262,7 +262,7 @@ bool Core::Entity::BattleNpc::moveTo( Common::FFXIVARR_POSITION3& pos ) float y = ( getPos().y + pos.y ) * 0.5f; // fake value while there is no collision float z = static_cast< float >( sinf( angle ) * 1.1f ); - Common::FFXIVARR_POSITION3 newPos; + Common::FFXIVARR_POSITION3 newPos{}; newPos.x = getPos().x + x; newPos.y = y; @@ -270,13 +270,11 @@ bool Core::Entity::BattleNpc::moveTo( Common::FFXIVARR_POSITION3& pos ) setPosition( newPos ); - Common::FFXIVARR_POSITION3 tmpPos; + Common::FFXIVARR_POSITION3 tmpPos{}; tmpPos.x = getPos().x + x; tmpPos.y = y; tmpPos.z = getPos().z + z; - - angle = angle * 2; setPosition( tmpPos ); setRotation(newRot); @@ -384,7 +382,7 @@ void Core::Entity::BattleNpc::hateListUpdate( Core::Entity::ActorPtr pActor, int } } - HateListEntry* hateEntry = new HateListEntry(); + auto hateEntry = new HateListEntry(); hateEntry->m_hateAmount = hateAmount; hateEntry->m_pActor = pActor; m_hateList.insert( hateEntry ); @@ -427,7 +425,7 @@ void Core::Entity::BattleNpc::onDeath() if( pHateEntry->m_pActor->isPlayer() ) // && pHateEntry->m_hateAmount >= plsBeHatedThisMuchAtLeast ) { uint8_t level = pHateEntry->m_pActor->getLevel(); - auto levelDiff = (int)this->m_level - (int)level; + auto levelDiff = static_cast< int32_t >( this->m_level ) - level; auto cappedLevelDiff = Math::Util::clamp( levelDiff, 1, 6 ); auto expNeeded = g_exdData.m_paramGrowthInfoMap[m_level + cappedLevelDiff - 1].needed_exp; @@ -449,7 +447,7 @@ void Core::Entity::BattleNpc::onDeath() // todo: this is actually retarded, we need real rand() - srand( static_cast< unsigned int> ( time( NULL ) ) ); + srand( static_cast< uint32_t > ( time( nullptr ) ) ); auto pPlayer = pHateEntry->m_pActor->getAsPlayer(); pPlayer->gainExp( exp ); @@ -517,7 +515,7 @@ void Core::Entity::BattleNpc::update( int64_t currTime ) { ActorPtr pClosestActor = getClosestActor(); - if( ( pClosestActor != nullptr ) && pClosestActor->isAlive() ) + if( pClosestActor && pClosestActor->isAlive() ) { distance = Math::Util::distance( getPos().x, getPos().y, getPos().z, pClosestActor->getPos().x, @@ -543,9 +541,9 @@ void Core::Entity::BattleNpc::update( int64_t currTime ) if( pClosestActor != nullptr ) { distance = Math::Util::distance( getPos().x, getPos().y, getPos().z, - pClosestActor->getPos().x, - pClosestActor->getPos().y, - pClosestActor->getPos().z ); + pClosestActor->getPos().x, + pClosestActor->getPos().y, + pClosestActor->getPos().z ); if( distance > 4 ) moveTo( pClosestActor->getPos() ); diff --git a/src/servers/Server_Zone/Actor/BattleNpc.h b/src/servers/Server_Zone/Actor/BattleNpc.h index f74f9536..d6e92e85 100644 --- a/src/servers/Server_Zone/Actor/BattleNpc.h +++ b/src/servers/Server_Zone/Actor/BattleNpc.h @@ -27,7 +27,8 @@ public: BattleNpc(); ~BattleNpc(); - BattleNpc( uint32_t modelId, uint32_t nameid, const Common::FFXIVARR_POSITION3& spawnPos, uint32_t sizeId = 0, uint32_t type = 2, uint32_t level = 0, uint32_t behaviour = 1, uint32_t mobType = 0 ); + BattleNpc( uint16_t modelId, uint16_t nameid, const Common::FFXIVARR_POSITION3& spawnPos, uint16_t bnpcBaseId = 0, + uint32_t type = 2, uint8_t level = 0, uint8_t behaviour = 1, uint32_t mobType = 0 ); //BattleNpc( uint32_t modelId, // uint32_t nameId, diff --git a/src/servers/Server_Zone/Actor/Player.cpp b/src/servers/Server_Zone/Actor/Player.cpp index ba6f075d..b2d5ce20 100644 --- a/src/servers/Server_Zone/Actor/Player.cpp +++ b/src/servers/Server_Zone/Actor/Player.cpp @@ -895,9 +895,7 @@ Core::Entity::ActorPtr Core::Entity::Player::lookupTargetById( uint64_t targetId for( auto actor : inRange ) { if( actor->getId() == targetId ) - { targetActor = actor; - } } return targetActor; } @@ -1209,26 +1207,27 @@ void Core::Entity::Player::queuePacket( Core::Network::Packets::GamePacketPtr pP { auto pSession = g_serverZone.getSession( m_id ); - if( pSession ) - { - auto pZoneCon = pSession->getZoneConnection(); + if( !pSession ) + return; + + auto pZoneCon = pSession->getZoneConnection(); + + if( pZoneCon ) + pZoneCon->queueOutPacket( pPacket ); - if( pZoneCon ) - pZoneCon->queueOutPacket( pPacket ); - } } void Core::Entity::Player::queueChatPacket( Core::Network::Packets::GamePacketPtr pPacket ) { auto pSession = g_serverZone.getSession( m_id ); - if( pSession ) - { - auto pChatCon = pSession->getChatConnection(); + if( !pSession ) + return; - if( pChatCon ) - pChatCon->queueOutPacket( pPacket ); - } + auto pChatCon = pSession->getChatConnection(); + + if( pChatCon ) + pChatCon->queueOutPacket( pPacket ); } bool Core::Entity::Player::isLoadingComplete() const @@ -1460,7 +1459,8 @@ void Core::Entity::Player::mount( uint32_t id ) void Core::Entity::Player::dismount() { - sendToInRangeSet( ActorControlPacket142( getId(), ActorControlType::SetStatus, static_cast< uint8_t >( Entity::Actor::ActorStatus::Idle )), true ); + sendToInRangeSet( ActorControlPacket142( getId(), ActorControlType::SetStatus, + static_cast< uint8_t >( Entity::Actor::ActorStatus::Idle )), true ); sendToInRangeSet( ActorControlPacket143( getId(), ActorControlType::Dismount, 1 ), true ); m_mount = 0; } @@ -1473,7 +1473,8 @@ uint8_t Core::Entity::Player::getCurrentMount() const void Core::Entity::Player::autoAttack( ActorPtr pTarget ) { - auto mainWeap = m_pInventory->getItemAt(Inventory::GearSet0, Inventory::EquipSlot::MainHand); + auto mainWeap = m_pInventory->getItemAt( Inventory::GearSet0, + Inventory::EquipSlot::MainHand ); pTarget->onActionHostile( shared_from_this() ); //uint64_t tick = Util::getTimeMs(); @@ -1482,9 +1483,9 @@ void Core::Entity::Player::autoAttack( ActorPtr pTarget ) uint32_t damage = static_cast< uint32_t >( mainWeap->getAutoAttackDmg() ); uint32_t variation = 0 + rand() % 3; - if ( getClass() == ClassJob::Machinist|| - getClass() == ClassJob::Bard || - getClass() == ClassJob::Archer ) + if( getClass() == ClassJob::Machinist || + getClass() == ClassJob::Bard || + getClass() == ClassJob::Archer ) { ZoneChannelPacket< FFXIVIpcEffect > effectPacket(getId()); effectPacket.data().targetId = pTarget->getId(); @@ -1510,7 +1511,7 @@ void Core::Entity::Player::autoAttack( ActorPtr pTarget ) ZoneChannelPacket< FFXIVIpcEffect > effectPacket(getId()); effectPacket.data().targetId = pTarget->getId(); effectPacket.data().actionAnimationId = 7; - // effectPacket.data().unknown_2 = variation; + // effectPacket.data().unknown_2 = variation; effectPacket.data().numEffects = 1; effectPacket.data().unknown_61 = 1; effectPacket.data().unknown_62 = 1; @@ -1549,7 +1550,7 @@ uint32_t Core::Entity::Player::getCFPenaltyMinutes() const auto endTimestamp = getCFPenaltyTimestamp(); // check if penalty timestamp already passed current time - if (currentTimestamp > endTimestamp) + if( currentTimestamp > endTimestamp ) return 0; auto deltaTime = endTimestamp - currentTimestamp; @@ -1559,7 +1560,7 @@ uint32_t Core::Entity::Player::getCFPenaltyMinutes() const void Core::Entity::Player::setCFPenaltyMinutes( uint32_t minutes ) { auto currentTimestamp = Core::Util::getTimeSeconds(); - setCFPenaltyTimestamp(static_cast< uint32_t >( currentTimestamp + minutes * 60 )); + setCFPenaltyTimestamp( static_cast< uint32_t >( currentTimestamp + minutes * 60 ) ); } uint8_t Core::Entity::Player::getOpeningSequence() const diff --git a/src/servers/Server_Zone/Actor/Player.h b/src/servers/Server_Zone/Actor/Player.h index 19ed8d71..a705e8b7 100644 --- a/src/servers/Server_Zone/Actor/Player.h +++ b/src/servers/Server_Zone/Actor/Player.h @@ -215,7 +215,7 @@ public: /*! get the current system hand model */ uint64_t getModelSystemWeapon() const; /*! return a const pointer to the model array */ - const uint32_t * getModelArray() const; + const uint32_t* getModelArray() const; /*! return the equipment model in a specified equipment slot */ uint32_t getModelForSlot( Inventory::EquipSlot slot ); /*! set the equipment model in a specified equipment slot */ @@ -254,13 +254,13 @@ public: /*! change class or job to given class / job */ void setClassJob( Core::Common::ClassJob classJob ); /*! returns a pointer to the class array */ - uint16_t * getClassArray(); + uint16_t* getClassArray(); /*! returns a const pointer to the class array */ - const uint16_t * getClassArray() const; + const uint16_t* getClassArray() const; /*! returns a pointer to the exp array */ - uint32_t * getExpArray(); + uint32_t* getExpArray(); /*! returns a const pointer to the exp array */ - const uint32_t * getExpArray() const; + const uint32_t* getExpArray() const; // Base Look / Stats / Params ////////////////////////////////////////////////////////////////////////////////////////////////////// @@ -283,7 +283,7 @@ public: /*! return the grand company */ uint8_t getGc() const; /*! return the grand company rank */ - const uint8_t * getGcRankArray() const; + const uint8_t* getGcRankArray() const; /*! set look at index */ void setLookAt( uint8_t index, uint8_t value ); /*! set the voice Id */ @@ -293,7 +293,7 @@ public: /*! set the grand company rank */ void setGcRankAt( uint8_t index, uint8_t rank ); /*! return a const pointer to the look array */ - const uint8_t * getLookArray() const; + const uint8_t* getLookArray() const; /*! returns true if the player is currently in combat */ bool isInCombat() const; /*! sets players combat state */ @@ -329,7 +329,7 @@ public: /*! prepares zoning / fades out the screen */ void prepareZoning( uint16_t targetZone, bool fadeOut, uint8_t fadoutTime = 0, uint16_t animation = 0 ); /*! get player's title list (available titles) */ - uint8_t * getTitleList(); + uint8_t* getTitleList(); /*! get player's active title */ uint16_t getTitle() const; /*! add title to player title list */ @@ -360,7 +360,7 @@ public: /*! return a const pointer to the aetheryte unlock bitmask array */ int8_t getAetheryteMaskAt( uint8_t index ) const; /*! return a pointer to the aetheryte unlock bitmask array */ - uint8_t * getAetheryteArray(); + uint8_t* getAetheryteArray(); /*! set homepoint */ void setHomepoint( uint8_t aetheryteId ); /*! get homepoint */ @@ -368,13 +368,13 @@ public: /*! discover subarea subid fo map map_id, also send udpate packet */ void discover( int16_t map_id, int16_t sub_id ); /*! return a pointer to the discovery bitmask array */ - uint8_t * getDiscoveryBitmask(); + uint8_t* getDiscoveryBitmask(); /*! helper/debug function to reset all discovered areas */ void resetDiscovery(); /*! get a pointer to the howto bitmask array */ - uint8_t * getHowToArray(); + uint8_t* getHowToArray(); /*! get a const pointer to the howto bitmask array */ - const uint8_t * getHowToArray() const; + const uint8_t* getHowToArray() const; /*! update bitmask for how-to's seen */ void updateHowtosSeen( uint32_t howToId ); /*! learn an action / update the unlock bitmask. */ @@ -384,9 +384,9 @@ public: /*! check if an action is already unlocked in the bitmask. */ bool isActionLearned( uint8_t actionId ) const; /*! return a const pointer to the unlock bitmask array */ - const uint8_t * getUnlockBitmask() const; + const uint8_t* getUnlockBitmask() const; /*! return a const pointer to the orchestrion bitmask array */ - const uint8_t * getOrchestrionBitmask() const; + const uint8_t* getOrchestrionBitmask() const; // Spawn handling @@ -522,7 +522,6 @@ public: void setEorzeaTimeOffset( uint64_t timestamp ); - // Database void updateDbAllQuests() const; void deleteQuest( uint16_t questId ) const; diff --git a/src/servers/Server_Zone/Actor/PlayerEvent.cpp b/src/servers/Server_Zone/Actor/PlayerEvent.cpp index ee6451c6..9c0a1b02 100644 --- a/src/servers/Server_Zone/Actor/PlayerEvent.cpp +++ b/src/servers/Server_Zone/Actor/PlayerEvent.cpp @@ -69,9 +69,9 @@ void Core::Entity::Player::removeEvent( uint32_t eventId ) void Core::Entity::Player::checkEvent( uint32_t eventId ) { auto pEvent = getEvent( eventId ); - if( pEvent ) - if( !pEvent->hasPlayedScene() ) - eventFinish( eventId, 1 ); + + if( pEvent && !pEvent->hasPlayedScene() ) + eventFinish( eventId, 1 ); } @@ -282,7 +282,8 @@ void Core::Entity::Player::eventItemActionStart( uint32_t eventId, void Core::Entity::Player::onLogin() { - for( auto& child : g_serverZone.getConfig()->getChild( "Settings.Parameters.MotDArray" ) ) { + for( auto& child : g_serverZone.getConfig()->getChild( "Settings.Parameters.MotDArray" ) ) + { sendNotice( child.second.data() ); } } diff --git a/src/servers/Server_Zone/Actor/PlayerInventory.cpp b/src/servers/Server_Zone/Actor/PlayerInventory.cpp index 2ed3b165..8eaf65c9 100644 --- a/src/servers/Server_Zone/Actor/PlayerInventory.cpp +++ b/src/servers/Server_Zone/Actor/PlayerInventory.cpp @@ -195,9 +195,7 @@ bool Core::Entity::Player::tryAddItem( uint16_t catalogId, uint32_t quantity ) for( uint16_t i = 0; i < 4; i++ ) { if( m_pInventory->addItem( i, -1, catalogId, quantity ) != -1 ) - { return true; - } } return false; } diff --git a/src/servers/Server_Zone/Actor/PlayerQuest.cpp b/src/servers/Server_Zone/Actor/PlayerQuest.cpp index 06c728b2..3940954f 100644 --- a/src/servers/Server_Zone/Actor/PlayerQuest.cpp +++ b/src/servers/Server_Zone/Actor/PlayerQuest.cpp @@ -45,7 +45,7 @@ void Core::Entity::Player::removeQuest( uint16_t questId ) { ZoneChannelPacket< FFXIVIpcQuestUpdate > questUpdatePacket( getId() ); - questUpdatePacket.data().slot = idx; + questUpdatePacket.data().slot = static_cast< uint8_t >( idx ); questUpdatePacket.data().questInfo.c.questId = 0; questUpdatePacket.data().questInfo.c.sequence = 0xFF; queuePacket( questUpdatePacket ); @@ -62,7 +62,7 @@ void Core::Entity::Player::removeQuest( uint16_t questId ) m_questTracking[ii] = -1; } - boost::shared_ptr pQuest = m_activeQuests[idx]; + boost::shared_ptr< QuestActive > pQuest = m_activeQuests[idx]; m_activeQuests[idx].reset(); m_questIdToQuestIdx.erase( questId ); @@ -1023,6 +1023,7 @@ bool Core::Entity::Player::giveQuestRewards( uint32_t questId, uint32_t optional auto paramGrowth = g_exdData.m_paramGrowthInfoMap[questInfo->quest_level]; + // TODO: use the correct formula, this one is wrong uint32_t exp = ( questInfo->reward_exp_factor * paramGrowth.quest_exp_mod * ( 45 + 5 * questInfo->quest_level) ) / 100; exp = exp + ( questInfo->reward_exp_factor / 100 ) * 10000; diff --git a/src/servers/Server_Zone/Network/GameConnection.cpp b/src/servers/Server_Zone/Network/GameConnection.cpp index 036482a1..ebd1d0c8 100644 --- a/src/servers/Server_Zone/Network/GameConnection.cpp +++ b/src/servers/Server_Zone/Network/GameConnection.cpp @@ -126,7 +126,7 @@ void Core::Network::GameConnection::OnRecv( std::vector< uint8_t > & buffer ) { // This is assumed packet always start with valid FFXIVARR_PACKET_HEADER for now. - Packets::FFXIVARR_PACKET_HEADER packetHeader; + Packets::FFXIVARR_PACKET_HEADER packetHeader{}; const auto headerResult = Packets::getHeader(buffer, 0, packetHeader); if (headerResult == Incomplete) @@ -271,7 +271,7 @@ void Core::Network::GameConnection::processInQueue() // handle the incoming game packets while( auto pPacket = m_inQueue.pop() ) { - handlePacket(pPacket); + handlePacket( pPacket ); } } @@ -338,7 +338,7 @@ void Core::Network::GameConnection::injectPacket( const std::string& packetpath, fclose( fp ); // cycle through the packet entries and queue each one - for( int32_t k = 0x18; k < size;) + for( int32_t k = 0x18; k < size; ) { uint32_t tmpId = pPlayer->getId(); // replace ids in the entryheader if needed @@ -361,7 +361,7 @@ void Core::Network::GameConnection::injectPacket( const std::string& packetpath, } void Core::Network::GameConnection::handlePackets( const Core::Network::Packets::FFXIVARR_PACKET_HEADER& ipcHeader, - const std::vector& packetData ) + const std::vector< Core::Network::Packets::FFXIVARR_PACKET_RAW >& packetData ) { // if a session is set, update the last time it recieved a game packet if( m_pSession ) @@ -369,8 +369,6 @@ void Core::Network::GameConnection::handlePackets( const Core::Network::Packets: for( auto inPacket : packetData ) { - - switch( inPacket.segHdr.type ) { case 1: @@ -459,58 +457,5 @@ void Core::Network::GameConnection::handlePackets( const Core::Network::Packets: } } - - //// try to retrieve the session for this id - //auto session = g_serverZone.getSession( inPacket.segHdr.source_actor ); - //auto pCon = boost::static_pointer_cast< GameConnection, Connection >( shared_from_this() ); - - //// check if this is a zoning notification - //if( *reinterpret_cast< uint16_t* >( &inPacket.data[2] ) == 0x9999 ) - //{ - - // // if we already have a session in this connection, reload the player - // if( session ) - // g_serverZone.updateSession( inPacket.segHdr.source_actor ); - // else - // { - // // if not, create a new session - // g_serverZone.createSession( inPacket.segHdr.source_actor ); - // session = g_serverZone.getSession( inPacket.segHdr.source_actor ); - // } - - // // set the zoneingType for the player so the correct animation can be played - // auto pPlayer = session->getPlayer(); - // ZoneingType zoneType = static_cast< ZoneingType >( *reinterpret_cast< uint16_t* >( &inPacket.data[18] ) ); - // switch( zoneType ) - // { - // case ZoneingType::Teleport: - // pPlayer->setTeleporting( true ); - // break; - // case ZoneingType::Return: - // pPlayer->setReturning( true ); - // break; - // default: - // break; - // } - // // place this connection in the session - // session->setZoneConnection( pCon ); - // // actually perform the zoning - // session->getPlayer()->setZone( *reinterpret_cast< uint16_t* >( &inPacket.data[16] ) ); - //} - //else - //{ - // if( !session ) - // { - // g_serverZone.createSession( inPacket.segHdr.source_actor ); - // session = g_serverZone.getSession( inPacket.segHdr.source_actor ); - // session->setZoneConnection( pCon ); - // } - - // queueInPacket( GamePacketPtr( new GamePacket( inPacket ) ) ); - //} - - //// if not set, set the session for this connection - //if( !m_pSession && session ) - // m_pSession = session; } } diff --git a/src/servers/Server_Zone/Network/GameConnection.h b/src/servers/Server_Zone/Network/GameConnection.h index aa3bf340..a1eeb5a6 100644 --- a/src/servers/Server_Zone/Network/GameConnection.h +++ b/src/servers/Server_Zone/Network/GameConnection.h @@ -66,7 +66,7 @@ public: void OnError( const boost::system::error_code & error ) override; void handlePackets( const Packets::FFXIVARR_PACKET_HEADER& ipcHeader, - const std::vector& packetData ); + const std::vector< Packets::FFXIVARR_PACKET_RAW >& packetData ); void queueInPacket( Packets::GamePacketPtr inPacket ); void queueOutPacket( Packets::GamePacketPtr outPacket ); diff --git a/src/servers/Server_Zone/Network/Handlers/ActionHandler.cpp b/src/servers/Server_Zone/Network/Handlers/ActionHandler.cpp index 0374f957..94aa4e71 100644 --- a/src/servers/Server_Zone/Network/Handlers/ActionHandler.cpp +++ b/src/servers/Server_Zone/Network/Handlers/ActionHandler.cpp @@ -52,7 +52,7 @@ void Core::Network::GameConnection::actionHandler( const Packets::GamePacket& in uint64_t param1 = inPacket.getValAt< uint64_t >( 0x24 ); uint32_t param11 = inPacket.getValAt< uint32_t >( 0x24 ); uint32_t param12 = inPacket.getValAt< uint32_t >( 0x28 ); - uint32_t param2 = inPacket.getValAt< uint32_t >( 0x2c ); + uint32_t param2 = inPacket.getValAt< uint32_t >( 0x2C ); uint64_t param3 = inPacket.getValAt< uint64_t >( 0x38 ); g_log.debug( "[" + std::to_string( m_pSession->getId() ) + "] Incoming action: " + @@ -115,7 +115,7 @@ void Core::Network::GameConnection::actionHandler( const Packets::GamePacket& in } case 0x69: // Cancel cast { - if( pPlayer->getCurrentAction() != nullptr ) + if( pPlayer->getCurrentAction() ) pPlayer->getCurrentAction()->setInterrupted(); break; } @@ -190,8 +190,6 @@ void Core::Network::GameConnection::actionHandler( const Packets::GamePacket& in break; case ZoneingType::FadeIn: break; - default: - break; } pPlayer->setZoningType( Common::ZoneingType::None ); @@ -216,7 +214,7 @@ void Core::Network::GameConnection::actionHandler( const Packets::GamePacket& in pow( fromAetheryte->map_coord_y - targetAetheryte->map_coord_y, 2 ) ) / 2 ) + 100 ); // cap at 999 gil - cost = cost > 999 ? 999 : cost; + cost = cost > uint16_t{999} ? uint16_t{999} : cost; bool insufficientGil = pPlayer->getCurrency( Inventory::CurrencyType::Gil ) < cost; // todo: figure out what param1 really does diff --git a/src/servers/Server_Zone/Network/Handlers/InventoryHandler.cpp b/src/servers/Server_Zone/Network/Handlers/InventoryHandler.cpp index 37804aac..7decaea0 100644 --- a/src/servers/Server_Zone/Network/Handlers/InventoryHandler.cpp +++ b/src/servers/Server_Zone/Network/Handlers/InventoryHandler.cpp @@ -39,59 +39,59 @@ using namespace Core::Network::Packets::Server; void Core::Network::GameConnection::inventoryModifyHandler( const Packets::GamePacket& inPacket, Entity::PlayerPtr pPlayer ) { - uint32_t seq = inPacket.getValAt< uint32_t >( 0x20 ); - uint8_t action = inPacket.getValAt< uint8_t >( 0x24 ); - uint8_t fromSlot = inPacket.getValAt< uint8_t >( 0x30 ); - uint8_t toSlot = inPacket.getValAt< uint8_t >( 0x44 ); - uint16_t fromContainer = inPacket.getValAt< uint16_t >( 0x2C ); - uint16_t toContainer = inPacket.getValAt< uint16_t >( 0x40 ); + uint32_t seq = inPacket.getValAt< uint32_t >( 0x20 ); + uint8_t action = inPacket.getValAt< uint8_t >( 0x24 ); + uint8_t fromSlot = inPacket.getValAt< uint8_t >( 0x30 ); + uint8_t toSlot = inPacket.getValAt< uint8_t >( 0x44 ); + uint16_t fromContainer = inPacket.getValAt< uint16_t >( 0x2C ); + uint16_t toContainer = inPacket.getValAt< uint16_t >( 0x40 ); - ZoneChannelPacket< FFXIVIpcInventoryActionAck > ackPacket( pPlayer->getId() ); - ackPacket.data().sequence = seq; - ackPacket.data().type = 7; - pPlayer->queuePacket( ackPacket ); + ZoneChannelPacket< FFXIVIpcInventoryActionAck > ackPacket( pPlayer->getId() ); + ackPacket.data().sequence = seq; + ackPacket.data().type = 7; + pPlayer->queuePacket( ackPacket ); - g_log.debug( inPacket.toString() ); - g_log.debug( "InventoryAction: " + std::to_string( action ) ); + g_log.debug( inPacket.toString() ); + g_log.debug( "InventoryAction: " + std::to_string( action ) ); - // TODO: other inventory operations need to be implemented - switch( action ) - { + // TODO: other inventory operations need to be implemented + switch( action ) + { - case 0x07: // discard item action - { - pPlayer->getInventory()->discardItem( fromContainer, fromSlot ); - } - break; + case 0x07: // discard item action + { + pPlayer->getInventory()->discardItem( fromContainer, fromSlot ); + } + break; - case 0x08: // move item action - { - pPlayer->getInventory()->moveItem( fromContainer, fromSlot, toContainer, toSlot ); - } - break; + case 0x08: // move item action + { + pPlayer->getInventory()->moveItem( fromContainer, fromSlot, toContainer, toSlot ); + } + break; - case 0x09: // swap item action - { - pPlayer->getInventory()->swapItem( fromContainer, fromSlot, toContainer, toSlot ); - } - break; + case 0x09: // swap item action + { + pPlayer->getInventory()->swapItem( fromContainer, fromSlot, toContainer, toSlot ); + } + break; - case 0x0C: // merge stack action - { + case 0x0C: // merge stack action + { - } - break; + } + break; - case 0x0A: // split stack action - { + case 0x0A: // split stack action + { - } - break; + } + break; - default: + default: + break; - break; - } + } } diff --git a/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp b/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp index ef5f4336..f24b1ac5 100644 --- a/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp +++ b/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp @@ -300,7 +300,7 @@ void Core::Network::GameConnection::zoneLineHandler( const Packets::GamePacket& auto pLine = g_zoneMgr.getZonePosition( zoneLineId ); - Common::FFXIVARR_POSITION3 targetPos; + Common::FFXIVARR_POSITION3 targetPos{}; uint32_t targetZone; float rotation = 0.0f; diff --git a/src/servers/Server_Zone/Zone/Zone.cpp b/src/servers/Server_Zone/Zone/Zone.cpp index 7f905e15..c6de4ad5 100644 --- a/src/servers/Server_Zone/Zone/Zone.cpp +++ b/src/servers/Server_Zone/Zone/Zone.cpp @@ -46,7 +46,7 @@ Zone::Zone() , m_layoutId( 0 ) , m_bPrivate( false ) , m_type( Common::RegionType::normal ) - , m_currentWeather( static_cast( Common::Weather::FairSkies ) ) + , m_currentWeather( static_cast< uint8_t >( Common::Weather::FairSkies ) ) , m_weatherOverride( 0 ) , m_lastMobUpdate( 0 ) { @@ -54,7 +54,7 @@ Zone::Zone() Zone::Zone( uint16_t zoneId, uint32_t layoutId, std::string name, std::string interName, bool bPrivate = false ) : m_type( Common::RegionType::normal ) - , m_currentWeather( static_cast( Common::Weather::FairSkies ) ) + , m_currentWeather( static_cast< uint8_t >( Common::Weather::FairSkies ) ) { m_layoutId = layoutId; @@ -197,8 +197,8 @@ void Zone::loadCellCache() for( auto entry : cache ) { // get cell position - uint32_t cellX = CellHandler::getPosX( entry->getPos().x ); - uint32_t cellY = CellHandler::getPosY( entry->getPos().z ); + uint32_t cellX = CellHandler< ZoneMgr >::getPosX( entry->getPos().x ); + uint32_t cellY = CellHandler< ZoneMgr >::getPosY( entry->getPos().z ); // find the right cell, create it if not existing yet if( m_pCellCache[cellX] == nullptr ) @@ -314,7 +314,6 @@ void Zone::pushActor( Entity::ActorPtr pActor ) void Zone::removeActor( Entity::ActorPtr pActor ) { - if( pActor->m_pCell ) { pActor->m_pCell->removeActor( pActor ); diff --git a/src/servers/Server_Zone/Zone/ZoneMgr.cpp b/src/servers/Server_Zone/Zone/ZoneMgr.cpp index 4c4e0894..541955f3 100644 --- a/src/servers/Server_Zone/Zone/ZoneMgr.cpp +++ b/src/servers/Server_Zone/Zone/ZoneMgr.cpp @@ -14,13 +14,9 @@ extern Core::Data::ExdData g_exdData; namespace Core { - ZoneMgr::ZoneMgr() - { - } + ZoneMgr::ZoneMgr() = default; - ZoneMgr::~ZoneMgr() - { - } + ZoneMgr::~ZoneMgr() = default; void ZoneMgr::loadZonePositionMap() { From 23a32e67db8b23c2e131c49bf8f8c66a9f257a85 Mon Sep 17 00:00:00 2001 From: Mordred Date: Tue, 28 Nov 2017 17:06:44 +0100 Subject: [PATCH 12/29] Applied template simplification to chat channel packets --- src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp b/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp index f24b1ac5..d4fa75b7 100644 --- a/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp +++ b/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp @@ -555,7 +555,7 @@ void Core::Network::GameConnection::tellHandler( const Packets::GamePacket& inPa if( !pSession ) { - GamePacketNew< FFXIVIpcTellErrNotFound, ServerChatIpcType > tellErrPacket( pPlayer->getId() ); + ChatChannelPacket< FFXIVIpcTellErrNotFound > tellErrPacket( pPlayer->getId() ); strcpy( tellErrPacket.data().receipientName, targetPcName.c_str() ); sendSinglePacket( tellErrPacket ); @@ -588,7 +588,7 @@ void Core::Network::GameConnection::tellHandler( const Packets::GamePacket& inPa return; } - GamePacketNew< FFXIVIpcTell, ServerChatIpcType > tellPacket( pPlayer->getId() ); + ChatChannelPacket< FFXIVIpcTell > tellPacket( pPlayer->getId() ); strcpy( tellPacket.data().msg, msg.c_str() ); strcpy( tellPacket.data().receipientName, pPlayer->getName().c_str() ); // TODO: do these have a meaning? From f900bec801a203dd2eb6eaac51f23faf14747937 Mon Sep 17 00:00:00 2001 From: Mordred Date: Tue, 28 Nov 2017 17:16:12 +0100 Subject: [PATCH 13/29] Refactoring of event name generation --- src/servers/Server_Zone/Event/EventHelper.cpp | 34 ++++++++----------- 1 file changed, 15 insertions(+), 19 deletions(-) diff --git a/src/servers/Server_Zone/Event/EventHelper.cpp b/src/servers/Server_Zone/Event/EventHelper.cpp index 18308399..e59b322b 100644 --- a/src/servers/Server_Zone/Event/EventHelper.cpp +++ b/src/servers/Server_Zone/Event/EventHelper.cpp @@ -12,47 +12,45 @@ std::string Core::Event::getEventName( uint32_t eventId ) { uint16_t eventType = eventId >> 16; + auto unknown = std::string{ "unknown" }; + switch( eventType ) { case EventType::Quest: { auto questInfo = g_exdData.getQuestInfo( eventId ); - if( questInfo ) - { - std::string name = questInfo->name_intern; - std::size_t pos = name.find_first_of( "_" ); + if( !questInfo ) + return unknown + "Quest"; - return questInfo->name_intern.substr( 0, pos ); - } + std::string name = questInfo->name_intern; + std::size_t pos = name.find_first_of( "_" ); + + return questInfo->name_intern.substr( 0, pos ); } - break; case EventType::CustomTalk: { auto customTalkInfo = g_exdData.getCustomTalkInfo( eventId ); - if( customTalkInfo ) - { - std::string name = customTalkInfo->name_intern; - std::size_t pos = name.find_first_of( "_" ); + if( !customTalkInfo ) + return unknown + "CustomTalk"; - return customTalkInfo->name_intern.substr( 0, pos ); - } + std::string name = customTalkInfo->name_intern; + std::size_t pos = name.find_first_of( "_" ); + return customTalkInfo->name_intern.substr( 0, pos ); } - break; case EventType::Opening: { auto openingInfo = g_exdData.getOpeningInfo( eventId ); if( openingInfo ) return openingInfo->name; + return unknown + "Opening"; } - break; case EventType::Aetheryte: { auto aetherInfo = g_exdData.getAetheryteInfo( eventId & 0xFFFF ); if( aetherInfo->isAetheryte ) return "Aetheryte"; return "Aethernet"; - } case EventType::ChocoPort: { @@ -60,11 +58,9 @@ std::string Core::Event::getEventName( uint32_t eventId ) } default: { - return ""; - + return unknown; } } - return ""; } uint32_t Core::Event::mapEventActorToRealActor( uint32_t eventActorId ) From cf29b9e80cc66235b0a833e7b3aed7c47d13bffa Mon Sep 17 00:00:00 2001 From: Mordred Date: Tue, 28 Nov 2017 17:22:19 +0100 Subject: [PATCH 14/29] More code quality improvment in script manager --- .../Server_Zone/Script/ScriptManager.cpp | 73 +++++++++++-------- 1 file changed, 43 insertions(+), 30 deletions(-) diff --git a/src/servers/Server_Zone/Script/ScriptManager.cpp b/src/servers/Server_Zone/Script/ScriptManager.cpp index ad4ef9c1..acb30e3b 100644 --- a/src/servers/Server_Zone/Script/ScriptManager.cpp +++ b/src/servers/Server_Zone/Script/ScriptManager.cpp @@ -23,7 +23,6 @@ extern Core::Logger g_log; extern Core::Data::ExdData g_exdData; extern Core::ServerZone g_serverZone; -extern Core::Scripting::ScriptManager g_scriptManager; Core::Scripting::ScriptManager::ScriptManager() { @@ -69,7 +68,8 @@ void Core::Scripting::ScriptManager::onPlayerFirstEnterWorld( Core::Entity::Play } } -bool Core::Scripting::ScriptManager::registerBnpcTemplate( std::string templateName, uint32_t bnpcBaseId, uint32_t bnpcNameId, uint32_t modelId, std::string aiName ) +bool Core::Scripting::ScriptManager::registerBnpcTemplate( std::string templateName, uint32_t bnpcBaseId, + uint32_t bnpcNameId, uint32_t modelId, std::string aiName ) { return g_serverZone.registerBnpcTemplate( templateName, bnpcBaseId, bnpcNameId, modelId, aiName ); } @@ -81,7 +81,7 @@ void Core::Scripting::ScriptManager::reload() init(); } -const boost::shared_ptr& Core::Scripting::ScriptManager::getHandler() const +const boost::shared_ptr< chaiscript::ChaiScript >& Core::Scripting::ScriptManager::getHandler() const { return m_pChaiHandler; } @@ -92,12 +92,13 @@ bool Core::Scripting::ScriptManager::onTalk( Core::Entity::PlayerPtr pPlayer, ui std::string eventName = "onTalk"; std::string objName = Event::getEventName( eventId ); - pPlayer->sendDebug("Actor: " + - std::to_string( actorId ) + " -> " + std::to_string( Core::Event::mapEventActorToRealActor( static_cast< uint32_t >( actorId ) ) ) + - " \neventId: " + - std::to_string( eventId ) + - " (0x" + boost::str( boost::format( "%|08X|" ) - % static_cast< uint64_t >( eventId & 0xFFFFFFF ) ) + ")" ); + pPlayer->sendDebug( "Actor: " + + std::to_string( actorId ) + " -> " + + std::to_string( Core::Event::mapEventActorToRealActor( static_cast< uint32_t >( actorId ) ) ) + + " \neventId: " + + std::to_string( eventId ) + + " (0x" + boost::str( boost::format( "%|08X|" ) + % static_cast< uint64_t >( eventId & 0xFFFFFFF ) ) + ")" ); uint16_t eventType = eventId >> 16; @@ -109,7 +110,8 @@ bool Core::Scripting::ScriptManager::onTalk( Core::Entity::PlayerPtr pPlayer, ui pPlayer->eventStart( actorId, eventId, Event::Event::Talk, 0, 0 ); - auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, uint32_t, Entity::Player&, uint64_t ) > >( eventName ); + auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, + uint32_t, Entity::Player&, uint64_t ) > >( eventName ); fn( obj, eventId, *pPlayer, actorId ); pPlayer->checkEvent( eventId ); @@ -148,7 +150,8 @@ bool Core::Scripting::ScriptManager::onEnterTerritory( Core::Entity::PlayerPtr p pPlayer->eventStart( pPlayer->getId(), eventId, Event::Event::EnterTerritory, 0, pPlayer->getZoneId() ); - auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, uint32_t, Entity::Player&, uint16_t, uint16_t ) > >( eventName ); + auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, uint32_t, + Entity::Player&, uint16_t, uint16_t ) > >( eventName ); fn( obj, eventId, *pPlayer, param1, param2 ); pPlayer->checkEvent( eventId ); @@ -161,7 +164,8 @@ bool Core::Scripting::ScriptManager::onEnterTerritory( Core::Entity::PlayerPtr p return true; } -bool Core::Scripting::ScriptManager::onWithinRange( Entity::PlayerPtr pPlayer, uint32_t eventId, uint32_t param1, float x, float y, float z ) +bool Core::Scripting::ScriptManager::onWithinRange( Entity::PlayerPtr pPlayer, uint32_t eventId, uint32_t param1, + float x, float y, float z ) { std::string eventName = "onWithinRange"; std::string objName = Event::getEventName( eventId ); @@ -175,7 +179,8 @@ bool Core::Scripting::ScriptManager::onWithinRange( Entity::PlayerPtr pPlayer, u pPlayer->eventStart( pPlayer->getId(), eventId, Event::Event::WithinRange, 1, param1 ); - auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, uint32_t, Entity::Player&, uint32_t, float, float, float ) > >( eventName ); + auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, uint32_t, Entity::Player&, uint32_t, + float, float, float ) > >( eventName ); fn( obj, eventId, *pPlayer, param1, x, y, z ); pPlayer->checkEvent( eventId ); @@ -188,7 +193,8 @@ bool Core::Scripting::ScriptManager::onWithinRange( Entity::PlayerPtr pPlayer, u return true; } -bool Core::Scripting::ScriptManager::onOutsideRange( Entity::PlayerPtr pPlayer, uint32_t eventId, uint32_t param1, float x, float y, float z ) +bool Core::Scripting::ScriptManager::onOutsideRange( Entity::PlayerPtr pPlayer, uint32_t eventId, uint32_t param1, + float x, float y, float z ) { std::string eventName = "onOutsideRange"; std::string objName = Event::getEventName( eventId ); @@ -202,7 +208,8 @@ bool Core::Scripting::ScriptManager::onOutsideRange( Entity::PlayerPtr pPlayer, pPlayer->eventStart( pPlayer->getId(), eventId, Event::Event::OutsideRange, 1, param1 ); - auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, uint32_t, Entity::Player&, uint32_t, float, float, float ) > >( eventName ); + auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, uint32_t, Entity::Player&, uint32_t, + float, float, float ) > >( eventName ); fn( obj, eventId, *pPlayer, param1, x, y, z ); pPlayer->checkEvent( eventId ); @@ -229,7 +236,8 @@ bool Core::Scripting::ScriptManager::onEmote( Core::Entity::PlayerPtr pPlayer, u pPlayer->eventStart( actorId, eventId, Event::Event::Emote, 0, emoteId ); - auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, uint32_t, Entity::Player&, uint64_t, uint8_t ) > >( eventName ); + auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, uint32_t, Entity::Player&, + uint64_t, uint8_t ) > >( eventName ); fn( obj, eventId, *pPlayer, actorId, emoteId ); pPlayer->checkEvent( eventId ); @@ -252,17 +260,18 @@ bool Core::Scripting::ScriptManager::onEmote( Core::Entity::PlayerPtr pPlayer, u return true; } -bool Core::Scripting::ScriptManager::onEventHandlerReturn( Core::Entity::PlayerPtr pPlayer, uint32_t eventId, uint16_t subEvent, - uint16_t param1, uint16_t param2, uint16_t param3 ) +bool Core::Scripting::ScriptManager::onEventHandlerReturn( Core::Entity::PlayerPtr pPlayer, uint32_t eventId, + uint16_t subEvent, uint16_t param1, uint16_t param2, + uint16_t param3 ) { - pPlayer->sendDebug("eventId: " + - std::to_string( eventId ) + - " ( 0x" + boost::str( boost::format( "%|08X|" ) % ( uint64_t ) ( eventId & 0xFFFFFFF ) ) + " ) " + - " scene: " + std::to_string( subEvent ) + - " p1: " + std::to_string( param1 ) + - " p2: " + std::to_string( param2 ) + - " p3: " + std::to_string( param3 ) ); + pPlayer->sendDebug( "eventId: " + + std::to_string( eventId ) + + " ( 0x" + boost::str( boost::format( "%|08X|" ) % ( uint64_t ) ( eventId & 0xFFFFFFF ) ) + " ) " + + " scene: " + std::to_string( subEvent ) + + " p1: " + std::to_string( param1 ) + + " p2: " + std::to_string( param2 ) + + " p3: " + std::to_string( param3 ) ); try { @@ -302,7 +311,8 @@ bool Core::Scripting::ScriptManager::onEventHandlerTradeReturn( Core::Entity::Pl try { - auto fn = m_pChaiHandler->eval< std::function< void( Entity::Player&, uint32_t, uint16_t, uint16_t, uint32_t ) > >( eventName ); + auto fn = m_pChaiHandler->eval< std::function< void( Entity::Player&, uint32_t, + uint16_t, uint16_t, uint32_t ) > >( eventName ); fn( *pPlayer, eventId, subEvent, param, catalogId ); } catch( ... ) @@ -314,7 +324,7 @@ bool Core::Scripting::ScriptManager::onEventHandlerTradeReturn( Core::Entity::Pl } bool Core::Scripting::ScriptManager::onEventItem( Entity::PlayerPtr pPlayer, uint32_t eventItemId, - uint32_t eventId, uint32_t castTime, uint64_t targetId ) + uint32_t eventId, uint32_t castTime, uint64_t targetId ) { std::string eventName = "onEventItem"; std::string objName = Event::getEventName( eventId ); @@ -327,7 +337,8 @@ bool Core::Scripting::ScriptManager::onEventItem( Entity::PlayerPtr pPlayer, uin pPlayer->eventStart( targetId, eventId, Event::Event::Item, 0, 0 ); - auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, uint32_t, Entity::Player&, uint32_t, uint32_t, uint64_t ) > >( eventName ); + auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, uint32_t, Entity::Player&, + uint32_t, uint32_t, uint64_t ) > >( eventName ); fn( obj, eventId, *pPlayer, eventItemId, castTime, targetId ); } catch( std::exception& e ) @@ -386,7 +397,8 @@ bool Core::Scripting::ScriptManager::onCastFinish( Entity::PlayerPtr pPlayer, En std::string objName = "skillDef_" + std::to_string( actionId ); pPlayer->sendDebug( "Calling: " + objName + "." + eventName ); - auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, Entity::Player&, Entity::Actor& ) > >( eventName ); + auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, Entity::Player&, + Entity::Actor& ) > >( eventName ); fn( obj, *pPlayer, *pTarget ); } catch( std::exception& e ) @@ -433,7 +445,8 @@ bool Core::Scripting::ScriptManager::onStatusTick( Entity::ActorPtr pActor, Core if( pActor->isPlayer() ) pActor->getAsPlayer()->sendDebug( "Calling: " + objName + "." + eventName ); - auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, Entity::Actor&, Core::StatusEffect::StatusEffect& ) > >( eventName ); + auto fn = m_pChaiHandler->eval< std::function< void( chaiscript::Boxed_Value &, Entity::Actor&, + Core::StatusEffect::StatusEffect& ) > >( eventName ); fn( obj, *pActor, effect ); } catch( std::exception& e ) From d0cb635ce371da343288b5d4c6d7d5ffccd6472e Mon Sep 17 00:00:00 2001 From: Mordred Date: Tue, 28 Nov 2017 17:29:06 +0100 Subject: [PATCH 15/29] Enforcing style rules --- .../Server_Zone/Network/GameConnection.cpp | 35 +++++++++---------- 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/src/servers/Server_Zone/Network/GameConnection.cpp b/src/servers/Server_Zone/Network/GameConnection.cpp index ebd1d0c8..563feaa0 100644 --- a/src/servers/Server_Zone/Network/GameConnection.cpp +++ b/src/servers/Server_Zone/Network/GameConnection.cpp @@ -100,10 +100,7 @@ Core::Network::GameConnection::GameConnection( Core::Network::HivePtr pHive, } -Core::Network::GameConnection::~GameConnection() -{ - -} +Core::Network::GameConnection::~GameConnection() = default; // overwrite the parents onConnect for our game socket needs @@ -127,38 +124,39 @@ void Core::Network::GameConnection::OnRecv( std::vector< uint8_t > & buffer ) // This is assumed packet always start with valid FFXIVARR_PACKET_HEADER for now. Packets::FFXIVARR_PACKET_HEADER packetHeader{}; - const auto headerResult = Packets::getHeader(buffer, 0, packetHeader); + const auto headerResult = Packets::getHeader( buffer, 0, packetHeader ); - if (headerResult == Incomplete) + if( headerResult == Incomplete ) { - g_log.info("Dropping connection due to incomplete packet header."); - g_log.info("FIXME: Packet message bounary is not implemented."); + g_log.info( "Dropping connection due to incomplete packet header." ); + g_log.info( "FIXME: Packet message bounary is not implemented." ); Disconnect(); return; } - if (headerResult == Malformed) + if( headerResult == Malformed ) { - g_log.info("Dropping connection due to malformed packet header."); + g_log.info( "Dropping connection due to malformed packet header." ); Disconnect(); return; } // Dissect packet list std::vector< Packets::FFXIVARR_PACKET_RAW > packetList; - const auto packetResult = Packets::getPackets(buffer, sizeof(struct FFXIVARR_PACKET_HEADER), packetHeader, packetList); + const auto packetResult = Packets::getPackets( buffer, sizeof( struct FFXIVARR_PACKET_HEADER ), + packetHeader, packetList ); - if (packetResult == Incomplete) + if( packetResult == Incomplete ) { - g_log.info("Dropping connection due to incomplete packets."); - g_log.info("FIXME: Packet message bounary is not implemented."); + g_log.info( "Dropping connection due to incomplete packets." ); + g_log.info( "FIXME: Packet message bounary is not implemented." ); Disconnect(); return; } if (packetResult == Malformed) { - g_log.info("Dropping connection due to malformed packets."); + g_log.info( "Dropping connection due to malformed packets." ); Disconnect(); return; } @@ -257,7 +255,7 @@ void Core::Network::GameConnection::handlePacket( Core::Network::Packets::GamePa } -void Core::Network::GameConnection::sendPackets( Packets::PacketContainer * pPacket ) +void Core::Network::GameConnection::sendPackets( Packets::PacketContainer* pPacket ) { //g_log.Log(LoggingSeverity::info, pPacket->toString()); std::vector< uint8_t > sendBuffer; @@ -304,7 +302,7 @@ void Core::Network::GameConnection::processOutQueue() } -void Core::Network::GameConnection::sendSinglePacket( Packets::GamePacket * pPacket ) +void Core::Network::GameConnection::sendSinglePacket( Packets::GamePacket* pPacket ) { PacketContainer pRP = PacketContainer(); pRP.addPacket( *pPacket ); @@ -391,7 +389,8 @@ void Core::Network::GameConnection::handlePackets( const Core::Network::Packets: } session = g_serverZone.getSession( playerId ); } - else if( !session->isValid() || ( session->getPlayer() && session->getPlayer()->getLastPing() != 0 ) ) //TODO: Catch more things in lobby and send real errors + //TODO: Catch more things in lobby and send real errors + else if( !session->isValid() || ( session->getPlayer() && session->getPlayer()->getLastPing() != 0 ) ) { g_log.error( "[" + std::string(id) + "] Session INVALID, disconnecting" ); Disconnect(); From 2a3fd0ff962fec7a5fabf6bc9f5c265505f87dc0 Mon Sep 17 00:00:00 2001 From: Mordred Date: Tue, 28 Nov 2017 17:43:00 +0100 Subject: [PATCH 16/29] Even more refactoring for cleaner code --- src/servers/Server_Zone/Action/Action.cpp | 2 +- src/servers/Server_Zone/Action/Action.h | 4 +-- src/servers/Server_Zone/Action/ActionCast.cpp | 7 ++--- src/servers/Server_Zone/Action/ActionCast.h | 2 +- .../Server_Zone/Action/ActionCollision.cpp | 5 +++- .../Server_Zone/Action/ActionCollision.h | 12 ++++++-- .../Server_Zone/Action/ActionMount.cpp | 7 +++-- src/servers/Server_Zone/Action/ActionMount.h | 2 +- .../Server_Zone/Action/ActionTeleport.cpp | 4 +-- .../Server_Zone/Action/EventItemAction.cpp | 7 ++--- .../Server_Zone/Action/EventItemAction.h | 2 +- src/servers/Server_Zone/Actor/Actor.cpp | 30 +++++++++++-------- src/servers/Server_Zone/Actor/Actor.h | 2 +- 13 files changed, 47 insertions(+), 39 deletions(-) diff --git a/src/servers/Server_Zone/Action/Action.cpp b/src/servers/Server_Zone/Action/Action.cpp index e5d60e2c..21e09e0a 100644 --- a/src/servers/Server_Zone/Action/Action.cpp +++ b/src/servers/Server_Zone/Action/Action.cpp @@ -12,7 +12,7 @@ Core::Action::Action::~Action() } -uint32_t Core::Action::Action::getId() const +uint16_t Core::Action::Action::getId() const { return m_id; } diff --git a/src/servers/Server_Zone/Action/Action.h b/src/servers/Server_Zone/Action/Action.h index c9bcff77..9e0e79b6 100644 --- a/src/servers/Server_Zone/Action/Action.h +++ b/src/servers/Server_Zone/Action/Action.h @@ -13,7 +13,7 @@ namespace Core { namespace Action { Action(); virtual ~Action(); - uint32_t getId() const; + uint16_t getId() const; Common::HandleActionType getHandleActionType() const; @@ -41,7 +41,7 @@ namespace Core { namespace Action { virtual bool update(); protected: - uint32_t m_id; + uint16_t m_id; Common::HandleActionType m_handleActionType; uint64_t m_startTime; diff --git a/src/servers/Server_Zone/Action/ActionCast.cpp b/src/servers/Server_Zone/Action/ActionCast.cpp index 00fac4bc..b9fcbcd2 100644 --- a/src/servers/Server_Zone/Action/ActionCast.cpp +++ b/src/servers/Server_Zone/Action/ActionCast.cpp @@ -26,7 +26,7 @@ Core::Action::ActionCast::ActionCast() m_handleActionType = Common::HandleActionType::Event; } -Core::Action::ActionCast::ActionCast( Entity::ActorPtr pActor, Entity::ActorPtr pTarget, uint32_t actionId ) +Core::Action::ActionCast::ActionCast( Entity::ActorPtr pActor, Entity::ActorPtr pTarget, uint16_t actionId ) { m_startTime = 0; m_id = actionId; @@ -37,10 +37,7 @@ Core::Action::ActionCast::ActionCast( Entity::ActorPtr pActor, Entity::ActorPtr m_bInterrupt = false; } -Core::Action::ActionCast::~ActionCast() -{ - -} +Core::Action::ActionCast::~ActionCast() = default; void Core::Action::ActionCast::onStart() { diff --git a/src/servers/Server_Zone/Action/ActionCast.h b/src/servers/Server_Zone/Action/ActionCast.h index 9cff002c..897ad7c1 100644 --- a/src/servers/Server_Zone/Action/ActionCast.h +++ b/src/servers/Server_Zone/Action/ActionCast.h @@ -14,7 +14,7 @@ namespace Core { namespace Action { ActionCast(); ~ActionCast(); - ActionCast( Entity::ActorPtr pActor, Entity::ActorPtr pTarget, uint32_t actionId ); + ActionCast( Entity::ActorPtr pActor, Entity::ActorPtr pTarget, uint16_t actionId ); void onStart() override; void onFinish() override; diff --git a/src/servers/Server_Zone/Action/ActionCollision.cpp b/src/servers/Server_Zone/Action/ActionCollision.cpp index a0ab372e..bfae7a60 100644 --- a/src/servers/Server_Zone/Action/ActionCollision.cpp +++ b/src/servers/Server_Zone/Action/ActionCollision.cpp @@ -50,7 +50,10 @@ bool ActionCollision::isActorApplicable( ActorPtr actorPtr, TargetFilter targetF return ( actorApplicable && actorPtr->isAlive() ); } -std::set< Core::Entity::ActorPtr > ActionCollision::getActorsHitFromAction( FFXIVARR_POSITION3 aoePosition, std::set< ActorPtr > actorsInRange, boost::shared_ptr< Core::Data::ActionInfo > actionInfo, TargetFilter targetFilter ) +std::set< Core::Entity::ActorPtr > ActionCollision::getActorsHitFromAction( FFXIVARR_POSITION3 aoePosition, + std::set< ActorPtr > actorsInRange, + boost::shared_ptr< Core::Data::ActionInfo > actionInfo, + TargetFilter targetFilter ) { std::set< ActorPtr > actorsCollided; diff --git a/src/servers/Server_Zone/Action/ActionCollision.h b/src/servers/Server_Zone/Action/ActionCollision.h index cff25934..05ec923e 100644 --- a/src/servers/Server_Zone/Action/ActionCollision.h +++ b/src/servers/Server_Zone/Action/ActionCollision.h @@ -23,11 +23,17 @@ namespace Core { public: static bool isActorApplicable( ActorPtr actorPtr, TargetFilter targetFilter ); - static std::set< ActorPtr > getActorsHitFromAction( Common::FFXIVARR_POSITION3 aoePosition, std::set< ActorPtr > actorsInRange, boost::shared_ptr< Data::ActionInfo > actionInfo, TargetFilter targetFilter ); + static std::set< ActorPtr > getActorsHitFromAction( Common::FFXIVARR_POSITION3 aoePosition, + std::set< ActorPtr > actorsInRange, + boost::shared_ptr< Data::ActionInfo > actionInfo, + TargetFilter targetFilter ); private: - static bool radiusCollision( Common::FFXIVARR_POSITION3 actorPosition, Common::FFXIVARR_POSITION3 aoePosition, uint16_t radius ); - static bool boxCollision( Common::FFXIVARR_POSITION3 actorPosition, Common::FFXIVARR_POSITION3 aoePosition, uint16_t width, uint16_t height ); + static bool radiusCollision( Common::FFXIVARR_POSITION3 actorPosition, Common::FFXIVARR_POSITION3 aoePosition, + uint16_t radius ); + + static bool boxCollision( Common::FFXIVARR_POSITION3 actorPosition, Common::FFXIVARR_POSITION3 aoePosition, + uint16_t width, uint16_t height ); }; diff --git a/src/servers/Server_Zone/Action/ActionMount.cpp b/src/servers/Server_Zone/Action/ActionMount.cpp index cf60fbe1..26c7cddd 100644 --- a/src/servers/Server_Zone/Action/ActionMount.cpp +++ b/src/servers/Server_Zone/Action/ActionMount.cpp @@ -26,7 +26,7 @@ Core::Action::ActionMount::ActionMount() m_handleActionType = Common::HandleActionType::Event; } -Core::Action::ActionMount::ActionMount( Entity::ActorPtr pActor, uint32_t mountId ) +Core::Action::ActionMount::ActionMount( Entity::ActorPtr pActor, uint16_t mountId ) { m_startTime = 0; m_id = mountId; @@ -54,7 +54,8 @@ void Core::Action::ActionMount::onStart() castPacket.data().action_id = m_id; castPacket.data().skillType = Common::SkillType::MountSkill; castPacket.data().unknown_1 = m_id; - castPacket.data().cast_time = static_cast< float >( m_castTime / 1000 ); // This is used for the cast bar above the target bar of the caster. + // This is used for the cast bar above the target bar of the caster. + castPacket.data().cast_time = static_cast< float >( m_castTime / 1000 ); castPacket.data().target_id = m_pSource->getAsPlayer()->getId(); m_pSource->sendToInRangeSet( castPacket, true ); @@ -101,7 +102,7 @@ void Core::Action::ActionMount::onInterrupt() m_pSource->getAsPlayer()->sendStateFlags(); auto control = ActorControlPacket142( m_pSource->getId(), ActorControlType::CastInterrupt, - 0x219, 1, m_id, 0 ); + 0x219, 1, m_id, 0 ); // Note: When cast interrupt from taking too much damage, set the last value to 1. This enables the cast interrupt effect. Example: // auto control = ActorControlPacket142( m_pSource->getId(), ActorControlType::CastInterrupt, 0x219, 1, m_id, 0 ); diff --git a/src/servers/Server_Zone/Action/ActionMount.h b/src/servers/Server_Zone/Action/ActionMount.h index cdd68e3d..6c970869 100644 --- a/src/servers/Server_Zone/Action/ActionMount.h +++ b/src/servers/Server_Zone/Action/ActionMount.h @@ -14,7 +14,7 @@ namespace Core { namespace Action { ActionMount(); ~ActionMount(); - ActionMount( Entity::ActorPtr pActor, uint32_t mountId ); + ActionMount( Entity::ActorPtr pActor, uint16_t mountId ); void onStart() override; void onFinish() override; diff --git a/src/servers/Server_Zone/Action/ActionTeleport.cpp b/src/servers/Server_Zone/Action/ActionTeleport.cpp index 282065e0..37ebbfbd 100644 --- a/src/servers/Server_Zone/Action/ActionTeleport.cpp +++ b/src/servers/Server_Zone/Action/ActionTeleport.cpp @@ -90,7 +90,7 @@ void Core::Action::ActionTeleport::onFinish() effectPacket.data().actionTextId = 5; effectPacket.data().unknown_5 = 1; effectPacket.data().numEffects = 1; - effectPacket.data().rotation = static_cast< uint16_t >( 0x8000 * ((pPlayer->getRotation() + 3.1415926)) / 3.1415926 ); + effectPacket.data().rotation = static_cast< uint16_t >( 0x8000 * ( (pPlayer->getRotation() + 3.1415926) ) / 3.1415926 ); effectPacket.data().effectTarget = pPlayer->getId(); pPlayer->sendToInRangeSet( effectPacket, true ); @@ -108,7 +108,7 @@ void Core::Action::ActionTeleport::onInterrupt() m_pSource->getAsPlayer()->sendStateFlags(); auto control = ActorControlPacket142( m_pSource->getId(), ActorControlType::CastInterrupt, - 0x219, 0x04, m_id, 0 ); + 0x219, 0x04, m_id, 0 ); m_pSource->sendToInRangeSet( control, true ); } diff --git a/src/servers/Server_Zone/Action/EventItemAction.cpp b/src/servers/Server_Zone/Action/EventItemAction.cpp index f309ee20..567f689c 100644 --- a/src/servers/Server_Zone/Action/EventItemAction.cpp +++ b/src/servers/Server_Zone/Action/EventItemAction.cpp @@ -22,7 +22,7 @@ Core::Action::EventItemAction::EventItemAction() m_handleActionType = Common::HandleActionType::Event; } -Core::Action::EventItemAction::EventItemAction( Entity::ActorPtr pActor, uint32_t eventId, uint32_t action, +Core::Action::EventItemAction::EventItemAction( Entity::ActorPtr pActor, uint32_t eventId, uint16_t action, ActionCallback finishRef, ActionCallback interruptRef, uint64_t additional ) { m_additional = additional; @@ -37,10 +37,7 @@ Core::Action::EventItemAction::EventItemAction( Entity::ActorPtr pActor, uint32_ m_bInterrupt = false; } -Core::Action::EventItemAction::~EventItemAction() -{ - -} +Core::Action::EventItemAction::~EventItemAction() = default; void Core::Action::EventItemAction::onStart() { diff --git a/src/servers/Server_Zone/Action/EventItemAction.h b/src/servers/Server_Zone/Action/EventItemAction.h index c3c92b50..71bc5e89 100644 --- a/src/servers/Server_Zone/Action/EventItemAction.h +++ b/src/servers/Server_Zone/Action/EventItemAction.h @@ -13,7 +13,7 @@ namespace Core { namespace Action { EventItemAction(); ~EventItemAction(); - EventItemAction( Entity::ActorPtr pActor, uint32_t eventId, uint32_t action, + EventItemAction( Entity::ActorPtr pActor, uint32_t eventId, uint16_t action, ActionCallback finishRef, ActionCallback interruptRef, uint64_t additional ); void onStart() override; diff --git a/src/servers/Server_Zone/Actor/Actor.cpp b/src/servers/Server_Zone/Actor/Actor.cpp index 8869cfda..a137618c 100644 --- a/src/servers/Server_Zone/Actor/Actor.cpp +++ b/src/servers/Server_Zone/Actor/Actor.cpp @@ -210,7 +210,6 @@ void Core::Entity::Actor::setInvincibilityType( Common::InvincibilityType type ) m_invincibilityType = type; } - /*! \return current status of the actor */ Core::Entity::Actor::ActorStatus Core::Entity::Actor::getStatus() const { @@ -450,7 +449,7 @@ Core::Entity::ActorPtr Core::Entity::Actor::getClosestActor() // arbitrary high number float minDistance = 10000; - for( auto pCurAct : m_inRangeActors ) + for( const auto& pCurAct : m_inRangeActors ) { float distance = Math::Util::distance( getPos().x, getPos().y, @@ -492,11 +491,11 @@ void Core::Entity::Actor::sendToInRangeSet( Network::Packets::GamePacketPtr pPac if( m_inRangePlayers.empty() ) return; - for( auto pCurAct : m_inRangePlayers ) + for( const auto &pCurAct : m_inRangePlayers ) { assert( pCurAct ); - pPacket->setValAt( 0x04, m_id ); - pPacket->setValAt( 0x08, pCurAct->m_id ); + pPacket->setValAt< uint32_t >( 0x04, m_id ); + pPacket->setValAt< uint32_t >( 0x08, pCurAct->m_id ); // it might be that the player DC'd in which case the session would be invalid pCurAct->queuePacket( pPacket ); } @@ -625,8 +624,8 @@ void Core::Entity::Actor::autoAttack( ActorPtr pTarget ) m_lastAttack = tick; srand( static_cast< uint32_t >( tick ) ); - uint32_t damage = 10 + rand() % 12; - uint32_t variation = 0 + rand() % 4; + uint16_t damage = static_cast< uint16_t >( 10 + rand() % 12 ); + uint32_t variation = static_cast< uint32_t >( 0 + rand() % 4 ); ZoneChannelPacket< FFXIVIpcEffect > effectPacket( getId() ); effectPacket.data().targetId = pTarget->getId(); @@ -657,7 +656,8 @@ ChaiScript Skill Handler. \param GamePacketPtr to send \param bool should be send to self? */ -void Core::Entity::Actor::handleScriptSkill( uint32_t type, uint32_t actionId, uint64_t param1, uint64_t param2, Entity::Actor& pTarget ) +void Core::Entity::Actor::handleScriptSkill( uint32_t type, uint16_t actionId, uint64_t param1, + uint64_t param2, Entity::Actor& pTarget ) { if ( isPlayer() ) @@ -709,14 +709,16 @@ void Core::Entity::Actor::handleScriptSkill( uint32_t type, uint32_t actionId, u else { - std::set< ActorPtr > actorsCollided = ActionCollision::getActorsHitFromAction( pTarget.getPos(), getInRangeActors( true ), actionInfoPtr, TargetFilter::Enemies ); + auto actorsCollided = ActionCollision::getActorsHitFromAction( pTarget.getPos(), getInRangeActors( true ), + actionInfoPtr, TargetFilter::Enemies ); - for ( auto pHitActor : actorsCollided ) + for ( const auto& pHitActor : actorsCollided ) { effectPacket.data().targetId = pHitActor->getId(); effectPacket.data().effectTarget = pHitActor->getId(); - sendToInRangeSet( effectPacket, true ); // todo: send to range of what? ourselves? when mob script hits this is going to be lacking + // todo: send to range of what? ourselves? when mob script hits this is going to be lacking + sendToInRangeSet( effectPacket, true ); pHitActor->takeDamage( static_cast< uint32_t >( param1 ) ); @@ -756,9 +758,11 @@ void Core::Entity::Actor::handleScriptSkill( uint32_t type, uint32_t actionId, u } else { - // todo: get proper packets: the following was just kind of thrown together from what we know. atm buggy (packets look "delayed" from client) + // todo: get proper packets: the following was just kind of thrown together from what we know. + // atm buggy (packets look "delayed" from client) - std::set< ActorPtr > actorsCollided = ActionCollision::getActorsHitFromAction( pTarget.getPos(), getInRangeActors( true ), actionInfoPtr, TargetFilter::Allies ); + auto actorsCollided = ActionCollision::getActorsHitFromAction( pTarget.getPos(), getInRangeActors( true ), + actionInfoPtr, TargetFilter::Allies ); for ( auto pHitActor : actorsCollided ) { diff --git a/src/servers/Server_Zone/Actor/Actor.h b/src/servers/Server_Zone/Actor/Actor.h index 9378d67c..83baaf39 100644 --- a/src/servers/Server_Zone/Actor/Actor.h +++ b/src/servers/Server_Zone/Actor/Actor.h @@ -249,7 +249,7 @@ public: void setStatus( ActorStatus status ); - void handleScriptSkill( uint32_t type, uint32_t actionId, uint64_t param1, uint64_t param2, Entity::Actor& target ); + void handleScriptSkill( uint32_t type, uint16_t actionId, uint64_t param1, uint64_t param2, Entity::Actor& target ); virtual void autoAttack( ActorPtr pTarget ); From 345aa4deb13bb51603fb68e5279ec6fe110b872a Mon Sep 17 00:00:00 2001 From: Ay'yaruq Dotharl Date: Fri, 1 Dec 2017 01:02:01 +1100 Subject: [PATCH 17/29] Add VS2017 generator definitions --- CMakeSettings.json | 56 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/CMakeSettings.json b/CMakeSettings.json index 33a965bf..90e895cd 100644 --- a/CMakeSettings.json +++ b/CMakeSettings.json @@ -56,6 +56,62 @@ "value": "-vc140" } ] + }, + { + "name": "x86-Debug", + "generator": "Visual Studio 15 2017", + "configurationType": "Debug", + "buildRoot": "${env.USERPROFILE}\\CMakeBuild\\${workspaceHash}\\build\\${name}", + "cmakeCommandArgs": "-DCMAKE_BUILD_TYPE=\"Debug\"", + "buildCommandArgs": "-m -v:minimal", + "variables": [ + { + "name": "Boost_COMPILER", + "value": "-vc141" + } + ] + }, + { + "name": "x86-Release", + "generator": "Visual Studio 15 2017", + "configurationType": "Release", + "buildRoot": "${env.USERPROFILE}\\CMakeBuild\\${workspaceHash}\\build\\${name}", + "cmakeCommandArgs": "", + "buildCommandArgs": "-m -v:minimal", + "variables": [ + { + "name": "Boost_COMPILER", + "value": "-vc141" + } + ] + }, + { + "name": "x64-Debug", + "generator": "Visual Studio 15 2017 Win64", + "configurationType": "Debug", + "buildRoot": "${env.USERPROFILE}\\CMakeBuild\\${workspaceHash}\\build\\${name}", + "cmakeCommandArgs": "-DCMAKE_BUILD_TYPE=\"Debug\"", + "buildCommandArgs": "-m -v:minimal", + "variables": [ + { + "name": "Boost_COMPILER", + "value": "-vc141" + } + ] + }, + { + "name": "x64-Release", + "generator": "Visual Studio 15 2017 Win64", + "configurationType": "Release", + "buildRoot": "${env.USERPROFILE}\\CMakeBuild\\${workspaceHash}\\build\\${name}", + "cmakeCommandArgs": "", + "buildCommandArgs": "-m -v:minimal", + "variables": [ + { + "name": "Boost_COMPILER", + "value": "-vc141" + } + ] } ] } From 6b4cc97f4d8ba9a93af60d9dfeac8acbad5a29c2 Mon Sep 17 00:00:00 2001 From: Mordred Date: Thu, 30 Nov 2017 23:41:27 +0100 Subject: [PATCH 18/29] Greatly improved exd struct gen and also updated struct test --- src/servers/Server_REST/Session.cpp | 4 +- src/servers/Server_REST/Session.h | 4 +- src/tools/exd_struct_gen/ExdData.cpp.tmpl | 12 + src/tools/exd_struct_gen/ExdData.h.tmpl | 7 + src/tools/exd_struct_gen/ex.json | 96 +- src/tools/exd_struct_gen/main.cpp | 31 +- .../exd_struct_test/ExdDataGenerated.cpp | 1535 +++++++++- src/tools/exd_struct_test/ExdDataGenerated.h | 2727 ++++++++++++++++- src/tools/exd_struct_test/main.cpp | 17 +- 9 files changed, 4408 insertions(+), 25 deletions(-) diff --git a/src/servers/Server_REST/Session.cpp b/src/servers/Server_REST/Session.cpp index 6cd54ff3..e9b876dd 100644 --- a/src/servers/Server_REST/Session.cpp +++ b/src/servers/Server_REST/Session.cpp @@ -1,11 +1,11 @@ #include "Session.h" namespace Core { - Session::Session( void ) + Session::Session() { } - Session::~Session( void ) + Session::~Session() { } diff --git a/src/servers/Server_REST/Session.h b/src/servers/Server_REST/Session.h index a2b98116..46a39289 100644 --- a/src/servers/Server_REST/Session.h +++ b/src/servers/Server_REST/Session.h @@ -20,8 +20,8 @@ namespace Core { std::string newCharName; - Session( void ); - ~Session( void ); + Session(); + ~Session(); uint32_t getIp() const; diff --git a/src/tools/exd_struct_gen/ExdData.cpp.tmpl b/src/tools/exd_struct_gen/ExdData.cpp.tmpl index 30496879..f63e8ce0 100644 --- a/src/tools/exd_struct_gen/ExdData.cpp.tmpl +++ b/src/tools/exd_struct_gen/ExdData.cpp.tmpl @@ -20,6 +20,18 @@ xiv::exd::Exd Core::Data::ExdDataGenerated::setupDatAccess( const std::string& n return static_cast< xiv::exd::Exd >( cat.get_data_ln( lang ) ); }; + +void Core::Data::ExdDataGenerated::loadIdList( xiv::exd::Exd& data, std::set< uint32_t >& outIdList ) +{ + auto pDataRows = data.get_rows(); + + for( auto row : pDataRows ) + { + uint32_t id = row.first; + outIdList.insert( id ); + } +} + bool Core::Data::ExdDataGenerated::init( const std::string& path ) { try diff --git a/src/tools/exd_struct_gen/ExdData.h.tmpl b/src/tools/exd_struct_gen/ExdData.h.tmpl index c1758c2e..486d04a6 100644 --- a/src/tools/exd_struct_gen/ExdData.h.tmpl +++ b/src/tools/exd_struct_gen/ExdData.h.tmpl @@ -10,6 +10,7 @@ #include #include #include +#include namespace Core { namespace Data { @@ -36,6 +37,8 @@ STRUCTS return *boost::get< T >( &fields.at( index ) ); } + void loadIdList( xiv::exd::Exd& data, std::set< uint32_t >& outIdList ); + boost::shared_ptr< xiv::dat::GameData > m_data; boost::shared_ptr< xiv::exd::ExdData > m_exd_data; @@ -43,6 +46,10 @@ DATACCESS DIRECTGETTERS +IDLISTS + +IDLISTGETTERS + }; } diff --git a/src/tools/exd_struct_gen/ex.json b/src/tools/exd_struct_gen/ex.json index 51670dd1..e8707623 100644 --- a/src/tools/exd_struct_gen/ex.json +++ b/src/tools/exd_struct_gen/ex.json @@ -1,5 +1,5 @@ { - "version": "2017.10.05.0000.0000", + "version": "2017.11.15.0000.0000", "sheets": [ { "sheet": "Achievement", @@ -189,7 +189,7 @@ "index": 30, "name": "Cost{Type}" }, - { + { "index": 31, "name": "Cost" }, @@ -2868,7 +2868,7 @@ }, { "sheet": "DeepDungeonItem", - "defaultcolumn": "Name", + "defaultColumn": "Name", "definitions": [ { "name": "Icon", @@ -2877,7 +2877,7 @@ } }, { - "index": 2, + "index": 1, "name": "Singular" }, { @@ -3476,6 +3476,42 @@ } ] }, + { + "sheet": "EquipRaceCategory", + "definitions": [ + { + "name": "Hyur" + }, + { + "index": 1, + "name": "Elezen" + }, + { + "index": 2, + "name": "Lalafell" + }, + { + "index": 3, + "name": "Miqo'te" + }, + { + "index": 4, + "name": "Roegadyn" + }, + { + "index": 5, + "name": "Au Ra" + }, + { + "index": 6, + "name": "Male" + }, + { + "index": 7, + "name": "Female" + } + ] + }, { "sheet": "EquipSlotCategory", "definitions": [ @@ -4500,6 +4536,26 @@ } ] }, + { + "sheet": "GCScripShopCategory", + "definitions": [ + { + "name": "GrandCompany", + "converter": { + "type": "link", + "target": "GrandCompany" + } + }, + { + "index": 1, + "name": "Tier" + }, + { + "index": 2, + "name": "SubCategory" + } + ] + }, { "sheet": "GCScripShopItem", "defaultColumn": "Item", @@ -4513,11 +4569,19 @@ }, { "index": 1, - "name": "Required{Rank}" + "name": "Required{GrandCompanyRank}", + "converter": { + "type": "link", + "target": "GrandCompanyRank" + } }, { "index": 2, "name": "Cost{GCSeals}" + }, + { + "index": 3, + "name": "SortKey" } ] }, @@ -6211,6 +6275,26 @@ } ] }, + { + "sheet": "MasterpieceSupplyMultiplier", + "definitions": [ + { + "type": "repeat", + "count": 2, + "definition": { + "name": "XpMultiplier" + } + }, + { + "index": 4, + "type": "repeat", + "count": 2, + "definition": { + "name": "CurrencyMultiplier" + } + } + ] + }, { "sheet": "Materia", "defaultColumn": "Item[0]", @@ -7935,7 +8019,7 @@ ] }, { - "sheet": "Salvage", + "sheet": "Salvage", "defaultColumn": "OptimalSkill", "definitions": [ { diff --git a/src/tools/exd_struct_gen/main.cpp b/src/tools/exd_struct_gen/main.cpp index 507c7329..5c90f29a 100644 --- a/src/tools/exd_struct_gen/main.cpp +++ b/src/tools/exd_struct_gen/main.cpp @@ -31,8 +31,8 @@ Core::Logger g_log; Core::Data::ExdData g_exdData; bool skipUnmapped = true; -const std::string datLocation( "/opt/sapphire_3_15_0/bin/sqpack" ); -//const std::string datLocation( "C:\\SquareEnix\\FINAL FANTASY XIV - A Realm Reborn\\game\\sqpack\\ffxiv" ); +//const std::string datLocation( "/opt/sapphire_3_15_0/bin/sqpack" ); +const std::string datLocation( "C:\\SquareEnix\\FINAL FANTASY XIV - A Realm Reborn\\game\\sqpack\\ffxiv" ); std::map< uint8_t, std::string > g_typeMap; @@ -41,9 +41,25 @@ std::string generateDatAccessDecl( const std::string &exd ) return " xiv::exd::Exd m_" + exd + "Dat;\n"; } +std::string generateIdListDecl( const std::string &exd ) +{ + return " std::set< uint32_t > m_" + exd + "IdList;\n"; +} + std::string generateDirectGetters( const std::string& exd ) { - return " boost::shared_ptr< " + exd + " > get" + exd + "( uint32_t " + exd + "Id );"; + return " boost::shared_ptr< " + exd + " > get" + exd + "( uint32_t " + exd + "Id );\n"; +} + +std::string generateIdListGetter( const std::string &exd ) +{ + std::string IdListGetter = "const std::set< uint32_t >& Core::Data::ExdDataGenerated::get" + exd + "IdList()\n" + "{\n" + " if( m_" + exd + "IdList.size() == 0 )\n" + " loadIdList( m_" + exd + "Dat, m_" + exd + "IdList );\n" + " return m_" + exd + "IdList;\n" + "}\n"; + return IdListGetter; } std::string generateSetDatAccessCall( const std::string &exd ) @@ -288,14 +304,18 @@ int main() g_log.fatal( "Error setting up EXD data " ); return 0; } + g_log.info( "Generating structs, this may take several minutes..." ); + g_log.info( "Go grab a coffee..." ); std::string structDefs; + std::string idListsDecl; std::string dataDecl; std::string getterDecl; std::string datAccCall; std::string getterDef; std::string constructorDecl; std::string forwards; + std::string idListGetters; //BOOST_FOREACH( boost::property_tree::ptree::value_type &sheet, m_propTree.get_child( "sheets" ) ) //{ @@ -310,10 +330,12 @@ int main() forwards += "struct " + name +";\n"; structDefs += generateStruct( name ); dataDecl += generateDatAccessDecl( name ); + idListsDecl += generateIdListDecl( name ); getterDecl += generateDirectGetters( name ); datAccCall += generateSetDatAccessCall( name ); getterDef += generateDirectGetterDef( name ); constructorDecl += generateConstructorsDecl( name ); + idListGetters += generateIdListGetter( name ); } // for all sheets in the json i guess.... @@ -322,7 +344,10 @@ int main() result = std::regex_replace( exdH, std::regex( "\\FORWARDS" ), forwards ); result = std::regex_replace( result, std::regex( "\\STRUCTS" ), structDefs ); result = std::regex_replace( result, std::regex( "\\DATACCESS" ), dataDecl ); + result = std::regex_replace( result, std::regex( "\\IDLISTS" ), idListsDecl ); result = std::regex_replace( result, std::regex( "\\DIRECTGETTERS" ), getterDecl ); + result = std::regex_replace( result, std::regex( "\\IDLISTGETTERS" ), idListGetters ); + // g_log.info( result ); diff --git a/src/tools/exd_struct_test/ExdDataGenerated.cpp b/src/tools/exd_struct_test/ExdDataGenerated.cpp index 0cdfe81f..f8d711b8 100644 --- a/src/tools/exd_struct_test/ExdDataGenerated.cpp +++ b/src/tools/exd_struct_test/ExdDataGenerated.cpp @@ -16,6 +16,15 @@ item = exdData->getField< uint32_t >( row, 5 ); icon = exdData->getField< uint16_t >( row, 6 ); type = exdData->getField< uint8_t >( row, 8 ); + data.push_back( exdData->getField< int32_t >( row, 9 ) ); + data.push_back( exdData->getField< int32_t >( row, 10 ) ); + data.push_back( exdData->getField< int32_t >( row, 11 ) ); + data.push_back( exdData->getField< int32_t >( row, 12 ) ); + data.push_back( exdData->getField< int32_t >( row, 13 ) ); + data.push_back( exdData->getField< int32_t >( row, 14 ) ); + data.push_back( exdData->getField< int32_t >( row, 15 ) ); + data.push_back( exdData->getField< int32_t >( row, 16 ) ); + data.push_back( exdData->getField< int32_t >( row, 17 ) ); order = exdData->getField< uint16_t >( row, 18 ); } @@ -81,6 +90,10 @@ { auto row = exdData->m_ActionComboRouteDat.get_row( row_id ); name = exdData->getField< std::string >( row, 0 ); + action.push_back( exdData->getField< uint16_t >( row, 2 ) ); + action.push_back( exdData->getField< uint16_t >( row, 3 ) ); + action.push_back( exdData->getField< uint16_t >( row, 4 ) ); + action.push_back( exdData->getField< uint16_t >( row, 5 ) ); } Core::Data::ActionIndirection::ActionIndirection( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -214,6 +227,11 @@ auto row = exdData->m_AnimaWeapon5Dat.get_row( row_id ); item = exdData->getField< int32_t >( row, 0 ); secondaryStatTotal = exdData->getField< uint8_t >( row, 2 ); + parameter.push_back( exdData->getField< uint8_t >( row, 3 ) ); + parameter.push_back( exdData->getField< uint8_t >( row, 4 ) ); + parameter.push_back( exdData->getField< uint8_t >( row, 5 ) ); + parameter.push_back( exdData->getField< uint8_t >( row, 6 ) ); + parameter.push_back( exdData->getField< uint8_t >( row, 7 ) ); } Core::Data::AnimaWeapon5Param::AnimaWeapon5Param( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -276,6 +294,20 @@ Core::Data::AnimaWeaponItem::AnimaWeaponItem( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_AnimaWeaponItemDat.get_row( row_id ); + item.push_back( exdData->getField< uint32_t >( row, 0 ) ); + item.push_back( exdData->getField< uint32_t >( row, 1 ) ); + item.push_back( exdData->getField< uint32_t >( row, 2 ) ); + item.push_back( exdData->getField< uint32_t >( row, 3 ) ); + item.push_back( exdData->getField< uint32_t >( row, 4 ) ); + item.push_back( exdData->getField< uint32_t >( row, 5 ) ); + item.push_back( exdData->getField< uint32_t >( row, 6 ) ); + item.push_back( exdData->getField< uint32_t >( row, 7 ) ); + item.push_back( exdData->getField< uint32_t >( row, 8 ) ); + item.push_back( exdData->getField< uint32_t >( row, 9 ) ); + item.push_back( exdData->getField< uint32_t >( row, 10 ) ); + item.push_back( exdData->getField< uint32_t >( row, 11 ) ); + item.push_back( exdData->getField< uint32_t >( row, 12 ) ); + item.push_back( exdData->getField< uint32_t >( row, 13 ) ); } Core::Data::AquariumFish::AquariumFish( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -314,12 +346,60 @@ Core::Data::BattleLeve::BattleLeve( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_BattleLeveDat.get_row( row_id ); + enemyLevel.push_back( exdData->getField< uint16_t >( row, 16 ) ); + enemyLevel.push_back( exdData->getField< uint16_t >( row, 17 ) ); + enemyLevel.push_back( exdData->getField< uint16_t >( row, 18 ) ); + enemyLevel.push_back( exdData->getField< uint16_t >( row, 19 ) ); + enemyLevel.push_back( exdData->getField< uint16_t >( row, 20 ) ); + enemyLevel.push_back( exdData->getField< uint16_t >( row, 21 ) ); + enemyLevel.push_back( exdData->getField< uint16_t >( row, 22 ) ); + enemyLevel.push_back( exdData->getField< uint16_t >( row, 23 ) ); + bNpcName.push_back( exdData->getField< uint32_t >( row, 24 ) ); + bNpcName.push_back( exdData->getField< uint32_t >( row, 25 ) ); + bNpcName.push_back( exdData->getField< uint32_t >( row, 26 ) ); + bNpcName.push_back( exdData->getField< uint32_t >( row, 27 ) ); + bNpcName.push_back( exdData->getField< uint32_t >( row, 28 ) ); + bNpcName.push_back( exdData->getField< uint32_t >( row, 29 ) ); + bNpcName.push_back( exdData->getField< uint32_t >( row, 30 ) ); + bNpcName.push_back( exdData->getField< uint32_t >( row, 31 ) ); + itemsInvolved.push_back( exdData->getField< int32_t >( row, 32 ) ); + itemsInvolved.push_back( exdData->getField< int32_t >( row, 33 ) ); + itemsInvolved.push_back( exdData->getField< int32_t >( row, 34 ) ); + itemsInvolved.push_back( exdData->getField< int32_t >( row, 35 ) ); + itemsInvolved.push_back( exdData->getField< int32_t >( row, 36 ) ); + itemsInvolved.push_back( exdData->getField< int32_t >( row, 37 ) ); + itemsInvolved.push_back( exdData->getField< int32_t >( row, 38 ) ); + itemsInvolved.push_back( exdData->getField< int32_t >( row, 39 ) ); + itemsInvolvedQty.push_back( exdData->getField< uint8_t >( row, 40 ) ); + itemsInvolvedQty.push_back( exdData->getField< uint8_t >( row, 41 ) ); + itemsInvolvedQty.push_back( exdData->getField< uint8_t >( row, 42 ) ); + itemsInvolvedQty.push_back( exdData->getField< uint8_t >( row, 43 ) ); + itemsInvolvedQty.push_back( exdData->getField< uint8_t >( row, 44 ) ); + itemsInvolvedQty.push_back( exdData->getField< uint8_t >( row, 45 ) ); + itemsInvolvedQty.push_back( exdData->getField< uint8_t >( row, 46 ) ); + itemsInvolvedQty.push_back( exdData->getField< uint8_t >( row, 47 ) ); + itemDropRate.push_back( exdData->getField< uint8_t >( row, 48 ) ); + itemDropRate.push_back( exdData->getField< uint8_t >( row, 49 ) ); + itemDropRate.push_back( exdData->getField< uint8_t >( row, 50 ) ); + itemDropRate.push_back( exdData->getField< uint8_t >( row, 51 ) ); + itemDropRate.push_back( exdData->getField< uint8_t >( row, 52 ) ); + itemDropRate.push_back( exdData->getField< uint8_t >( row, 53 ) ); + itemDropRate.push_back( exdData->getField< uint8_t >( row, 54 ) ); + itemDropRate.push_back( exdData->getField< uint8_t >( row, 55 ) ); } Core::Data::BeastRankBonus::BeastRankBonus( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_BeastRankBonusDat.get_row( row_id ); item = exdData->getField< uint32_t >( row, 8 ); + itemQuantity.push_back( exdData->getField< uint8_t >( row, 9 ) ); + itemQuantity.push_back( exdData->getField< uint8_t >( row, 10 ) ); + itemQuantity.push_back( exdData->getField< uint8_t >( row, 11 ) ); + itemQuantity.push_back( exdData->getField< uint8_t >( row, 12 ) ); + itemQuantity.push_back( exdData->getField< uint8_t >( row, 13 ) ); + itemQuantity.push_back( exdData->getField< uint8_t >( row, 14 ) ); + itemQuantity.push_back( exdData->getField< uint8_t >( row, 15 ) ); + itemQuantity.push_back( exdData->getField< uint8_t >( row, 16 ) ); } Core::Data::BeastReputationRank::BeastReputationRank( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -466,6 +546,70 @@ Core::Data::Calendar::Calendar( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_CalendarDat.get_row( row_id ); + month.push_back( exdData->getField< uint8_t >( row, 0 ) ); + month.push_back( exdData->getField< uint8_t >( row, 1 ) ); + month.push_back( exdData->getField< uint8_t >( row, 2 ) ); + month.push_back( exdData->getField< uint8_t >( row, 3 ) ); + month.push_back( exdData->getField< uint8_t >( row, 4 ) ); + month.push_back( exdData->getField< uint8_t >( row, 5 ) ); + month.push_back( exdData->getField< uint8_t >( row, 6 ) ); + month.push_back( exdData->getField< uint8_t >( row, 7 ) ); + month.push_back( exdData->getField< uint8_t >( row, 8 ) ); + month.push_back( exdData->getField< uint8_t >( row, 9 ) ); + month.push_back( exdData->getField< uint8_t >( row, 10 ) ); + month.push_back( exdData->getField< uint8_t >( row, 11 ) ); + month.push_back( exdData->getField< uint8_t >( row, 12 ) ); + month.push_back( exdData->getField< uint8_t >( row, 13 ) ); + month.push_back( exdData->getField< uint8_t >( row, 14 ) ); + month.push_back( exdData->getField< uint8_t >( row, 15 ) ); + month.push_back( exdData->getField< uint8_t >( row, 16 ) ); + month.push_back( exdData->getField< uint8_t >( row, 17 ) ); + month.push_back( exdData->getField< uint8_t >( row, 18 ) ); + month.push_back( exdData->getField< uint8_t >( row, 19 ) ); + month.push_back( exdData->getField< uint8_t >( row, 20 ) ); + month.push_back( exdData->getField< uint8_t >( row, 21 ) ); + month.push_back( exdData->getField< uint8_t >( row, 22 ) ); + month.push_back( exdData->getField< uint8_t >( row, 23 ) ); + month.push_back( exdData->getField< uint8_t >( row, 24 ) ); + month.push_back( exdData->getField< uint8_t >( row, 25 ) ); + month.push_back( exdData->getField< uint8_t >( row, 26 ) ); + month.push_back( exdData->getField< uint8_t >( row, 27 ) ); + month.push_back( exdData->getField< uint8_t >( row, 28 ) ); + month.push_back( exdData->getField< uint8_t >( row, 29 ) ); + month.push_back( exdData->getField< uint8_t >( row, 30 ) ); + month.push_back( exdData->getField< uint8_t >( row, 31 ) ); + day.push_back( exdData->getField< uint8_t >( row, 32 ) ); + day.push_back( exdData->getField< uint8_t >( row, 33 ) ); + day.push_back( exdData->getField< uint8_t >( row, 34 ) ); + day.push_back( exdData->getField< uint8_t >( row, 35 ) ); + day.push_back( exdData->getField< uint8_t >( row, 36 ) ); + day.push_back( exdData->getField< uint8_t >( row, 37 ) ); + day.push_back( exdData->getField< uint8_t >( row, 38 ) ); + day.push_back( exdData->getField< uint8_t >( row, 39 ) ); + day.push_back( exdData->getField< uint8_t >( row, 40 ) ); + day.push_back( exdData->getField< uint8_t >( row, 41 ) ); + day.push_back( exdData->getField< uint8_t >( row, 42 ) ); + day.push_back( exdData->getField< uint8_t >( row, 43 ) ); + day.push_back( exdData->getField< uint8_t >( row, 44 ) ); + day.push_back( exdData->getField< uint8_t >( row, 45 ) ); + day.push_back( exdData->getField< uint8_t >( row, 46 ) ); + day.push_back( exdData->getField< uint8_t >( row, 47 ) ); + day.push_back( exdData->getField< uint8_t >( row, 48 ) ); + day.push_back( exdData->getField< uint8_t >( row, 49 ) ); + day.push_back( exdData->getField< uint8_t >( row, 50 ) ); + day.push_back( exdData->getField< uint8_t >( row, 51 ) ); + day.push_back( exdData->getField< uint8_t >( row, 52 ) ); + day.push_back( exdData->getField< uint8_t >( row, 53 ) ); + day.push_back( exdData->getField< uint8_t >( row, 54 ) ); + day.push_back( exdData->getField< uint8_t >( row, 55 ) ); + day.push_back( exdData->getField< uint8_t >( row, 56 ) ); + day.push_back( exdData->getField< uint8_t >( row, 57 ) ); + day.push_back( exdData->getField< uint8_t >( row, 58 ) ); + day.push_back( exdData->getField< uint8_t >( row, 59 ) ); + day.push_back( exdData->getField< uint8_t >( row, 60 ) ); + day.push_back( exdData->getField< uint8_t >( row, 61 ) ); + day.push_back( exdData->getField< uint8_t >( row, 62 ) ); + day.push_back( exdData->getField< uint8_t >( row, 63 ) ); } Core::Data::ChainBonus::ChainBonus( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -488,6 +632,48 @@ race = exdData->getField< int32_t >( row, 0 ); tribe = exdData->getField< int32_t >( row, 1 ); gender = exdData->getField< int8_t >( row, 2 ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2283 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2284 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2285 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2286 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2287 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2288 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2289 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2290 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2291 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2292 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2293 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2294 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2295 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2296 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2297 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2298 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2299 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2300 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2301 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2302 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2303 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2304 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2305 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2306 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2307 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2308 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2309 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2310 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2311 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2312 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2313 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2314 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2315 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2316 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2317 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2318 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2319 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2320 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2321 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2322 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2323 ) ); + facialFeatureIcon.push_back( exdData->getField< int32_t >( row, 2324 ) ); } Core::Data::ChocoboRace::ChocoboRace( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -688,6 +874,9 @@ { auto row = exdData->m_CompanyCraftPartDat.get_row( row_id ); companyCraftType = exdData->getField< uint8_t >( row, 1 ); + companyCraftProcess.push_back( exdData->getField< uint16_t >( row, 2 ) ); + companyCraftProcess.push_back( exdData->getField< uint16_t >( row, 3 ) ); + companyCraftProcess.push_back( exdData->getField< uint16_t >( row, 4 ) ); } Core::Data::CompanyCraftProcess::CompanyCraftProcess( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -702,6 +891,14 @@ companyCraftDraftCategory = exdData->getField< int32_t >( row, 2 ); companyCraftType = exdData->getField< int32_t >( row, 3 ); companyCraftDraft = exdData->getField< int32_t >( row, 4 ); + companyCraftPart.push_back( exdData->getField< uint16_t >( row, 5 ) ); + companyCraftPart.push_back( exdData->getField< uint16_t >( row, 6 ) ); + companyCraftPart.push_back( exdData->getField< uint16_t >( row, 7 ) ); + companyCraftPart.push_back( exdData->getField< uint16_t >( row, 8 ) ); + companyCraftPart.push_back( exdData->getField< uint16_t >( row, 9 ) ); + companyCraftPart.push_back( exdData->getField< uint16_t >( row, 10 ) ); + companyCraftPart.push_back( exdData->getField< uint16_t >( row, 11 ) ); + companyCraftPart.push_back( exdData->getField< uint16_t >( row, 12 ) ); } Core::Data::CompanyCraftSupplyItem::CompanyCraftSupplyItem( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -720,6 +917,30 @@ { auto row = exdData->m_CompleteJournalDat.get_row( row_id ); name = exdData->getField< std::string >( row, 5 ); + cutscene.push_back( exdData->getField< int32_t >( row, 6 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 7 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 8 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 9 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 10 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 11 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 12 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 13 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 14 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 15 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 16 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 17 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 18 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 19 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 20 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 21 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 22 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 23 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 24 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 25 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 26 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 27 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 28 ) ); + cutscene.push_back( exdData->getField< int32_t >( row, 29 ) ); } Core::Data::CompleteJournalCategory::CompleteJournalCategory( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -835,6 +1056,66 @@ iconActor = exdData->getField< uint32_t >( row, 0 ); iconMap = exdData->getField< uint32_t >( row, 1 ); name = exdData->getField< std::string >( row, 2 ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 3 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 4 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 5 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 6 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 7 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 8 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 9 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 10 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 11 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 12 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 13 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 14 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 15 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 16 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 17 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 18 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 19 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 20 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 21 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 22 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 23 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 24 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 25 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 26 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 27 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 28 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 29 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 30 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 31 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 32 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 33 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 34 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 35 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 36 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 37 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 38 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 39 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 40 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 41 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 42 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 43 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 44 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 45 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 46 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 47 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 48 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 49 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 50 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 51 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 52 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 53 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 54 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 55 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 56 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 57 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 58 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 59 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 60 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 61 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 62 ) ); text = exdData->getField< bool >( row, 66 ); } @@ -893,7 +1174,7 @@ { auto row = exdData->m_DeepDungeonItemDat.get_row( row_id ); icon = exdData->getField< uint32_t >( row, 0 ); - singular = exdData->getField< int8_t >( row, 2 ); + singular = exdData->getField< std::string >( row, 1 ); plural = exdData->getField< std::string >( row, 3 ); name = exdData->getField< std::string >( row, 9 ); tooltip = exdData->getField< std::string >( row, 10 ); @@ -911,6 +1192,12 @@ Core::Data::DefaultTalk::DefaultTalk( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_DefaultTalkDat.get_row( row_id ); + actionTimelinePose.push_back( exdData->getField< uint16_t >( row, 5 ) ); + actionTimelinePose.push_back( exdData->getField< uint16_t >( row, 6 ) ); + actionTimelinePose.push_back( exdData->getField< uint16_t >( row, 7 ) ); + text.push_back( exdData->getField< std::string >( row, 20 ) ); + text.push_back( exdData->getField< std::string >( row, 21 ) ); + text.push_back( exdData->getField< std::string >( row, 22 ) ); } Core::Data::DeliveryQuest::DeliveryQuest( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -954,6 +1241,31 @@ { auto row = exdData->m_DpsChallengeOfficerDat.get_row( row_id ); unlockQuest = exdData->getField< uint32_t >( row, 0 ); + challengeName.push_back( exdData->getField< uint16_t >( row, 1 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 2 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 3 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 4 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 5 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 6 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 7 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 8 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 9 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 10 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 11 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 12 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 13 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 14 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 15 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 16 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 17 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 18 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 19 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 20 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 21 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 22 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 23 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 24 ) ); + challengeName.push_back( exdData->getField< uint16_t >( row, 25 ) ); } Core::Data::DpsChallengeTransient::DpsChallengeTransient( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -982,6 +1294,38 @@ Core::Data::ENpcBase::ENpcBase( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_ENpcBaseDat.get_row( row_id ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 2 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 3 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 4 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 5 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 6 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 7 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 8 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 9 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 10 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 11 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 12 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 13 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 14 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 15 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 16 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 17 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 18 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 19 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 20 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 21 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 22 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 23 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 24 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 25 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 26 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 27 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 28 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 29 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 30 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 31 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 32 ) ); + eNpcData.push_back( exdData->getField< uint32_t >( row, 33 ) ); race = exdData->getField< uint8_t >( row, 36 ); gender = exdData->getField< uint8_t >( row, 37 ); bodyType = exdData->getField< uint8_t >( row, 38 ); @@ -1053,6 +1397,19 @@ data = exdData->getField< uint32_t >( row, 9 ); } + Core::Data::EquipRaceCategory::EquipRaceCategory( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) + { + auto row = exdData->m_EquipRaceCategoryDat.get_row( row_id ); + hyur = exdData->getField< bool >( row, 0 ); + elezen = exdData->getField< bool >( row, 1 ); + lalafell = exdData->getField< bool >( row, 2 ); + miqote = exdData->getField< bool >( row, 3 ); + roegadyn = exdData->getField< bool >( row, 4 ); + auRa = exdData->getField< bool >( row, 5 ); + male = exdData->getField< bool >( row, 6 ); + female = exdData->getField< bool >( row, 7 ); + } + Core::Data::EquipSlotCategory::EquipSlotCategory( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_EquipSlotCategoryDat.get_row( row_id ); @@ -1082,6 +1439,22 @@ Core::Data::EventIconPriority::EventIconPriority( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_EventIconPriorityDat.get_row( row_id ); + icon.push_back( exdData->getField< uint32_t >( row, 0 ) ); + icon.push_back( exdData->getField< uint32_t >( row, 1 ) ); + icon.push_back( exdData->getField< uint32_t >( row, 2 ) ); + icon.push_back( exdData->getField< uint32_t >( row, 3 ) ); + icon.push_back( exdData->getField< uint32_t >( row, 4 ) ); + icon.push_back( exdData->getField< uint32_t >( row, 5 ) ); + icon.push_back( exdData->getField< uint32_t >( row, 6 ) ); + icon.push_back( exdData->getField< uint32_t >( row, 7 ) ); + icon.push_back( exdData->getField< uint32_t >( row, 8 ) ); + icon.push_back( exdData->getField< uint32_t >( row, 9 ) ); + icon.push_back( exdData->getField< uint32_t >( row, 10 ) ); + icon.push_back( exdData->getField< uint32_t >( row, 11 ) ); + icon.push_back( exdData->getField< uint32_t >( row, 12 ) ); + icon.push_back( exdData->getField< uint32_t >( row, 13 ) ); + icon.push_back( exdData->getField< uint32_t >( row, 14 ) ); + icon.push_back( exdData->getField< uint32_t >( row, 15 ) ); } Core::Data::EventIconType::EventIconType( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -1129,6 +1502,9 @@ name = exdData->getField< std::string >( row, 26 ); description = exdData->getField< std::string >( row, 27 ); objective = exdData->getField< std::string >( row, 28 ); + statusText.push_back( exdData->getField< std::string >( row, 29 ) ); + statusText.push_back( exdData->getField< std::string >( row, 30 ) ); + statusText.push_back( exdData->getField< std::string >( row, 31 ) ); } Core::Data::FCActivity::FCActivity( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -1196,6 +1572,16 @@ x = exdData->getField< int16_t >( row, 6 ); z = exdData->getField< int16_t >( row, 7 ); radius = exdData->getField< uint16_t >( row, 8 ); + item.push_back( exdData->getField< int32_t >( row, 10 ) ); + item.push_back( exdData->getField< int32_t >( row, 11 ) ); + item.push_back( exdData->getField< int32_t >( row, 12 ) ); + item.push_back( exdData->getField< int32_t >( row, 13 ) ); + item.push_back( exdData->getField< int32_t >( row, 14 ) ); + item.push_back( exdData->getField< int32_t >( row, 15 ) ); + item.push_back( exdData->getField< int32_t >( row, 16 ) ); + item.push_back( exdData->getField< int32_t >( row, 17 ) ); + item.push_back( exdData->getField< int32_t >( row, 18 ) ); + item.push_back( exdData->getField< int32_t >( row, 19 ) ); placeName = exdData->getField< uint16_t >( row, 20 ); } @@ -1253,12 +1639,114 @@ Core::Data::GatheringNotebookList::GatheringNotebookList( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_GatheringNotebookListDat.get_row( row_id ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 1 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 2 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 3 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 4 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 5 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 6 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 7 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 8 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 9 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 10 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 11 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 12 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 13 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 14 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 15 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 16 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 17 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 18 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 19 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 20 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 21 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 22 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 23 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 24 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 25 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 26 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 27 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 28 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 29 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 30 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 31 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 32 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 33 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 34 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 35 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 36 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 37 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 38 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 39 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 40 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 41 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 42 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 43 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 44 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 45 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 46 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 47 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 48 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 49 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 50 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 51 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 52 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 53 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 54 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 55 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 56 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 57 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 58 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 59 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 60 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 61 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 62 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 63 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 64 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 65 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 66 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 67 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 68 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 69 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 70 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 71 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 72 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 73 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 74 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 75 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 76 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 77 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 78 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 79 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 80 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 81 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 82 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 83 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 84 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 85 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 86 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 87 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 88 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 89 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 90 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 91 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 92 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 93 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 94 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 95 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 96 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 97 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 98 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 99 ) ); + gatheringItem.push_back( exdData->getField< int32_t >( row, 100 ) ); } Core::Data::GatheringPoint::GatheringPoint( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_GatheringPointDat.get_row( row_id ); gatheringPointBase = exdData->getField< int32_t >( row, 1 ); + gatheringPointBonus.push_back( exdData->getField< uint16_t >( row, 3 ) ); + gatheringPointBonus.push_back( exdData->getField< uint16_t >( row, 4 ) ); territoryType = exdData->getField< uint16_t >( row, 5 ); placeName = exdData->getField< uint16_t >( row, 6 ); gatheringSubCategory = exdData->getField< uint16_t >( row, 7 ); @@ -1269,6 +1757,14 @@ auto row = exdData->m_GatheringPointBaseDat.get_row( row_id ); gatheringType = exdData->getField< int32_t >( row, 0 ); gatheringLevel = exdData->getField< uint8_t >( row, 1 ); + item.push_back( exdData->getField< int32_t >( row, 2 ) ); + item.push_back( exdData->getField< int32_t >( row, 3 ) ); + item.push_back( exdData->getField< int32_t >( row, 4 ) ); + item.push_back( exdData->getField< int32_t >( row, 5 ) ); + item.push_back( exdData->getField< int32_t >( row, 6 ) ); + item.push_back( exdData->getField< int32_t >( row, 7 ) ); + item.push_back( exdData->getField< int32_t >( row, 8 ) ); + item.push_back( exdData->getField< int32_t >( row, 9 ) ); isLimited = exdData->getField< bool >( row, 10 ); } @@ -1354,12 +1850,21 @@ description = exdData->getField< std::string >( row, 5 ); } + Core::Data::GCScripShopCategory::GCScripShopCategory( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) + { + auto row = exdData->m_GCScripShopCategoryDat.get_row( row_id ); + grandCompany = exdData->getField< int8_t >( row, 0 ); + tier = exdData->getField< int8_t >( row, 1 ); + subCategory = exdData->getField< int8_t >( row, 2 ); + } + Core::Data::GCScripShopItem::GCScripShopItem( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_GCScripShopItemDat.get_row( row_id ); item = exdData->getField< int32_t >( row, 0 ); - requiredRank = exdData->getField< int32_t >( row, 1 ); + requiredGrandCompanyRank = exdData->getField< int32_t >( row, 1 ); costGCSeals = exdData->getField< uint32_t >( row, 2 ); + sortKey = exdData->getField< uint8_t >( row, 3 ); } Core::Data::GCShop::GCShop( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -1447,6 +1952,8 @@ Core::Data::GuildleveAssignment::GuildleveAssignment( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_GuildleveAssignmentDat.get_row( row_id ); + quest.push_back( exdData->getField< uint32_t >( row, 2 ) ); + quest.push_back( exdData->getField< uint32_t >( row, 3 ) ); } Core::Data::GuildOrderGuide::GuildOrderGuide( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -1599,6 +2106,24 @@ { auto row = exdData->m_ItemActionDat.get_row( row_id ); type = exdData->getField< uint16_t >( row, 4 ); + data.push_back( exdData->getField< uint16_t >( row, 5 ) ); + data.push_back( exdData->getField< uint16_t >( row, 6 ) ); + data.push_back( exdData->getField< uint16_t >( row, 7 ) ); + data.push_back( exdData->getField< uint16_t >( row, 8 ) ); + data.push_back( exdData->getField< uint16_t >( row, 9 ) ); + data.push_back( exdData->getField< uint16_t >( row, 10 ) ); + data.push_back( exdData->getField< uint16_t >( row, 11 ) ); + data.push_back( exdData->getField< uint16_t >( row, 12 ) ); + data.push_back( exdData->getField< uint16_t >( row, 13 ) ); + dataHQ.push_back( exdData->getField< uint16_t >( row, 14 ) ); + dataHQ.push_back( exdData->getField< uint16_t >( row, 15 ) ); + dataHQ.push_back( exdData->getField< uint16_t >( row, 16 ) ); + dataHQ.push_back( exdData->getField< uint16_t >( row, 17 ) ); + dataHQ.push_back( exdData->getField< uint16_t >( row, 18 ) ); + dataHQ.push_back( exdData->getField< uint16_t >( row, 19 ) ); + dataHQ.push_back( exdData->getField< uint16_t >( row, 20 ) ); + dataHQ.push_back( exdData->getField< uint16_t >( row, 21 ) ); + dataHQ.push_back( exdData->getField< uint16_t >( row, 22 ) ); } Core::Data::ItemFood::ItemFood( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -1831,10 +2356,39 @@ rewardCurrency = exdData->getField< uint16_t >( row, 2 ); } + Core::Data::MasterpieceSupplyMultiplier::MasterpieceSupplyMultiplier( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) + { + auto row = exdData->m_MasterpieceSupplyMultiplierDat.get_row( row_id ); + xpMultiplier.push_back( exdData->getField< uint16_t >( row, 0 ) ); + xpMultiplier.push_back( exdData->getField< uint16_t >( row, 1 ) ); + currencyMultiplier.push_back( exdData->getField< uint16_t >( row, 4 ) ); + currencyMultiplier.push_back( exdData->getField< uint16_t >( row, 5 ) ); + } + Core::Data::Materia::Materia( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_MateriaDat.get_row( row_id ); + item.push_back( exdData->getField< int32_t >( row, 0 ) ); + item.push_back( exdData->getField< int32_t >( row, 1 ) ); + item.push_back( exdData->getField< int32_t >( row, 2 ) ); + item.push_back( exdData->getField< int32_t >( row, 3 ) ); + item.push_back( exdData->getField< int32_t >( row, 4 ) ); + item.push_back( exdData->getField< int32_t >( row, 5 ) ); + item.push_back( exdData->getField< int32_t >( row, 6 ) ); + item.push_back( exdData->getField< int32_t >( row, 7 ) ); + item.push_back( exdData->getField< int32_t >( row, 8 ) ); + item.push_back( exdData->getField< int32_t >( row, 9 ) ); baseParam = exdData->getField< uint8_t >( row, 10 ); + value.push_back( exdData->getField< uint8_t >( row, 11 ) ); + value.push_back( exdData->getField< uint8_t >( row, 12 ) ); + value.push_back( exdData->getField< uint8_t >( row, 13 ) ); + value.push_back( exdData->getField< uint8_t >( row, 14 ) ); + value.push_back( exdData->getField< uint8_t >( row, 15 ) ); + value.push_back( exdData->getField< uint8_t >( row, 16 ) ); + value.push_back( exdData->getField< uint8_t >( row, 17 ) ); + value.push_back( exdData->getField< uint8_t >( row, 18 ) ); + value.push_back( exdData->getField< uint8_t >( row, 19 ) ); + value.push_back( exdData->getField< uint8_t >( row, 20 ) ); } Core::Data::MinionRace::MinionRace( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -1878,6 +2432,14 @@ Core::Data::MonsterNote::MonsterNote( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_MonsterNoteDat.get_row( row_id ); + monsterNoteTarget.push_back( exdData->getField< uint16_t >( row, 0 ) ); + monsterNoteTarget.push_back( exdData->getField< uint16_t >( row, 1 ) ); + monsterNoteTarget.push_back( exdData->getField< uint16_t >( row, 2 ) ); + monsterNoteTarget.push_back( exdData->getField< uint16_t >( row, 3 ) ); + count.push_back( exdData->getField< uint8_t >( row, 4 ) ); + count.push_back( exdData->getField< uint8_t >( row, 5 ) ); + count.push_back( exdData->getField< uint8_t >( row, 6 ) ); + count.push_back( exdData->getField< uint8_t >( row, 7 ) ); reward = exdData->getField< uint32_t >( row, 8 ); name = exdData->getField< std::string >( row, 9 ); } @@ -1903,6 +2465,12 @@ Core::Data::MountAction::MountAction( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_MountActionDat.get_row( row_id ); + action.push_back( exdData->getField< uint16_t >( row, 0 ) ); + action.push_back( exdData->getField< uint16_t >( row, 1 ) ); + action.push_back( exdData->getField< uint16_t >( row, 2 ) ); + action.push_back( exdData->getField< uint16_t >( row, 3 ) ); + action.push_back( exdData->getField< uint16_t >( row, 4 ) ); + action.push_back( exdData->getField< uint16_t >( row, 5 ) ); } Core::Data::NpcEquip::NpcEquip( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -2020,10 +2588,15 @@ previousQuest1 = exdData->getField< uint32_t >( row, 12 ); previousQuest2 = exdData->getField< uint32_t >( row, 13 ); questLockJoin = exdData->getField< uint8_t >( row, 14 ); + questLock.push_back( exdData->getField< uint32_t >( row, 15 ) ); + questLock.push_back( exdData->getField< uint32_t >( row, 16 ) ); classJobUnlock = exdData->getField< uint8_t >( row, 20 ); grandCompany = exdData->getField< uint8_t >( row, 21 ); grandCompanyRank = exdData->getField< uint8_t >( row, 22 ); instanceContentJoin = exdData->getField< uint8_t >( row, 23 ); + instanceContent.push_back( exdData->getField< uint32_t >( row, 24 ) ); + instanceContent.push_back( exdData->getField< uint32_t >( row, 25 ) ); + instanceContent.push_back( exdData->getField< uint32_t >( row, 26 ) ); bellStart = exdData->getField< uint16_t >( row, 30 ); bellEnd = exdData->getField< uint16_t >( row, 31 ); beastTribe = exdData->getField< uint8_t >( row, 32 ); @@ -2034,13 +2607,330 @@ eNpcResidentEnd = exdData->getField< uint32_t >( row, 42 ); isRepeatable = exdData->getField< bool >( row, 43 ); repeatIntervalType = exdData->getField< uint8_t >( row, 44 ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 49 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 50 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 51 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 52 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 53 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 54 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 55 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 56 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 57 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 58 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 59 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 60 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 61 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 62 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 63 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 64 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 65 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 66 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 67 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 68 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 69 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 70 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 71 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 72 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 73 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 74 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 75 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 76 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 77 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 78 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 79 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 80 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 81 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 82 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 83 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 84 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 85 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 86 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 87 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 88 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 89 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 90 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 91 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 92 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 93 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 94 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 95 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 96 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 97 ) ); + scriptInstruction.push_back( exdData->getField< std::string >( row, 98 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 99 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 100 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 101 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 102 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 103 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 104 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 105 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 106 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 107 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 108 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 109 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 110 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 111 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 112 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 113 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 114 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 115 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 116 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 117 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 118 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 119 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 120 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 121 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 122 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 123 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 124 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 125 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 126 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 127 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 128 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 129 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 130 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 131 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 132 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 133 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 134 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 135 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 136 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 137 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 138 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 139 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 140 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 141 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 142 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 143 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 144 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 145 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 146 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 147 ) ); + scriptArg.push_back( exdData->getField< uint32_t >( row, 148 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1221 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1222 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1223 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1224 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1225 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1226 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1227 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1228 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1229 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1230 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1231 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1232 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1233 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1234 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1235 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1236 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1237 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1238 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1239 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1240 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1241 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1242 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1243 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1244 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1245 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1246 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1247 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1248 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1249 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1250 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1251 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1252 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1253 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1254 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1255 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1256 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1257 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1258 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1259 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1260 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1261 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1262 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1263 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1264 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1265 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1266 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1267 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1268 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1269 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1270 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1271 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1272 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1273 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1274 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1275 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1276 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1277 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1278 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1279 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1280 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1281 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1282 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1283 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1284 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1285 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1286 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1287 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1288 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1289 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1290 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1291 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1292 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1293 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1294 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1295 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1296 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1297 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1298 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1299 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1300 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1301 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1302 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1303 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1304 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1305 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1306 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1307 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1308 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1309 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1310 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1311 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1312 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1313 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1314 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1315 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1316 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1317 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1318 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1319 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1320 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1321 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1322 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1323 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1324 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1325 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1326 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1327 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1328 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1329 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1330 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1331 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1332 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1333 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1334 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1335 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1336 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1337 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1338 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1339 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1340 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1341 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1342 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1343 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1344 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1345 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1346 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1347 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1348 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1349 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1350 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1351 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1352 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1353 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1354 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1355 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1356 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1357 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1358 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1359 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1360 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1361 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1362 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1363 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1364 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1365 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1366 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1367 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1368 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1369 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1370 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1371 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1372 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1373 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1374 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1375 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1376 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1377 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1378 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1379 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1380 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1381 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1382 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1383 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1384 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1385 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1386 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1387 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1388 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1389 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1390 ) ); + level.push_back( exdData->getField< uint32_t >( row, 1391 ) ); classJobRequired = exdData->getField< uint8_t >( row, 1437 ); expFactor = exdData->getField< uint16_t >( row, 1439 ); gilReward = exdData->getField< uint32_t >( row, 1440 ); gCSeals = exdData->getField< uint16_t >( row, 1442 ); + itemCatalyst.push_back( exdData->getField< uint8_t >( row, 1443 ) ); + itemCatalyst.push_back( exdData->getField< uint8_t >( row, 1444 ) ); + itemCatalyst.push_back( exdData->getField< uint8_t >( row, 1445 ) ); + itemCountCatalyst.push_back( exdData->getField< uint8_t >( row, 1446 ) ); + itemCountCatalyst.push_back( exdData->getField< uint8_t >( row, 1447 ) ); + itemCountCatalyst.push_back( exdData->getField< uint8_t >( row, 1448 ) ); itemRewardType = exdData->getField< uint8_t >( row, 1449 ); + itemReward0.push_back( exdData->getField< uint32_t >( row, 1450 ) ); + itemReward0.push_back( exdData->getField< uint32_t >( row, 1451 ) ); + itemReward0.push_back( exdData->getField< uint32_t >( row, 1452 ) ); + itemReward0.push_back( exdData->getField< uint32_t >( row, 1453 ) ); + itemReward0.push_back( exdData->getField< uint32_t >( row, 1454 ) ); + itemReward0.push_back( exdData->getField< uint32_t >( row, 1455 ) ); + itemCountReward0.push_back( exdData->getField< uint8_t >( row, 1457 ) ); + itemCountReward0.push_back( exdData->getField< uint8_t >( row, 1458 ) ); + itemCountReward0.push_back( exdData->getField< uint8_t >( row, 1459 ) ); + itemCountReward0.push_back( exdData->getField< uint8_t >( row, 1460 ) ); + itemCountReward0.push_back( exdData->getField< uint8_t >( row, 1461 ) ); + itemCountReward0.push_back( exdData->getField< uint8_t >( row, 1462 ) ); + stainReward0.push_back( exdData->getField< uint8_t >( row, 1464 ) ); + stainReward0.push_back( exdData->getField< uint8_t >( row, 1465 ) ); + stainReward0.push_back( exdData->getField< uint8_t >( row, 1466 ) ); + stainReward0.push_back( exdData->getField< uint8_t >( row, 1467 ) ); + stainReward0.push_back( exdData->getField< uint8_t >( row, 1468 ) ); + stainReward0.push_back( exdData->getField< uint8_t >( row, 1469 ) ); + itemReward1.push_back( exdData->getField< uint32_t >( row, 1471 ) ); + itemReward1.push_back( exdData->getField< uint32_t >( row, 1472 ) ); + itemReward1.push_back( exdData->getField< uint32_t >( row, 1473 ) ); + itemReward1.push_back( exdData->getField< uint32_t >( row, 1474 ) ); + itemReward1.push_back( exdData->getField< uint32_t >( row, 1475 ) ); + itemCountReward1.push_back( exdData->getField< uint8_t >( row, 1476 ) ); + itemCountReward1.push_back( exdData->getField< uint8_t >( row, 1477 ) ); + itemCountReward1.push_back( exdData->getField< uint8_t >( row, 1478 ) ); + itemCountReward1.push_back( exdData->getField< uint8_t >( row, 1479 ) ); + itemCountReward1.push_back( exdData->getField< uint8_t >( row, 1480 ) ); + isHQReward1.push_back( exdData->getField< bool >( row, 1481 ) ); + isHQReward1.push_back( exdData->getField< bool >( row, 1482 ) ); + isHQReward1.push_back( exdData->getField< bool >( row, 1483 ) ); + isHQReward1.push_back( exdData->getField< bool >( row, 1484 ) ); + isHQReward1.push_back( exdData->getField< bool >( row, 1485 ) ); + stainReward1.push_back( exdData->getField< uint8_t >( row, 1486 ) ); + stainReward1.push_back( exdData->getField< uint8_t >( row, 1487 ) ); + stainReward1.push_back( exdData->getField< uint8_t >( row, 1488 ) ); + stainReward1.push_back( exdData->getField< uint8_t >( row, 1489 ) ); + stainReward1.push_back( exdData->getField< uint8_t >( row, 1490 ) ); emoteReward = exdData->getField< uint8_t >( row, 1491 ); actionReward = exdData->getField< uint16_t >( row, 1492 ); + generalActionReward.push_back( exdData->getField< uint8_t >( row, 1493 ) ); + generalActionReward.push_back( exdData->getField< uint8_t >( row, 1494 ) ); otherReward = exdData->getField< uint8_t >( row, 1496 ); instanceContentUnlock = exdData->getField< uint32_t >( row, 1499 ); tomestoneReward = exdData->getField< uint8_t >( row, 1501 ); @@ -2080,6 +2970,8 @@ auto row = exdData->m_RacingChocoboItemDat.get_row( row_id ); item = exdData->getField< int32_t >( row, 0 ); category = exdData->getField< uint8_t >( row, 1 ); + param.push_back( exdData->getField< uint8_t >( row, 2 ) ); + param.push_back( exdData->getField< uint8_t >( row, 3 ) ); } Core::Data::RacingChocoboName::RacingChocoboName( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -2150,6 +3042,166 @@ Core::Data::RecipeNotebookList::RecipeNotebookList( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_RecipeNotebookListDat.get_row( row_id ); + recipe.push_back( exdData->getField< int32_t >( row, 1 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 2 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 3 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 4 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 5 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 6 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 7 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 8 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 9 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 10 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 11 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 12 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 13 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 14 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 15 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 16 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 17 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 18 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 19 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 20 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 21 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 22 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 23 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 24 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 25 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 26 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 27 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 28 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 29 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 30 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 31 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 32 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 33 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 34 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 35 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 36 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 37 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 38 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 39 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 40 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 41 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 42 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 43 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 44 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 45 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 46 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 47 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 48 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 49 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 50 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 51 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 52 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 53 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 54 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 55 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 56 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 57 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 58 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 59 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 60 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 61 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 62 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 63 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 64 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 65 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 66 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 67 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 68 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 69 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 70 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 71 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 72 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 73 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 74 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 75 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 76 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 77 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 78 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 79 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 80 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 81 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 82 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 83 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 84 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 85 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 86 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 87 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 88 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 89 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 90 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 91 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 92 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 93 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 94 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 95 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 96 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 97 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 98 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 99 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 100 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 101 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 102 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 103 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 104 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 105 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 106 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 107 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 108 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 109 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 110 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 111 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 112 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 113 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 114 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 115 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 116 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 117 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 118 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 119 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 120 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 121 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 122 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 123 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 124 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 125 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 126 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 127 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 128 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 129 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 130 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 131 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 132 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 133 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 134 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 135 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 136 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 137 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 138 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 139 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 140 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 141 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 142 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 143 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 144 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 145 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 146 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 147 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 148 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 149 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 150 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 151 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 152 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 153 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 154 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 155 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 156 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 157 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 158 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 159 ) ); + recipe.push_back( exdData->getField< int32_t >( row, 160 ) ); } Core::Data::Relic::Relic( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -2190,6 +3242,12 @@ { auto row = exdData->m_RelicNoteDat.get_row( row_id ); eventItem = exdData->getField< uint32_t >( row, 0 ); + monsterNoteTargetNM.push_back( exdData->getField< uint16_t >( row, 21 ) ); + monsterNoteTargetNM.push_back( exdData->getField< uint16_t >( row, 22 ) ); + monsterNoteTargetNM.push_back( exdData->getField< uint16_t >( row, 23 ) ); + leve.push_back( exdData->getField< uint16_t >( row, 31 ) ); + leve.push_back( exdData->getField< uint16_t >( row, 32 ) ); + leve.push_back( exdData->getField< uint16_t >( row, 33 ) ); } Core::Data::RelicNoteCategory::RelicNoteCategory( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -2225,6 +3283,12 @@ Core::Data::RetainerTaskParameter::RetainerTaskParameter( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_RetainerTaskParameterDat.get_row( row_id ); + itemLevelDoW.push_back( exdData->getField< int16_t >( row, 0 ) ); + itemLevelDoW.push_back( exdData->getField< int16_t >( row, 1 ) ); + gatheringDoL.push_back( exdData->getField< int16_t >( row, 2 ) ); + gatheringDoL.push_back( exdData->getField< int16_t >( row, 3 ) ); + gatheringFSH.push_back( exdData->getField< int16_t >( row, 4 ) ); + gatheringFSH.push_back( exdData->getField< int16_t >( row, 5 ) ); } Core::Data::RetainerTaskRandom::RetainerTaskRandom( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -2246,6 +3310,18 @@ npc = exdData->getField< int32_t >( row, 0 ); questRequired = exdData->getField< int32_t >( row, 1 ); deliveriesPerWeek = exdData->getField< uint8_t >( row, 3 ); + supplyIndex.push_back( exdData->getField< int32_t >( row, 4 ) ); + supplyIndex.push_back( exdData->getField< int32_t >( row, 5 ) ); + supplyIndex.push_back( exdData->getField< int32_t >( row, 6 ) ); + supplyIndex.push_back( exdData->getField< int32_t >( row, 7 ) ); + supplyIndex.push_back( exdData->getField< int32_t >( row, 8 ) ); + supplyIndex.push_back( exdData->getField< int32_t >( row, 9 ) ); + satisfactionRequired.push_back( exdData->getField< uint16_t >( row, 10 ) ); + satisfactionRequired.push_back( exdData->getField< uint16_t >( row, 11 ) ); + satisfactionRequired.push_back( exdData->getField< uint16_t >( row, 12 ) ); + satisfactionRequired.push_back( exdData->getField< uint16_t >( row, 13 ) ); + satisfactionRequired.push_back( exdData->getField< uint16_t >( row, 14 ) ); + satisfactionRequired.push_back( exdData->getField< uint16_t >( row, 15 ) ); icon = exdData->getField< int32_t >( row, 70 ); } @@ -2311,6 +3387,66 @@ { auto row = exdData->m_SpecialShopDat.get_row( row_id ); name = exdData->getField< std::string >( row, 0 ); + questItem.push_back( exdData->getField< int32_t >( row, 1201 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1202 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1203 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1204 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1205 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1206 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1207 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1208 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1209 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1210 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1211 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1212 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1213 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1214 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1215 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1216 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1217 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1218 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1219 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1220 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1221 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1222 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1223 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1224 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1225 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1226 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1227 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1228 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1229 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1230 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1231 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1232 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1233 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1234 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1235 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1236 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1237 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1238 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1239 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1240 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1241 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1242 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1243 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1244 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1245 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1246 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1247 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1248 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1249 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1250 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1251 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1252 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1253 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1254 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1255 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1256 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1257 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1258 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1259 ) ); + questItem.push_back( exdData->getField< int32_t >( row, 1260 ) ); questShop = exdData->getField< int32_t >( row, 1863 ); } @@ -2354,6 +3490,37 @@ Core::Data::SwitchTalk::SwitchTalk( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_SwitchTalkDat.get_row( row_id ); + quest.push_back( exdData->getField< uint32_t >( row, 2 ) ); + quest.push_back( exdData->getField< uint32_t >( row, 3 ) ); + quest.push_back( exdData->getField< uint32_t >( row, 4 ) ); + quest.push_back( exdData->getField< uint32_t >( row, 5 ) ); + quest.push_back( exdData->getField< uint32_t >( row, 6 ) ); + quest.push_back( exdData->getField< uint32_t >( row, 7 ) ); + quest.push_back( exdData->getField< uint32_t >( row, 8 ) ); + quest.push_back( exdData->getField< uint32_t >( row, 9 ) ); + quest.push_back( exdData->getField< uint32_t >( row, 10 ) ); + quest.push_back( exdData->getField< uint32_t >( row, 11 ) ); + quest.push_back( exdData->getField< uint32_t >( row, 12 ) ); + quest.push_back( exdData->getField< uint32_t >( row, 13 ) ); + quest.push_back( exdData->getField< uint32_t >( row, 14 ) ); + quest.push_back( exdData->getField< uint32_t >( row, 15 ) ); + quest.push_back( exdData->getField< uint32_t >( row, 16 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 17 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 18 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 19 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 20 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 21 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 22 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 23 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 24 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 25 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 26 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 27 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 28 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 29 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 30 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 31 ) ); + defaultTalk.push_back( exdData->getField< uint32_t >( row, 32 ) ); } Core::Data::TerritoryType::TerritoryType( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) @@ -2454,9 +3621,24 @@ Core::Data::TripleTriad::TripleTriad( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ) { auto row = exdData->m_TripleTriadDat.get_row( row_id ); + tripleTriadCardFixed.push_back( exdData->getField< uint16_t >( row, 0 ) ); + tripleTriadCardFixed.push_back( exdData->getField< uint16_t >( row, 1 ) ); + tripleTriadCardFixed.push_back( exdData->getField< uint16_t >( row, 2 ) ); + tripleTriadCardFixed.push_back( exdData->getField< uint16_t >( row, 3 ) ); + tripleTriadCardFixed.push_back( exdData->getField< uint16_t >( row, 4 ) ); + tripleTriadCardVariable.push_back( exdData->getField< uint16_t >( row, 5 ) ); + tripleTriadCardVariable.push_back( exdData->getField< uint16_t >( row, 6 ) ); + tripleTriadCardVariable.push_back( exdData->getField< uint16_t >( row, 7 ) ); + tripleTriadCardVariable.push_back( exdData->getField< uint16_t >( row, 8 ) ); + tripleTriadCardVariable.push_back( exdData->getField< uint16_t >( row, 9 ) ); + tripleTriadRule.push_back( exdData->getField< uint8_t >( row, 10 ) ); + tripleTriadRule.push_back( exdData->getField< uint8_t >( row, 11 ) ); usesRegionalRules = exdData->getField< bool >( row, 12 ); fee = exdData->getField< uint16_t >( row, 13 ); previousQuestJoin = exdData->getField< uint8_t >( row, 14 ); + previousQuest.push_back( exdData->getField< uint32_t >( row, 15 ) ); + previousQuest.push_back( exdData->getField< uint32_t >( row, 16 ) ); + previousQuest.push_back( exdData->getField< uint32_t >( row, 17 ) ); startTime = exdData->getField< uint16_t >( row, 18 ); endTime = exdData->getField< uint16_t >( row, 19 ); defaultTalkChallenge = exdData->getField< uint32_t >( row, 20 ); @@ -2614,6 +3796,18 @@ xiv::exd::Exd Core::Data::ExdDataGenerated::setupDatAccess( const std::string& n return static_cast< xiv::exd::Exd >( cat.get_data_ln( lang ) ); }; + +void Core::Data::ExdDataGenerated::loadIdList( xiv::exd::Exd& data, std::set< uint32_t >& outIdList ) +{ + auto pDataRows = data.get_rows(); + + for( auto row : pDataRows ) + { + uint32_t id = row.first; + outIdList.insert( id ); + } +} + bool Core::Data::ExdDataGenerated::init( const std::string& path ) { try @@ -2621,7 +3815,297 @@ bool Core::Data::ExdDataGenerated::init( const std::string& path ) m_data = boost::make_shared< xiv::dat::GameData >( path ); m_exd_data = boost::make_shared< xiv::exd::ExdData >( *m_data ); - m_AchievementDat = setupDatAccess( "Achievement", xiv::exd::Language::en ); m_AchievementCategoryDat = setupDatAccess( "AchievementCategory", xiv::exd::Language::en ); m_AchievementKindDat = setupDatAccess( "AchievementKind", xiv::exd::Language::en ); m_ActionDat = setupDatAccess( "Action", xiv::exd::Language::en ); m_ActionCategoryDat = setupDatAccess( "ActionCategory", xiv::exd::Language::en ); m_ActionComboRouteDat = setupDatAccess( "ActionComboRoute", xiv::exd::Language::en ); m_ActionIndirectionDat = setupDatAccess( "ActionIndirection", xiv::exd::Language::none ); m_ActionProcStatusDat = setupDatAccess( "ActionProcStatus", xiv::exd::Language::none ); m_ActionTimelineDat = setupDatAccess( "ActionTimeline", xiv::exd::Language::none ); m_ActionTransientDat = setupDatAccess( "ActionTransient", xiv::exd::Language::en ); m_AddonDat = setupDatAccess( "Addon", xiv::exd::Language::en ); m_AdventureDat = setupDatAccess( "Adventure", xiv::exd::Language::en ); m_AdventureExPhaseDat = setupDatAccess( "AdventureExPhase", xiv::exd::Language::none ); m_AetherCurrentDat = setupDatAccess( "AetherCurrent", xiv::exd::Language::none ); m_AetherialWheelDat = setupDatAccess( "AetherialWheel", xiv::exd::Language::none ); m_AetheryteDat = setupDatAccess( "Aetheryte", xiv::exd::Language::en ); m_AirshipExplorationLevelDat = setupDatAccess( "AirshipExplorationLevel", xiv::exd::Language::none ); m_AirshipExplorationLogDat = setupDatAccess( "AirshipExplorationLog", xiv::exd::Language::en ); m_AirshipExplorationParamTypeDat = setupDatAccess( "AirshipExplorationParamType", xiv::exd::Language::en ); m_AirshipExplorationPartDat = setupDatAccess( "AirshipExplorationPart", xiv::exd::Language::none ); m_AirshipExplorationPointDat = setupDatAccess( "AirshipExplorationPoint", xiv::exd::Language::en ); m_AnimaWeapon5Dat = setupDatAccess( "AnimaWeapon5", xiv::exd::Language::none ); m_AnimaWeapon5ParamDat = setupDatAccess( "AnimaWeapon5Param", xiv::exd::Language::en ); m_AnimaWeapon5PatternGroupDat = setupDatAccess( "AnimaWeapon5PatternGroup", xiv::exd::Language::en ); m_AnimaWeapon5SpiritTalkDat = setupDatAccess( "AnimaWeapon5SpiritTalk", xiv::exd::Language::none ); m_AnimaWeapon5SpiritTalkParamDat = setupDatAccess( "AnimaWeapon5SpiritTalkParam", xiv::exd::Language::en ); m_AnimaWeapon5TradeItemDat = setupDatAccess( "AnimaWeapon5TradeItem", xiv::exd::Language::none ); m_AnimaWeaponFUITalkDat = setupDatAccess( "AnimaWeaponFUITalk", xiv::exd::Language::none ); m_AnimaWeaponFUITalkParamDat = setupDatAccess( "AnimaWeaponFUITalkParam", xiv::exd::Language::en ); m_AnimaWeaponIconDat = setupDatAccess( "AnimaWeaponIcon", xiv::exd::Language::none ); m_AnimaWeaponItemDat = setupDatAccess( "AnimaWeaponItem", xiv::exd::Language::none ); m_AquariumFishDat = setupDatAccess( "AquariumFish", xiv::exd::Language::none ); m_AquariumWaterDat = setupDatAccess( "AquariumWater", xiv::exd::Language::en ); m_AttackTypeDat = setupDatAccess( "AttackType", xiv::exd::Language::en ); m_BalloonDat = setupDatAccess( "Balloon", xiv::exd::Language::en ); m_BaseParamDat = setupDatAccess( "BaseParam", xiv::exd::Language::en ); m_BattleLeveDat = setupDatAccess( "BattleLeve", xiv::exd::Language::none ); m_BeastRankBonusDat = setupDatAccess( "BeastRankBonus", xiv::exd::Language::none ); m_BeastReputationRankDat = setupDatAccess( "BeastReputationRank", xiv::exd::Language::en ); m_BeastTribeDat = setupDatAccess( "BeastTribe", xiv::exd::Language::en ); m_BehaviorDat = setupDatAccess( "Behavior", xiv::exd::Language::none ); m_BGMDat = setupDatAccess( "BGM", xiv::exd::Language::none ); m_BNpcAnnounceIconDat = setupDatAccess( "BNpcAnnounceIcon", xiv::exd::Language::none ); m_BNpcBaseDat = setupDatAccess( "BNpcBase", xiv::exd::Language::none ); m_BNpcCustomizeDat = setupDatAccess( "BNpcCustomize", xiv::exd::Language::none ); m_BNpcNameDat = setupDatAccess( "BNpcName", xiv::exd::Language::en ); m_BuddyActionDat = setupDatAccess( "BuddyAction", xiv::exd::Language::en ); m_BuddyEquipDat = setupDatAccess( "BuddyEquip", xiv::exd::Language::en ); m_BuddyItemDat = setupDatAccess( "BuddyItem", xiv::exd::Language::none ); m_BuddyRankDat = setupDatAccess( "BuddyRank", xiv::exd::Language::none ); m_BuddySkillDat = setupDatAccess( "BuddySkill", xiv::exd::Language::none ); m_CabinetDat = setupDatAccess( "Cabinet", xiv::exd::Language::none ); m_CabinetCategoryDat = setupDatAccess( "CabinetCategory", xiv::exd::Language::none ); m_CalendarDat = setupDatAccess( "Calendar", xiv::exd::Language::none ); m_ChainBonusDat = setupDatAccess( "ChainBonus", xiv::exd::Language::none ); m_CharaMakeCustomizeDat = setupDatAccess( "CharaMakeCustomize", xiv::exd::Language::none ); m_CharaMakeTypeDat = setupDatAccess( "CharaMakeType", xiv::exd::Language::en ); m_ChocoboRaceDat = setupDatAccess( "ChocoboRace", xiv::exd::Language::none ); m_ChocoboRaceAbilityDat = setupDatAccess( "ChocoboRaceAbility", xiv::exd::Language::en ); m_ChocoboRaceAbilityTypeDat = setupDatAccess( "ChocoboRaceAbilityType", xiv::exd::Language::none ); m_ChocoboRaceItemDat = setupDatAccess( "ChocoboRaceItem", xiv::exd::Language::en ); m_ChocoboRaceRankDat = setupDatAccess( "ChocoboRaceRank", xiv::exd::Language::none ); m_ChocoboRaceStatusDat = setupDatAccess( "ChocoboRaceStatus", xiv::exd::Language::none ); m_ChocoboRaceTerritoryDat = setupDatAccess( "ChocoboRaceTerritory", xiv::exd::Language::none ); m_ChocoboTaxiStandDat = setupDatAccess( "ChocoboTaxiStand", xiv::exd::Language::en ); m_ClassJobDat = setupDatAccess( "ClassJob", xiv::exd::Language::en ); m_ClassJobCategoryDat = setupDatAccess( "ClassJobCategory", xiv::exd::Language::en ); m_CompanionDat = setupDatAccess( "Companion", xiv::exd::Language::en ); m_CompanionMoveDat = setupDatAccess( "CompanionMove", xiv::exd::Language::en ); m_CompanionTransientDat = setupDatAccess( "CompanionTransient", xiv::exd::Language::en ); m_CompanyActionDat = setupDatAccess( "CompanyAction", xiv::exd::Language::en ); m_CompanyCraftDraftDat = setupDatAccess( "CompanyCraftDraft", xiv::exd::Language::en ); m_CompanyCraftDraftCategoryDat = setupDatAccess( "CompanyCraftDraftCategory", xiv::exd::Language::en ); m_CompanyCraftManufactoryStateDat = setupDatAccess( "CompanyCraftManufactoryState", xiv::exd::Language::en ); m_CompanyCraftPartDat = setupDatAccess( "CompanyCraftPart", xiv::exd::Language::none ); m_CompanyCraftProcessDat = setupDatAccess( "CompanyCraftProcess", xiv::exd::Language::none ); m_CompanyCraftSequenceDat = setupDatAccess( "CompanyCraftSequence", xiv::exd::Language::none ); m_CompanyCraftSupplyItemDat = setupDatAccess( "CompanyCraftSupplyItem", xiv::exd::Language::none ); m_CompanyCraftTypeDat = setupDatAccess( "CompanyCraftType", xiv::exd::Language::en ); m_CompleteJournalDat = setupDatAccess( "CompleteJournal", xiv::exd::Language::en ); m_CompleteJournalCategoryDat = setupDatAccess( "CompleteJournalCategory", xiv::exd::Language::none ); m_ContentExActionDat = setupDatAccess( "ContentExAction", xiv::exd::Language::none ); m_ContentFinderConditionDat = setupDatAccess( "ContentFinderCondition", xiv::exd::Language::en ); m_ContentFinderConditionTransientDat = setupDatAccess( "ContentFinderConditionTransient", xiv::exd::Language::en ); m_ContentMemberTypeDat = setupDatAccess( "ContentMemberType", xiv::exd::Language::none ); m_ContentRouletteDat = setupDatAccess( "ContentRoulette", xiv::exd::Language::en ); m_ContentTypeDat = setupDatAccess( "ContentType", xiv::exd::Language::en ); m_CraftActionDat = setupDatAccess( "CraftAction", xiv::exd::Language::en ); m_CraftLeveDat = setupDatAccess( "CraftLeve", xiv::exd::Language::none ); m_CraftTypeDat = setupDatAccess( "CraftType", xiv::exd::Language::en ); m_CurrencyDat = setupDatAccess( "Currency", xiv::exd::Language::none ); m_CustomTalkDat = setupDatAccess( "CustomTalk", xiv::exd::Language::en ); m_CutsceneDat = setupDatAccess( "Cutscene", xiv::exd::Language::none ); m_CutScreenImageDat = setupDatAccess( "CutScreenImage", xiv::exd::Language::none ); m_DailySupplyItemDat = setupDatAccess( "DailySupplyItem", xiv::exd::Language::none ); m_DeepDungeonBanDat = setupDatAccess( "DeepDungeonBan", xiv::exd::Language::none ); m_DeepDungeonDangerDat = setupDatAccess( "DeepDungeonDanger", xiv::exd::Language::none ); m_DeepDungeonEquipmentDat = setupDatAccess( "DeepDungeonEquipment", xiv::exd::Language::en ); m_DeepDungeonFloorEffectUIDat = setupDatAccess( "DeepDungeonFloorEffectUI", xiv::exd::Language::en ); m_DeepDungeonItemDat = setupDatAccess( "DeepDungeonItem", xiv::exd::Language::en ); m_DeepDungeonStatusDat = setupDatAccess( "DeepDungeonStatus", xiv::exd::Language::none ); m_DefaultTalkDat = setupDatAccess( "DefaultTalk", xiv::exd::Language::en ); m_DeliveryQuestDat = setupDatAccess( "DeliveryQuest", xiv::exd::Language::none ); m_DisposalShopDat = setupDatAccess( "DisposalShop", xiv::exd::Language::en ); m_DisposalShopFilterTypeDat = setupDatAccess( "DisposalShopFilterType", xiv::exd::Language::en ); m_DisposalShopItemDat = setupDatAccess( "DisposalShopItem", xiv::exd::Language::none ); m_DpsChallengeDat = setupDatAccess( "DpsChallenge", xiv::exd::Language::en ); m_DpsChallengeOfficerDat = setupDatAccess( "DpsChallengeOfficer", xiv::exd::Language::none ); m_DpsChallengeTransientDat = setupDatAccess( "DpsChallengeTransient", xiv::exd::Language::none ); m_EmoteDat = setupDatAccess( "Emote", xiv::exd::Language::en ); m_EmoteCategoryDat = setupDatAccess( "EmoteCategory", xiv::exd::Language::en ); m_ENpcBaseDat = setupDatAccess( "ENpcBase", xiv::exd::Language::none ); m_ENpcResidentDat = setupDatAccess( "ENpcResident", xiv::exd::Language::en ); m_EObjDat = setupDatAccess( "EObj", xiv::exd::Language::none ); m_EquipSlotCategoryDat = setupDatAccess( "EquipSlotCategory", xiv::exd::Language::none ); m_EventActionDat = setupDatAccess( "EventAction", xiv::exd::Language::en ); m_EventIconPriorityDat = setupDatAccess( "EventIconPriority", xiv::exd::Language::none ); m_EventIconTypeDat = setupDatAccess( "EventIconType", xiv::exd::Language::none ); m_EventItemDat = setupDatAccess( "EventItem", xiv::exd::Language::en ); m_EventItemHelpDat = setupDatAccess( "EventItemHelp", xiv::exd::Language::en ); m_ExVersionDat = setupDatAccess( "ExVersion", xiv::exd::Language::en ); m_FateDat = setupDatAccess( "Fate", xiv::exd::Language::en ); m_FCActivityDat = setupDatAccess( "FCActivity", xiv::exd::Language::en ); m_FCAuthorityDat = setupDatAccess( "FCAuthority", xiv::exd::Language::en ); m_FCAuthorityCategoryDat = setupDatAccess( "FCAuthorityCategory", xiv::exd::Language::en ); m_FCChestNameDat = setupDatAccess( "FCChestName", xiv::exd::Language::en ); m_FccShopDat = setupDatAccess( "FccShop", xiv::exd::Language::en ); m_FCHierarchyDat = setupDatAccess( "FCHierarchy", xiv::exd::Language::en ); m_FCReputationDat = setupDatAccess( "FCReputation", xiv::exd::Language::en ); m_FCRightsDat = setupDatAccess( "FCRights", xiv::exd::Language::en ); m_FishingSpotDat = setupDatAccess( "FishingSpot", xiv::exd::Language::en ); m_FishParameterDat = setupDatAccess( "FishParameter", xiv::exd::Language::en ); m_GardeningSeedDat = setupDatAccess( "GardeningSeed", xiv::exd::Language::none ); m_GatheringConditionDat = setupDatAccess( "GatheringCondition", xiv::exd::Language::en ); m_GatheringExpDat = setupDatAccess( "GatheringExp", xiv::exd::Language::none ); m_GatheringItemDat = setupDatAccess( "GatheringItem", xiv::exd::Language::none ); m_GatheringItemLevelConvertTableDat = setupDatAccess( "GatheringItemLevelConvertTable", xiv::exd::Language::none ); m_GatheringItemPointDat = setupDatAccess( "GatheringItemPoint", xiv::exd::Language::none ); m_GatheringNotebookListDat = setupDatAccess( "GatheringNotebookList", xiv::exd::Language::none ); m_GatheringPointDat = setupDatAccess( "GatheringPoint", xiv::exd::Language::none ); m_GatheringPointBaseDat = setupDatAccess( "GatheringPointBase", xiv::exd::Language::none ); m_GatheringPointBonusDat = setupDatAccess( "GatheringPointBonus", xiv::exd::Language::none ); m_GatheringPointBonusTypeDat = setupDatAccess( "GatheringPointBonusType", xiv::exd::Language::en ); m_GatheringPointNameDat = setupDatAccess( "GatheringPointName", xiv::exd::Language::en ); m_GatheringSubCategoryDat = setupDatAccess( "GatheringSubCategory", xiv::exd::Language::en ); m_GatheringTypeDat = setupDatAccess( "GatheringType", xiv::exd::Language::en ); m_GcArmyExpeditionDat = setupDatAccess( "GcArmyExpedition", xiv::exd::Language::en ); m_GcArmyExpeditionMemberBonusDat = setupDatAccess( "GcArmyExpeditionMemberBonus", xiv::exd::Language::none ); m_GcArmyExpeditionTypeDat = setupDatAccess( "GcArmyExpeditionType", xiv::exd::Language::en ); m_GcArmyMemberGrowDat = setupDatAccess( "GcArmyMemberGrow", xiv::exd::Language::none ); m_GcArmyTrainingDat = setupDatAccess( "GcArmyTraining", xiv::exd::Language::en ); m_GCScripShopItemDat = setupDatAccess( "GCScripShopItem", xiv::exd::Language::none ); m_GCShopDat = setupDatAccess( "GCShop", xiv::exd::Language::none ); m_GCShopItemCategoryDat = setupDatAccess( "GCShopItemCategory", xiv::exd::Language::en ); m_GCSupplyDutyDat = setupDatAccess( "GCSupplyDuty", xiv::exd::Language::none ); m_GCSupplyDutyRewardDat = setupDatAccess( "GCSupplyDutyReward", xiv::exd::Language::none ); m_GeneralActionDat = setupDatAccess( "GeneralAction", xiv::exd::Language::en ); m_GilShopDat = setupDatAccess( "GilShop", xiv::exd::Language::en ); m_GilShopItemDat = setupDatAccess( "GilShopItem", xiv::exd::Language::none ); m_GoldSaucerTextDataDat = setupDatAccess( "GoldSaucerTextData", xiv::exd::Language::en ); m_GrandCompanyDat = setupDatAccess( "GrandCompany", xiv::exd::Language::en ); m_GrandCompanyRankDat = setupDatAccess( "GrandCompanyRank", xiv::exd::Language::none ); m_GuardianDeityDat = setupDatAccess( "GuardianDeity", xiv::exd::Language::en ); m_GuildleveAssignmentDat = setupDatAccess( "GuildleveAssignment", xiv::exd::Language::none ); m_GuildOrderGuideDat = setupDatAccess( "GuildOrderGuide", xiv::exd::Language::none ); m_GuildOrderOfficerDat = setupDatAccess( "GuildOrderOfficer", xiv::exd::Language::none ); m_HouseRetainerPoseDat = setupDatAccess( "HouseRetainerPose", xiv::exd::Language::none ); m_HousingFurnitureDat = setupDatAccess( "HousingFurniture", xiv::exd::Language::none ); m_HousingYardObjectDat = setupDatAccess( "HousingYardObject", xiv::exd::Language::none ); m_InstanceContentDat = setupDatAccess( "InstanceContent", xiv::exd::Language::en ); m_InstanceContentBuffDat = setupDatAccess( "InstanceContentBuff", xiv::exd::Language::none ); m_InstanceContentTextDataDat = setupDatAccess( "InstanceContentTextData", xiv::exd::Language::en ); m_InstanceContentTypeDat = setupDatAccess( "InstanceContentType", xiv::exd::Language::none ); m_ItemDat = setupDatAccess( "Item", xiv::exd::Language::en ); m_ItemActionDat = setupDatAccess( "ItemAction", xiv::exd::Language::none ); m_ItemFoodDat = setupDatAccess( "ItemFood", xiv::exd::Language::none ); m_ItemSearchCategoryDat = setupDatAccess( "ItemSearchCategory", xiv::exd::Language::en ); m_ItemSeriesDat = setupDatAccess( "ItemSeries", xiv::exd::Language::en ); m_ItemSpecialBonusDat = setupDatAccess( "ItemSpecialBonus", xiv::exd::Language::en ); m_ItemUICategoryDat = setupDatAccess( "ItemUICategory", xiv::exd::Language::en ); m_JournalCategoryDat = setupDatAccess( "JournalCategory", xiv::exd::Language::en ); m_JournalGenreDat = setupDatAccess( "JournalGenre", xiv::exd::Language::en ); m_JournalSectionDat = setupDatAccess( "JournalSection", xiv::exd::Language::en ); m_LeveDat = setupDatAccess( "Leve", xiv::exd::Language::en ); m_LeveAssignmentTypeDat = setupDatAccess( "LeveAssignmentType", xiv::exd::Language::en ); m_LeveClientDat = setupDatAccess( "LeveClient", xiv::exd::Language::en ); m_LevelDat = setupDatAccess( "Level", xiv::exd::Language::none ); m_LeveRewardItemDat = setupDatAccess( "LeveRewardItem", xiv::exd::Language::none ); m_LeveRewardItemGroupDat = setupDatAccess( "LeveRewardItemGroup", xiv::exd::Language::none ); m_LeveVfxDat = setupDatAccess( "LeveVfx", xiv::exd::Language::none ); m_LogFilterDat = setupDatAccess( "LogFilter", xiv::exd::Language::en ); m_LogKindDat = setupDatAccess( "LogKind", xiv::exd::Language::en ); m_LogKindCategoryTextDat = setupDatAccess( "LogKindCategoryText", xiv::exd::Language::en ); m_LogMessageDat = setupDatAccess( "LogMessage", xiv::exd::Language::en ); m_MacroIconDat = setupDatAccess( "MacroIcon", xiv::exd::Language::none ); m_MacroIconRedirectOldDat = setupDatAccess( "MacroIconRedirectOld", xiv::exd::Language::none ); m_MainCommandDat = setupDatAccess( "MainCommand", xiv::exd::Language::en ); m_MainCommandCategoryDat = setupDatAccess( "MainCommandCategory", xiv::exd::Language::en ); m_MapDat = setupDatAccess( "Map", xiv::exd::Language::none ); m_MapMarkerDat = setupDatAccess( "MapMarker", xiv::exd::Language::none ); m_MapSymbolDat = setupDatAccess( "MapSymbol", xiv::exd::Language::none ); m_MasterpieceSupplyDutyDat = setupDatAccess( "MasterpieceSupplyDuty", xiv::exd::Language::none ); m_MateriaDat = setupDatAccess( "Materia", xiv::exd::Language::none ); m_MinionRaceDat = setupDatAccess( "MinionRace", xiv::exd::Language::en ); m_MinionRulesDat = setupDatAccess( "MinionRules", xiv::exd::Language::en ); m_MinionSkillTypeDat = setupDatAccess( "MinionSkillType", xiv::exd::Language::en ); m_MobHuntTargetDat = setupDatAccess( "MobHuntTarget", xiv::exd::Language::none ); m_ModelCharaDat = setupDatAccess( "ModelChara", xiv::exd::Language::none ); m_MonsterNoteDat = setupDatAccess( "MonsterNote", xiv::exd::Language::en ); m_MonsterNoteTargetDat = setupDatAccess( "MonsterNoteTarget", xiv::exd::Language::none ); m_MountDat = setupDatAccess( "Mount", xiv::exd::Language::en ); m_MountActionDat = setupDatAccess( "MountAction", xiv::exd::Language::none ); m_NpcEquipDat = setupDatAccess( "NpcEquip", xiv::exd::Language::none ); m_OmenDat = setupDatAccess( "Omen", xiv::exd::Language::none ); m_OnlineStatusDat = setupDatAccess( "OnlineStatus", xiv::exd::Language::en ); m_OrchestrionDat = setupDatAccess( "Orchestrion", xiv::exd::Language::en ); m_OrchestrionPathDat = setupDatAccess( "OrchestrionPath", xiv::exd::Language::none ); m_ParamGrowDat = setupDatAccess( "ParamGrow", xiv::exd::Language::none ); m_PetDat = setupDatAccess( "Pet", xiv::exd::Language::en ); m_PetActionDat = setupDatAccess( "PetAction", xiv::exd::Language::en ); m_PictureDat = setupDatAccess( "Picture", xiv::exd::Language::none ); m_PlaceNameDat = setupDatAccess( "PlaceName", xiv::exd::Language::en ); m_QuestDat = setupDatAccess( "Quest", xiv::exd::Language::en ); m_QuestRewardOtherDat = setupDatAccess( "QuestRewardOther", xiv::exd::Language::en ); m_RaceDat = setupDatAccess( "Race", xiv::exd::Language::en ); m_RacingChocoboItemDat = setupDatAccess( "RacingChocoboItem", xiv::exd::Language::none ); m_RacingChocoboNameDat = setupDatAccess( "RacingChocoboName", xiv::exd::Language::en ); m_RacingChocoboNameCategoryDat = setupDatAccess( "RacingChocoboNameCategory", xiv::exd::Language::en ); m_RacingChocoboNameInfoDat = setupDatAccess( "RacingChocoboNameInfo", xiv::exd::Language::none ); m_RacingChocoboParamDat = setupDatAccess( "RacingChocoboParam", xiv::exd::Language::en ); m_RecipeDat = setupDatAccess( "Recipe", xiv::exd::Language::none ); m_RecipeElementDat = setupDatAccess( "RecipeElement", xiv::exd::Language::en ); m_RecipeLevelTableDat = setupDatAccess( "RecipeLevelTable", xiv::exd::Language::none ); m_RecipeNotebookListDat = setupDatAccess( "RecipeNotebookList", xiv::exd::Language::none ); m_RelicDat = setupDatAccess( "Relic", xiv::exd::Language::none ); m_Relic3Dat = setupDatAccess( "Relic3", xiv::exd::Language::none ); m_RelicItemDat = setupDatAccess( "RelicItem", xiv::exd::Language::none ); m_RelicNoteDat = setupDatAccess( "RelicNote", xiv::exd::Language::none ); m_RelicNoteCategoryDat = setupDatAccess( "RelicNoteCategory", xiv::exd::Language::en ); m_RetainerTaskDat = setupDatAccess( "RetainerTask", xiv::exd::Language::none ); m_RetainerTaskNormalDat = setupDatAccess( "RetainerTaskNormal", xiv::exd::Language::none ); m_RetainerTaskParameterDat = setupDatAccess( "RetainerTaskParameter", xiv::exd::Language::none ); m_RetainerTaskRandomDat = setupDatAccess( "RetainerTaskRandom", xiv::exd::Language::en ); m_SalvageDat = setupDatAccess( "Salvage", xiv::exd::Language::none ); m_SatisfactionNpcDat = setupDatAccess( "SatisfactionNpc", xiv::exd::Language::none ); m_SatisfactionSupplyDat = setupDatAccess( "SatisfactionSupply", xiv::exd::Language::none ); m_SatisfactionSupplyRewardDat = setupDatAccess( "SatisfactionSupplyReward", xiv::exd::Language::none ); m_ScreenImageDat = setupDatAccess( "ScreenImage", xiv::exd::Language::none ); m_SecretRecipeBookDat = setupDatAccess( "SecretRecipeBook", xiv::exd::Language::en ); m_SpearfishingItemDat = setupDatAccess( "SpearfishingItem", xiv::exd::Language::en ); m_SpearfishingNotebookDat = setupDatAccess( "SpearfishingNotebook", xiv::exd::Language::none ); m_SpecialShopDat = setupDatAccess( "SpecialShop", xiv::exd::Language::en ); m_SpecialShopItemCategoryDat = setupDatAccess( "SpecialShopItemCategory", xiv::exd::Language::en ); m_StainDat = setupDatAccess( "Stain", xiv::exd::Language::en ); m_StatusDat = setupDatAccess( "Status", xiv::exd::Language::en ); m_StoryDat = setupDatAccess( "Story", xiv::exd::Language::none ); m_SwitchTalkDat = setupDatAccess( "SwitchTalk", xiv::exd::Language::none ); m_TerritoryTypeDat = setupDatAccess( "TerritoryType", xiv::exd::Language::none ); m_TextCommandDat = setupDatAccess( "TextCommand", xiv::exd::Language::en ); m_TitleDat = setupDatAccess( "Title", xiv::exd::Language::en ); m_TomestonesDat = setupDatAccess( "Tomestones", xiv::exd::Language::none ); m_TomestonesItemDat = setupDatAccess( "TomestonesItem", xiv::exd::Language::none ); m_TopicSelectDat = setupDatAccess( "TopicSelect", xiv::exd::Language::en ); m_TownDat = setupDatAccess( "Town", xiv::exd::Language::en ); m_TraitDat = setupDatAccess( "Trait", xiv::exd::Language::en ); m_TraitRecastDat = setupDatAccess( "TraitRecast", xiv::exd::Language::none ); m_TraitTransientDat = setupDatAccess( "TraitTransient", xiv::exd::Language::en ); m_TribeDat = setupDatAccess( "Tribe", xiv::exd::Language::en ); m_TripleTriadDat = setupDatAccess( "TripleTriad", xiv::exd::Language::none ); m_TripleTriadCardDat = setupDatAccess( "TripleTriadCard", xiv::exd::Language::en ); m_TripleTriadCardRarityDat = setupDatAccess( "TripleTriadCardRarity", xiv::exd::Language::none ); m_TripleTriadCardResidentDat = setupDatAccess( "TripleTriadCardResident", xiv::exd::Language::none ); m_TripleTriadCardTypeDat = setupDatAccess( "TripleTriadCardType", xiv::exd::Language::en ); m_TripleTriadCompetitionDat = setupDatAccess( "TripleTriadCompetition", xiv::exd::Language::en ); m_TripleTriadRuleDat = setupDatAccess( "TripleTriadRule", xiv::exd::Language::en ); m_TutorialDat = setupDatAccess( "Tutorial", xiv::exd::Language::none ); m_TutorialDPSDat = setupDatAccess( "TutorialDPS", xiv::exd::Language::none ); m_TutorialHealerDat = setupDatAccess( "TutorialHealer", xiv::exd::Language::none ); m_TutorialTankDat = setupDatAccess( "TutorialTank", xiv::exd::Language::none ); m_WarpDat = setupDatAccess( "Warp", xiv::exd::Language::en ); m_WeatherDat = setupDatAccess( "Weather", xiv::exd::Language::en ); m_WeatherGroupDat = setupDatAccess( "WeatherGroup", xiv::exd::Language::none ); m_WeatherRateDat = setupDatAccess( "WeatherRate", xiv::exd::Language::none ); m_WeeklyBingoOrderDataDat = setupDatAccess( "WeeklyBingoOrderData", xiv::exd::Language::none ); m_WeeklyBingoRewardDataDat = setupDatAccess( "WeeklyBingoRewardData", xiv::exd::Language::none ); m_WeeklyBingoTextDat = setupDatAccess( "WeeklyBingoText", xiv::exd::Language::en ); m_WorldDCGroupTypeDat = setupDatAccess( "WorldDCGroupType", xiv::exd::Language::none ); + m_AchievementDat = setupDatAccess( "Achievement", xiv::exd::Language::en ); + m_AchievementCategoryDat = setupDatAccess( "AchievementCategory", xiv::exd::Language::en ); + m_AchievementKindDat = setupDatAccess( "AchievementKind", xiv::exd::Language::en ); + m_ActionDat = setupDatAccess( "Action", xiv::exd::Language::en ); + m_ActionCategoryDat = setupDatAccess( "ActionCategory", xiv::exd::Language::en ); + m_ActionComboRouteDat = setupDatAccess( "ActionComboRoute", xiv::exd::Language::en ); + m_ActionIndirectionDat = setupDatAccess( "ActionIndirection", xiv::exd::Language::none ); + m_ActionProcStatusDat = setupDatAccess( "ActionProcStatus", xiv::exd::Language::none ); + m_ActionTimelineDat = setupDatAccess( "ActionTimeline", xiv::exd::Language::none ); + m_ActionTransientDat = setupDatAccess( "ActionTransient", xiv::exd::Language::en ); + m_AddonDat = setupDatAccess( "Addon", xiv::exd::Language::en ); + m_AdventureDat = setupDatAccess( "Adventure", xiv::exd::Language::en ); + m_AdventureExPhaseDat = setupDatAccess( "AdventureExPhase", xiv::exd::Language::none ); + m_AetherCurrentDat = setupDatAccess( "AetherCurrent", xiv::exd::Language::none ); + m_AetherialWheelDat = setupDatAccess( "AetherialWheel", xiv::exd::Language::none ); + m_AetheryteDat = setupDatAccess( "Aetheryte", xiv::exd::Language::en ); + m_AirshipExplorationLevelDat = setupDatAccess( "AirshipExplorationLevel", xiv::exd::Language::none ); + m_AirshipExplorationLogDat = setupDatAccess( "AirshipExplorationLog", xiv::exd::Language::en ); + m_AirshipExplorationParamTypeDat = setupDatAccess( "AirshipExplorationParamType", xiv::exd::Language::en ); + m_AirshipExplorationPartDat = setupDatAccess( "AirshipExplorationPart", xiv::exd::Language::none ); + m_AirshipExplorationPointDat = setupDatAccess( "AirshipExplorationPoint", xiv::exd::Language::en ); + m_AnimaWeapon5Dat = setupDatAccess( "AnimaWeapon5", xiv::exd::Language::none ); + m_AnimaWeapon5ParamDat = setupDatAccess( "AnimaWeapon5Param", xiv::exd::Language::en ); + m_AnimaWeapon5PatternGroupDat = setupDatAccess( "AnimaWeapon5PatternGroup", xiv::exd::Language::en ); + m_AnimaWeapon5SpiritTalkDat = setupDatAccess( "AnimaWeapon5SpiritTalk", xiv::exd::Language::none ); + m_AnimaWeapon5SpiritTalkParamDat = setupDatAccess( "AnimaWeapon5SpiritTalkParam", xiv::exd::Language::en ); + m_AnimaWeapon5TradeItemDat = setupDatAccess( "AnimaWeapon5TradeItem", xiv::exd::Language::none ); + m_AnimaWeaponFUITalkDat = setupDatAccess( "AnimaWeaponFUITalk", xiv::exd::Language::none ); + m_AnimaWeaponFUITalkParamDat = setupDatAccess( "AnimaWeaponFUITalkParam", xiv::exd::Language::en ); + m_AnimaWeaponIconDat = setupDatAccess( "AnimaWeaponIcon", xiv::exd::Language::none ); + m_AnimaWeaponItemDat = setupDatAccess( "AnimaWeaponItem", xiv::exd::Language::none ); + m_AquariumFishDat = setupDatAccess( "AquariumFish", xiv::exd::Language::none ); + m_AquariumWaterDat = setupDatAccess( "AquariumWater", xiv::exd::Language::en ); + m_AttackTypeDat = setupDatAccess( "AttackType", xiv::exd::Language::en ); + m_BalloonDat = setupDatAccess( "Balloon", xiv::exd::Language::en ); + m_BaseParamDat = setupDatAccess( "BaseParam", xiv::exd::Language::en ); + m_BattleLeveDat = setupDatAccess( "BattleLeve", xiv::exd::Language::none ); + m_BeastRankBonusDat = setupDatAccess( "BeastRankBonus", xiv::exd::Language::none ); + m_BeastReputationRankDat = setupDatAccess( "BeastReputationRank", xiv::exd::Language::en ); + m_BeastTribeDat = setupDatAccess( "BeastTribe", xiv::exd::Language::en ); + m_BehaviorDat = setupDatAccess( "Behavior", xiv::exd::Language::none ); + m_BGMDat = setupDatAccess( "BGM", xiv::exd::Language::none ); + m_BNpcAnnounceIconDat = setupDatAccess( "BNpcAnnounceIcon", xiv::exd::Language::none ); + m_BNpcBaseDat = setupDatAccess( "BNpcBase", xiv::exd::Language::none ); + m_BNpcCustomizeDat = setupDatAccess( "BNpcCustomize", xiv::exd::Language::none ); + m_BNpcNameDat = setupDatAccess( "BNpcName", xiv::exd::Language::en ); + m_BuddyActionDat = setupDatAccess( "BuddyAction", xiv::exd::Language::en ); + m_BuddyEquipDat = setupDatAccess( "BuddyEquip", xiv::exd::Language::en ); + m_BuddyItemDat = setupDatAccess( "BuddyItem", xiv::exd::Language::none ); + m_BuddyRankDat = setupDatAccess( "BuddyRank", xiv::exd::Language::none ); + m_BuddySkillDat = setupDatAccess( "BuddySkill", xiv::exd::Language::none ); + m_CabinetDat = setupDatAccess( "Cabinet", xiv::exd::Language::none ); + m_CabinetCategoryDat = setupDatAccess( "CabinetCategory", xiv::exd::Language::none ); + m_CalendarDat = setupDatAccess( "Calendar", xiv::exd::Language::none ); + m_ChainBonusDat = setupDatAccess( "ChainBonus", xiv::exd::Language::none ); + m_CharaMakeCustomizeDat = setupDatAccess( "CharaMakeCustomize", xiv::exd::Language::none ); + m_CharaMakeTypeDat = setupDatAccess( "CharaMakeType", xiv::exd::Language::en ); + m_ChocoboRaceDat = setupDatAccess( "ChocoboRace", xiv::exd::Language::none ); + m_ChocoboRaceAbilityDat = setupDatAccess( "ChocoboRaceAbility", xiv::exd::Language::en ); + m_ChocoboRaceAbilityTypeDat = setupDatAccess( "ChocoboRaceAbilityType", xiv::exd::Language::none ); + m_ChocoboRaceItemDat = setupDatAccess( "ChocoboRaceItem", xiv::exd::Language::en ); + m_ChocoboRaceRankDat = setupDatAccess( "ChocoboRaceRank", xiv::exd::Language::none ); + m_ChocoboRaceStatusDat = setupDatAccess( "ChocoboRaceStatus", xiv::exd::Language::none ); + m_ChocoboRaceTerritoryDat = setupDatAccess( "ChocoboRaceTerritory", xiv::exd::Language::none ); + m_ChocoboTaxiStandDat = setupDatAccess( "ChocoboTaxiStand", xiv::exd::Language::en ); + m_ClassJobDat = setupDatAccess( "ClassJob", xiv::exd::Language::en ); + m_ClassJobCategoryDat = setupDatAccess( "ClassJobCategory", xiv::exd::Language::en ); + m_CompanionDat = setupDatAccess( "Companion", xiv::exd::Language::en ); + m_CompanionMoveDat = setupDatAccess( "CompanionMove", xiv::exd::Language::en ); + m_CompanionTransientDat = setupDatAccess( "CompanionTransient", xiv::exd::Language::en ); + m_CompanyActionDat = setupDatAccess( "CompanyAction", xiv::exd::Language::en ); + m_CompanyCraftDraftDat = setupDatAccess( "CompanyCraftDraft", xiv::exd::Language::en ); + m_CompanyCraftDraftCategoryDat = setupDatAccess( "CompanyCraftDraftCategory", xiv::exd::Language::en ); + m_CompanyCraftManufactoryStateDat = setupDatAccess( "CompanyCraftManufactoryState", xiv::exd::Language::en ); + m_CompanyCraftPartDat = setupDatAccess( "CompanyCraftPart", xiv::exd::Language::none ); + m_CompanyCraftProcessDat = setupDatAccess( "CompanyCraftProcess", xiv::exd::Language::none ); + m_CompanyCraftSequenceDat = setupDatAccess( "CompanyCraftSequence", xiv::exd::Language::none ); + m_CompanyCraftSupplyItemDat = setupDatAccess( "CompanyCraftSupplyItem", xiv::exd::Language::none ); + m_CompanyCraftTypeDat = setupDatAccess( "CompanyCraftType", xiv::exd::Language::en ); + m_CompleteJournalDat = setupDatAccess( "CompleteJournal", xiv::exd::Language::en ); + m_CompleteJournalCategoryDat = setupDatAccess( "CompleteJournalCategory", xiv::exd::Language::none ); + m_ContentExActionDat = setupDatAccess( "ContentExAction", xiv::exd::Language::none ); + m_ContentFinderConditionDat = setupDatAccess( "ContentFinderCondition", xiv::exd::Language::en ); + m_ContentFinderConditionTransientDat = setupDatAccess( "ContentFinderConditionTransient", xiv::exd::Language::en ); + m_ContentMemberTypeDat = setupDatAccess( "ContentMemberType", xiv::exd::Language::none ); + m_ContentRouletteDat = setupDatAccess( "ContentRoulette", xiv::exd::Language::en ); + m_ContentTypeDat = setupDatAccess( "ContentType", xiv::exd::Language::en ); + m_CraftActionDat = setupDatAccess( "CraftAction", xiv::exd::Language::en ); + m_CraftLeveDat = setupDatAccess( "CraftLeve", xiv::exd::Language::none ); + m_CraftTypeDat = setupDatAccess( "CraftType", xiv::exd::Language::en ); + m_CurrencyDat = setupDatAccess( "Currency", xiv::exd::Language::none ); + m_CustomTalkDat = setupDatAccess( "CustomTalk", xiv::exd::Language::en ); + m_CutsceneDat = setupDatAccess( "Cutscene", xiv::exd::Language::none ); + m_CutScreenImageDat = setupDatAccess( "CutScreenImage", xiv::exd::Language::none ); + m_DailySupplyItemDat = setupDatAccess( "DailySupplyItem", xiv::exd::Language::none ); + m_DeepDungeonBanDat = setupDatAccess( "DeepDungeonBan", xiv::exd::Language::none ); + m_DeepDungeonDangerDat = setupDatAccess( "DeepDungeonDanger", xiv::exd::Language::none ); + m_DeepDungeonEquipmentDat = setupDatAccess( "DeepDungeonEquipment", xiv::exd::Language::en ); + m_DeepDungeonFloorEffectUIDat = setupDatAccess( "DeepDungeonFloorEffectUI", xiv::exd::Language::en ); + m_DeepDungeonItemDat = setupDatAccess( "DeepDungeonItem", xiv::exd::Language::en ); + m_DeepDungeonStatusDat = setupDatAccess( "DeepDungeonStatus", xiv::exd::Language::none ); + m_DefaultTalkDat = setupDatAccess( "DefaultTalk", xiv::exd::Language::en ); + m_DeliveryQuestDat = setupDatAccess( "DeliveryQuest", xiv::exd::Language::none ); + m_DisposalShopDat = setupDatAccess( "DisposalShop", xiv::exd::Language::en ); + m_DisposalShopFilterTypeDat = setupDatAccess( "DisposalShopFilterType", xiv::exd::Language::en ); + m_DisposalShopItemDat = setupDatAccess( "DisposalShopItem", xiv::exd::Language::none ); + m_DpsChallengeDat = setupDatAccess( "DpsChallenge", xiv::exd::Language::en ); + m_DpsChallengeOfficerDat = setupDatAccess( "DpsChallengeOfficer", xiv::exd::Language::none ); + m_DpsChallengeTransientDat = setupDatAccess( "DpsChallengeTransient", xiv::exd::Language::none ); + m_EmoteDat = setupDatAccess( "Emote", xiv::exd::Language::en ); + m_EmoteCategoryDat = setupDatAccess( "EmoteCategory", xiv::exd::Language::en ); + m_ENpcBaseDat = setupDatAccess( "ENpcBase", xiv::exd::Language::none ); + m_ENpcResidentDat = setupDatAccess( "ENpcResident", xiv::exd::Language::en ); + m_EObjDat = setupDatAccess( "EObj", xiv::exd::Language::none ); + m_EquipRaceCategoryDat = setupDatAccess( "EquipRaceCategory", xiv::exd::Language::none ); + m_EquipSlotCategoryDat = setupDatAccess( "EquipSlotCategory", xiv::exd::Language::none ); + m_EventActionDat = setupDatAccess( "EventAction", xiv::exd::Language::en ); + m_EventIconPriorityDat = setupDatAccess( "EventIconPriority", xiv::exd::Language::none ); + m_EventIconTypeDat = setupDatAccess( "EventIconType", xiv::exd::Language::none ); + m_EventItemDat = setupDatAccess( "EventItem", xiv::exd::Language::en ); + m_EventItemHelpDat = setupDatAccess( "EventItemHelp", xiv::exd::Language::en ); + m_ExVersionDat = setupDatAccess( "ExVersion", xiv::exd::Language::en ); + m_FateDat = setupDatAccess( "Fate", xiv::exd::Language::en ); + m_FCActivityDat = setupDatAccess( "FCActivity", xiv::exd::Language::en ); + m_FCAuthorityDat = setupDatAccess( "FCAuthority", xiv::exd::Language::en ); + m_FCAuthorityCategoryDat = setupDatAccess( "FCAuthorityCategory", xiv::exd::Language::en ); + m_FCChestNameDat = setupDatAccess( "FCChestName", xiv::exd::Language::en ); + m_FccShopDat = setupDatAccess( "FccShop", xiv::exd::Language::en ); + m_FCHierarchyDat = setupDatAccess( "FCHierarchy", xiv::exd::Language::en ); + m_FCReputationDat = setupDatAccess( "FCReputation", xiv::exd::Language::en ); + m_FCRightsDat = setupDatAccess( "FCRights", xiv::exd::Language::en ); + m_FishingSpotDat = setupDatAccess( "FishingSpot", xiv::exd::Language::en ); + m_FishParameterDat = setupDatAccess( "FishParameter", xiv::exd::Language::en ); + m_GardeningSeedDat = setupDatAccess( "GardeningSeed", xiv::exd::Language::none ); + m_GatheringConditionDat = setupDatAccess( "GatheringCondition", xiv::exd::Language::en ); + m_GatheringExpDat = setupDatAccess( "GatheringExp", xiv::exd::Language::none ); + m_GatheringItemDat = setupDatAccess( "GatheringItem", xiv::exd::Language::none ); + m_GatheringItemLevelConvertTableDat = setupDatAccess( "GatheringItemLevelConvertTable", xiv::exd::Language::none ); + m_GatheringItemPointDat = setupDatAccess( "GatheringItemPoint", xiv::exd::Language::none ); + m_GatheringNotebookListDat = setupDatAccess( "GatheringNotebookList", xiv::exd::Language::none ); + m_GatheringPointDat = setupDatAccess( "GatheringPoint", xiv::exd::Language::none ); + m_GatheringPointBaseDat = setupDatAccess( "GatheringPointBase", xiv::exd::Language::none ); + m_GatheringPointBonusDat = setupDatAccess( "GatheringPointBonus", xiv::exd::Language::none ); + m_GatheringPointBonusTypeDat = setupDatAccess( "GatheringPointBonusType", xiv::exd::Language::en ); + m_GatheringPointNameDat = setupDatAccess( "GatheringPointName", xiv::exd::Language::en ); + m_GatheringSubCategoryDat = setupDatAccess( "GatheringSubCategory", xiv::exd::Language::en ); + m_GatheringTypeDat = setupDatAccess( "GatheringType", xiv::exd::Language::en ); + m_GcArmyExpeditionDat = setupDatAccess( "GcArmyExpedition", xiv::exd::Language::en ); + m_GcArmyExpeditionMemberBonusDat = setupDatAccess( "GcArmyExpeditionMemberBonus", xiv::exd::Language::none ); + m_GcArmyExpeditionTypeDat = setupDatAccess( "GcArmyExpeditionType", xiv::exd::Language::en ); + m_GcArmyMemberGrowDat = setupDatAccess( "GcArmyMemberGrow", xiv::exd::Language::none ); + m_GcArmyTrainingDat = setupDatAccess( "GcArmyTraining", xiv::exd::Language::en ); + m_GCScripShopCategoryDat = setupDatAccess( "GCScripShopCategory", xiv::exd::Language::none ); + m_GCScripShopItemDat = setupDatAccess( "GCScripShopItem", xiv::exd::Language::none ); + m_GCShopDat = setupDatAccess( "GCShop", xiv::exd::Language::none ); + m_GCShopItemCategoryDat = setupDatAccess( "GCShopItemCategory", xiv::exd::Language::en ); + m_GCSupplyDutyDat = setupDatAccess( "GCSupplyDuty", xiv::exd::Language::none ); + m_GCSupplyDutyRewardDat = setupDatAccess( "GCSupplyDutyReward", xiv::exd::Language::none ); + m_GeneralActionDat = setupDatAccess( "GeneralAction", xiv::exd::Language::en ); + m_GilShopDat = setupDatAccess( "GilShop", xiv::exd::Language::en ); + m_GilShopItemDat = setupDatAccess( "GilShopItem", xiv::exd::Language::none ); + m_GoldSaucerTextDataDat = setupDatAccess( "GoldSaucerTextData", xiv::exd::Language::en ); + m_GrandCompanyDat = setupDatAccess( "GrandCompany", xiv::exd::Language::en ); + m_GrandCompanyRankDat = setupDatAccess( "GrandCompanyRank", xiv::exd::Language::none ); + m_GuardianDeityDat = setupDatAccess( "GuardianDeity", xiv::exd::Language::en ); + m_GuildleveAssignmentDat = setupDatAccess( "GuildleveAssignment", xiv::exd::Language::none ); + m_GuildOrderGuideDat = setupDatAccess( "GuildOrderGuide", xiv::exd::Language::none ); + m_GuildOrderOfficerDat = setupDatAccess( "GuildOrderOfficer", xiv::exd::Language::none ); + m_HouseRetainerPoseDat = setupDatAccess( "HouseRetainerPose", xiv::exd::Language::none ); + m_HousingFurnitureDat = setupDatAccess( "HousingFurniture", xiv::exd::Language::none ); + m_HousingYardObjectDat = setupDatAccess( "HousingYardObject", xiv::exd::Language::none ); + m_InstanceContentDat = setupDatAccess( "InstanceContent", xiv::exd::Language::en ); + m_InstanceContentBuffDat = setupDatAccess( "InstanceContentBuff", xiv::exd::Language::none ); + m_InstanceContentTextDataDat = setupDatAccess( "InstanceContentTextData", xiv::exd::Language::en ); + m_InstanceContentTypeDat = setupDatAccess( "InstanceContentType", xiv::exd::Language::none ); + m_ItemDat = setupDatAccess( "Item", xiv::exd::Language::en ); + m_ItemActionDat = setupDatAccess( "ItemAction", xiv::exd::Language::none ); + m_ItemFoodDat = setupDatAccess( "ItemFood", xiv::exd::Language::none ); + m_ItemSearchCategoryDat = setupDatAccess( "ItemSearchCategory", xiv::exd::Language::en ); + m_ItemSeriesDat = setupDatAccess( "ItemSeries", xiv::exd::Language::en ); + m_ItemSpecialBonusDat = setupDatAccess( "ItemSpecialBonus", xiv::exd::Language::en ); + m_ItemUICategoryDat = setupDatAccess( "ItemUICategory", xiv::exd::Language::en ); + m_JournalCategoryDat = setupDatAccess( "JournalCategory", xiv::exd::Language::en ); + m_JournalGenreDat = setupDatAccess( "JournalGenre", xiv::exd::Language::en ); + m_JournalSectionDat = setupDatAccess( "JournalSection", xiv::exd::Language::en ); + m_LeveDat = setupDatAccess( "Leve", xiv::exd::Language::en ); + m_LeveAssignmentTypeDat = setupDatAccess( "LeveAssignmentType", xiv::exd::Language::en ); + m_LeveClientDat = setupDatAccess( "LeveClient", xiv::exd::Language::en ); + m_LevelDat = setupDatAccess( "Level", xiv::exd::Language::none ); + m_LeveRewardItemDat = setupDatAccess( "LeveRewardItem", xiv::exd::Language::none ); + m_LeveRewardItemGroupDat = setupDatAccess( "LeveRewardItemGroup", xiv::exd::Language::none ); + m_LeveVfxDat = setupDatAccess( "LeveVfx", xiv::exd::Language::none ); + m_LogFilterDat = setupDatAccess( "LogFilter", xiv::exd::Language::en ); + m_LogKindDat = setupDatAccess( "LogKind", xiv::exd::Language::en ); + m_LogKindCategoryTextDat = setupDatAccess( "LogKindCategoryText", xiv::exd::Language::en ); + m_LogMessageDat = setupDatAccess( "LogMessage", xiv::exd::Language::en ); + m_MacroIconDat = setupDatAccess( "MacroIcon", xiv::exd::Language::none ); + m_MacroIconRedirectOldDat = setupDatAccess( "MacroIconRedirectOld", xiv::exd::Language::none ); + m_MainCommandDat = setupDatAccess( "MainCommand", xiv::exd::Language::en ); + m_MainCommandCategoryDat = setupDatAccess( "MainCommandCategory", xiv::exd::Language::en ); + m_MapDat = setupDatAccess( "Map", xiv::exd::Language::none ); + m_MapMarkerDat = setupDatAccess( "MapMarker", xiv::exd::Language::none ); + m_MapSymbolDat = setupDatAccess( "MapSymbol", xiv::exd::Language::none ); + m_MasterpieceSupplyDutyDat = setupDatAccess( "MasterpieceSupplyDuty", xiv::exd::Language::none ); + m_MasterpieceSupplyMultiplierDat = setupDatAccess( "MasterpieceSupplyMultiplier", xiv::exd::Language::none ); + m_MateriaDat = setupDatAccess( "Materia", xiv::exd::Language::none ); + m_MinionRaceDat = setupDatAccess( "MinionRace", xiv::exd::Language::en ); + m_MinionRulesDat = setupDatAccess( "MinionRules", xiv::exd::Language::en ); + m_MinionSkillTypeDat = setupDatAccess( "MinionSkillType", xiv::exd::Language::en ); + m_MobHuntTargetDat = setupDatAccess( "MobHuntTarget", xiv::exd::Language::none ); + m_ModelCharaDat = setupDatAccess( "ModelChara", xiv::exd::Language::none ); + m_MonsterNoteDat = setupDatAccess( "MonsterNote", xiv::exd::Language::en ); + m_MonsterNoteTargetDat = setupDatAccess( "MonsterNoteTarget", xiv::exd::Language::none ); + m_MountDat = setupDatAccess( "Mount", xiv::exd::Language::en ); + m_MountActionDat = setupDatAccess( "MountAction", xiv::exd::Language::none ); + m_NpcEquipDat = setupDatAccess( "NpcEquip", xiv::exd::Language::none ); + m_OmenDat = setupDatAccess( "Omen", xiv::exd::Language::none ); + m_OnlineStatusDat = setupDatAccess( "OnlineStatus", xiv::exd::Language::en ); + m_OrchestrionDat = setupDatAccess( "Orchestrion", xiv::exd::Language::en ); + m_OrchestrionPathDat = setupDatAccess( "OrchestrionPath", xiv::exd::Language::none ); + m_ParamGrowDat = setupDatAccess( "ParamGrow", xiv::exd::Language::none ); + m_PetDat = setupDatAccess( "Pet", xiv::exd::Language::en ); + m_PetActionDat = setupDatAccess( "PetAction", xiv::exd::Language::en ); + m_PictureDat = setupDatAccess( "Picture", xiv::exd::Language::none ); + m_PlaceNameDat = setupDatAccess( "PlaceName", xiv::exd::Language::en ); + m_QuestDat = setupDatAccess( "Quest", xiv::exd::Language::en ); + m_QuestRewardOtherDat = setupDatAccess( "QuestRewardOther", xiv::exd::Language::en ); + m_RaceDat = setupDatAccess( "Race", xiv::exd::Language::en ); + m_RacingChocoboItemDat = setupDatAccess( "RacingChocoboItem", xiv::exd::Language::none ); + m_RacingChocoboNameDat = setupDatAccess( "RacingChocoboName", xiv::exd::Language::en ); + m_RacingChocoboNameCategoryDat = setupDatAccess( "RacingChocoboNameCategory", xiv::exd::Language::en ); + m_RacingChocoboNameInfoDat = setupDatAccess( "RacingChocoboNameInfo", xiv::exd::Language::none ); + m_RacingChocoboParamDat = setupDatAccess( "RacingChocoboParam", xiv::exd::Language::en ); + m_RecipeDat = setupDatAccess( "Recipe", xiv::exd::Language::none ); + m_RecipeElementDat = setupDatAccess( "RecipeElement", xiv::exd::Language::en ); + m_RecipeLevelTableDat = setupDatAccess( "RecipeLevelTable", xiv::exd::Language::none ); + m_RecipeNotebookListDat = setupDatAccess( "RecipeNotebookList", xiv::exd::Language::none ); + m_RelicDat = setupDatAccess( "Relic", xiv::exd::Language::none ); + m_Relic3Dat = setupDatAccess( "Relic3", xiv::exd::Language::none ); + m_RelicItemDat = setupDatAccess( "RelicItem", xiv::exd::Language::none ); + m_RelicNoteDat = setupDatAccess( "RelicNote", xiv::exd::Language::none ); + m_RelicNoteCategoryDat = setupDatAccess( "RelicNoteCategory", xiv::exd::Language::en ); + m_RetainerTaskDat = setupDatAccess( "RetainerTask", xiv::exd::Language::none ); + m_RetainerTaskNormalDat = setupDatAccess( "RetainerTaskNormal", xiv::exd::Language::none ); + m_RetainerTaskParameterDat = setupDatAccess( "RetainerTaskParameter", xiv::exd::Language::none ); + m_RetainerTaskRandomDat = setupDatAccess( "RetainerTaskRandom", xiv::exd::Language::en ); + m_SalvageDat = setupDatAccess( "Salvage", xiv::exd::Language::none ); + m_SatisfactionNpcDat = setupDatAccess( "SatisfactionNpc", xiv::exd::Language::none ); + m_SatisfactionSupplyDat = setupDatAccess( "SatisfactionSupply", xiv::exd::Language::none ); + m_SatisfactionSupplyRewardDat = setupDatAccess( "SatisfactionSupplyReward", xiv::exd::Language::none ); + m_ScreenImageDat = setupDatAccess( "ScreenImage", xiv::exd::Language::none ); + m_SecretRecipeBookDat = setupDatAccess( "SecretRecipeBook", xiv::exd::Language::en ); + m_SpearfishingItemDat = setupDatAccess( "SpearfishingItem", xiv::exd::Language::en ); + m_SpearfishingNotebookDat = setupDatAccess( "SpearfishingNotebook", xiv::exd::Language::none ); + m_SpecialShopDat = setupDatAccess( "SpecialShop", xiv::exd::Language::en ); + m_SpecialShopItemCategoryDat = setupDatAccess( "SpecialShopItemCategory", xiv::exd::Language::en ); + m_StainDat = setupDatAccess( "Stain", xiv::exd::Language::en ); + m_StatusDat = setupDatAccess( "Status", xiv::exd::Language::en ); + m_StoryDat = setupDatAccess( "Story", xiv::exd::Language::none ); + m_SwitchTalkDat = setupDatAccess( "SwitchTalk", xiv::exd::Language::none ); + m_TerritoryTypeDat = setupDatAccess( "TerritoryType", xiv::exd::Language::none ); + m_TextCommandDat = setupDatAccess( "TextCommand", xiv::exd::Language::en ); + m_TitleDat = setupDatAccess( "Title", xiv::exd::Language::en ); + m_TomestonesDat = setupDatAccess( "Tomestones", xiv::exd::Language::none ); + m_TomestonesItemDat = setupDatAccess( "TomestonesItem", xiv::exd::Language::none ); + m_TopicSelectDat = setupDatAccess( "TopicSelect", xiv::exd::Language::en ); + m_TownDat = setupDatAccess( "Town", xiv::exd::Language::en ); + m_TraitDat = setupDatAccess( "Trait", xiv::exd::Language::en ); + m_TraitRecastDat = setupDatAccess( "TraitRecast", xiv::exd::Language::none ); + m_TraitTransientDat = setupDatAccess( "TraitTransient", xiv::exd::Language::en ); + m_TribeDat = setupDatAccess( "Tribe", xiv::exd::Language::en ); + m_TripleTriadDat = setupDatAccess( "TripleTriad", xiv::exd::Language::none ); + m_TripleTriadCardDat = setupDatAccess( "TripleTriadCard", xiv::exd::Language::en ); + m_TripleTriadCardRarityDat = setupDatAccess( "TripleTriadCardRarity", xiv::exd::Language::none ); + m_TripleTriadCardResidentDat = setupDatAccess( "TripleTriadCardResident", xiv::exd::Language::none ); + m_TripleTriadCardTypeDat = setupDatAccess( "TripleTriadCardType", xiv::exd::Language::en ); + m_TripleTriadCompetitionDat = setupDatAccess( "TripleTriadCompetition", xiv::exd::Language::en ); + m_TripleTriadRuleDat = setupDatAccess( "TripleTriadRule", xiv::exd::Language::en ); + m_TutorialDat = setupDatAccess( "Tutorial", xiv::exd::Language::none ); + m_TutorialDPSDat = setupDatAccess( "TutorialDPS", xiv::exd::Language::none ); + m_TutorialHealerDat = setupDatAccess( "TutorialHealer", xiv::exd::Language::none ); + m_TutorialTankDat = setupDatAccess( "TutorialTank", xiv::exd::Language::none ); + m_WarpDat = setupDatAccess( "Warp", xiv::exd::Language::en ); + m_WeatherDat = setupDatAccess( "Weather", xiv::exd::Language::en ); + m_WeatherGroupDat = setupDatAccess( "WeatherGroup", xiv::exd::Language::none ); + m_WeatherRateDat = setupDatAccess( "WeatherRate", xiv::exd::Language::none ); + m_WeeklyBingoOrderDataDat = setupDatAccess( "WeeklyBingoOrderData", xiv::exd::Language::none ); + m_WeeklyBingoRewardDataDat = setupDatAccess( "WeeklyBingoRewardData", xiv::exd::Language::none ); + m_WeeklyBingoTextDat = setupDatAccess( "WeeklyBingoText", xiv::exd::Language::en ); + m_WorldDCGroupTypeDat = setupDatAccess( "WorldDCGroupType", xiv::exd::Language::none ); + } catch( std::runtime_error ) { @@ -4343,6 +5827,21 @@ boost::shared_ptr< Core::Data::EObj > } return nullptr; } +boost::shared_ptr< Core::Data::EquipRaceCategory > + Core::Data::ExdDataGenerated::getEquipRaceCategory( uint32_t EquipRaceCategoryId ) +{ + try + { + auto row = m_EquipRaceCategoryDat.get_row( EquipRaceCategoryId ); + auto info = boost::make_shared< EquipRaceCategory >( EquipRaceCategoryId, this ); + return info; + } + catch( ... ) + { + return nullptr; + } + return nullptr; +} boost::shared_ptr< Core::Data::EquipSlotCategory > Core::Data::ExdDataGenerated::getEquipSlotCategory( uint32_t EquipSlotCategoryId ) { @@ -4898,6 +6397,21 @@ boost::shared_ptr< Core::Data::GcArmyTraining > } return nullptr; } +boost::shared_ptr< Core::Data::GCScripShopCategory > + Core::Data::ExdDataGenerated::getGCScripShopCategory( uint32_t GCScripShopCategoryId ) +{ + try + { + auto row = m_GCScripShopCategoryDat.get_row( GCScripShopCategoryId ); + auto info = boost::make_shared< GCScripShopCategory >( GCScripShopCategoryId, this ); + return info; + } + catch( ... ) + { + return nullptr; + } + return nullptr; +} boost::shared_ptr< Core::Data::GCScripShopItem > Core::Data::ExdDataGenerated::getGCScripShopItem( uint32_t GCScripShopItemId ) { @@ -5663,6 +7177,21 @@ boost::shared_ptr< Core::Data::MasterpieceSupplyDuty > } return nullptr; } +boost::shared_ptr< Core::Data::MasterpieceSupplyMultiplier > + Core::Data::ExdDataGenerated::getMasterpieceSupplyMultiplier( uint32_t MasterpieceSupplyMultiplierId ) +{ + try + { + auto row = m_MasterpieceSupplyMultiplierDat.get_row( MasterpieceSupplyMultiplierId ); + auto info = boost::make_shared< MasterpieceSupplyMultiplier >( MasterpieceSupplyMultiplierId, this ); + return info; + } + catch( ... ) + { + return nullptr; + } + return nullptr; +} boost::shared_ptr< Core::Data::Materia > Core::Data::ExdDataGenerated::getMateria( uint32_t MateriaId ) { diff --git a/src/tools/exd_struct_test/ExdDataGenerated.h b/src/tools/exd_struct_test/ExdDataGenerated.h index d4a3ff7d..2f70c5a2 100644 --- a/src/tools/exd_struct_test/ExdDataGenerated.h +++ b/src/tools/exd_struct_test/ExdDataGenerated.h @@ -10,12 +10,305 @@ #include #include #include +#include namespace Core { namespace Data { class ExdDataGenerated; +struct Achievement; +struct AchievementCategory; +struct AchievementKind; +struct Action; +struct ActionCategory; +struct ActionComboRoute; +struct ActionIndirection; +struct ActionProcStatus; +struct ActionTimeline; +struct ActionTransient; +struct Addon; +struct Adventure; +struct AdventureExPhase; +struct AetherCurrent; +struct AetherialWheel; +struct Aetheryte; +struct AirshipExplorationLevel; +struct AirshipExplorationLog; +struct AirshipExplorationParamType; +struct AirshipExplorationPart; +struct AirshipExplorationPoint; +struct AnimaWeapon5; +struct AnimaWeapon5Param; +struct AnimaWeapon5PatternGroup; +struct AnimaWeapon5SpiritTalk; +struct AnimaWeapon5SpiritTalkParam; +struct AnimaWeapon5TradeItem; +struct AnimaWeaponFUITalk; +struct AnimaWeaponFUITalkParam; +struct AnimaWeaponIcon; +struct AnimaWeaponItem; +struct AquariumFish; +struct AquariumWater; +struct AttackType; +struct Balloon; +struct BaseParam; +struct BattleLeve; +struct BeastRankBonus; +struct BeastReputationRank; +struct BeastTribe; +struct Behavior; +struct BGM; +struct BNpcAnnounceIcon; +struct BNpcBase; +struct BNpcCustomize; +struct BNpcName; +struct BuddyAction; +struct BuddyEquip; +struct BuddyItem; +struct BuddyRank; +struct BuddySkill; +struct Cabinet; +struct CabinetCategory; +struct Calendar; +struct ChainBonus; +struct CharaMakeCustomize; +struct CharaMakeType; +struct ChocoboRace; +struct ChocoboRaceAbility; +struct ChocoboRaceAbilityType; +struct ChocoboRaceItem; +struct ChocoboRaceRank; +struct ChocoboRaceStatus; +struct ChocoboRaceTerritory; +struct ChocoboTaxiStand; +struct ClassJob; +struct ClassJobCategory; +struct Companion; +struct CompanionMove; +struct CompanionTransient; +struct CompanyAction; +struct CompanyCraftDraft; +struct CompanyCraftDraftCategory; +struct CompanyCraftManufactoryState; +struct CompanyCraftPart; +struct CompanyCraftProcess; +struct CompanyCraftSequence; +struct CompanyCraftSupplyItem; +struct CompanyCraftType; +struct CompleteJournal; +struct CompleteJournalCategory; +struct ContentExAction; +struct ContentFinderCondition; +struct ContentFinderConditionTransient; +struct ContentMemberType; +struct ContentRoulette; +struct ContentType; +struct CraftAction; +struct CraftLeve; +struct CraftType; +struct Currency; +struct CustomTalk; +struct Cutscene; +struct CutScreenImage; +struct DailySupplyItem; +struct DeepDungeonBan; +struct DeepDungeonDanger; +struct DeepDungeonEquipment; +struct DeepDungeonFloorEffectUI; +struct DeepDungeonItem; +struct DeepDungeonStatus; +struct DefaultTalk; +struct DeliveryQuest; +struct DisposalShop; +struct DisposalShopFilterType; +struct DisposalShopItem; +struct DpsChallenge; +struct DpsChallengeOfficer; +struct DpsChallengeTransient; +struct Emote; +struct EmoteCategory; +struct ENpcBase; +struct ENpcResident; +struct EObj; +struct EquipRaceCategory; +struct EquipSlotCategory; +struct EventAction; +struct EventIconPriority; +struct EventIconType; +struct EventItem; +struct EventItemHelp; +struct ExVersion; +struct Fate; +struct FCActivity; +struct FCAuthority; +struct FCAuthorityCategory; +struct FCChestName; +struct FccShop; +struct FCHierarchy; +struct FCReputation; +struct FCRights; +struct FishingSpot; +struct FishParameter; +struct GardeningSeed; +struct GatheringCondition; +struct GatheringExp; +struct GatheringItem; +struct GatheringItemLevelConvertTable; +struct GatheringItemPoint; +struct GatheringNotebookList; +struct GatheringPoint; +struct GatheringPointBase; +struct GatheringPointBonus; +struct GatheringPointBonusType; +struct GatheringPointName; +struct GatheringSubCategory; +struct GatheringType; +struct GcArmyExpedition; +struct GcArmyExpeditionMemberBonus; +struct GcArmyExpeditionType; +struct GcArmyMemberGrow; +struct GcArmyTraining; +struct GCScripShopCategory; +struct GCScripShopItem; +struct GCShop; +struct GCShopItemCategory; +struct GCSupplyDuty; +struct GCSupplyDutyReward; +struct GeneralAction; +struct GilShop; +struct GilShopItem; +struct GoldSaucerTextData; +struct GrandCompany; +struct GrandCompanyRank; +struct GuardianDeity; +struct GuildleveAssignment; +struct GuildOrderGuide; +struct GuildOrderOfficer; +struct HouseRetainerPose; +struct HousingFurniture; +struct HousingYardObject; +struct InstanceContent; +struct InstanceContentBuff; +struct InstanceContentTextData; +struct InstanceContentType; +struct Item; +struct ItemAction; +struct ItemFood; +struct ItemSearchCategory; +struct ItemSeries; +struct ItemSpecialBonus; +struct ItemUICategory; +struct JournalCategory; +struct JournalGenre; +struct JournalSection; +struct Leve; +struct LeveAssignmentType; +struct LeveClient; +struct Level; +struct LeveRewardItem; +struct LeveRewardItemGroup; +struct LeveVfx; +struct LogFilter; +struct LogKind; +struct LogKindCategoryText; +struct LogMessage; +struct MacroIcon; +struct MacroIconRedirectOld; +struct MainCommand; +struct MainCommandCategory; +struct Map; +struct MapMarker; +struct MapSymbol; +struct MasterpieceSupplyDuty; +struct MasterpieceSupplyMultiplier; +struct Materia; +struct MinionRace; +struct MinionRules; +struct MinionSkillType; +struct MobHuntTarget; +struct ModelChara; +struct MonsterNote; +struct MonsterNoteTarget; +struct Mount; +struct MountAction; +struct NpcEquip; +struct Omen; +struct OnlineStatus; +struct Orchestrion; +struct OrchestrionPath; +struct ParamGrow; +struct Pet; +struct PetAction; +struct Picture; +struct PlaceName; +struct Quest; +struct QuestRewardOther; +struct Race; +struct RacingChocoboItem; +struct RacingChocoboName; +struct RacingChocoboNameCategory; +struct RacingChocoboNameInfo; +struct RacingChocoboParam; +struct Recipe; +struct RecipeElement; +struct RecipeLevelTable; +struct RecipeNotebookList; +struct Relic; +struct Relic3; +struct RelicItem; +struct RelicNote; +struct RelicNoteCategory; +struct RetainerTask; +struct RetainerTaskNormal; +struct RetainerTaskParameter; +struct RetainerTaskRandom; +struct Salvage; +struct SatisfactionNpc; +struct SatisfactionSupply; +struct SatisfactionSupplyReward; +struct ScreenImage; +struct SecretRecipeBook; +struct SpearfishingItem; +struct SpearfishingNotebook; +struct SpecialShop; +struct SpecialShopItemCategory; +struct Stain; +struct Status; +struct Story; +struct SwitchTalk; +struct TerritoryType; +struct TextCommand; +struct Title; +struct Tomestones; +struct TomestonesItem; +struct TopicSelect; +struct Town; +struct Trait; +struct TraitRecast; +struct TraitTransient; +struct Tribe; +struct TripleTriad; +struct TripleTriadCard; +struct TripleTriadCardRarity; +struct TripleTriadCardResident; +struct TripleTriadCardType; +struct TripleTriadCompetition; +struct TripleTriadRule; +struct Tutorial; +struct TutorialDPS; +struct TutorialHealer; +struct TutorialTank; +struct Warp; +struct Weather; +struct WeatherGroup; +struct WeatherRate; +struct WeeklyBingoOrderData; +struct WeeklyBingoRewardData; +struct WeeklyBingoText; +struct WorldDCGroupType; + + struct Achievement { uint8_t achievementCategory; @@ -26,6 +319,7 @@ struct Achievement uint32_t item; uint16_t icon; uint8_t type; + std::vector< int32_t > data; uint16_t order; Achievement( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); @@ -96,6 +390,7 @@ struct ActionCategory struct ActionComboRoute { std::string name; + std::vector< uint16_t > action; ActionComboRoute( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -245,6 +540,7 @@ struct AnimaWeapon5 { int32_t item; uint8_t secondaryStatTotal; + std::vector< uint8_t > parameter; AnimaWeapon5( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -316,6 +612,7 @@ struct AnimaWeaponIcon struct AnimaWeaponItem { + std::vector< uint32_t > item; AnimaWeaponItem( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -360,6 +657,11 @@ struct BaseParam struct BattleLeve { + std::vector< uint16_t > enemyLevel; + std::vector< uint32_t > bNpcName; + std::vector< int32_t > itemsInvolved; + std::vector< uint8_t > itemsInvolvedQty; + std::vector< uint8_t > itemDropRate; BattleLeve( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -367,6 +669,7 @@ struct BattleLeve struct BeastRankBonus { uint32_t item; + std::vector< uint8_t > itemQuantity; BeastRankBonus( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -529,6 +832,8 @@ struct CabinetCategory struct Calendar { + std::vector< uint8_t > month; + std::vector< uint8_t > day; Calendar( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -554,6 +859,7 @@ struct CharaMakeType int32_t race; int32_t tribe; int8_t gender; + std::vector< int32_t > facialFeatureIcon; CharaMakeType( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -772,6 +1078,7 @@ struct CompanyCraftManufactoryState struct CompanyCraftPart { uint8_t companyCraftType; + std::vector< uint16_t > companyCraftProcess; CompanyCraftPart( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -788,6 +1095,7 @@ struct CompanyCraftSequence int32_t companyCraftDraftCategory; int32_t companyCraftType; int32_t companyCraftDraft; + std::vector< uint16_t > companyCraftPart; CompanyCraftSequence( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -809,6 +1117,7 @@ struct CompanyCraftType struct CompleteJournal { std::string name; + std::vector< int32_t > cutscene; CompleteJournal( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -936,6 +1245,8 @@ struct CustomTalk uint32_t iconActor; uint32_t iconMap; std::string name; + std::vector< std::string > scriptInstruction; + std::vector< uint32_t > scriptArg; bool text; CustomTalk( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); @@ -1002,7 +1313,7 @@ struct DeepDungeonFloorEffectUI struct DeepDungeonItem { uint32_t icon; - int8_t singular; + std::string singular; std::string plural; std::string name; std::string tooltip; @@ -1022,6 +1333,8 @@ struct DeepDungeonStatus struct DefaultTalk { + std::vector< uint16_t > actionTimelinePose; + std::vector< std::string > text; DefaultTalk( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -1071,6 +1384,7 @@ struct DpsChallenge struct DpsChallengeOfficer { uint32_t unlockQuest; + std::vector< uint16_t > challengeName; DpsChallengeOfficer( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -1103,6 +1417,7 @@ struct EmoteCategory struct ENpcBase { + std::vector< uint32_t > eNpcData; uint8_t race; uint8_t gender; uint8_t bodyType; @@ -1178,6 +1493,20 @@ struct EObj EObj( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; +struct EquipRaceCategory +{ + bool hyur; + bool elezen; + bool lalafell; + bool miqote; + bool roegadyn; + bool auRa; + bool male; + bool female; + + EquipRaceCategory( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); +}; + struct EquipSlotCategory { int8_t mainHand; @@ -1208,6 +1537,7 @@ struct EventAction struct EventIconPriority { + std::vector< uint32_t > icon; EventIconPriority( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -1260,6 +1590,7 @@ struct Fate std::string name; std::string description; std::string objective; + std::vector< std::string > statusText; Fate( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -1336,6 +1667,7 @@ struct FishingSpot int16_t x; int16_t z; uint16_t radius; + std::vector< int32_t > item; uint16_t placeName; FishingSpot( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); @@ -1401,6 +1733,7 @@ struct GatheringItemPoint struct GatheringNotebookList { + std::vector< int32_t > gatheringItem; GatheringNotebookList( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -1408,6 +1741,7 @@ struct GatheringNotebookList struct GatheringPoint { int32_t gatheringPointBase; + std::vector< uint16_t > gatheringPointBonus; uint16_t territoryType; uint16_t placeName; uint16_t gatheringSubCategory; @@ -1419,6 +1753,7 @@ struct GatheringPointBase { int32_t gatheringType; uint8_t gatheringLevel; + std::vector< int32_t > item; bool isLimited; GatheringPointBase( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); @@ -1516,11 +1851,21 @@ struct GcArmyTraining GcArmyTraining( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; +struct GCScripShopCategory +{ + int8_t grandCompany; + int8_t tier; + int8_t subCategory; + + GCScripShopCategory( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); +}; + struct GCScripShopItem { int32_t item; - int32_t requiredRank; + int32_t requiredGrandCompanyRank; uint32_t costGCSeals; + uint8_t sortKey; GCScripShopItem( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -1620,6 +1965,7 @@ struct GuardianDeity struct GuildleveAssignment { + std::vector< uint32_t > quest; GuildleveAssignment( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -1783,6 +2129,8 @@ struct Item struct ItemAction { uint16_t type; + std::vector< uint16_t > data; + std::vector< uint16_t > dataHQ; ItemAction( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -2044,9 +2392,19 @@ struct MasterpieceSupplyDuty MasterpieceSupplyDuty( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; +struct MasterpieceSupplyMultiplier +{ + std::vector< uint16_t > xpMultiplier; + std::vector< uint16_t > currencyMultiplier; + + MasterpieceSupplyMultiplier( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); +}; + struct Materia { + std::vector< int32_t > item; uint8_t baseParam; + std::vector< uint8_t > value; Materia( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -2096,6 +2454,8 @@ struct ModelChara struct MonsterNote { + std::vector< uint16_t > monsterNoteTarget; + std::vector< uint8_t > count; uint32_t reward; std::string name; @@ -2124,6 +2484,7 @@ struct Mount struct MountAction { + std::vector< uint16_t > action; MountAction( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -2252,10 +2613,12 @@ struct Quest uint32_t previousQuest1; uint32_t previousQuest2; uint8_t questLockJoin; + std::vector< uint32_t > questLock; uint8_t classJobUnlock; uint8_t grandCompany; uint8_t grandCompanyRank; uint8_t instanceContentJoin; + std::vector< uint32_t > instanceContent; uint16_t bellStart; uint16_t bellEnd; uint8_t beastTribe; @@ -2266,13 +2629,26 @@ struct Quest uint32_t eNpcResidentEnd; bool isRepeatable; uint8_t repeatIntervalType; + std::vector< std::string > scriptInstruction; + std::vector< uint32_t > scriptArg; + std::vector< uint32_t > level; uint8_t classJobRequired; uint16_t expFactor; uint32_t gilReward; uint16_t gCSeals; + std::vector< uint8_t > itemCatalyst; + std::vector< uint8_t > itemCountCatalyst; uint8_t itemRewardType; + std::vector< uint32_t > itemReward0; + std::vector< uint8_t > itemCountReward0; + std::vector< uint8_t > stainReward0; + std::vector< uint32_t > itemReward1; + std::vector< uint8_t > itemCountReward1; + std::vector< bool > isHQReward1; + std::vector< uint8_t > stainReward1; uint8_t emoteReward; uint16_t actionReward; + std::vector< uint8_t > generalActionReward; uint8_t otherReward; uint32_t instanceContentUnlock; uint8_t tomestoneReward; @@ -2315,6 +2691,7 @@ struct RacingChocoboItem { int32_t item; uint8_t category; + std::vector< uint8_t > param; RacingChocoboItem( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -2393,6 +2770,7 @@ struct RecipeLevelTable struct RecipeNotebookList { + std::vector< int32_t > recipe; RecipeNotebookList( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -2437,6 +2815,8 @@ struct RelicItem struct RelicNote { uint32_t eventItem; + std::vector< uint16_t > monsterNoteTargetNM; + std::vector< uint16_t > leve; RelicNote( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -2476,6 +2856,9 @@ struct RetainerTaskNormal struct RetainerTaskParameter { + std::vector< int16_t > itemLevelDoW; + std::vector< int16_t > gatheringDoL; + std::vector< int16_t > gatheringFSH; RetainerTaskParameter( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -2500,6 +2883,8 @@ struct SatisfactionNpc int32_t npc; int32_t questRequired; uint8_t deliveriesPerWeek; + std::vector< int32_t > supplyIndex; + std::vector< uint16_t > satisfactionRequired; int32_t icon; SatisfactionNpc( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); @@ -2572,6 +2957,7 @@ struct SpearfishingNotebook struct SpecialShop { std::string name; + std::vector< int32_t > questItem; int32_t questShop; SpecialShop( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); @@ -2620,6 +3006,8 @@ struct Story struct SwitchTalk { + std::vector< uint32_t > quest; + std::vector< uint32_t > defaultTalk; SwitchTalk( uint32_t row_id, Core::Data::ExdDataGenerated* exdData ); }; @@ -2732,9 +3120,13 @@ struct Tribe struct TripleTriad { + std::vector< uint16_t > tripleTriadCardFixed; + std::vector< uint16_t > tripleTriadCardVariable; + std::vector< uint8_t > tripleTriadRule; bool usesRegionalRules; uint16_t fee; uint8_t previousQuestJoin; + std::vector< uint32_t > previousQuest; uint16_t startTime; uint16_t endTime; uint32_t defaultTalkChallenge; @@ -2915,6 +3307,8 @@ struct WorldDCGroupType return *boost::get< T >( &fields.at( index ) ); } + void loadIdList( xiv::exd::Exd& data, std::set< uint32_t >& outIdList ); + boost::shared_ptr< xiv::dat::GameData > m_data; boost::shared_ptr< xiv::exd::ExdData > m_exd_data; @@ -3032,6 +3426,7 @@ struct WorldDCGroupType xiv::exd::Exd m_ENpcBaseDat; xiv::exd::Exd m_ENpcResidentDat; xiv::exd::Exd m_EObjDat; + xiv::exd::Exd m_EquipRaceCategoryDat; xiv::exd::Exd m_EquipSlotCategoryDat; xiv::exd::Exd m_EventActionDat; xiv::exd::Exd m_EventIconPriorityDat; @@ -3069,6 +3464,7 @@ struct WorldDCGroupType xiv::exd::Exd m_GcArmyExpeditionTypeDat; xiv::exd::Exd m_GcArmyMemberGrowDat; xiv::exd::Exd m_GcArmyTrainingDat; + xiv::exd::Exd m_GCScripShopCategoryDat; xiv::exd::Exd m_GCScripShopItemDat; xiv::exd::Exd m_GCShopDat; xiv::exd::Exd m_GCShopItemCategoryDat; @@ -3120,6 +3516,7 @@ struct WorldDCGroupType xiv::exd::Exd m_MapMarkerDat; xiv::exd::Exd m_MapSymbolDat; xiv::exd::Exd m_MasterpieceSupplyDutyDat; + xiv::exd::Exd m_MasterpieceSupplyMultiplierDat; xiv::exd::Exd m_MateriaDat; xiv::exd::Exd m_MinionRaceDat; xiv::exd::Exd m_MinionRulesDat; @@ -3207,7 +3604,2331 @@ struct WorldDCGroupType xiv::exd::Exd m_WorldDCGroupTypeDat; - boost::shared_ptr< Achievement > getAchievement( uint32_t AchievementId ); boost::shared_ptr< AchievementCategory > getAchievementCategory( uint32_t AchievementCategoryId ); boost::shared_ptr< AchievementKind > getAchievementKind( uint32_t AchievementKindId ); boost::shared_ptr< Action > getAction( uint32_t ActionId ); boost::shared_ptr< ActionCategory > getActionCategory( uint32_t ActionCategoryId ); boost::shared_ptr< ActionComboRoute > getActionComboRoute( uint32_t ActionComboRouteId ); boost::shared_ptr< ActionIndirection > getActionIndirection( uint32_t ActionIndirectionId ); boost::shared_ptr< ActionProcStatus > getActionProcStatus( uint32_t ActionProcStatusId ); boost::shared_ptr< ActionTimeline > getActionTimeline( uint32_t ActionTimelineId ); boost::shared_ptr< ActionTransient > getActionTransient( uint32_t ActionTransientId ); boost::shared_ptr< Addon > getAddon( uint32_t AddonId ); boost::shared_ptr< Adventure > getAdventure( uint32_t AdventureId ); boost::shared_ptr< AdventureExPhase > getAdventureExPhase( uint32_t AdventureExPhaseId ); boost::shared_ptr< AetherCurrent > getAetherCurrent( uint32_t AetherCurrentId ); boost::shared_ptr< AetherialWheel > getAetherialWheel( uint32_t AetherialWheelId ); boost::shared_ptr< Aetheryte > getAetheryte( uint32_t AetheryteId ); boost::shared_ptr< AirshipExplorationLevel > getAirshipExplorationLevel( uint32_t AirshipExplorationLevelId ); boost::shared_ptr< AirshipExplorationLog > getAirshipExplorationLog( uint32_t AirshipExplorationLogId ); boost::shared_ptr< AirshipExplorationParamType > getAirshipExplorationParamType( uint32_t AirshipExplorationParamTypeId ); boost::shared_ptr< AirshipExplorationPart > getAirshipExplorationPart( uint32_t AirshipExplorationPartId ); boost::shared_ptr< AirshipExplorationPoint > getAirshipExplorationPoint( uint32_t AirshipExplorationPointId ); boost::shared_ptr< AnimaWeapon5 > getAnimaWeapon5( uint32_t AnimaWeapon5Id ); boost::shared_ptr< AnimaWeapon5Param > getAnimaWeapon5Param( uint32_t AnimaWeapon5ParamId ); boost::shared_ptr< AnimaWeapon5PatternGroup > getAnimaWeapon5PatternGroup( uint32_t AnimaWeapon5PatternGroupId ); boost::shared_ptr< AnimaWeapon5SpiritTalk > getAnimaWeapon5SpiritTalk( uint32_t AnimaWeapon5SpiritTalkId ); boost::shared_ptr< AnimaWeapon5SpiritTalkParam > getAnimaWeapon5SpiritTalkParam( uint32_t AnimaWeapon5SpiritTalkParamId ); boost::shared_ptr< AnimaWeapon5TradeItem > getAnimaWeapon5TradeItem( uint32_t AnimaWeapon5TradeItemId ); boost::shared_ptr< AnimaWeaponFUITalk > getAnimaWeaponFUITalk( uint32_t AnimaWeaponFUITalkId ); boost::shared_ptr< AnimaWeaponFUITalkParam > getAnimaWeaponFUITalkParam( uint32_t AnimaWeaponFUITalkParamId ); boost::shared_ptr< AnimaWeaponIcon > getAnimaWeaponIcon( uint32_t AnimaWeaponIconId ); boost::shared_ptr< AnimaWeaponItem > getAnimaWeaponItem( uint32_t AnimaWeaponItemId ); boost::shared_ptr< AquariumFish > getAquariumFish( uint32_t AquariumFishId ); boost::shared_ptr< AquariumWater > getAquariumWater( uint32_t AquariumWaterId ); boost::shared_ptr< AttackType > getAttackType( uint32_t AttackTypeId ); boost::shared_ptr< Balloon > getBalloon( uint32_t BalloonId ); boost::shared_ptr< BaseParam > getBaseParam( uint32_t BaseParamId ); boost::shared_ptr< BattleLeve > getBattleLeve( uint32_t BattleLeveId ); boost::shared_ptr< BeastRankBonus > getBeastRankBonus( uint32_t BeastRankBonusId ); boost::shared_ptr< BeastReputationRank > getBeastReputationRank( uint32_t BeastReputationRankId ); boost::shared_ptr< BeastTribe > getBeastTribe( uint32_t BeastTribeId ); boost::shared_ptr< Behavior > getBehavior( uint32_t BehaviorId ); boost::shared_ptr< BGM > getBGM( uint32_t BGMId ); boost::shared_ptr< BNpcAnnounceIcon > getBNpcAnnounceIcon( uint32_t BNpcAnnounceIconId ); boost::shared_ptr< BNpcBase > getBNpcBase( uint32_t BNpcBaseId ); boost::shared_ptr< BNpcCustomize > getBNpcCustomize( uint32_t BNpcCustomizeId ); boost::shared_ptr< BNpcName > getBNpcName( uint32_t BNpcNameId ); boost::shared_ptr< BuddyAction > getBuddyAction( uint32_t BuddyActionId ); boost::shared_ptr< BuddyEquip > getBuddyEquip( uint32_t BuddyEquipId ); boost::shared_ptr< BuddyItem > getBuddyItem( uint32_t BuddyItemId ); boost::shared_ptr< BuddyRank > getBuddyRank( uint32_t BuddyRankId ); boost::shared_ptr< BuddySkill > getBuddySkill( uint32_t BuddySkillId ); boost::shared_ptr< Cabinet > getCabinet( uint32_t CabinetId ); boost::shared_ptr< CabinetCategory > getCabinetCategory( uint32_t CabinetCategoryId ); boost::shared_ptr< Calendar > getCalendar( uint32_t CalendarId ); boost::shared_ptr< ChainBonus > getChainBonus( uint32_t ChainBonusId ); boost::shared_ptr< CharaMakeCustomize > getCharaMakeCustomize( uint32_t CharaMakeCustomizeId ); boost::shared_ptr< CharaMakeType > getCharaMakeType( uint32_t CharaMakeTypeId ); boost::shared_ptr< ChocoboRace > getChocoboRace( uint32_t ChocoboRaceId ); boost::shared_ptr< ChocoboRaceAbility > getChocoboRaceAbility( uint32_t ChocoboRaceAbilityId ); boost::shared_ptr< ChocoboRaceAbilityType > getChocoboRaceAbilityType( uint32_t ChocoboRaceAbilityTypeId ); boost::shared_ptr< ChocoboRaceItem > getChocoboRaceItem( uint32_t ChocoboRaceItemId ); boost::shared_ptr< ChocoboRaceRank > getChocoboRaceRank( uint32_t ChocoboRaceRankId ); boost::shared_ptr< ChocoboRaceStatus > getChocoboRaceStatus( uint32_t ChocoboRaceStatusId ); boost::shared_ptr< ChocoboRaceTerritory > getChocoboRaceTerritory( uint32_t ChocoboRaceTerritoryId ); boost::shared_ptr< ChocoboTaxiStand > getChocoboTaxiStand( uint32_t ChocoboTaxiStandId ); boost::shared_ptr< ClassJob > getClassJob( uint32_t ClassJobId ); boost::shared_ptr< ClassJobCategory > getClassJobCategory( uint32_t ClassJobCategoryId ); boost::shared_ptr< Companion > getCompanion( uint32_t CompanionId ); boost::shared_ptr< CompanionMove > getCompanionMove( uint32_t CompanionMoveId ); boost::shared_ptr< CompanionTransient > getCompanionTransient( uint32_t CompanionTransientId ); boost::shared_ptr< CompanyAction > getCompanyAction( uint32_t CompanyActionId ); boost::shared_ptr< CompanyCraftDraft > getCompanyCraftDraft( uint32_t CompanyCraftDraftId ); boost::shared_ptr< CompanyCraftDraftCategory > getCompanyCraftDraftCategory( uint32_t CompanyCraftDraftCategoryId ); boost::shared_ptr< CompanyCraftManufactoryState > getCompanyCraftManufactoryState( uint32_t CompanyCraftManufactoryStateId ); boost::shared_ptr< CompanyCraftPart > getCompanyCraftPart( uint32_t CompanyCraftPartId ); boost::shared_ptr< CompanyCraftProcess > getCompanyCraftProcess( uint32_t CompanyCraftProcessId ); boost::shared_ptr< CompanyCraftSequence > getCompanyCraftSequence( uint32_t CompanyCraftSequenceId ); boost::shared_ptr< CompanyCraftSupplyItem > getCompanyCraftSupplyItem( uint32_t CompanyCraftSupplyItemId ); boost::shared_ptr< CompanyCraftType > getCompanyCraftType( uint32_t CompanyCraftTypeId ); boost::shared_ptr< CompleteJournal > getCompleteJournal( uint32_t CompleteJournalId ); boost::shared_ptr< CompleteJournalCategory > getCompleteJournalCategory( uint32_t CompleteJournalCategoryId ); boost::shared_ptr< ContentExAction > getContentExAction( uint32_t ContentExActionId ); boost::shared_ptr< ContentFinderCondition > getContentFinderCondition( uint32_t ContentFinderConditionId ); boost::shared_ptr< ContentFinderConditionTransient > getContentFinderConditionTransient( uint32_t ContentFinderConditionTransientId ); boost::shared_ptr< ContentMemberType > getContentMemberType( uint32_t ContentMemberTypeId ); boost::shared_ptr< ContentRoulette > getContentRoulette( uint32_t ContentRouletteId ); boost::shared_ptr< ContentType > getContentType( uint32_t ContentTypeId ); boost::shared_ptr< CraftAction > getCraftAction( uint32_t CraftActionId ); boost::shared_ptr< CraftLeve > getCraftLeve( uint32_t CraftLeveId ); boost::shared_ptr< CraftType > getCraftType( uint32_t CraftTypeId ); boost::shared_ptr< Currency > getCurrency( uint32_t CurrencyId ); boost::shared_ptr< CustomTalk > getCustomTalk( uint32_t CustomTalkId ); boost::shared_ptr< Cutscene > getCutscene( uint32_t CutsceneId ); boost::shared_ptr< CutScreenImage > getCutScreenImage( uint32_t CutScreenImageId ); boost::shared_ptr< DailySupplyItem > getDailySupplyItem( uint32_t DailySupplyItemId ); boost::shared_ptr< DeepDungeonBan > getDeepDungeonBan( uint32_t DeepDungeonBanId ); boost::shared_ptr< DeepDungeonDanger > getDeepDungeonDanger( uint32_t DeepDungeonDangerId ); boost::shared_ptr< DeepDungeonEquipment > getDeepDungeonEquipment( uint32_t DeepDungeonEquipmentId ); boost::shared_ptr< DeepDungeonFloorEffectUI > getDeepDungeonFloorEffectUI( uint32_t DeepDungeonFloorEffectUIId ); boost::shared_ptr< DeepDungeonItem > getDeepDungeonItem( uint32_t DeepDungeonItemId ); boost::shared_ptr< DeepDungeonStatus > getDeepDungeonStatus( uint32_t DeepDungeonStatusId ); boost::shared_ptr< DefaultTalk > getDefaultTalk( uint32_t DefaultTalkId ); boost::shared_ptr< DeliveryQuest > getDeliveryQuest( uint32_t DeliveryQuestId ); boost::shared_ptr< DisposalShop > getDisposalShop( uint32_t DisposalShopId ); boost::shared_ptr< DisposalShopFilterType > getDisposalShopFilterType( uint32_t DisposalShopFilterTypeId ); boost::shared_ptr< DisposalShopItem > getDisposalShopItem( uint32_t DisposalShopItemId ); boost::shared_ptr< DpsChallenge > getDpsChallenge( uint32_t DpsChallengeId ); boost::shared_ptr< DpsChallengeOfficer > getDpsChallengeOfficer( uint32_t DpsChallengeOfficerId ); boost::shared_ptr< DpsChallengeTransient > getDpsChallengeTransient( uint32_t DpsChallengeTransientId ); boost::shared_ptr< Emote > getEmote( uint32_t EmoteId ); boost::shared_ptr< EmoteCategory > getEmoteCategory( uint32_t EmoteCategoryId ); boost::shared_ptr< ENpcBase > getENpcBase( uint32_t ENpcBaseId ); boost::shared_ptr< ENpcResident > getENpcResident( uint32_t ENpcResidentId ); boost::shared_ptr< EObj > getEObj( uint32_t EObjId ); boost::shared_ptr< EquipSlotCategory > getEquipSlotCategory( uint32_t EquipSlotCategoryId ); boost::shared_ptr< EventAction > getEventAction( uint32_t EventActionId ); boost::shared_ptr< EventIconPriority > getEventIconPriority( uint32_t EventIconPriorityId ); boost::shared_ptr< EventIconType > getEventIconType( uint32_t EventIconTypeId ); boost::shared_ptr< EventItem > getEventItem( uint32_t EventItemId ); boost::shared_ptr< EventItemHelp > getEventItemHelp( uint32_t EventItemHelpId ); boost::shared_ptr< ExVersion > getExVersion( uint32_t ExVersionId ); boost::shared_ptr< Fate > getFate( uint32_t FateId ); boost::shared_ptr< FCActivity > getFCActivity( uint32_t FCActivityId ); boost::shared_ptr< FCAuthority > getFCAuthority( uint32_t FCAuthorityId ); boost::shared_ptr< FCAuthorityCategory > getFCAuthorityCategory( uint32_t FCAuthorityCategoryId ); boost::shared_ptr< FCChestName > getFCChestName( uint32_t FCChestNameId ); boost::shared_ptr< FccShop > getFccShop( uint32_t FccShopId ); boost::shared_ptr< FCHierarchy > getFCHierarchy( uint32_t FCHierarchyId ); boost::shared_ptr< FCReputation > getFCReputation( uint32_t FCReputationId ); boost::shared_ptr< FCRights > getFCRights( uint32_t FCRightsId ); boost::shared_ptr< FishingSpot > getFishingSpot( uint32_t FishingSpotId ); boost::shared_ptr< FishParameter > getFishParameter( uint32_t FishParameterId ); boost::shared_ptr< GardeningSeed > getGardeningSeed( uint32_t GardeningSeedId ); boost::shared_ptr< GatheringCondition > getGatheringCondition( uint32_t GatheringConditionId ); boost::shared_ptr< GatheringExp > getGatheringExp( uint32_t GatheringExpId ); boost::shared_ptr< GatheringItem > getGatheringItem( uint32_t GatheringItemId ); boost::shared_ptr< GatheringItemLevelConvertTable > getGatheringItemLevelConvertTable( uint32_t GatheringItemLevelConvertTableId ); boost::shared_ptr< GatheringItemPoint > getGatheringItemPoint( uint32_t GatheringItemPointId ); boost::shared_ptr< GatheringNotebookList > getGatheringNotebookList( uint32_t GatheringNotebookListId ); boost::shared_ptr< GatheringPoint > getGatheringPoint( uint32_t GatheringPointId ); boost::shared_ptr< GatheringPointBase > getGatheringPointBase( uint32_t GatheringPointBaseId ); boost::shared_ptr< GatheringPointBonus > getGatheringPointBonus( uint32_t GatheringPointBonusId ); boost::shared_ptr< GatheringPointBonusType > getGatheringPointBonusType( uint32_t GatheringPointBonusTypeId ); boost::shared_ptr< GatheringPointName > getGatheringPointName( uint32_t GatheringPointNameId ); boost::shared_ptr< GatheringSubCategory > getGatheringSubCategory( uint32_t GatheringSubCategoryId ); boost::shared_ptr< GatheringType > getGatheringType( uint32_t GatheringTypeId ); boost::shared_ptr< GcArmyExpedition > getGcArmyExpedition( uint32_t GcArmyExpeditionId ); boost::shared_ptr< GcArmyExpeditionMemberBonus > getGcArmyExpeditionMemberBonus( uint32_t GcArmyExpeditionMemberBonusId ); boost::shared_ptr< GcArmyExpeditionType > getGcArmyExpeditionType( uint32_t GcArmyExpeditionTypeId ); boost::shared_ptr< GcArmyMemberGrow > getGcArmyMemberGrow( uint32_t GcArmyMemberGrowId ); boost::shared_ptr< GcArmyTraining > getGcArmyTraining( uint32_t GcArmyTrainingId ); boost::shared_ptr< GCScripShopItem > getGCScripShopItem( uint32_t GCScripShopItemId ); boost::shared_ptr< GCShop > getGCShop( uint32_t GCShopId ); boost::shared_ptr< GCShopItemCategory > getGCShopItemCategory( uint32_t GCShopItemCategoryId ); boost::shared_ptr< GCSupplyDuty > getGCSupplyDuty( uint32_t GCSupplyDutyId ); boost::shared_ptr< GCSupplyDutyReward > getGCSupplyDutyReward( uint32_t GCSupplyDutyRewardId ); boost::shared_ptr< GeneralAction > getGeneralAction( uint32_t GeneralActionId ); boost::shared_ptr< GilShop > getGilShop( uint32_t GilShopId ); boost::shared_ptr< GilShopItem > getGilShopItem( uint32_t GilShopItemId ); boost::shared_ptr< GoldSaucerTextData > getGoldSaucerTextData( uint32_t GoldSaucerTextDataId ); boost::shared_ptr< GrandCompany > getGrandCompany( uint32_t GrandCompanyId ); boost::shared_ptr< GrandCompanyRank > getGrandCompanyRank( uint32_t GrandCompanyRankId ); boost::shared_ptr< GuardianDeity > getGuardianDeity( uint32_t GuardianDeityId ); boost::shared_ptr< GuildleveAssignment > getGuildleveAssignment( uint32_t GuildleveAssignmentId ); boost::shared_ptr< GuildOrderGuide > getGuildOrderGuide( uint32_t GuildOrderGuideId ); boost::shared_ptr< GuildOrderOfficer > getGuildOrderOfficer( uint32_t GuildOrderOfficerId ); boost::shared_ptr< HouseRetainerPose > getHouseRetainerPose( uint32_t HouseRetainerPoseId ); boost::shared_ptr< HousingFurniture > getHousingFurniture( uint32_t HousingFurnitureId ); boost::shared_ptr< HousingYardObject > getHousingYardObject( uint32_t HousingYardObjectId ); boost::shared_ptr< InstanceContent > getInstanceContent( uint32_t InstanceContentId ); boost::shared_ptr< InstanceContentBuff > getInstanceContentBuff( uint32_t InstanceContentBuffId ); boost::shared_ptr< InstanceContentTextData > getInstanceContentTextData( uint32_t InstanceContentTextDataId ); boost::shared_ptr< InstanceContentType > getInstanceContentType( uint32_t InstanceContentTypeId ); boost::shared_ptr< Item > getItem( uint32_t ItemId ); boost::shared_ptr< ItemAction > getItemAction( uint32_t ItemActionId ); boost::shared_ptr< ItemFood > getItemFood( uint32_t ItemFoodId ); boost::shared_ptr< ItemSearchCategory > getItemSearchCategory( uint32_t ItemSearchCategoryId ); boost::shared_ptr< ItemSeries > getItemSeries( uint32_t ItemSeriesId ); boost::shared_ptr< ItemSpecialBonus > getItemSpecialBonus( uint32_t ItemSpecialBonusId ); boost::shared_ptr< ItemUICategory > getItemUICategory( uint32_t ItemUICategoryId ); boost::shared_ptr< JournalCategory > getJournalCategory( uint32_t JournalCategoryId ); boost::shared_ptr< JournalGenre > getJournalGenre( uint32_t JournalGenreId ); boost::shared_ptr< JournalSection > getJournalSection( uint32_t JournalSectionId ); boost::shared_ptr< Leve > getLeve( uint32_t LeveId ); boost::shared_ptr< LeveAssignmentType > getLeveAssignmentType( uint32_t LeveAssignmentTypeId ); boost::shared_ptr< LeveClient > getLeveClient( uint32_t LeveClientId ); boost::shared_ptr< Level > getLevel( uint32_t LevelId ); boost::shared_ptr< LeveRewardItem > getLeveRewardItem( uint32_t LeveRewardItemId ); boost::shared_ptr< LeveRewardItemGroup > getLeveRewardItemGroup( uint32_t LeveRewardItemGroupId ); boost::shared_ptr< LeveVfx > getLeveVfx( uint32_t LeveVfxId ); boost::shared_ptr< LogFilter > getLogFilter( uint32_t LogFilterId ); boost::shared_ptr< LogKind > getLogKind( uint32_t LogKindId ); boost::shared_ptr< LogKindCategoryText > getLogKindCategoryText( uint32_t LogKindCategoryTextId ); boost::shared_ptr< LogMessage > getLogMessage( uint32_t LogMessageId ); boost::shared_ptr< MacroIcon > getMacroIcon( uint32_t MacroIconId ); boost::shared_ptr< MacroIconRedirectOld > getMacroIconRedirectOld( uint32_t MacroIconRedirectOldId ); boost::shared_ptr< MainCommand > getMainCommand( uint32_t MainCommandId ); boost::shared_ptr< MainCommandCategory > getMainCommandCategory( uint32_t MainCommandCategoryId ); boost::shared_ptr< Map > getMap( uint32_t MapId ); boost::shared_ptr< MapMarker > getMapMarker( uint32_t MapMarkerId ); boost::shared_ptr< MapSymbol > getMapSymbol( uint32_t MapSymbolId ); boost::shared_ptr< MasterpieceSupplyDuty > getMasterpieceSupplyDuty( uint32_t MasterpieceSupplyDutyId ); boost::shared_ptr< Materia > getMateria( uint32_t MateriaId ); boost::shared_ptr< MinionRace > getMinionRace( uint32_t MinionRaceId ); boost::shared_ptr< MinionRules > getMinionRules( uint32_t MinionRulesId ); boost::shared_ptr< MinionSkillType > getMinionSkillType( uint32_t MinionSkillTypeId ); boost::shared_ptr< MobHuntTarget > getMobHuntTarget( uint32_t MobHuntTargetId ); boost::shared_ptr< ModelChara > getModelChara( uint32_t ModelCharaId ); boost::shared_ptr< MonsterNote > getMonsterNote( uint32_t MonsterNoteId ); boost::shared_ptr< MonsterNoteTarget > getMonsterNoteTarget( uint32_t MonsterNoteTargetId ); boost::shared_ptr< Mount > getMount( uint32_t MountId ); boost::shared_ptr< MountAction > getMountAction( uint32_t MountActionId ); boost::shared_ptr< NpcEquip > getNpcEquip( uint32_t NpcEquipId ); boost::shared_ptr< Omen > getOmen( uint32_t OmenId ); boost::shared_ptr< OnlineStatus > getOnlineStatus( uint32_t OnlineStatusId ); boost::shared_ptr< Orchestrion > getOrchestrion( uint32_t OrchestrionId ); boost::shared_ptr< OrchestrionPath > getOrchestrionPath( uint32_t OrchestrionPathId ); boost::shared_ptr< ParamGrow > getParamGrow( uint32_t ParamGrowId ); boost::shared_ptr< Pet > getPet( uint32_t PetId ); boost::shared_ptr< PetAction > getPetAction( uint32_t PetActionId ); boost::shared_ptr< Picture > getPicture( uint32_t PictureId ); boost::shared_ptr< PlaceName > getPlaceName( uint32_t PlaceNameId ); boost::shared_ptr< Quest > getQuest( uint32_t QuestId ); boost::shared_ptr< QuestRewardOther > getQuestRewardOther( uint32_t QuestRewardOtherId ); boost::shared_ptr< Race > getRace( uint32_t RaceId ); boost::shared_ptr< RacingChocoboItem > getRacingChocoboItem( uint32_t RacingChocoboItemId ); boost::shared_ptr< RacingChocoboName > getRacingChocoboName( uint32_t RacingChocoboNameId ); boost::shared_ptr< RacingChocoboNameCategory > getRacingChocoboNameCategory( uint32_t RacingChocoboNameCategoryId ); boost::shared_ptr< RacingChocoboNameInfo > getRacingChocoboNameInfo( uint32_t RacingChocoboNameInfoId ); boost::shared_ptr< RacingChocoboParam > getRacingChocoboParam( uint32_t RacingChocoboParamId ); boost::shared_ptr< Recipe > getRecipe( uint32_t RecipeId ); boost::shared_ptr< RecipeElement > getRecipeElement( uint32_t RecipeElementId ); boost::shared_ptr< RecipeLevelTable > getRecipeLevelTable( uint32_t RecipeLevelTableId ); boost::shared_ptr< RecipeNotebookList > getRecipeNotebookList( uint32_t RecipeNotebookListId ); boost::shared_ptr< Relic > getRelic( uint32_t RelicId ); boost::shared_ptr< Relic3 > getRelic3( uint32_t Relic3Id ); boost::shared_ptr< RelicItem > getRelicItem( uint32_t RelicItemId ); boost::shared_ptr< RelicNote > getRelicNote( uint32_t RelicNoteId ); boost::shared_ptr< RelicNoteCategory > getRelicNoteCategory( uint32_t RelicNoteCategoryId ); boost::shared_ptr< RetainerTask > getRetainerTask( uint32_t RetainerTaskId ); boost::shared_ptr< RetainerTaskNormal > getRetainerTaskNormal( uint32_t RetainerTaskNormalId ); boost::shared_ptr< RetainerTaskParameter > getRetainerTaskParameter( uint32_t RetainerTaskParameterId ); boost::shared_ptr< RetainerTaskRandom > getRetainerTaskRandom( uint32_t RetainerTaskRandomId ); boost::shared_ptr< Salvage > getSalvage( uint32_t SalvageId ); boost::shared_ptr< SatisfactionNpc > getSatisfactionNpc( uint32_t SatisfactionNpcId ); boost::shared_ptr< SatisfactionSupply > getSatisfactionSupply( uint32_t SatisfactionSupplyId ); boost::shared_ptr< SatisfactionSupplyReward > getSatisfactionSupplyReward( uint32_t SatisfactionSupplyRewardId ); boost::shared_ptr< ScreenImage > getScreenImage( uint32_t ScreenImageId ); boost::shared_ptr< SecretRecipeBook > getSecretRecipeBook( uint32_t SecretRecipeBookId ); boost::shared_ptr< SpearfishingItem > getSpearfishingItem( uint32_t SpearfishingItemId ); boost::shared_ptr< SpearfishingNotebook > getSpearfishingNotebook( uint32_t SpearfishingNotebookId ); boost::shared_ptr< SpecialShop > getSpecialShop( uint32_t SpecialShopId ); boost::shared_ptr< SpecialShopItemCategory > getSpecialShopItemCategory( uint32_t SpecialShopItemCategoryId ); boost::shared_ptr< Stain > getStain( uint32_t StainId ); boost::shared_ptr< Status > getStatus( uint32_t StatusId ); boost::shared_ptr< Story > getStory( uint32_t StoryId ); boost::shared_ptr< SwitchTalk > getSwitchTalk( uint32_t SwitchTalkId ); boost::shared_ptr< TerritoryType > getTerritoryType( uint32_t TerritoryTypeId ); boost::shared_ptr< TextCommand > getTextCommand( uint32_t TextCommandId ); boost::shared_ptr< Title > getTitle( uint32_t TitleId ); boost::shared_ptr< Tomestones > getTomestones( uint32_t TomestonesId ); boost::shared_ptr< TomestonesItem > getTomestonesItem( uint32_t TomestonesItemId ); boost::shared_ptr< TopicSelect > getTopicSelect( uint32_t TopicSelectId ); boost::shared_ptr< Town > getTown( uint32_t TownId ); boost::shared_ptr< Trait > getTrait( uint32_t TraitId ); boost::shared_ptr< TraitRecast > getTraitRecast( uint32_t TraitRecastId ); boost::shared_ptr< TraitTransient > getTraitTransient( uint32_t TraitTransientId ); boost::shared_ptr< Tribe > getTribe( uint32_t TribeId ); boost::shared_ptr< TripleTriad > getTripleTriad( uint32_t TripleTriadId ); boost::shared_ptr< TripleTriadCard > getTripleTriadCard( uint32_t TripleTriadCardId ); boost::shared_ptr< TripleTriadCardRarity > getTripleTriadCardRarity( uint32_t TripleTriadCardRarityId ); boost::shared_ptr< TripleTriadCardResident > getTripleTriadCardResident( uint32_t TripleTriadCardResidentId ); boost::shared_ptr< TripleTriadCardType > getTripleTriadCardType( uint32_t TripleTriadCardTypeId ); boost::shared_ptr< TripleTriadCompetition > getTripleTriadCompetition( uint32_t TripleTriadCompetitionId ); boost::shared_ptr< TripleTriadRule > getTripleTriadRule( uint32_t TripleTriadRuleId ); boost::shared_ptr< Tutorial > getTutorial( uint32_t TutorialId ); boost::shared_ptr< TutorialDPS > getTutorialDPS( uint32_t TutorialDPSId ); boost::shared_ptr< TutorialHealer > getTutorialHealer( uint32_t TutorialHealerId ); boost::shared_ptr< TutorialTank > getTutorialTank( uint32_t TutorialTankId ); boost::shared_ptr< Warp > getWarp( uint32_t WarpId ); boost::shared_ptr< Weather > getWeather( uint32_t WeatherId ); boost::shared_ptr< WeatherGroup > getWeatherGroup( uint32_t WeatherGroupId ); boost::shared_ptr< WeatherRate > getWeatherRate( uint32_t WeatherRateId ); boost::shared_ptr< WeeklyBingoOrderData > getWeeklyBingoOrderData( uint32_t WeeklyBingoOrderDataId ); boost::shared_ptr< WeeklyBingoRewardData > getWeeklyBingoRewardData( uint32_t WeeklyBingoRewardDataId ); boost::shared_ptr< WeeklyBingoText > getWeeklyBingoText( uint32_t WeeklyBingoTextId ); boost::shared_ptr< WorldDCGroupType > getWorldDCGroupType( uint32_t WorldDCGroupTypeId ); + boost::shared_ptr< Achievement > getAchievement( uint32_t AchievementId ); + boost::shared_ptr< AchievementCategory > getAchievementCategory( uint32_t AchievementCategoryId ); + boost::shared_ptr< AchievementKind > getAchievementKind( uint32_t AchievementKindId ); + boost::shared_ptr< Action > getAction( uint32_t ActionId ); + boost::shared_ptr< ActionCategory > getActionCategory( uint32_t ActionCategoryId ); + boost::shared_ptr< ActionComboRoute > getActionComboRoute( uint32_t ActionComboRouteId ); + boost::shared_ptr< ActionIndirection > getActionIndirection( uint32_t ActionIndirectionId ); + boost::shared_ptr< ActionProcStatus > getActionProcStatus( uint32_t ActionProcStatusId ); + boost::shared_ptr< ActionTimeline > getActionTimeline( uint32_t ActionTimelineId ); + boost::shared_ptr< ActionTransient > getActionTransient( uint32_t ActionTransientId ); + boost::shared_ptr< Addon > getAddon( uint32_t AddonId ); + boost::shared_ptr< Adventure > getAdventure( uint32_t AdventureId ); + boost::shared_ptr< AdventureExPhase > getAdventureExPhase( uint32_t AdventureExPhaseId ); + boost::shared_ptr< AetherCurrent > getAetherCurrent( uint32_t AetherCurrentId ); + boost::shared_ptr< AetherialWheel > getAetherialWheel( uint32_t AetherialWheelId ); + boost::shared_ptr< Aetheryte > getAetheryte( uint32_t AetheryteId ); + boost::shared_ptr< AirshipExplorationLevel > getAirshipExplorationLevel( uint32_t AirshipExplorationLevelId ); + boost::shared_ptr< AirshipExplorationLog > getAirshipExplorationLog( uint32_t AirshipExplorationLogId ); + boost::shared_ptr< AirshipExplorationParamType > getAirshipExplorationParamType( uint32_t AirshipExplorationParamTypeId ); + boost::shared_ptr< AirshipExplorationPart > getAirshipExplorationPart( uint32_t AirshipExplorationPartId ); + boost::shared_ptr< AirshipExplorationPoint > getAirshipExplorationPoint( uint32_t AirshipExplorationPointId ); + boost::shared_ptr< AnimaWeapon5 > getAnimaWeapon5( uint32_t AnimaWeapon5Id ); + boost::shared_ptr< AnimaWeapon5Param > getAnimaWeapon5Param( uint32_t AnimaWeapon5ParamId ); + boost::shared_ptr< AnimaWeapon5PatternGroup > getAnimaWeapon5PatternGroup( uint32_t AnimaWeapon5PatternGroupId ); + boost::shared_ptr< AnimaWeapon5SpiritTalk > getAnimaWeapon5SpiritTalk( uint32_t AnimaWeapon5SpiritTalkId ); + boost::shared_ptr< AnimaWeapon5SpiritTalkParam > getAnimaWeapon5SpiritTalkParam( uint32_t AnimaWeapon5SpiritTalkParamId ); + boost::shared_ptr< AnimaWeapon5TradeItem > getAnimaWeapon5TradeItem( uint32_t AnimaWeapon5TradeItemId ); + boost::shared_ptr< AnimaWeaponFUITalk > getAnimaWeaponFUITalk( uint32_t AnimaWeaponFUITalkId ); + boost::shared_ptr< AnimaWeaponFUITalkParam > getAnimaWeaponFUITalkParam( uint32_t AnimaWeaponFUITalkParamId ); + boost::shared_ptr< AnimaWeaponIcon > getAnimaWeaponIcon( uint32_t AnimaWeaponIconId ); + boost::shared_ptr< AnimaWeaponItem > getAnimaWeaponItem( uint32_t AnimaWeaponItemId ); + boost::shared_ptr< AquariumFish > getAquariumFish( uint32_t AquariumFishId ); + boost::shared_ptr< AquariumWater > getAquariumWater( uint32_t AquariumWaterId ); + boost::shared_ptr< AttackType > getAttackType( uint32_t AttackTypeId ); + boost::shared_ptr< Balloon > getBalloon( uint32_t BalloonId ); + boost::shared_ptr< BaseParam > getBaseParam( uint32_t BaseParamId ); + boost::shared_ptr< BattleLeve > getBattleLeve( uint32_t BattleLeveId ); + boost::shared_ptr< BeastRankBonus > getBeastRankBonus( uint32_t BeastRankBonusId ); + boost::shared_ptr< BeastReputationRank > getBeastReputationRank( uint32_t BeastReputationRankId ); + boost::shared_ptr< BeastTribe > getBeastTribe( uint32_t BeastTribeId ); + boost::shared_ptr< Behavior > getBehavior( uint32_t BehaviorId ); + boost::shared_ptr< BGM > getBGM( uint32_t BGMId ); + boost::shared_ptr< BNpcAnnounceIcon > getBNpcAnnounceIcon( uint32_t BNpcAnnounceIconId ); + boost::shared_ptr< BNpcBase > getBNpcBase( uint32_t BNpcBaseId ); + boost::shared_ptr< BNpcCustomize > getBNpcCustomize( uint32_t BNpcCustomizeId ); + boost::shared_ptr< BNpcName > getBNpcName( uint32_t BNpcNameId ); + boost::shared_ptr< BuddyAction > getBuddyAction( uint32_t BuddyActionId ); + boost::shared_ptr< BuddyEquip > getBuddyEquip( uint32_t BuddyEquipId ); + boost::shared_ptr< BuddyItem > getBuddyItem( uint32_t BuddyItemId ); + boost::shared_ptr< BuddyRank > getBuddyRank( uint32_t BuddyRankId ); + boost::shared_ptr< BuddySkill > getBuddySkill( uint32_t BuddySkillId ); + boost::shared_ptr< Cabinet > getCabinet( uint32_t CabinetId ); + boost::shared_ptr< CabinetCategory > getCabinetCategory( uint32_t CabinetCategoryId ); + boost::shared_ptr< Calendar > getCalendar( uint32_t CalendarId ); + boost::shared_ptr< ChainBonus > getChainBonus( uint32_t ChainBonusId ); + boost::shared_ptr< CharaMakeCustomize > getCharaMakeCustomize( uint32_t CharaMakeCustomizeId ); + boost::shared_ptr< CharaMakeType > getCharaMakeType( uint32_t CharaMakeTypeId ); + boost::shared_ptr< ChocoboRace > getChocoboRace( uint32_t ChocoboRaceId ); + boost::shared_ptr< ChocoboRaceAbility > getChocoboRaceAbility( uint32_t ChocoboRaceAbilityId ); + boost::shared_ptr< ChocoboRaceAbilityType > getChocoboRaceAbilityType( uint32_t ChocoboRaceAbilityTypeId ); + boost::shared_ptr< ChocoboRaceItem > getChocoboRaceItem( uint32_t ChocoboRaceItemId ); + boost::shared_ptr< ChocoboRaceRank > getChocoboRaceRank( uint32_t ChocoboRaceRankId ); + boost::shared_ptr< ChocoboRaceStatus > getChocoboRaceStatus( uint32_t ChocoboRaceStatusId ); + boost::shared_ptr< ChocoboRaceTerritory > getChocoboRaceTerritory( uint32_t ChocoboRaceTerritoryId ); + boost::shared_ptr< ChocoboTaxiStand > getChocoboTaxiStand( uint32_t ChocoboTaxiStandId ); + boost::shared_ptr< ClassJob > getClassJob( uint32_t ClassJobId ); + boost::shared_ptr< ClassJobCategory > getClassJobCategory( uint32_t ClassJobCategoryId ); + boost::shared_ptr< Companion > getCompanion( uint32_t CompanionId ); + boost::shared_ptr< CompanionMove > getCompanionMove( uint32_t CompanionMoveId ); + boost::shared_ptr< CompanionTransient > getCompanionTransient( uint32_t CompanionTransientId ); + boost::shared_ptr< CompanyAction > getCompanyAction( uint32_t CompanyActionId ); + boost::shared_ptr< CompanyCraftDraft > getCompanyCraftDraft( uint32_t CompanyCraftDraftId ); + boost::shared_ptr< CompanyCraftDraftCategory > getCompanyCraftDraftCategory( uint32_t CompanyCraftDraftCategoryId ); + boost::shared_ptr< CompanyCraftManufactoryState > getCompanyCraftManufactoryState( uint32_t CompanyCraftManufactoryStateId ); + boost::shared_ptr< CompanyCraftPart > getCompanyCraftPart( uint32_t CompanyCraftPartId ); + boost::shared_ptr< CompanyCraftProcess > getCompanyCraftProcess( uint32_t CompanyCraftProcessId ); + boost::shared_ptr< CompanyCraftSequence > getCompanyCraftSequence( uint32_t CompanyCraftSequenceId ); + boost::shared_ptr< CompanyCraftSupplyItem > getCompanyCraftSupplyItem( uint32_t CompanyCraftSupplyItemId ); + boost::shared_ptr< CompanyCraftType > getCompanyCraftType( uint32_t CompanyCraftTypeId ); + boost::shared_ptr< CompleteJournal > getCompleteJournal( uint32_t CompleteJournalId ); + boost::shared_ptr< CompleteJournalCategory > getCompleteJournalCategory( uint32_t CompleteJournalCategoryId ); + boost::shared_ptr< ContentExAction > getContentExAction( uint32_t ContentExActionId ); + boost::shared_ptr< ContentFinderCondition > getContentFinderCondition( uint32_t ContentFinderConditionId ); + boost::shared_ptr< ContentFinderConditionTransient > getContentFinderConditionTransient( uint32_t ContentFinderConditionTransientId ); + boost::shared_ptr< ContentMemberType > getContentMemberType( uint32_t ContentMemberTypeId ); + boost::shared_ptr< ContentRoulette > getContentRoulette( uint32_t ContentRouletteId ); + boost::shared_ptr< ContentType > getContentType( uint32_t ContentTypeId ); + boost::shared_ptr< CraftAction > getCraftAction( uint32_t CraftActionId ); + boost::shared_ptr< CraftLeve > getCraftLeve( uint32_t CraftLeveId ); + boost::shared_ptr< CraftType > getCraftType( uint32_t CraftTypeId ); + boost::shared_ptr< Currency > getCurrency( uint32_t CurrencyId ); + boost::shared_ptr< CustomTalk > getCustomTalk( uint32_t CustomTalkId ); + boost::shared_ptr< Cutscene > getCutscene( uint32_t CutsceneId ); + boost::shared_ptr< CutScreenImage > getCutScreenImage( uint32_t CutScreenImageId ); + boost::shared_ptr< DailySupplyItem > getDailySupplyItem( uint32_t DailySupplyItemId ); + boost::shared_ptr< DeepDungeonBan > getDeepDungeonBan( uint32_t DeepDungeonBanId ); + boost::shared_ptr< DeepDungeonDanger > getDeepDungeonDanger( uint32_t DeepDungeonDangerId ); + boost::shared_ptr< DeepDungeonEquipment > getDeepDungeonEquipment( uint32_t DeepDungeonEquipmentId ); + boost::shared_ptr< DeepDungeonFloorEffectUI > getDeepDungeonFloorEffectUI( uint32_t DeepDungeonFloorEffectUIId ); + boost::shared_ptr< DeepDungeonItem > getDeepDungeonItem( uint32_t DeepDungeonItemId ); + boost::shared_ptr< DeepDungeonStatus > getDeepDungeonStatus( uint32_t DeepDungeonStatusId ); + boost::shared_ptr< DefaultTalk > getDefaultTalk( uint32_t DefaultTalkId ); + boost::shared_ptr< DeliveryQuest > getDeliveryQuest( uint32_t DeliveryQuestId ); + boost::shared_ptr< DisposalShop > getDisposalShop( uint32_t DisposalShopId ); + boost::shared_ptr< DisposalShopFilterType > getDisposalShopFilterType( uint32_t DisposalShopFilterTypeId ); + boost::shared_ptr< DisposalShopItem > getDisposalShopItem( uint32_t DisposalShopItemId ); + boost::shared_ptr< DpsChallenge > getDpsChallenge( uint32_t DpsChallengeId ); + boost::shared_ptr< DpsChallengeOfficer > getDpsChallengeOfficer( uint32_t DpsChallengeOfficerId ); + boost::shared_ptr< DpsChallengeTransient > getDpsChallengeTransient( uint32_t DpsChallengeTransientId ); + boost::shared_ptr< Emote > getEmote( uint32_t EmoteId ); + boost::shared_ptr< EmoteCategory > getEmoteCategory( uint32_t EmoteCategoryId ); + boost::shared_ptr< ENpcBase > getENpcBase( uint32_t ENpcBaseId ); + boost::shared_ptr< ENpcResident > getENpcResident( uint32_t ENpcResidentId ); + boost::shared_ptr< EObj > getEObj( uint32_t EObjId ); + boost::shared_ptr< EquipRaceCategory > getEquipRaceCategory( uint32_t EquipRaceCategoryId ); + boost::shared_ptr< EquipSlotCategory > getEquipSlotCategory( uint32_t EquipSlotCategoryId ); + boost::shared_ptr< EventAction > getEventAction( uint32_t EventActionId ); + boost::shared_ptr< EventIconPriority > getEventIconPriority( uint32_t EventIconPriorityId ); + boost::shared_ptr< EventIconType > getEventIconType( uint32_t EventIconTypeId ); + boost::shared_ptr< EventItem > getEventItem( uint32_t EventItemId ); + boost::shared_ptr< EventItemHelp > getEventItemHelp( uint32_t EventItemHelpId ); + boost::shared_ptr< ExVersion > getExVersion( uint32_t ExVersionId ); + boost::shared_ptr< Fate > getFate( uint32_t FateId ); + boost::shared_ptr< FCActivity > getFCActivity( uint32_t FCActivityId ); + boost::shared_ptr< FCAuthority > getFCAuthority( uint32_t FCAuthorityId ); + boost::shared_ptr< FCAuthorityCategory > getFCAuthorityCategory( uint32_t FCAuthorityCategoryId ); + boost::shared_ptr< FCChestName > getFCChestName( uint32_t FCChestNameId ); + boost::shared_ptr< FccShop > getFccShop( uint32_t FccShopId ); + boost::shared_ptr< FCHierarchy > getFCHierarchy( uint32_t FCHierarchyId ); + boost::shared_ptr< FCReputation > getFCReputation( uint32_t FCReputationId ); + boost::shared_ptr< FCRights > getFCRights( uint32_t FCRightsId ); + boost::shared_ptr< FishingSpot > getFishingSpot( uint32_t FishingSpotId ); + boost::shared_ptr< FishParameter > getFishParameter( uint32_t FishParameterId ); + boost::shared_ptr< GardeningSeed > getGardeningSeed( uint32_t GardeningSeedId ); + boost::shared_ptr< GatheringCondition > getGatheringCondition( uint32_t GatheringConditionId ); + boost::shared_ptr< GatheringExp > getGatheringExp( uint32_t GatheringExpId ); + boost::shared_ptr< GatheringItem > getGatheringItem( uint32_t GatheringItemId ); + boost::shared_ptr< GatheringItemLevelConvertTable > getGatheringItemLevelConvertTable( uint32_t GatheringItemLevelConvertTableId ); + boost::shared_ptr< GatheringItemPoint > getGatheringItemPoint( uint32_t GatheringItemPointId ); + boost::shared_ptr< GatheringNotebookList > getGatheringNotebookList( uint32_t GatheringNotebookListId ); + boost::shared_ptr< GatheringPoint > getGatheringPoint( uint32_t GatheringPointId ); + boost::shared_ptr< GatheringPointBase > getGatheringPointBase( uint32_t GatheringPointBaseId ); + boost::shared_ptr< GatheringPointBonus > getGatheringPointBonus( uint32_t GatheringPointBonusId ); + boost::shared_ptr< GatheringPointBonusType > getGatheringPointBonusType( uint32_t GatheringPointBonusTypeId ); + boost::shared_ptr< GatheringPointName > getGatheringPointName( uint32_t GatheringPointNameId ); + boost::shared_ptr< GatheringSubCategory > getGatheringSubCategory( uint32_t GatheringSubCategoryId ); + boost::shared_ptr< GatheringType > getGatheringType( uint32_t GatheringTypeId ); + boost::shared_ptr< GcArmyExpedition > getGcArmyExpedition( uint32_t GcArmyExpeditionId ); + boost::shared_ptr< GcArmyExpeditionMemberBonus > getGcArmyExpeditionMemberBonus( uint32_t GcArmyExpeditionMemberBonusId ); + boost::shared_ptr< GcArmyExpeditionType > getGcArmyExpeditionType( uint32_t GcArmyExpeditionTypeId ); + boost::shared_ptr< GcArmyMemberGrow > getGcArmyMemberGrow( uint32_t GcArmyMemberGrowId ); + boost::shared_ptr< GcArmyTraining > getGcArmyTraining( uint32_t GcArmyTrainingId ); + boost::shared_ptr< GCScripShopCategory > getGCScripShopCategory( uint32_t GCScripShopCategoryId ); + boost::shared_ptr< GCScripShopItem > getGCScripShopItem( uint32_t GCScripShopItemId ); + boost::shared_ptr< GCShop > getGCShop( uint32_t GCShopId ); + boost::shared_ptr< GCShopItemCategory > getGCShopItemCategory( uint32_t GCShopItemCategoryId ); + boost::shared_ptr< GCSupplyDuty > getGCSupplyDuty( uint32_t GCSupplyDutyId ); + boost::shared_ptr< GCSupplyDutyReward > getGCSupplyDutyReward( uint32_t GCSupplyDutyRewardId ); + boost::shared_ptr< GeneralAction > getGeneralAction( uint32_t GeneralActionId ); + boost::shared_ptr< GilShop > getGilShop( uint32_t GilShopId ); + boost::shared_ptr< GilShopItem > getGilShopItem( uint32_t GilShopItemId ); + boost::shared_ptr< GoldSaucerTextData > getGoldSaucerTextData( uint32_t GoldSaucerTextDataId ); + boost::shared_ptr< GrandCompany > getGrandCompany( uint32_t GrandCompanyId ); + boost::shared_ptr< GrandCompanyRank > getGrandCompanyRank( uint32_t GrandCompanyRankId ); + boost::shared_ptr< GuardianDeity > getGuardianDeity( uint32_t GuardianDeityId ); + boost::shared_ptr< GuildleveAssignment > getGuildleveAssignment( uint32_t GuildleveAssignmentId ); + boost::shared_ptr< GuildOrderGuide > getGuildOrderGuide( uint32_t GuildOrderGuideId ); + boost::shared_ptr< GuildOrderOfficer > getGuildOrderOfficer( uint32_t GuildOrderOfficerId ); + boost::shared_ptr< HouseRetainerPose > getHouseRetainerPose( uint32_t HouseRetainerPoseId ); + boost::shared_ptr< HousingFurniture > getHousingFurniture( uint32_t HousingFurnitureId ); + boost::shared_ptr< HousingYardObject > getHousingYardObject( uint32_t HousingYardObjectId ); + boost::shared_ptr< InstanceContent > getInstanceContent( uint32_t InstanceContentId ); + boost::shared_ptr< InstanceContentBuff > getInstanceContentBuff( uint32_t InstanceContentBuffId ); + boost::shared_ptr< InstanceContentTextData > getInstanceContentTextData( uint32_t InstanceContentTextDataId ); + boost::shared_ptr< InstanceContentType > getInstanceContentType( uint32_t InstanceContentTypeId ); + boost::shared_ptr< Item > getItem( uint32_t ItemId ); + boost::shared_ptr< ItemAction > getItemAction( uint32_t ItemActionId ); + boost::shared_ptr< ItemFood > getItemFood( uint32_t ItemFoodId ); + boost::shared_ptr< ItemSearchCategory > getItemSearchCategory( uint32_t ItemSearchCategoryId ); + boost::shared_ptr< ItemSeries > getItemSeries( uint32_t ItemSeriesId ); + boost::shared_ptr< ItemSpecialBonus > getItemSpecialBonus( uint32_t ItemSpecialBonusId ); + boost::shared_ptr< ItemUICategory > getItemUICategory( uint32_t ItemUICategoryId ); + boost::shared_ptr< JournalCategory > getJournalCategory( uint32_t JournalCategoryId ); + boost::shared_ptr< JournalGenre > getJournalGenre( uint32_t JournalGenreId ); + boost::shared_ptr< JournalSection > getJournalSection( uint32_t JournalSectionId ); + boost::shared_ptr< Leve > getLeve( uint32_t LeveId ); + boost::shared_ptr< LeveAssignmentType > getLeveAssignmentType( uint32_t LeveAssignmentTypeId ); + boost::shared_ptr< LeveClient > getLeveClient( uint32_t LeveClientId ); + boost::shared_ptr< Level > getLevel( uint32_t LevelId ); + boost::shared_ptr< LeveRewardItem > getLeveRewardItem( uint32_t LeveRewardItemId ); + boost::shared_ptr< LeveRewardItemGroup > getLeveRewardItemGroup( uint32_t LeveRewardItemGroupId ); + boost::shared_ptr< LeveVfx > getLeveVfx( uint32_t LeveVfxId ); + boost::shared_ptr< LogFilter > getLogFilter( uint32_t LogFilterId ); + boost::shared_ptr< LogKind > getLogKind( uint32_t LogKindId ); + boost::shared_ptr< LogKindCategoryText > getLogKindCategoryText( uint32_t LogKindCategoryTextId ); + boost::shared_ptr< LogMessage > getLogMessage( uint32_t LogMessageId ); + boost::shared_ptr< MacroIcon > getMacroIcon( uint32_t MacroIconId ); + boost::shared_ptr< MacroIconRedirectOld > getMacroIconRedirectOld( uint32_t MacroIconRedirectOldId ); + boost::shared_ptr< MainCommand > getMainCommand( uint32_t MainCommandId ); + boost::shared_ptr< MainCommandCategory > getMainCommandCategory( uint32_t MainCommandCategoryId ); + boost::shared_ptr< Map > getMap( uint32_t MapId ); + boost::shared_ptr< MapMarker > getMapMarker( uint32_t MapMarkerId ); + boost::shared_ptr< MapSymbol > getMapSymbol( uint32_t MapSymbolId ); + boost::shared_ptr< MasterpieceSupplyDuty > getMasterpieceSupplyDuty( uint32_t MasterpieceSupplyDutyId ); + boost::shared_ptr< MasterpieceSupplyMultiplier > getMasterpieceSupplyMultiplier( uint32_t MasterpieceSupplyMultiplierId ); + boost::shared_ptr< Materia > getMateria( uint32_t MateriaId ); + boost::shared_ptr< MinionRace > getMinionRace( uint32_t MinionRaceId ); + boost::shared_ptr< MinionRules > getMinionRules( uint32_t MinionRulesId ); + boost::shared_ptr< MinionSkillType > getMinionSkillType( uint32_t MinionSkillTypeId ); + boost::shared_ptr< MobHuntTarget > getMobHuntTarget( uint32_t MobHuntTargetId ); + boost::shared_ptr< ModelChara > getModelChara( uint32_t ModelCharaId ); + boost::shared_ptr< MonsterNote > getMonsterNote( uint32_t MonsterNoteId ); + boost::shared_ptr< MonsterNoteTarget > getMonsterNoteTarget( uint32_t MonsterNoteTargetId ); + boost::shared_ptr< Mount > getMount( uint32_t MountId ); + boost::shared_ptr< MountAction > getMountAction( uint32_t MountActionId ); + boost::shared_ptr< NpcEquip > getNpcEquip( uint32_t NpcEquipId ); + boost::shared_ptr< Omen > getOmen( uint32_t OmenId ); + boost::shared_ptr< OnlineStatus > getOnlineStatus( uint32_t OnlineStatusId ); + boost::shared_ptr< Orchestrion > getOrchestrion( uint32_t OrchestrionId ); + boost::shared_ptr< OrchestrionPath > getOrchestrionPath( uint32_t OrchestrionPathId ); + boost::shared_ptr< ParamGrow > getParamGrow( uint32_t ParamGrowId ); + boost::shared_ptr< Pet > getPet( uint32_t PetId ); + boost::shared_ptr< PetAction > getPetAction( uint32_t PetActionId ); + boost::shared_ptr< Picture > getPicture( uint32_t PictureId ); + boost::shared_ptr< PlaceName > getPlaceName( uint32_t PlaceNameId ); + boost::shared_ptr< Quest > getQuest( uint32_t QuestId ); + boost::shared_ptr< QuestRewardOther > getQuestRewardOther( uint32_t QuestRewardOtherId ); + boost::shared_ptr< Race > getRace( uint32_t RaceId ); + boost::shared_ptr< RacingChocoboItem > getRacingChocoboItem( uint32_t RacingChocoboItemId ); + boost::shared_ptr< RacingChocoboName > getRacingChocoboName( uint32_t RacingChocoboNameId ); + boost::shared_ptr< RacingChocoboNameCategory > getRacingChocoboNameCategory( uint32_t RacingChocoboNameCategoryId ); + boost::shared_ptr< RacingChocoboNameInfo > getRacingChocoboNameInfo( uint32_t RacingChocoboNameInfoId ); + boost::shared_ptr< RacingChocoboParam > getRacingChocoboParam( uint32_t RacingChocoboParamId ); + boost::shared_ptr< Recipe > getRecipe( uint32_t RecipeId ); + boost::shared_ptr< RecipeElement > getRecipeElement( uint32_t RecipeElementId ); + boost::shared_ptr< RecipeLevelTable > getRecipeLevelTable( uint32_t RecipeLevelTableId ); + boost::shared_ptr< RecipeNotebookList > getRecipeNotebookList( uint32_t RecipeNotebookListId ); + boost::shared_ptr< Relic > getRelic( uint32_t RelicId ); + boost::shared_ptr< Relic3 > getRelic3( uint32_t Relic3Id ); + boost::shared_ptr< RelicItem > getRelicItem( uint32_t RelicItemId ); + boost::shared_ptr< RelicNote > getRelicNote( uint32_t RelicNoteId ); + boost::shared_ptr< RelicNoteCategory > getRelicNoteCategory( uint32_t RelicNoteCategoryId ); + boost::shared_ptr< RetainerTask > getRetainerTask( uint32_t RetainerTaskId ); + boost::shared_ptr< RetainerTaskNormal > getRetainerTaskNormal( uint32_t RetainerTaskNormalId ); + boost::shared_ptr< RetainerTaskParameter > getRetainerTaskParameter( uint32_t RetainerTaskParameterId ); + boost::shared_ptr< RetainerTaskRandom > getRetainerTaskRandom( uint32_t RetainerTaskRandomId ); + boost::shared_ptr< Salvage > getSalvage( uint32_t SalvageId ); + boost::shared_ptr< SatisfactionNpc > getSatisfactionNpc( uint32_t SatisfactionNpcId ); + boost::shared_ptr< SatisfactionSupply > getSatisfactionSupply( uint32_t SatisfactionSupplyId ); + boost::shared_ptr< SatisfactionSupplyReward > getSatisfactionSupplyReward( uint32_t SatisfactionSupplyRewardId ); + boost::shared_ptr< ScreenImage > getScreenImage( uint32_t ScreenImageId ); + boost::shared_ptr< SecretRecipeBook > getSecretRecipeBook( uint32_t SecretRecipeBookId ); + boost::shared_ptr< SpearfishingItem > getSpearfishingItem( uint32_t SpearfishingItemId ); + boost::shared_ptr< SpearfishingNotebook > getSpearfishingNotebook( uint32_t SpearfishingNotebookId ); + boost::shared_ptr< SpecialShop > getSpecialShop( uint32_t SpecialShopId ); + boost::shared_ptr< SpecialShopItemCategory > getSpecialShopItemCategory( uint32_t SpecialShopItemCategoryId ); + boost::shared_ptr< Stain > getStain( uint32_t StainId ); + boost::shared_ptr< Status > getStatus( uint32_t StatusId ); + boost::shared_ptr< Story > getStory( uint32_t StoryId ); + boost::shared_ptr< SwitchTalk > getSwitchTalk( uint32_t SwitchTalkId ); + boost::shared_ptr< TerritoryType > getTerritoryType( uint32_t TerritoryTypeId ); + boost::shared_ptr< TextCommand > getTextCommand( uint32_t TextCommandId ); + boost::shared_ptr< Title > getTitle( uint32_t TitleId ); + boost::shared_ptr< Tomestones > getTomestones( uint32_t TomestonesId ); + boost::shared_ptr< TomestonesItem > getTomestonesItem( uint32_t TomestonesItemId ); + boost::shared_ptr< TopicSelect > getTopicSelect( uint32_t TopicSelectId ); + boost::shared_ptr< Town > getTown( uint32_t TownId ); + boost::shared_ptr< Trait > getTrait( uint32_t TraitId ); + boost::shared_ptr< TraitRecast > getTraitRecast( uint32_t TraitRecastId ); + boost::shared_ptr< TraitTransient > getTraitTransient( uint32_t TraitTransientId ); + boost::shared_ptr< Tribe > getTribe( uint32_t TribeId ); + boost::shared_ptr< TripleTriad > getTripleTriad( uint32_t TripleTriadId ); + boost::shared_ptr< TripleTriadCard > getTripleTriadCard( uint32_t TripleTriadCardId ); + boost::shared_ptr< TripleTriadCardRarity > getTripleTriadCardRarity( uint32_t TripleTriadCardRarityId ); + boost::shared_ptr< TripleTriadCardResident > getTripleTriadCardResident( uint32_t TripleTriadCardResidentId ); + boost::shared_ptr< TripleTriadCardType > getTripleTriadCardType( uint32_t TripleTriadCardTypeId ); + boost::shared_ptr< TripleTriadCompetition > getTripleTriadCompetition( uint32_t TripleTriadCompetitionId ); + boost::shared_ptr< TripleTriadRule > getTripleTriadRule( uint32_t TripleTriadRuleId ); + boost::shared_ptr< Tutorial > getTutorial( uint32_t TutorialId ); + boost::shared_ptr< TutorialDPS > getTutorialDPS( uint32_t TutorialDPSId ); + boost::shared_ptr< TutorialHealer > getTutorialHealer( uint32_t TutorialHealerId ); + boost::shared_ptr< TutorialTank > getTutorialTank( uint32_t TutorialTankId ); + boost::shared_ptr< Warp > getWarp( uint32_t WarpId ); + boost::shared_ptr< Weather > getWeather( uint32_t WeatherId ); + boost::shared_ptr< WeatherGroup > getWeatherGroup( uint32_t WeatherGroupId ); + boost::shared_ptr< WeatherRate > getWeatherRate( uint32_t WeatherRateId ); + boost::shared_ptr< WeeklyBingoOrderData > getWeeklyBingoOrderData( uint32_t WeeklyBingoOrderDataId ); + boost::shared_ptr< WeeklyBingoRewardData > getWeeklyBingoRewardData( uint32_t WeeklyBingoRewardDataId ); + boost::shared_ptr< WeeklyBingoText > getWeeklyBingoText( uint32_t WeeklyBingoTextId ); + boost::shared_ptr< WorldDCGroupType > getWorldDCGroupType( uint32_t WorldDCGroupTypeId ); + + + std::set< uint32_t > m_AchievementIdList; + std::set< uint32_t > m_AchievementCategoryIdList; + std::set< uint32_t > m_AchievementKindIdList; + std::set< uint32_t > m_ActionIdList; + std::set< uint32_t > m_ActionCategoryIdList; + std::set< uint32_t > m_ActionComboRouteIdList; + std::set< uint32_t > m_ActionIndirectionIdList; + std::set< uint32_t > m_ActionProcStatusIdList; + std::set< uint32_t > m_ActionTimelineIdList; + std::set< uint32_t > m_ActionTransientIdList; + std::set< uint32_t > m_AddonIdList; + std::set< uint32_t > m_AdventureIdList; + std::set< uint32_t > m_AdventureExPhaseIdList; + std::set< uint32_t > m_AetherCurrentIdList; + std::set< uint32_t > m_AetherialWheelIdList; + std::set< uint32_t > m_AetheryteIdList; + std::set< uint32_t > m_AirshipExplorationLevelIdList; + std::set< uint32_t > m_AirshipExplorationLogIdList; + std::set< uint32_t > m_AirshipExplorationParamTypeIdList; + std::set< uint32_t > m_AirshipExplorationPartIdList; + std::set< uint32_t > m_AirshipExplorationPointIdList; + std::set< uint32_t > m_AnimaWeapon5IdList; + std::set< uint32_t > m_AnimaWeapon5ParamIdList; + std::set< uint32_t > m_AnimaWeapon5PatternGroupIdList; + std::set< uint32_t > m_AnimaWeapon5SpiritTalkIdList; + std::set< uint32_t > m_AnimaWeapon5SpiritTalkParamIdList; + std::set< uint32_t > m_AnimaWeapon5TradeItemIdList; + std::set< uint32_t > m_AnimaWeaponFUITalkIdList; + std::set< uint32_t > m_AnimaWeaponFUITalkParamIdList; + std::set< uint32_t > m_AnimaWeaponIconIdList; + std::set< uint32_t > m_AnimaWeaponItemIdList; + std::set< uint32_t > m_AquariumFishIdList; + std::set< uint32_t > m_AquariumWaterIdList; + std::set< uint32_t > m_AttackTypeIdList; + std::set< uint32_t > m_BalloonIdList; + std::set< uint32_t > m_BaseParamIdList; + std::set< uint32_t > m_BattleLeveIdList; + std::set< uint32_t > m_BeastRankBonusIdList; + std::set< uint32_t > m_BeastReputationRankIdList; + std::set< uint32_t > m_BeastTribeIdList; + std::set< uint32_t > m_BehaviorIdList; + std::set< uint32_t > m_BGMIdList; + std::set< uint32_t > m_BNpcAnnounceIconIdList; + std::set< uint32_t > m_BNpcBaseIdList; + std::set< uint32_t > m_BNpcCustomizeIdList; + std::set< uint32_t > m_BNpcNameIdList; + std::set< uint32_t > m_BuddyActionIdList; + std::set< uint32_t > m_BuddyEquipIdList; + std::set< uint32_t > m_BuddyItemIdList; + std::set< uint32_t > m_BuddyRankIdList; + std::set< uint32_t > m_BuddySkillIdList; + std::set< uint32_t > m_CabinetIdList; + std::set< uint32_t > m_CabinetCategoryIdList; + std::set< uint32_t > m_CalendarIdList; + std::set< uint32_t > m_ChainBonusIdList; + std::set< uint32_t > m_CharaMakeCustomizeIdList; + std::set< uint32_t > m_CharaMakeTypeIdList; + std::set< uint32_t > m_ChocoboRaceIdList; + std::set< uint32_t > m_ChocoboRaceAbilityIdList; + std::set< uint32_t > m_ChocoboRaceAbilityTypeIdList; + std::set< uint32_t > m_ChocoboRaceItemIdList; + std::set< uint32_t > m_ChocoboRaceRankIdList; + std::set< uint32_t > m_ChocoboRaceStatusIdList; + std::set< uint32_t > m_ChocoboRaceTerritoryIdList; + std::set< uint32_t > m_ChocoboTaxiStandIdList; + std::set< uint32_t > m_ClassJobIdList; + std::set< uint32_t > m_ClassJobCategoryIdList; + std::set< uint32_t > m_CompanionIdList; + std::set< uint32_t > m_CompanionMoveIdList; + std::set< uint32_t > m_CompanionTransientIdList; + std::set< uint32_t > m_CompanyActionIdList; + std::set< uint32_t > m_CompanyCraftDraftIdList; + std::set< uint32_t > m_CompanyCraftDraftCategoryIdList; + std::set< uint32_t > m_CompanyCraftManufactoryStateIdList; + std::set< uint32_t > m_CompanyCraftPartIdList; + std::set< uint32_t > m_CompanyCraftProcessIdList; + std::set< uint32_t > m_CompanyCraftSequenceIdList; + std::set< uint32_t > m_CompanyCraftSupplyItemIdList; + std::set< uint32_t > m_CompanyCraftTypeIdList; + std::set< uint32_t > m_CompleteJournalIdList; + std::set< uint32_t > m_CompleteJournalCategoryIdList; + std::set< uint32_t > m_ContentExActionIdList; + std::set< uint32_t > m_ContentFinderConditionIdList; + std::set< uint32_t > m_ContentFinderConditionTransientIdList; + std::set< uint32_t > m_ContentMemberTypeIdList; + std::set< uint32_t > m_ContentRouletteIdList; + std::set< uint32_t > m_ContentTypeIdList; + std::set< uint32_t > m_CraftActionIdList; + std::set< uint32_t > m_CraftLeveIdList; + std::set< uint32_t > m_CraftTypeIdList; + std::set< uint32_t > m_CurrencyIdList; + std::set< uint32_t > m_CustomTalkIdList; + std::set< uint32_t > m_CutsceneIdList; + std::set< uint32_t > m_CutScreenImageIdList; + std::set< uint32_t > m_DailySupplyItemIdList; + std::set< uint32_t > m_DeepDungeonBanIdList; + std::set< uint32_t > m_DeepDungeonDangerIdList; + std::set< uint32_t > m_DeepDungeonEquipmentIdList; + std::set< uint32_t > m_DeepDungeonFloorEffectUIIdList; + std::set< uint32_t > m_DeepDungeonItemIdList; + std::set< uint32_t > m_DeepDungeonStatusIdList; + std::set< uint32_t > m_DefaultTalkIdList; + std::set< uint32_t > m_DeliveryQuestIdList; + std::set< uint32_t > m_DisposalShopIdList; + std::set< uint32_t > m_DisposalShopFilterTypeIdList; + std::set< uint32_t > m_DisposalShopItemIdList; + std::set< uint32_t > m_DpsChallengeIdList; + std::set< uint32_t > m_DpsChallengeOfficerIdList; + std::set< uint32_t > m_DpsChallengeTransientIdList; + std::set< uint32_t > m_EmoteIdList; + std::set< uint32_t > m_EmoteCategoryIdList; + std::set< uint32_t > m_ENpcBaseIdList; + std::set< uint32_t > m_ENpcResidentIdList; + std::set< uint32_t > m_EObjIdList; + std::set< uint32_t > m_EquipRaceCategoryIdList; + std::set< uint32_t > m_EquipSlotCategoryIdList; + std::set< uint32_t > m_EventActionIdList; + std::set< uint32_t > m_EventIconPriorityIdList; + std::set< uint32_t > m_EventIconTypeIdList; + std::set< uint32_t > m_EventItemIdList; + std::set< uint32_t > m_EventItemHelpIdList; + std::set< uint32_t > m_ExVersionIdList; + std::set< uint32_t > m_FateIdList; + std::set< uint32_t > m_FCActivityIdList; + std::set< uint32_t > m_FCAuthorityIdList; + std::set< uint32_t > m_FCAuthorityCategoryIdList; + std::set< uint32_t > m_FCChestNameIdList; + std::set< uint32_t > m_FccShopIdList; + std::set< uint32_t > m_FCHierarchyIdList; + std::set< uint32_t > m_FCReputationIdList; + std::set< uint32_t > m_FCRightsIdList; + std::set< uint32_t > m_FishingSpotIdList; + std::set< uint32_t > m_FishParameterIdList; + std::set< uint32_t > m_GardeningSeedIdList; + std::set< uint32_t > m_GatheringConditionIdList; + std::set< uint32_t > m_GatheringExpIdList; + std::set< uint32_t > m_GatheringItemIdList; + std::set< uint32_t > m_GatheringItemLevelConvertTableIdList; + std::set< uint32_t > m_GatheringItemPointIdList; + std::set< uint32_t > m_GatheringNotebookListIdList; + std::set< uint32_t > m_GatheringPointIdList; + std::set< uint32_t > m_GatheringPointBaseIdList; + std::set< uint32_t > m_GatheringPointBonusIdList; + std::set< uint32_t > m_GatheringPointBonusTypeIdList; + std::set< uint32_t > m_GatheringPointNameIdList; + std::set< uint32_t > m_GatheringSubCategoryIdList; + std::set< uint32_t > m_GatheringTypeIdList; + std::set< uint32_t > m_GcArmyExpeditionIdList; + std::set< uint32_t > m_GcArmyExpeditionMemberBonusIdList; + std::set< uint32_t > m_GcArmyExpeditionTypeIdList; + std::set< uint32_t > m_GcArmyMemberGrowIdList; + std::set< uint32_t > m_GcArmyTrainingIdList; + std::set< uint32_t > m_GCScripShopCategoryIdList; + std::set< uint32_t > m_GCScripShopItemIdList; + std::set< uint32_t > m_GCShopIdList; + std::set< uint32_t > m_GCShopItemCategoryIdList; + std::set< uint32_t > m_GCSupplyDutyIdList; + std::set< uint32_t > m_GCSupplyDutyRewardIdList; + std::set< uint32_t > m_GeneralActionIdList; + std::set< uint32_t > m_GilShopIdList; + std::set< uint32_t > m_GilShopItemIdList; + std::set< uint32_t > m_GoldSaucerTextDataIdList; + std::set< uint32_t > m_GrandCompanyIdList; + std::set< uint32_t > m_GrandCompanyRankIdList; + std::set< uint32_t > m_GuardianDeityIdList; + std::set< uint32_t > m_GuildleveAssignmentIdList; + std::set< uint32_t > m_GuildOrderGuideIdList; + std::set< uint32_t > m_GuildOrderOfficerIdList; + std::set< uint32_t > m_HouseRetainerPoseIdList; + std::set< uint32_t > m_HousingFurnitureIdList; + std::set< uint32_t > m_HousingYardObjectIdList; + std::set< uint32_t > m_InstanceContentIdList; + std::set< uint32_t > m_InstanceContentBuffIdList; + std::set< uint32_t > m_InstanceContentTextDataIdList; + std::set< uint32_t > m_InstanceContentTypeIdList; + std::set< uint32_t > m_ItemIdList; + std::set< uint32_t > m_ItemActionIdList; + std::set< uint32_t > m_ItemFoodIdList; + std::set< uint32_t > m_ItemSearchCategoryIdList; + std::set< uint32_t > m_ItemSeriesIdList; + std::set< uint32_t > m_ItemSpecialBonusIdList; + std::set< uint32_t > m_ItemUICategoryIdList; + std::set< uint32_t > m_JournalCategoryIdList; + std::set< uint32_t > m_JournalGenreIdList; + std::set< uint32_t > m_JournalSectionIdList; + std::set< uint32_t > m_LeveIdList; + std::set< uint32_t > m_LeveAssignmentTypeIdList; + std::set< uint32_t > m_LeveClientIdList; + std::set< uint32_t > m_LevelIdList; + std::set< uint32_t > m_LeveRewardItemIdList; + std::set< uint32_t > m_LeveRewardItemGroupIdList; + std::set< uint32_t > m_LeveVfxIdList; + std::set< uint32_t > m_LogFilterIdList; + std::set< uint32_t > m_LogKindIdList; + std::set< uint32_t > m_LogKindCategoryTextIdList; + std::set< uint32_t > m_LogMessageIdList; + std::set< uint32_t > m_MacroIconIdList; + std::set< uint32_t > m_MacroIconRedirectOldIdList; + std::set< uint32_t > m_MainCommandIdList; + std::set< uint32_t > m_MainCommandCategoryIdList; + std::set< uint32_t > m_MapIdList; + std::set< uint32_t > m_MapMarkerIdList; + std::set< uint32_t > m_MapSymbolIdList; + std::set< uint32_t > m_MasterpieceSupplyDutyIdList; + std::set< uint32_t > m_MasterpieceSupplyMultiplierIdList; + std::set< uint32_t > m_MateriaIdList; + std::set< uint32_t > m_MinionRaceIdList; + std::set< uint32_t > m_MinionRulesIdList; + std::set< uint32_t > m_MinionSkillTypeIdList; + std::set< uint32_t > m_MobHuntTargetIdList; + std::set< uint32_t > m_ModelCharaIdList; + std::set< uint32_t > m_MonsterNoteIdList; + std::set< uint32_t > m_MonsterNoteTargetIdList; + std::set< uint32_t > m_MountIdList; + std::set< uint32_t > m_MountActionIdList; + std::set< uint32_t > m_NpcEquipIdList; + std::set< uint32_t > m_OmenIdList; + std::set< uint32_t > m_OnlineStatusIdList; + std::set< uint32_t > m_OrchestrionIdList; + std::set< uint32_t > m_OrchestrionPathIdList; + std::set< uint32_t > m_ParamGrowIdList; + std::set< uint32_t > m_PetIdList; + std::set< uint32_t > m_PetActionIdList; + std::set< uint32_t > m_PictureIdList; + std::set< uint32_t > m_PlaceNameIdList; + std::set< uint32_t > m_QuestIdList; + std::set< uint32_t > m_QuestRewardOtherIdList; + std::set< uint32_t > m_RaceIdList; + std::set< uint32_t > m_RacingChocoboItemIdList; + std::set< uint32_t > m_RacingChocoboNameIdList; + std::set< uint32_t > m_RacingChocoboNameCategoryIdList; + std::set< uint32_t > m_RacingChocoboNameInfoIdList; + std::set< uint32_t > m_RacingChocoboParamIdList; + std::set< uint32_t > m_RecipeIdList; + std::set< uint32_t > m_RecipeElementIdList; + std::set< uint32_t > m_RecipeLevelTableIdList; + std::set< uint32_t > m_RecipeNotebookListIdList; + std::set< uint32_t > m_RelicIdList; + std::set< uint32_t > m_Relic3IdList; + std::set< uint32_t > m_RelicItemIdList; + std::set< uint32_t > m_RelicNoteIdList; + std::set< uint32_t > m_RelicNoteCategoryIdList; + std::set< uint32_t > m_RetainerTaskIdList; + std::set< uint32_t > m_RetainerTaskNormalIdList; + std::set< uint32_t > m_RetainerTaskParameterIdList; + std::set< uint32_t > m_RetainerTaskRandomIdList; + std::set< uint32_t > m_SalvageIdList; + std::set< uint32_t > m_SatisfactionNpcIdList; + std::set< uint32_t > m_SatisfactionSupplyIdList; + std::set< uint32_t > m_SatisfactionSupplyRewardIdList; + std::set< uint32_t > m_ScreenImageIdList; + std::set< uint32_t > m_SecretRecipeBookIdList; + std::set< uint32_t > m_SpearfishingItemIdList; + std::set< uint32_t > m_SpearfishingNotebookIdList; + std::set< uint32_t > m_SpecialShopIdList; + std::set< uint32_t > m_SpecialShopItemCategoryIdList; + std::set< uint32_t > m_StainIdList; + std::set< uint32_t > m_StatusIdList; + std::set< uint32_t > m_StoryIdList; + std::set< uint32_t > m_SwitchTalkIdList; + std::set< uint32_t > m_TerritoryTypeIdList; + std::set< uint32_t > m_TextCommandIdList; + std::set< uint32_t > m_TitleIdList; + std::set< uint32_t > m_TomestonesIdList; + std::set< uint32_t > m_TomestonesItemIdList; + std::set< uint32_t > m_TopicSelectIdList; + std::set< uint32_t > m_TownIdList; + std::set< uint32_t > m_TraitIdList; + std::set< uint32_t > m_TraitRecastIdList; + std::set< uint32_t > m_TraitTransientIdList; + std::set< uint32_t > m_TribeIdList; + std::set< uint32_t > m_TripleTriadIdList; + std::set< uint32_t > m_TripleTriadCardIdList; + std::set< uint32_t > m_TripleTriadCardRarityIdList; + std::set< uint32_t > m_TripleTriadCardResidentIdList; + std::set< uint32_t > m_TripleTriadCardTypeIdList; + std::set< uint32_t > m_TripleTriadCompetitionIdList; + std::set< uint32_t > m_TripleTriadRuleIdList; + std::set< uint32_t > m_TutorialIdList; + std::set< uint32_t > m_TutorialDPSIdList; + std::set< uint32_t > m_TutorialHealerIdList; + std::set< uint32_t > m_TutorialTankIdList; + std::set< uint32_t > m_WarpIdList; + std::set< uint32_t > m_WeatherIdList; + std::set< uint32_t > m_WeatherGroupIdList; + std::set< uint32_t > m_WeatherRateIdList; + std::set< uint32_t > m_WeeklyBingoOrderDataIdList; + std::set< uint32_t > m_WeeklyBingoRewardDataIdList; + std::set< uint32_t > m_WeeklyBingoTextIdList; + std::set< uint32_t > m_WorldDCGroupTypeIdList; + + +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAchievementIdList() +{ + if( m_AchievementIdList.size() == 0 ) + loadIdList( m_AchievementDat, m_AchievementIdList ); + return m_AchievementIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAchievementCategoryIdList() +{ + if( m_AchievementCategoryIdList.size() == 0 ) + loadIdList( m_AchievementCategoryDat, m_AchievementCategoryIdList ); + return m_AchievementCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAchievementKindIdList() +{ + if( m_AchievementKindIdList.size() == 0 ) + loadIdList( m_AchievementKindDat, m_AchievementKindIdList ); + return m_AchievementKindIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getActionIdList() +{ + if( m_ActionIdList.size() == 0 ) + loadIdList( m_ActionDat, m_ActionIdList ); + return m_ActionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getActionCategoryIdList() +{ + if( m_ActionCategoryIdList.size() == 0 ) + loadIdList( m_ActionCategoryDat, m_ActionCategoryIdList ); + return m_ActionCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getActionComboRouteIdList() +{ + if( m_ActionComboRouteIdList.size() == 0 ) + loadIdList( m_ActionComboRouteDat, m_ActionComboRouteIdList ); + return m_ActionComboRouteIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getActionIndirectionIdList() +{ + if( m_ActionIndirectionIdList.size() == 0 ) + loadIdList( m_ActionIndirectionDat, m_ActionIndirectionIdList ); + return m_ActionIndirectionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getActionProcStatusIdList() +{ + if( m_ActionProcStatusIdList.size() == 0 ) + loadIdList( m_ActionProcStatusDat, m_ActionProcStatusIdList ); + return m_ActionProcStatusIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getActionTimelineIdList() +{ + if( m_ActionTimelineIdList.size() == 0 ) + loadIdList( m_ActionTimelineDat, m_ActionTimelineIdList ); + return m_ActionTimelineIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getActionTransientIdList() +{ + if( m_ActionTransientIdList.size() == 0 ) + loadIdList( m_ActionTransientDat, m_ActionTransientIdList ); + return m_ActionTransientIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAddonIdList() +{ + if( m_AddonIdList.size() == 0 ) + loadIdList( m_AddonDat, m_AddonIdList ); + return m_AddonIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAdventureIdList() +{ + if( m_AdventureIdList.size() == 0 ) + loadIdList( m_AdventureDat, m_AdventureIdList ); + return m_AdventureIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAdventureExPhaseIdList() +{ + if( m_AdventureExPhaseIdList.size() == 0 ) + loadIdList( m_AdventureExPhaseDat, m_AdventureExPhaseIdList ); + return m_AdventureExPhaseIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAetherCurrentIdList() +{ + if( m_AetherCurrentIdList.size() == 0 ) + loadIdList( m_AetherCurrentDat, m_AetherCurrentIdList ); + return m_AetherCurrentIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAetherialWheelIdList() +{ + if( m_AetherialWheelIdList.size() == 0 ) + loadIdList( m_AetherialWheelDat, m_AetherialWheelIdList ); + return m_AetherialWheelIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAetheryteIdList() +{ + if( m_AetheryteIdList.size() == 0 ) + loadIdList( m_AetheryteDat, m_AetheryteIdList ); + return m_AetheryteIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAirshipExplorationLevelIdList() +{ + if( m_AirshipExplorationLevelIdList.size() == 0 ) + loadIdList( m_AirshipExplorationLevelDat, m_AirshipExplorationLevelIdList ); + return m_AirshipExplorationLevelIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAirshipExplorationLogIdList() +{ + if( m_AirshipExplorationLogIdList.size() == 0 ) + loadIdList( m_AirshipExplorationLogDat, m_AirshipExplorationLogIdList ); + return m_AirshipExplorationLogIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAirshipExplorationParamTypeIdList() +{ + if( m_AirshipExplorationParamTypeIdList.size() == 0 ) + loadIdList( m_AirshipExplorationParamTypeDat, m_AirshipExplorationParamTypeIdList ); + return m_AirshipExplorationParamTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAirshipExplorationPartIdList() +{ + if( m_AirshipExplorationPartIdList.size() == 0 ) + loadIdList( m_AirshipExplorationPartDat, m_AirshipExplorationPartIdList ); + return m_AirshipExplorationPartIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAirshipExplorationPointIdList() +{ + if( m_AirshipExplorationPointIdList.size() == 0 ) + loadIdList( m_AirshipExplorationPointDat, m_AirshipExplorationPointIdList ); + return m_AirshipExplorationPointIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeapon5IdList() +{ + if( m_AnimaWeapon5IdList.size() == 0 ) + loadIdList( m_AnimaWeapon5Dat, m_AnimaWeapon5IdList ); + return m_AnimaWeapon5IdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeapon5ParamIdList() +{ + if( m_AnimaWeapon5ParamIdList.size() == 0 ) + loadIdList( m_AnimaWeapon5ParamDat, m_AnimaWeapon5ParamIdList ); + return m_AnimaWeapon5ParamIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeapon5PatternGroupIdList() +{ + if( m_AnimaWeapon5PatternGroupIdList.size() == 0 ) + loadIdList( m_AnimaWeapon5PatternGroupDat, m_AnimaWeapon5PatternGroupIdList ); + return m_AnimaWeapon5PatternGroupIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeapon5SpiritTalkIdList() +{ + if( m_AnimaWeapon5SpiritTalkIdList.size() == 0 ) + loadIdList( m_AnimaWeapon5SpiritTalkDat, m_AnimaWeapon5SpiritTalkIdList ); + return m_AnimaWeapon5SpiritTalkIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeapon5SpiritTalkParamIdList() +{ + if( m_AnimaWeapon5SpiritTalkParamIdList.size() == 0 ) + loadIdList( m_AnimaWeapon5SpiritTalkParamDat, m_AnimaWeapon5SpiritTalkParamIdList ); + return m_AnimaWeapon5SpiritTalkParamIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeapon5TradeItemIdList() +{ + if( m_AnimaWeapon5TradeItemIdList.size() == 0 ) + loadIdList( m_AnimaWeapon5TradeItemDat, m_AnimaWeapon5TradeItemIdList ); + return m_AnimaWeapon5TradeItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeaponFUITalkIdList() +{ + if( m_AnimaWeaponFUITalkIdList.size() == 0 ) + loadIdList( m_AnimaWeaponFUITalkDat, m_AnimaWeaponFUITalkIdList ); + return m_AnimaWeaponFUITalkIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeaponFUITalkParamIdList() +{ + if( m_AnimaWeaponFUITalkParamIdList.size() == 0 ) + loadIdList( m_AnimaWeaponFUITalkParamDat, m_AnimaWeaponFUITalkParamIdList ); + return m_AnimaWeaponFUITalkParamIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeaponIconIdList() +{ + if( m_AnimaWeaponIconIdList.size() == 0 ) + loadIdList( m_AnimaWeaponIconDat, m_AnimaWeaponIconIdList ); + return m_AnimaWeaponIconIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeaponItemIdList() +{ + if( m_AnimaWeaponItemIdList.size() == 0 ) + loadIdList( m_AnimaWeaponItemDat, m_AnimaWeaponItemIdList ); + return m_AnimaWeaponItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAquariumFishIdList() +{ + if( m_AquariumFishIdList.size() == 0 ) + loadIdList( m_AquariumFishDat, m_AquariumFishIdList ); + return m_AquariumFishIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAquariumWaterIdList() +{ + if( m_AquariumWaterIdList.size() == 0 ) + loadIdList( m_AquariumWaterDat, m_AquariumWaterIdList ); + return m_AquariumWaterIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAttackTypeIdList() +{ + if( m_AttackTypeIdList.size() == 0 ) + loadIdList( m_AttackTypeDat, m_AttackTypeIdList ); + return m_AttackTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBalloonIdList() +{ + if( m_BalloonIdList.size() == 0 ) + loadIdList( m_BalloonDat, m_BalloonIdList ); + return m_BalloonIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBaseParamIdList() +{ + if( m_BaseParamIdList.size() == 0 ) + loadIdList( m_BaseParamDat, m_BaseParamIdList ); + return m_BaseParamIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBattleLeveIdList() +{ + if( m_BattleLeveIdList.size() == 0 ) + loadIdList( m_BattleLeveDat, m_BattleLeveIdList ); + return m_BattleLeveIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBeastRankBonusIdList() +{ + if( m_BeastRankBonusIdList.size() == 0 ) + loadIdList( m_BeastRankBonusDat, m_BeastRankBonusIdList ); + return m_BeastRankBonusIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBeastReputationRankIdList() +{ + if( m_BeastReputationRankIdList.size() == 0 ) + loadIdList( m_BeastReputationRankDat, m_BeastReputationRankIdList ); + return m_BeastReputationRankIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBeastTribeIdList() +{ + if( m_BeastTribeIdList.size() == 0 ) + loadIdList( m_BeastTribeDat, m_BeastTribeIdList ); + return m_BeastTribeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBehaviorIdList() +{ + if( m_BehaviorIdList.size() == 0 ) + loadIdList( m_BehaviorDat, m_BehaviorIdList ); + return m_BehaviorIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBGMIdList() +{ + if( m_BGMIdList.size() == 0 ) + loadIdList( m_BGMDat, m_BGMIdList ); + return m_BGMIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBNpcAnnounceIconIdList() +{ + if( m_BNpcAnnounceIconIdList.size() == 0 ) + loadIdList( m_BNpcAnnounceIconDat, m_BNpcAnnounceIconIdList ); + return m_BNpcAnnounceIconIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBNpcBaseIdList() +{ + if( m_BNpcBaseIdList.size() == 0 ) + loadIdList( m_BNpcBaseDat, m_BNpcBaseIdList ); + return m_BNpcBaseIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBNpcCustomizeIdList() +{ + if( m_BNpcCustomizeIdList.size() == 0 ) + loadIdList( m_BNpcCustomizeDat, m_BNpcCustomizeIdList ); + return m_BNpcCustomizeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBNpcNameIdList() +{ + if( m_BNpcNameIdList.size() == 0 ) + loadIdList( m_BNpcNameDat, m_BNpcNameIdList ); + return m_BNpcNameIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBuddyActionIdList() +{ + if( m_BuddyActionIdList.size() == 0 ) + loadIdList( m_BuddyActionDat, m_BuddyActionIdList ); + return m_BuddyActionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBuddyEquipIdList() +{ + if( m_BuddyEquipIdList.size() == 0 ) + loadIdList( m_BuddyEquipDat, m_BuddyEquipIdList ); + return m_BuddyEquipIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBuddyItemIdList() +{ + if( m_BuddyItemIdList.size() == 0 ) + loadIdList( m_BuddyItemDat, m_BuddyItemIdList ); + return m_BuddyItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBuddyRankIdList() +{ + if( m_BuddyRankIdList.size() == 0 ) + loadIdList( m_BuddyRankDat, m_BuddyRankIdList ); + return m_BuddyRankIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBuddySkillIdList() +{ + if( m_BuddySkillIdList.size() == 0 ) + loadIdList( m_BuddySkillDat, m_BuddySkillIdList ); + return m_BuddySkillIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCabinetIdList() +{ + if( m_CabinetIdList.size() == 0 ) + loadIdList( m_CabinetDat, m_CabinetIdList ); + return m_CabinetIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCabinetCategoryIdList() +{ + if( m_CabinetCategoryIdList.size() == 0 ) + loadIdList( m_CabinetCategoryDat, m_CabinetCategoryIdList ); + return m_CabinetCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCalendarIdList() +{ + if( m_CalendarIdList.size() == 0 ) + loadIdList( m_CalendarDat, m_CalendarIdList ); + return m_CalendarIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChainBonusIdList() +{ + if( m_ChainBonusIdList.size() == 0 ) + loadIdList( m_ChainBonusDat, m_ChainBonusIdList ); + return m_ChainBonusIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCharaMakeCustomizeIdList() +{ + if( m_CharaMakeCustomizeIdList.size() == 0 ) + loadIdList( m_CharaMakeCustomizeDat, m_CharaMakeCustomizeIdList ); + return m_CharaMakeCustomizeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCharaMakeTypeIdList() +{ + if( m_CharaMakeTypeIdList.size() == 0 ) + loadIdList( m_CharaMakeTypeDat, m_CharaMakeTypeIdList ); + return m_CharaMakeTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboRaceIdList() +{ + if( m_ChocoboRaceIdList.size() == 0 ) + loadIdList( m_ChocoboRaceDat, m_ChocoboRaceIdList ); + return m_ChocoboRaceIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboRaceAbilityIdList() +{ + if( m_ChocoboRaceAbilityIdList.size() == 0 ) + loadIdList( m_ChocoboRaceAbilityDat, m_ChocoboRaceAbilityIdList ); + return m_ChocoboRaceAbilityIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboRaceAbilityTypeIdList() +{ + if( m_ChocoboRaceAbilityTypeIdList.size() == 0 ) + loadIdList( m_ChocoboRaceAbilityTypeDat, m_ChocoboRaceAbilityTypeIdList ); + return m_ChocoboRaceAbilityTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboRaceItemIdList() +{ + if( m_ChocoboRaceItemIdList.size() == 0 ) + loadIdList( m_ChocoboRaceItemDat, m_ChocoboRaceItemIdList ); + return m_ChocoboRaceItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboRaceRankIdList() +{ + if( m_ChocoboRaceRankIdList.size() == 0 ) + loadIdList( m_ChocoboRaceRankDat, m_ChocoboRaceRankIdList ); + return m_ChocoboRaceRankIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboRaceStatusIdList() +{ + if( m_ChocoboRaceStatusIdList.size() == 0 ) + loadIdList( m_ChocoboRaceStatusDat, m_ChocoboRaceStatusIdList ); + return m_ChocoboRaceStatusIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboRaceTerritoryIdList() +{ + if( m_ChocoboRaceTerritoryIdList.size() == 0 ) + loadIdList( m_ChocoboRaceTerritoryDat, m_ChocoboRaceTerritoryIdList ); + return m_ChocoboRaceTerritoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboTaxiStandIdList() +{ + if( m_ChocoboTaxiStandIdList.size() == 0 ) + loadIdList( m_ChocoboTaxiStandDat, m_ChocoboTaxiStandIdList ); + return m_ChocoboTaxiStandIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getClassJobIdList() +{ + if( m_ClassJobIdList.size() == 0 ) + loadIdList( m_ClassJobDat, m_ClassJobIdList ); + return m_ClassJobIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getClassJobCategoryIdList() +{ + if( m_ClassJobCategoryIdList.size() == 0 ) + loadIdList( m_ClassJobCategoryDat, m_ClassJobCategoryIdList ); + return m_ClassJobCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanionIdList() +{ + if( m_CompanionIdList.size() == 0 ) + loadIdList( m_CompanionDat, m_CompanionIdList ); + return m_CompanionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanionMoveIdList() +{ + if( m_CompanionMoveIdList.size() == 0 ) + loadIdList( m_CompanionMoveDat, m_CompanionMoveIdList ); + return m_CompanionMoveIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanionTransientIdList() +{ + if( m_CompanionTransientIdList.size() == 0 ) + loadIdList( m_CompanionTransientDat, m_CompanionTransientIdList ); + return m_CompanionTransientIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyActionIdList() +{ + if( m_CompanyActionIdList.size() == 0 ) + loadIdList( m_CompanyActionDat, m_CompanyActionIdList ); + return m_CompanyActionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftDraftIdList() +{ + if( m_CompanyCraftDraftIdList.size() == 0 ) + loadIdList( m_CompanyCraftDraftDat, m_CompanyCraftDraftIdList ); + return m_CompanyCraftDraftIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftDraftCategoryIdList() +{ + if( m_CompanyCraftDraftCategoryIdList.size() == 0 ) + loadIdList( m_CompanyCraftDraftCategoryDat, m_CompanyCraftDraftCategoryIdList ); + return m_CompanyCraftDraftCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftManufactoryStateIdList() +{ + if( m_CompanyCraftManufactoryStateIdList.size() == 0 ) + loadIdList( m_CompanyCraftManufactoryStateDat, m_CompanyCraftManufactoryStateIdList ); + return m_CompanyCraftManufactoryStateIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftPartIdList() +{ + if( m_CompanyCraftPartIdList.size() == 0 ) + loadIdList( m_CompanyCraftPartDat, m_CompanyCraftPartIdList ); + return m_CompanyCraftPartIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftProcessIdList() +{ + if( m_CompanyCraftProcessIdList.size() == 0 ) + loadIdList( m_CompanyCraftProcessDat, m_CompanyCraftProcessIdList ); + return m_CompanyCraftProcessIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftSequenceIdList() +{ + if( m_CompanyCraftSequenceIdList.size() == 0 ) + loadIdList( m_CompanyCraftSequenceDat, m_CompanyCraftSequenceIdList ); + return m_CompanyCraftSequenceIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftSupplyItemIdList() +{ + if( m_CompanyCraftSupplyItemIdList.size() == 0 ) + loadIdList( m_CompanyCraftSupplyItemDat, m_CompanyCraftSupplyItemIdList ); + return m_CompanyCraftSupplyItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftTypeIdList() +{ + if( m_CompanyCraftTypeIdList.size() == 0 ) + loadIdList( m_CompanyCraftTypeDat, m_CompanyCraftTypeIdList ); + return m_CompanyCraftTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompleteJournalIdList() +{ + if( m_CompleteJournalIdList.size() == 0 ) + loadIdList( m_CompleteJournalDat, m_CompleteJournalIdList ); + return m_CompleteJournalIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompleteJournalCategoryIdList() +{ + if( m_CompleteJournalCategoryIdList.size() == 0 ) + loadIdList( m_CompleteJournalCategoryDat, m_CompleteJournalCategoryIdList ); + return m_CompleteJournalCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getContentExActionIdList() +{ + if( m_ContentExActionIdList.size() == 0 ) + loadIdList( m_ContentExActionDat, m_ContentExActionIdList ); + return m_ContentExActionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getContentFinderConditionIdList() +{ + if( m_ContentFinderConditionIdList.size() == 0 ) + loadIdList( m_ContentFinderConditionDat, m_ContentFinderConditionIdList ); + return m_ContentFinderConditionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getContentFinderConditionTransientIdList() +{ + if( m_ContentFinderConditionTransientIdList.size() == 0 ) + loadIdList( m_ContentFinderConditionTransientDat, m_ContentFinderConditionTransientIdList ); + return m_ContentFinderConditionTransientIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getContentMemberTypeIdList() +{ + if( m_ContentMemberTypeIdList.size() == 0 ) + loadIdList( m_ContentMemberTypeDat, m_ContentMemberTypeIdList ); + return m_ContentMemberTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getContentRouletteIdList() +{ + if( m_ContentRouletteIdList.size() == 0 ) + loadIdList( m_ContentRouletteDat, m_ContentRouletteIdList ); + return m_ContentRouletteIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getContentTypeIdList() +{ + if( m_ContentTypeIdList.size() == 0 ) + loadIdList( m_ContentTypeDat, m_ContentTypeIdList ); + return m_ContentTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCraftActionIdList() +{ + if( m_CraftActionIdList.size() == 0 ) + loadIdList( m_CraftActionDat, m_CraftActionIdList ); + return m_CraftActionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCraftLeveIdList() +{ + if( m_CraftLeveIdList.size() == 0 ) + loadIdList( m_CraftLeveDat, m_CraftLeveIdList ); + return m_CraftLeveIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCraftTypeIdList() +{ + if( m_CraftTypeIdList.size() == 0 ) + loadIdList( m_CraftTypeDat, m_CraftTypeIdList ); + return m_CraftTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCurrencyIdList() +{ + if( m_CurrencyIdList.size() == 0 ) + loadIdList( m_CurrencyDat, m_CurrencyIdList ); + return m_CurrencyIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCustomTalkIdList() +{ + if( m_CustomTalkIdList.size() == 0 ) + loadIdList( m_CustomTalkDat, m_CustomTalkIdList ); + return m_CustomTalkIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCutsceneIdList() +{ + if( m_CutsceneIdList.size() == 0 ) + loadIdList( m_CutsceneDat, m_CutsceneIdList ); + return m_CutsceneIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCutScreenImageIdList() +{ + if( m_CutScreenImageIdList.size() == 0 ) + loadIdList( m_CutScreenImageDat, m_CutScreenImageIdList ); + return m_CutScreenImageIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDailySupplyItemIdList() +{ + if( m_DailySupplyItemIdList.size() == 0 ) + loadIdList( m_DailySupplyItemDat, m_DailySupplyItemIdList ); + return m_DailySupplyItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDeepDungeonBanIdList() +{ + if( m_DeepDungeonBanIdList.size() == 0 ) + loadIdList( m_DeepDungeonBanDat, m_DeepDungeonBanIdList ); + return m_DeepDungeonBanIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDeepDungeonDangerIdList() +{ + if( m_DeepDungeonDangerIdList.size() == 0 ) + loadIdList( m_DeepDungeonDangerDat, m_DeepDungeonDangerIdList ); + return m_DeepDungeonDangerIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDeepDungeonEquipmentIdList() +{ + if( m_DeepDungeonEquipmentIdList.size() == 0 ) + loadIdList( m_DeepDungeonEquipmentDat, m_DeepDungeonEquipmentIdList ); + return m_DeepDungeonEquipmentIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDeepDungeonFloorEffectUIIdList() +{ + if( m_DeepDungeonFloorEffectUIIdList.size() == 0 ) + loadIdList( m_DeepDungeonFloorEffectUIDat, m_DeepDungeonFloorEffectUIIdList ); + return m_DeepDungeonFloorEffectUIIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDeepDungeonItemIdList() +{ + if( m_DeepDungeonItemIdList.size() == 0 ) + loadIdList( m_DeepDungeonItemDat, m_DeepDungeonItemIdList ); + return m_DeepDungeonItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDeepDungeonStatusIdList() +{ + if( m_DeepDungeonStatusIdList.size() == 0 ) + loadIdList( m_DeepDungeonStatusDat, m_DeepDungeonStatusIdList ); + return m_DeepDungeonStatusIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDefaultTalkIdList() +{ + if( m_DefaultTalkIdList.size() == 0 ) + loadIdList( m_DefaultTalkDat, m_DefaultTalkIdList ); + return m_DefaultTalkIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDeliveryQuestIdList() +{ + if( m_DeliveryQuestIdList.size() == 0 ) + loadIdList( m_DeliveryQuestDat, m_DeliveryQuestIdList ); + return m_DeliveryQuestIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDisposalShopIdList() +{ + if( m_DisposalShopIdList.size() == 0 ) + loadIdList( m_DisposalShopDat, m_DisposalShopIdList ); + return m_DisposalShopIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDisposalShopFilterTypeIdList() +{ + if( m_DisposalShopFilterTypeIdList.size() == 0 ) + loadIdList( m_DisposalShopFilterTypeDat, m_DisposalShopFilterTypeIdList ); + return m_DisposalShopFilterTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDisposalShopItemIdList() +{ + if( m_DisposalShopItemIdList.size() == 0 ) + loadIdList( m_DisposalShopItemDat, m_DisposalShopItemIdList ); + return m_DisposalShopItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDpsChallengeIdList() +{ + if( m_DpsChallengeIdList.size() == 0 ) + loadIdList( m_DpsChallengeDat, m_DpsChallengeIdList ); + return m_DpsChallengeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDpsChallengeOfficerIdList() +{ + if( m_DpsChallengeOfficerIdList.size() == 0 ) + loadIdList( m_DpsChallengeOfficerDat, m_DpsChallengeOfficerIdList ); + return m_DpsChallengeOfficerIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDpsChallengeTransientIdList() +{ + if( m_DpsChallengeTransientIdList.size() == 0 ) + loadIdList( m_DpsChallengeTransientDat, m_DpsChallengeTransientIdList ); + return m_DpsChallengeTransientIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEmoteIdList() +{ + if( m_EmoteIdList.size() == 0 ) + loadIdList( m_EmoteDat, m_EmoteIdList ); + return m_EmoteIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEmoteCategoryIdList() +{ + if( m_EmoteCategoryIdList.size() == 0 ) + loadIdList( m_EmoteCategoryDat, m_EmoteCategoryIdList ); + return m_EmoteCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getENpcBaseIdList() +{ + if( m_ENpcBaseIdList.size() == 0 ) + loadIdList( m_ENpcBaseDat, m_ENpcBaseIdList ); + return m_ENpcBaseIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getENpcResidentIdList() +{ + if( m_ENpcResidentIdList.size() == 0 ) + loadIdList( m_ENpcResidentDat, m_ENpcResidentIdList ); + return m_ENpcResidentIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEObjIdList() +{ + if( m_EObjIdList.size() == 0 ) + loadIdList( m_EObjDat, m_EObjIdList ); + return m_EObjIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEquipRaceCategoryIdList() +{ + if( m_EquipRaceCategoryIdList.size() == 0 ) + loadIdList( m_EquipRaceCategoryDat, m_EquipRaceCategoryIdList ); + return m_EquipRaceCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEquipSlotCategoryIdList() +{ + if( m_EquipSlotCategoryIdList.size() == 0 ) + loadIdList( m_EquipSlotCategoryDat, m_EquipSlotCategoryIdList ); + return m_EquipSlotCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEventActionIdList() +{ + if( m_EventActionIdList.size() == 0 ) + loadIdList( m_EventActionDat, m_EventActionIdList ); + return m_EventActionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEventIconPriorityIdList() +{ + if( m_EventIconPriorityIdList.size() == 0 ) + loadIdList( m_EventIconPriorityDat, m_EventIconPriorityIdList ); + return m_EventIconPriorityIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEventIconTypeIdList() +{ + if( m_EventIconTypeIdList.size() == 0 ) + loadIdList( m_EventIconTypeDat, m_EventIconTypeIdList ); + return m_EventIconTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEventItemIdList() +{ + if( m_EventItemIdList.size() == 0 ) + loadIdList( m_EventItemDat, m_EventItemIdList ); + return m_EventItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEventItemHelpIdList() +{ + if( m_EventItemHelpIdList.size() == 0 ) + loadIdList( m_EventItemHelpDat, m_EventItemHelpIdList ); + return m_EventItemHelpIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getExVersionIdList() +{ + if( m_ExVersionIdList.size() == 0 ) + loadIdList( m_ExVersionDat, m_ExVersionIdList ); + return m_ExVersionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFateIdList() +{ + if( m_FateIdList.size() == 0 ) + loadIdList( m_FateDat, m_FateIdList ); + return m_FateIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFCActivityIdList() +{ + if( m_FCActivityIdList.size() == 0 ) + loadIdList( m_FCActivityDat, m_FCActivityIdList ); + return m_FCActivityIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFCAuthorityIdList() +{ + if( m_FCAuthorityIdList.size() == 0 ) + loadIdList( m_FCAuthorityDat, m_FCAuthorityIdList ); + return m_FCAuthorityIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFCAuthorityCategoryIdList() +{ + if( m_FCAuthorityCategoryIdList.size() == 0 ) + loadIdList( m_FCAuthorityCategoryDat, m_FCAuthorityCategoryIdList ); + return m_FCAuthorityCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFCChestNameIdList() +{ + if( m_FCChestNameIdList.size() == 0 ) + loadIdList( m_FCChestNameDat, m_FCChestNameIdList ); + return m_FCChestNameIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFccShopIdList() +{ + if( m_FccShopIdList.size() == 0 ) + loadIdList( m_FccShopDat, m_FccShopIdList ); + return m_FccShopIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFCHierarchyIdList() +{ + if( m_FCHierarchyIdList.size() == 0 ) + loadIdList( m_FCHierarchyDat, m_FCHierarchyIdList ); + return m_FCHierarchyIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFCReputationIdList() +{ + if( m_FCReputationIdList.size() == 0 ) + loadIdList( m_FCReputationDat, m_FCReputationIdList ); + return m_FCReputationIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFCRightsIdList() +{ + if( m_FCRightsIdList.size() == 0 ) + loadIdList( m_FCRightsDat, m_FCRightsIdList ); + return m_FCRightsIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFishingSpotIdList() +{ + if( m_FishingSpotIdList.size() == 0 ) + loadIdList( m_FishingSpotDat, m_FishingSpotIdList ); + return m_FishingSpotIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFishParameterIdList() +{ + if( m_FishParameterIdList.size() == 0 ) + loadIdList( m_FishParameterDat, m_FishParameterIdList ); + return m_FishParameterIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGardeningSeedIdList() +{ + if( m_GardeningSeedIdList.size() == 0 ) + loadIdList( m_GardeningSeedDat, m_GardeningSeedIdList ); + return m_GardeningSeedIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringConditionIdList() +{ + if( m_GatheringConditionIdList.size() == 0 ) + loadIdList( m_GatheringConditionDat, m_GatheringConditionIdList ); + return m_GatheringConditionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringExpIdList() +{ + if( m_GatheringExpIdList.size() == 0 ) + loadIdList( m_GatheringExpDat, m_GatheringExpIdList ); + return m_GatheringExpIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringItemIdList() +{ + if( m_GatheringItemIdList.size() == 0 ) + loadIdList( m_GatheringItemDat, m_GatheringItemIdList ); + return m_GatheringItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringItemLevelConvertTableIdList() +{ + if( m_GatheringItemLevelConvertTableIdList.size() == 0 ) + loadIdList( m_GatheringItemLevelConvertTableDat, m_GatheringItemLevelConvertTableIdList ); + return m_GatheringItemLevelConvertTableIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringItemPointIdList() +{ + if( m_GatheringItemPointIdList.size() == 0 ) + loadIdList( m_GatheringItemPointDat, m_GatheringItemPointIdList ); + return m_GatheringItemPointIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringNotebookListIdList() +{ + if( m_GatheringNotebookListIdList.size() == 0 ) + loadIdList( m_GatheringNotebookListDat, m_GatheringNotebookListIdList ); + return m_GatheringNotebookListIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringPointIdList() +{ + if( m_GatheringPointIdList.size() == 0 ) + loadIdList( m_GatheringPointDat, m_GatheringPointIdList ); + return m_GatheringPointIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringPointBaseIdList() +{ + if( m_GatheringPointBaseIdList.size() == 0 ) + loadIdList( m_GatheringPointBaseDat, m_GatheringPointBaseIdList ); + return m_GatheringPointBaseIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringPointBonusIdList() +{ + if( m_GatheringPointBonusIdList.size() == 0 ) + loadIdList( m_GatheringPointBonusDat, m_GatheringPointBonusIdList ); + return m_GatheringPointBonusIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringPointBonusTypeIdList() +{ + if( m_GatheringPointBonusTypeIdList.size() == 0 ) + loadIdList( m_GatheringPointBonusTypeDat, m_GatheringPointBonusTypeIdList ); + return m_GatheringPointBonusTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringPointNameIdList() +{ + if( m_GatheringPointNameIdList.size() == 0 ) + loadIdList( m_GatheringPointNameDat, m_GatheringPointNameIdList ); + return m_GatheringPointNameIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringSubCategoryIdList() +{ + if( m_GatheringSubCategoryIdList.size() == 0 ) + loadIdList( m_GatheringSubCategoryDat, m_GatheringSubCategoryIdList ); + return m_GatheringSubCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringTypeIdList() +{ + if( m_GatheringTypeIdList.size() == 0 ) + loadIdList( m_GatheringTypeDat, m_GatheringTypeIdList ); + return m_GatheringTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGcArmyExpeditionIdList() +{ + if( m_GcArmyExpeditionIdList.size() == 0 ) + loadIdList( m_GcArmyExpeditionDat, m_GcArmyExpeditionIdList ); + return m_GcArmyExpeditionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGcArmyExpeditionMemberBonusIdList() +{ + if( m_GcArmyExpeditionMemberBonusIdList.size() == 0 ) + loadIdList( m_GcArmyExpeditionMemberBonusDat, m_GcArmyExpeditionMemberBonusIdList ); + return m_GcArmyExpeditionMemberBonusIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGcArmyExpeditionTypeIdList() +{ + if( m_GcArmyExpeditionTypeIdList.size() == 0 ) + loadIdList( m_GcArmyExpeditionTypeDat, m_GcArmyExpeditionTypeIdList ); + return m_GcArmyExpeditionTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGcArmyMemberGrowIdList() +{ + if( m_GcArmyMemberGrowIdList.size() == 0 ) + loadIdList( m_GcArmyMemberGrowDat, m_GcArmyMemberGrowIdList ); + return m_GcArmyMemberGrowIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGcArmyTrainingIdList() +{ + if( m_GcArmyTrainingIdList.size() == 0 ) + loadIdList( m_GcArmyTrainingDat, m_GcArmyTrainingIdList ); + return m_GcArmyTrainingIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGCScripShopCategoryIdList() +{ + if( m_GCScripShopCategoryIdList.size() == 0 ) + loadIdList( m_GCScripShopCategoryDat, m_GCScripShopCategoryIdList ); + return m_GCScripShopCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGCScripShopItemIdList() +{ + if( m_GCScripShopItemIdList.size() == 0 ) + loadIdList( m_GCScripShopItemDat, m_GCScripShopItemIdList ); + return m_GCScripShopItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGCShopIdList() +{ + if( m_GCShopIdList.size() == 0 ) + loadIdList( m_GCShopDat, m_GCShopIdList ); + return m_GCShopIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGCShopItemCategoryIdList() +{ + if( m_GCShopItemCategoryIdList.size() == 0 ) + loadIdList( m_GCShopItemCategoryDat, m_GCShopItemCategoryIdList ); + return m_GCShopItemCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGCSupplyDutyIdList() +{ + if( m_GCSupplyDutyIdList.size() == 0 ) + loadIdList( m_GCSupplyDutyDat, m_GCSupplyDutyIdList ); + return m_GCSupplyDutyIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGCSupplyDutyRewardIdList() +{ + if( m_GCSupplyDutyRewardIdList.size() == 0 ) + loadIdList( m_GCSupplyDutyRewardDat, m_GCSupplyDutyRewardIdList ); + return m_GCSupplyDutyRewardIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGeneralActionIdList() +{ + if( m_GeneralActionIdList.size() == 0 ) + loadIdList( m_GeneralActionDat, m_GeneralActionIdList ); + return m_GeneralActionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGilShopIdList() +{ + if( m_GilShopIdList.size() == 0 ) + loadIdList( m_GilShopDat, m_GilShopIdList ); + return m_GilShopIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGilShopItemIdList() +{ + if( m_GilShopItemIdList.size() == 0 ) + loadIdList( m_GilShopItemDat, m_GilShopItemIdList ); + return m_GilShopItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGoldSaucerTextDataIdList() +{ + if( m_GoldSaucerTextDataIdList.size() == 0 ) + loadIdList( m_GoldSaucerTextDataDat, m_GoldSaucerTextDataIdList ); + return m_GoldSaucerTextDataIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGrandCompanyIdList() +{ + if( m_GrandCompanyIdList.size() == 0 ) + loadIdList( m_GrandCompanyDat, m_GrandCompanyIdList ); + return m_GrandCompanyIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGrandCompanyRankIdList() +{ + if( m_GrandCompanyRankIdList.size() == 0 ) + loadIdList( m_GrandCompanyRankDat, m_GrandCompanyRankIdList ); + return m_GrandCompanyRankIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGuardianDeityIdList() +{ + if( m_GuardianDeityIdList.size() == 0 ) + loadIdList( m_GuardianDeityDat, m_GuardianDeityIdList ); + return m_GuardianDeityIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGuildleveAssignmentIdList() +{ + if( m_GuildleveAssignmentIdList.size() == 0 ) + loadIdList( m_GuildleveAssignmentDat, m_GuildleveAssignmentIdList ); + return m_GuildleveAssignmentIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGuildOrderGuideIdList() +{ + if( m_GuildOrderGuideIdList.size() == 0 ) + loadIdList( m_GuildOrderGuideDat, m_GuildOrderGuideIdList ); + return m_GuildOrderGuideIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGuildOrderOfficerIdList() +{ + if( m_GuildOrderOfficerIdList.size() == 0 ) + loadIdList( m_GuildOrderOfficerDat, m_GuildOrderOfficerIdList ); + return m_GuildOrderOfficerIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getHouseRetainerPoseIdList() +{ + if( m_HouseRetainerPoseIdList.size() == 0 ) + loadIdList( m_HouseRetainerPoseDat, m_HouseRetainerPoseIdList ); + return m_HouseRetainerPoseIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getHousingFurnitureIdList() +{ + if( m_HousingFurnitureIdList.size() == 0 ) + loadIdList( m_HousingFurnitureDat, m_HousingFurnitureIdList ); + return m_HousingFurnitureIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getHousingYardObjectIdList() +{ + if( m_HousingYardObjectIdList.size() == 0 ) + loadIdList( m_HousingYardObjectDat, m_HousingYardObjectIdList ); + return m_HousingYardObjectIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getInstanceContentIdList() +{ + if( m_InstanceContentIdList.size() == 0 ) + loadIdList( m_InstanceContentDat, m_InstanceContentIdList ); + return m_InstanceContentIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getInstanceContentBuffIdList() +{ + if( m_InstanceContentBuffIdList.size() == 0 ) + loadIdList( m_InstanceContentBuffDat, m_InstanceContentBuffIdList ); + return m_InstanceContentBuffIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getInstanceContentTextDataIdList() +{ + if( m_InstanceContentTextDataIdList.size() == 0 ) + loadIdList( m_InstanceContentTextDataDat, m_InstanceContentTextDataIdList ); + return m_InstanceContentTextDataIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getInstanceContentTypeIdList() +{ + if( m_InstanceContentTypeIdList.size() == 0 ) + loadIdList( m_InstanceContentTypeDat, m_InstanceContentTypeIdList ); + return m_InstanceContentTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getItemIdList() +{ + if( m_ItemIdList.size() == 0 ) + loadIdList( m_ItemDat, m_ItemIdList ); + return m_ItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getItemActionIdList() +{ + if( m_ItemActionIdList.size() == 0 ) + loadIdList( m_ItemActionDat, m_ItemActionIdList ); + return m_ItemActionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getItemFoodIdList() +{ + if( m_ItemFoodIdList.size() == 0 ) + loadIdList( m_ItemFoodDat, m_ItemFoodIdList ); + return m_ItemFoodIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getItemSearchCategoryIdList() +{ + if( m_ItemSearchCategoryIdList.size() == 0 ) + loadIdList( m_ItemSearchCategoryDat, m_ItemSearchCategoryIdList ); + return m_ItemSearchCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getItemSeriesIdList() +{ + if( m_ItemSeriesIdList.size() == 0 ) + loadIdList( m_ItemSeriesDat, m_ItemSeriesIdList ); + return m_ItemSeriesIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getItemSpecialBonusIdList() +{ + if( m_ItemSpecialBonusIdList.size() == 0 ) + loadIdList( m_ItemSpecialBonusDat, m_ItemSpecialBonusIdList ); + return m_ItemSpecialBonusIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getItemUICategoryIdList() +{ + if( m_ItemUICategoryIdList.size() == 0 ) + loadIdList( m_ItemUICategoryDat, m_ItemUICategoryIdList ); + return m_ItemUICategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getJournalCategoryIdList() +{ + if( m_JournalCategoryIdList.size() == 0 ) + loadIdList( m_JournalCategoryDat, m_JournalCategoryIdList ); + return m_JournalCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getJournalGenreIdList() +{ + if( m_JournalGenreIdList.size() == 0 ) + loadIdList( m_JournalGenreDat, m_JournalGenreIdList ); + return m_JournalGenreIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getJournalSectionIdList() +{ + if( m_JournalSectionIdList.size() == 0 ) + loadIdList( m_JournalSectionDat, m_JournalSectionIdList ); + return m_JournalSectionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLeveIdList() +{ + if( m_LeveIdList.size() == 0 ) + loadIdList( m_LeveDat, m_LeveIdList ); + return m_LeveIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLeveAssignmentTypeIdList() +{ + if( m_LeveAssignmentTypeIdList.size() == 0 ) + loadIdList( m_LeveAssignmentTypeDat, m_LeveAssignmentTypeIdList ); + return m_LeveAssignmentTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLeveClientIdList() +{ + if( m_LeveClientIdList.size() == 0 ) + loadIdList( m_LeveClientDat, m_LeveClientIdList ); + return m_LeveClientIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLevelIdList() +{ + if( m_LevelIdList.size() == 0 ) + loadIdList( m_LevelDat, m_LevelIdList ); + return m_LevelIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLeveRewardItemIdList() +{ + if( m_LeveRewardItemIdList.size() == 0 ) + loadIdList( m_LeveRewardItemDat, m_LeveRewardItemIdList ); + return m_LeveRewardItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLeveRewardItemGroupIdList() +{ + if( m_LeveRewardItemGroupIdList.size() == 0 ) + loadIdList( m_LeveRewardItemGroupDat, m_LeveRewardItemGroupIdList ); + return m_LeveRewardItemGroupIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLeveVfxIdList() +{ + if( m_LeveVfxIdList.size() == 0 ) + loadIdList( m_LeveVfxDat, m_LeveVfxIdList ); + return m_LeveVfxIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLogFilterIdList() +{ + if( m_LogFilterIdList.size() == 0 ) + loadIdList( m_LogFilterDat, m_LogFilterIdList ); + return m_LogFilterIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLogKindIdList() +{ + if( m_LogKindIdList.size() == 0 ) + loadIdList( m_LogKindDat, m_LogKindIdList ); + return m_LogKindIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLogKindCategoryTextIdList() +{ + if( m_LogKindCategoryTextIdList.size() == 0 ) + loadIdList( m_LogKindCategoryTextDat, m_LogKindCategoryTextIdList ); + return m_LogKindCategoryTextIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLogMessageIdList() +{ + if( m_LogMessageIdList.size() == 0 ) + loadIdList( m_LogMessageDat, m_LogMessageIdList ); + return m_LogMessageIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMacroIconIdList() +{ + if( m_MacroIconIdList.size() == 0 ) + loadIdList( m_MacroIconDat, m_MacroIconIdList ); + return m_MacroIconIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMacroIconRedirectOldIdList() +{ + if( m_MacroIconRedirectOldIdList.size() == 0 ) + loadIdList( m_MacroIconRedirectOldDat, m_MacroIconRedirectOldIdList ); + return m_MacroIconRedirectOldIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMainCommandIdList() +{ + if( m_MainCommandIdList.size() == 0 ) + loadIdList( m_MainCommandDat, m_MainCommandIdList ); + return m_MainCommandIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMainCommandCategoryIdList() +{ + if( m_MainCommandCategoryIdList.size() == 0 ) + loadIdList( m_MainCommandCategoryDat, m_MainCommandCategoryIdList ); + return m_MainCommandCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMapIdList() +{ + if( m_MapIdList.size() == 0 ) + loadIdList( m_MapDat, m_MapIdList ); + return m_MapIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMapMarkerIdList() +{ + if( m_MapMarkerIdList.size() == 0 ) + loadIdList( m_MapMarkerDat, m_MapMarkerIdList ); + return m_MapMarkerIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMapSymbolIdList() +{ + if( m_MapSymbolIdList.size() == 0 ) + loadIdList( m_MapSymbolDat, m_MapSymbolIdList ); + return m_MapSymbolIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMasterpieceSupplyDutyIdList() +{ + if( m_MasterpieceSupplyDutyIdList.size() == 0 ) + loadIdList( m_MasterpieceSupplyDutyDat, m_MasterpieceSupplyDutyIdList ); + return m_MasterpieceSupplyDutyIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMasterpieceSupplyMultiplierIdList() +{ + if( m_MasterpieceSupplyMultiplierIdList.size() == 0 ) + loadIdList( m_MasterpieceSupplyMultiplierDat, m_MasterpieceSupplyMultiplierIdList ); + return m_MasterpieceSupplyMultiplierIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMateriaIdList() +{ + if( m_MateriaIdList.size() == 0 ) + loadIdList( m_MateriaDat, m_MateriaIdList ); + return m_MateriaIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMinionRaceIdList() +{ + if( m_MinionRaceIdList.size() == 0 ) + loadIdList( m_MinionRaceDat, m_MinionRaceIdList ); + return m_MinionRaceIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMinionRulesIdList() +{ + if( m_MinionRulesIdList.size() == 0 ) + loadIdList( m_MinionRulesDat, m_MinionRulesIdList ); + return m_MinionRulesIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMinionSkillTypeIdList() +{ + if( m_MinionSkillTypeIdList.size() == 0 ) + loadIdList( m_MinionSkillTypeDat, m_MinionSkillTypeIdList ); + return m_MinionSkillTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMobHuntTargetIdList() +{ + if( m_MobHuntTargetIdList.size() == 0 ) + loadIdList( m_MobHuntTargetDat, m_MobHuntTargetIdList ); + return m_MobHuntTargetIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getModelCharaIdList() +{ + if( m_ModelCharaIdList.size() == 0 ) + loadIdList( m_ModelCharaDat, m_ModelCharaIdList ); + return m_ModelCharaIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMonsterNoteIdList() +{ + if( m_MonsterNoteIdList.size() == 0 ) + loadIdList( m_MonsterNoteDat, m_MonsterNoteIdList ); + return m_MonsterNoteIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMonsterNoteTargetIdList() +{ + if( m_MonsterNoteTargetIdList.size() == 0 ) + loadIdList( m_MonsterNoteTargetDat, m_MonsterNoteTargetIdList ); + return m_MonsterNoteTargetIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMountIdList() +{ + if( m_MountIdList.size() == 0 ) + loadIdList( m_MountDat, m_MountIdList ); + return m_MountIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMountActionIdList() +{ + if( m_MountActionIdList.size() == 0 ) + loadIdList( m_MountActionDat, m_MountActionIdList ); + return m_MountActionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getNpcEquipIdList() +{ + if( m_NpcEquipIdList.size() == 0 ) + loadIdList( m_NpcEquipDat, m_NpcEquipIdList ); + return m_NpcEquipIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getOmenIdList() +{ + if( m_OmenIdList.size() == 0 ) + loadIdList( m_OmenDat, m_OmenIdList ); + return m_OmenIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getOnlineStatusIdList() +{ + if( m_OnlineStatusIdList.size() == 0 ) + loadIdList( m_OnlineStatusDat, m_OnlineStatusIdList ); + return m_OnlineStatusIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getOrchestrionIdList() +{ + if( m_OrchestrionIdList.size() == 0 ) + loadIdList( m_OrchestrionDat, m_OrchestrionIdList ); + return m_OrchestrionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getOrchestrionPathIdList() +{ + if( m_OrchestrionPathIdList.size() == 0 ) + loadIdList( m_OrchestrionPathDat, m_OrchestrionPathIdList ); + return m_OrchestrionPathIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getParamGrowIdList() +{ + if( m_ParamGrowIdList.size() == 0 ) + loadIdList( m_ParamGrowDat, m_ParamGrowIdList ); + return m_ParamGrowIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getPetIdList() +{ + if( m_PetIdList.size() == 0 ) + loadIdList( m_PetDat, m_PetIdList ); + return m_PetIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getPetActionIdList() +{ + if( m_PetActionIdList.size() == 0 ) + loadIdList( m_PetActionDat, m_PetActionIdList ); + return m_PetActionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getPictureIdList() +{ + if( m_PictureIdList.size() == 0 ) + loadIdList( m_PictureDat, m_PictureIdList ); + return m_PictureIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getPlaceNameIdList() +{ + if( m_PlaceNameIdList.size() == 0 ) + loadIdList( m_PlaceNameDat, m_PlaceNameIdList ); + return m_PlaceNameIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getQuestIdList() +{ + if( m_QuestIdList.size() == 0 ) + loadIdList( m_QuestDat, m_QuestIdList ); + return m_QuestIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getQuestRewardOtherIdList() +{ + if( m_QuestRewardOtherIdList.size() == 0 ) + loadIdList( m_QuestRewardOtherDat, m_QuestRewardOtherIdList ); + return m_QuestRewardOtherIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRaceIdList() +{ + if( m_RaceIdList.size() == 0 ) + loadIdList( m_RaceDat, m_RaceIdList ); + return m_RaceIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRacingChocoboItemIdList() +{ + if( m_RacingChocoboItemIdList.size() == 0 ) + loadIdList( m_RacingChocoboItemDat, m_RacingChocoboItemIdList ); + return m_RacingChocoboItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRacingChocoboNameIdList() +{ + if( m_RacingChocoboNameIdList.size() == 0 ) + loadIdList( m_RacingChocoboNameDat, m_RacingChocoboNameIdList ); + return m_RacingChocoboNameIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRacingChocoboNameCategoryIdList() +{ + if( m_RacingChocoboNameCategoryIdList.size() == 0 ) + loadIdList( m_RacingChocoboNameCategoryDat, m_RacingChocoboNameCategoryIdList ); + return m_RacingChocoboNameCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRacingChocoboNameInfoIdList() +{ + if( m_RacingChocoboNameInfoIdList.size() == 0 ) + loadIdList( m_RacingChocoboNameInfoDat, m_RacingChocoboNameInfoIdList ); + return m_RacingChocoboNameInfoIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRacingChocoboParamIdList() +{ + if( m_RacingChocoboParamIdList.size() == 0 ) + loadIdList( m_RacingChocoboParamDat, m_RacingChocoboParamIdList ); + return m_RacingChocoboParamIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRecipeIdList() +{ + if( m_RecipeIdList.size() == 0 ) + loadIdList( m_RecipeDat, m_RecipeIdList ); + return m_RecipeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRecipeElementIdList() +{ + if( m_RecipeElementIdList.size() == 0 ) + loadIdList( m_RecipeElementDat, m_RecipeElementIdList ); + return m_RecipeElementIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRecipeLevelTableIdList() +{ + if( m_RecipeLevelTableIdList.size() == 0 ) + loadIdList( m_RecipeLevelTableDat, m_RecipeLevelTableIdList ); + return m_RecipeLevelTableIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRecipeNotebookListIdList() +{ + if( m_RecipeNotebookListIdList.size() == 0 ) + loadIdList( m_RecipeNotebookListDat, m_RecipeNotebookListIdList ); + return m_RecipeNotebookListIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRelicIdList() +{ + if( m_RelicIdList.size() == 0 ) + loadIdList( m_RelicDat, m_RelicIdList ); + return m_RelicIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRelic3IdList() +{ + if( m_Relic3IdList.size() == 0 ) + loadIdList( m_Relic3Dat, m_Relic3IdList ); + return m_Relic3IdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRelicItemIdList() +{ + if( m_RelicItemIdList.size() == 0 ) + loadIdList( m_RelicItemDat, m_RelicItemIdList ); + return m_RelicItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRelicNoteIdList() +{ + if( m_RelicNoteIdList.size() == 0 ) + loadIdList( m_RelicNoteDat, m_RelicNoteIdList ); + return m_RelicNoteIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRelicNoteCategoryIdList() +{ + if( m_RelicNoteCategoryIdList.size() == 0 ) + loadIdList( m_RelicNoteCategoryDat, m_RelicNoteCategoryIdList ); + return m_RelicNoteCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRetainerTaskIdList() +{ + if( m_RetainerTaskIdList.size() == 0 ) + loadIdList( m_RetainerTaskDat, m_RetainerTaskIdList ); + return m_RetainerTaskIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRetainerTaskNormalIdList() +{ + if( m_RetainerTaskNormalIdList.size() == 0 ) + loadIdList( m_RetainerTaskNormalDat, m_RetainerTaskNormalIdList ); + return m_RetainerTaskNormalIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRetainerTaskParameterIdList() +{ + if( m_RetainerTaskParameterIdList.size() == 0 ) + loadIdList( m_RetainerTaskParameterDat, m_RetainerTaskParameterIdList ); + return m_RetainerTaskParameterIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRetainerTaskRandomIdList() +{ + if( m_RetainerTaskRandomIdList.size() == 0 ) + loadIdList( m_RetainerTaskRandomDat, m_RetainerTaskRandomIdList ); + return m_RetainerTaskRandomIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSalvageIdList() +{ + if( m_SalvageIdList.size() == 0 ) + loadIdList( m_SalvageDat, m_SalvageIdList ); + return m_SalvageIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSatisfactionNpcIdList() +{ + if( m_SatisfactionNpcIdList.size() == 0 ) + loadIdList( m_SatisfactionNpcDat, m_SatisfactionNpcIdList ); + return m_SatisfactionNpcIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSatisfactionSupplyIdList() +{ + if( m_SatisfactionSupplyIdList.size() == 0 ) + loadIdList( m_SatisfactionSupplyDat, m_SatisfactionSupplyIdList ); + return m_SatisfactionSupplyIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSatisfactionSupplyRewardIdList() +{ + if( m_SatisfactionSupplyRewardIdList.size() == 0 ) + loadIdList( m_SatisfactionSupplyRewardDat, m_SatisfactionSupplyRewardIdList ); + return m_SatisfactionSupplyRewardIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getScreenImageIdList() +{ + if( m_ScreenImageIdList.size() == 0 ) + loadIdList( m_ScreenImageDat, m_ScreenImageIdList ); + return m_ScreenImageIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSecretRecipeBookIdList() +{ + if( m_SecretRecipeBookIdList.size() == 0 ) + loadIdList( m_SecretRecipeBookDat, m_SecretRecipeBookIdList ); + return m_SecretRecipeBookIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSpearfishingItemIdList() +{ + if( m_SpearfishingItemIdList.size() == 0 ) + loadIdList( m_SpearfishingItemDat, m_SpearfishingItemIdList ); + return m_SpearfishingItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSpearfishingNotebookIdList() +{ + if( m_SpearfishingNotebookIdList.size() == 0 ) + loadIdList( m_SpearfishingNotebookDat, m_SpearfishingNotebookIdList ); + return m_SpearfishingNotebookIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSpecialShopIdList() +{ + if( m_SpecialShopIdList.size() == 0 ) + loadIdList( m_SpecialShopDat, m_SpecialShopIdList ); + return m_SpecialShopIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSpecialShopItemCategoryIdList() +{ + if( m_SpecialShopItemCategoryIdList.size() == 0 ) + loadIdList( m_SpecialShopItemCategoryDat, m_SpecialShopItemCategoryIdList ); + return m_SpecialShopItemCategoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getStainIdList() +{ + if( m_StainIdList.size() == 0 ) + loadIdList( m_StainDat, m_StainIdList ); + return m_StainIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getStatusIdList() +{ + if( m_StatusIdList.size() == 0 ) + loadIdList( m_StatusDat, m_StatusIdList ); + return m_StatusIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getStoryIdList() +{ + if( m_StoryIdList.size() == 0 ) + loadIdList( m_StoryDat, m_StoryIdList ); + return m_StoryIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSwitchTalkIdList() +{ + if( m_SwitchTalkIdList.size() == 0 ) + loadIdList( m_SwitchTalkDat, m_SwitchTalkIdList ); + return m_SwitchTalkIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTerritoryTypeIdList() +{ + if( m_TerritoryTypeIdList.size() == 0 ) + loadIdList( m_TerritoryTypeDat, m_TerritoryTypeIdList ); + return m_TerritoryTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTextCommandIdList() +{ + if( m_TextCommandIdList.size() == 0 ) + loadIdList( m_TextCommandDat, m_TextCommandIdList ); + return m_TextCommandIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTitleIdList() +{ + if( m_TitleIdList.size() == 0 ) + loadIdList( m_TitleDat, m_TitleIdList ); + return m_TitleIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTomestonesIdList() +{ + if( m_TomestonesIdList.size() == 0 ) + loadIdList( m_TomestonesDat, m_TomestonesIdList ); + return m_TomestonesIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTomestonesItemIdList() +{ + if( m_TomestonesItemIdList.size() == 0 ) + loadIdList( m_TomestonesItemDat, m_TomestonesItemIdList ); + return m_TomestonesItemIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTopicSelectIdList() +{ + if( m_TopicSelectIdList.size() == 0 ) + loadIdList( m_TopicSelectDat, m_TopicSelectIdList ); + return m_TopicSelectIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTownIdList() +{ + if( m_TownIdList.size() == 0 ) + loadIdList( m_TownDat, m_TownIdList ); + return m_TownIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTraitIdList() +{ + if( m_TraitIdList.size() == 0 ) + loadIdList( m_TraitDat, m_TraitIdList ); + return m_TraitIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTraitRecastIdList() +{ + if( m_TraitRecastIdList.size() == 0 ) + loadIdList( m_TraitRecastDat, m_TraitRecastIdList ); + return m_TraitRecastIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTraitTransientIdList() +{ + if( m_TraitTransientIdList.size() == 0 ) + loadIdList( m_TraitTransientDat, m_TraitTransientIdList ); + return m_TraitTransientIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTribeIdList() +{ + if( m_TribeIdList.size() == 0 ) + loadIdList( m_TribeDat, m_TribeIdList ); + return m_TribeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTripleTriadIdList() +{ + if( m_TripleTriadIdList.size() == 0 ) + loadIdList( m_TripleTriadDat, m_TripleTriadIdList ); + return m_TripleTriadIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTripleTriadCardIdList() +{ + if( m_TripleTriadCardIdList.size() == 0 ) + loadIdList( m_TripleTriadCardDat, m_TripleTriadCardIdList ); + return m_TripleTriadCardIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTripleTriadCardRarityIdList() +{ + if( m_TripleTriadCardRarityIdList.size() == 0 ) + loadIdList( m_TripleTriadCardRarityDat, m_TripleTriadCardRarityIdList ); + return m_TripleTriadCardRarityIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTripleTriadCardResidentIdList() +{ + if( m_TripleTriadCardResidentIdList.size() == 0 ) + loadIdList( m_TripleTriadCardResidentDat, m_TripleTriadCardResidentIdList ); + return m_TripleTriadCardResidentIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTripleTriadCardTypeIdList() +{ + if( m_TripleTriadCardTypeIdList.size() == 0 ) + loadIdList( m_TripleTriadCardTypeDat, m_TripleTriadCardTypeIdList ); + return m_TripleTriadCardTypeIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTripleTriadCompetitionIdList() +{ + if( m_TripleTriadCompetitionIdList.size() == 0 ) + loadIdList( m_TripleTriadCompetitionDat, m_TripleTriadCompetitionIdList ); + return m_TripleTriadCompetitionIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTripleTriadRuleIdList() +{ + if( m_TripleTriadRuleIdList.size() == 0 ) + loadIdList( m_TripleTriadRuleDat, m_TripleTriadRuleIdList ); + return m_TripleTriadRuleIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTutorialIdList() +{ + if( m_TutorialIdList.size() == 0 ) + loadIdList( m_TutorialDat, m_TutorialIdList ); + return m_TutorialIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTutorialDPSIdList() +{ + if( m_TutorialDPSIdList.size() == 0 ) + loadIdList( m_TutorialDPSDat, m_TutorialDPSIdList ); + return m_TutorialDPSIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTutorialHealerIdList() +{ + if( m_TutorialHealerIdList.size() == 0 ) + loadIdList( m_TutorialHealerDat, m_TutorialHealerIdList ); + return m_TutorialHealerIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTutorialTankIdList() +{ + if( m_TutorialTankIdList.size() == 0 ) + loadIdList( m_TutorialTankDat, m_TutorialTankIdList ); + return m_TutorialTankIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWarpIdList() +{ + if( m_WarpIdList.size() == 0 ) + loadIdList( m_WarpDat, m_WarpIdList ); + return m_WarpIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWeatherIdList() +{ + if( m_WeatherIdList.size() == 0 ) + loadIdList( m_WeatherDat, m_WeatherIdList ); + return m_WeatherIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWeatherGroupIdList() +{ + if( m_WeatherGroupIdList.size() == 0 ) + loadIdList( m_WeatherGroupDat, m_WeatherGroupIdList ); + return m_WeatherGroupIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWeatherRateIdList() +{ + if( m_WeatherRateIdList.size() == 0 ) + loadIdList( m_WeatherRateDat, m_WeatherRateIdList ); + return m_WeatherRateIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWeeklyBingoOrderDataIdList() +{ + if( m_WeeklyBingoOrderDataIdList.size() == 0 ) + loadIdList( m_WeeklyBingoOrderDataDat, m_WeeklyBingoOrderDataIdList ); + return m_WeeklyBingoOrderDataIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWeeklyBingoRewardDataIdList() +{ + if( m_WeeklyBingoRewardDataIdList.size() == 0 ) + loadIdList( m_WeeklyBingoRewardDataDat, m_WeeklyBingoRewardDataIdList ); + return m_WeeklyBingoRewardDataIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWeeklyBingoTextIdList() +{ + if( m_WeeklyBingoTextIdList.size() == 0 ) + loadIdList( m_WeeklyBingoTextDat, m_WeeklyBingoTextIdList ); + return m_WeeklyBingoTextIdList; +} +const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWorldDCGroupTypeIdList() +{ + if( m_WorldDCGroupTypeIdList.size() == 0 ) + loadIdList( m_WorldDCGroupTypeDat, m_WorldDCGroupTypeIdList ); + return m_WorldDCGroupTypeIdList; +} + }; diff --git a/src/tools/exd_struct_test/main.cpp b/src/tools/exd_struct_test/main.cpp index ca49ffe6..0ba59997 100644 --- a/src/tools/exd_struct_test/main.cpp +++ b/src/tools/exd_struct_test/main.cpp @@ -25,8 +25,8 @@ Core::Logger g_log; Core::Data::ExdDataGenerated g_exdData; -const std::string datLocation( "/opt/sapphire_3_15_0/bin/sqpack" ); -//const std::string datLocation( "C:\\SquareEnix\\FINAL FANTASY XIV - A Realm Reborn\\game\\sqpack\\ffxiv" ); +//const std::string datLocation( "/opt/sapphire_3_15_0/bin/sqpack" ); +const std::string datLocation( "C:\\SquareEnix\\FINAL FANTASY XIV - A Realm Reborn\\game\\sqpack\\ffxiv" ); int main() @@ -41,10 +41,15 @@ int main() return 0; } - auto teri = g_exdData.getTerritoryType( 132 ); - - g_log.info( teri->name ); - g_log.info( teri->bg ); + auto idList = g_exdData.getTerritoryTypeIdList(); + + for( auto id : idList ) + { + auto teri1 = g_exdData.getTerritoryType( id ); + + g_log.info( teri1->name ); + g_log.info( teri1->bg ); + } return 0; } From 791a1dfb7eeecdbca2d5703449f933c1f8a28afd Mon Sep 17 00:00:00 2001 From: Mordred Date: Fri, 1 Dec 2017 00:01:19 +0100 Subject: [PATCH 19/29] we sure want linux to build this too --- src/tools/exd_struct_gen/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tools/exd_struct_gen/main.cpp b/src/tools/exd_struct_gen/main.cpp index 5c90f29a..5ab0a145 100644 --- a/src/tools/exd_struct_gen/main.cpp +++ b/src/tools/exd_struct_gen/main.cpp @@ -80,7 +80,7 @@ std::string generateDirectGetterDef( const std::string& exd ) std::string result = ""; result = "boost::shared_ptr< Core::Data::" + exd + " >\n" - " Core::Data::ExdDataGenerated::get" + exd + "( uint32_t " + exd + "Id )\n" + " get" + exd + "( uint32_t " + exd + "Id )\n" "{\n" " try\n" " {\n" From b5500d2f649ec8af6c30ec5ea1e649f467fc329c Mon Sep 17 00:00:00 2001 From: Mordred Date: Fri, 1 Dec 2017 00:03:24 +0100 Subject: [PATCH 20/29] wrong change... not supposed to remove qualifier on header --- src/tools/exd_struct_gen/main.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tools/exd_struct_gen/main.cpp b/src/tools/exd_struct_gen/main.cpp index 5ab0a145..5c90f29a 100644 --- a/src/tools/exd_struct_gen/main.cpp +++ b/src/tools/exd_struct_gen/main.cpp @@ -80,7 +80,7 @@ std::string generateDirectGetterDef( const std::string& exd ) std::string result = ""; result = "boost::shared_ptr< Core::Data::" + exd + " >\n" - " get" + exd + "( uint32_t " + exd + "Id )\n" + " Core::Data::ExdDataGenerated::get" + exd + "( uint32_t " + exd + "Id )\n" "{\n" " try\n" " {\n" From a42dbd7b965967d2c32911c02d66c48f707a03c1 Mon Sep 17 00:00:00 2001 From: Mordred Date: Fri, 1 Dec 2017 00:06:50 +0100 Subject: [PATCH 21/29] Remove the right extra qualifier this time --- src/tools/exd_struct_gen/main.cpp | 2 +- src/tools/exd_struct_test/ExdDataGenerated.h | 580 +++++++++---------- 2 files changed, 291 insertions(+), 291 deletions(-) diff --git a/src/tools/exd_struct_gen/main.cpp b/src/tools/exd_struct_gen/main.cpp index 5c90f29a..ed761121 100644 --- a/src/tools/exd_struct_gen/main.cpp +++ b/src/tools/exd_struct_gen/main.cpp @@ -53,7 +53,7 @@ std::string generateDirectGetters( const std::string& exd ) std::string generateIdListGetter( const std::string &exd ) { - std::string IdListGetter = "const std::set< uint32_t >& Core::Data::ExdDataGenerated::get" + exd + "IdList()\n" + std::string IdListGetter = "const std::set< uint32_t >& ExdDataGenerated::get" + exd + "IdList()\n" "{\n" " if( m_" + exd + "IdList.size() == 0 )\n" " loadIdList( m_" + exd + "Dat, m_" + exd + "IdList );\n" diff --git a/src/tools/exd_struct_test/ExdDataGenerated.h b/src/tools/exd_struct_test/ExdDataGenerated.h index 2f70c5a2..a210a25d 100644 --- a/src/tools/exd_struct_test/ExdDataGenerated.h +++ b/src/tools/exd_struct_test/ExdDataGenerated.h @@ -4188,1741 +4188,1741 @@ struct WorldDCGroupType std::set< uint32_t > m_WorldDCGroupTypeIdList; -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAchievementIdList() +const std::set< uint32_t >& ExdDataGenerated::getAchievementIdList() { if( m_AchievementIdList.size() == 0 ) loadIdList( m_AchievementDat, m_AchievementIdList ); return m_AchievementIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAchievementCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getAchievementCategoryIdList() { if( m_AchievementCategoryIdList.size() == 0 ) loadIdList( m_AchievementCategoryDat, m_AchievementCategoryIdList ); return m_AchievementCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAchievementKindIdList() +const std::set< uint32_t >& ExdDataGenerated::getAchievementKindIdList() { if( m_AchievementKindIdList.size() == 0 ) loadIdList( m_AchievementKindDat, m_AchievementKindIdList ); return m_AchievementKindIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getActionIdList() +const std::set< uint32_t >& ExdDataGenerated::getActionIdList() { if( m_ActionIdList.size() == 0 ) loadIdList( m_ActionDat, m_ActionIdList ); return m_ActionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getActionCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getActionCategoryIdList() { if( m_ActionCategoryIdList.size() == 0 ) loadIdList( m_ActionCategoryDat, m_ActionCategoryIdList ); return m_ActionCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getActionComboRouteIdList() +const std::set< uint32_t >& ExdDataGenerated::getActionComboRouteIdList() { if( m_ActionComboRouteIdList.size() == 0 ) loadIdList( m_ActionComboRouteDat, m_ActionComboRouteIdList ); return m_ActionComboRouteIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getActionIndirectionIdList() +const std::set< uint32_t >& ExdDataGenerated::getActionIndirectionIdList() { if( m_ActionIndirectionIdList.size() == 0 ) loadIdList( m_ActionIndirectionDat, m_ActionIndirectionIdList ); return m_ActionIndirectionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getActionProcStatusIdList() +const std::set< uint32_t >& ExdDataGenerated::getActionProcStatusIdList() { if( m_ActionProcStatusIdList.size() == 0 ) loadIdList( m_ActionProcStatusDat, m_ActionProcStatusIdList ); return m_ActionProcStatusIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getActionTimelineIdList() +const std::set< uint32_t >& ExdDataGenerated::getActionTimelineIdList() { if( m_ActionTimelineIdList.size() == 0 ) loadIdList( m_ActionTimelineDat, m_ActionTimelineIdList ); return m_ActionTimelineIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getActionTransientIdList() +const std::set< uint32_t >& ExdDataGenerated::getActionTransientIdList() { if( m_ActionTransientIdList.size() == 0 ) loadIdList( m_ActionTransientDat, m_ActionTransientIdList ); return m_ActionTransientIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAddonIdList() +const std::set< uint32_t >& ExdDataGenerated::getAddonIdList() { if( m_AddonIdList.size() == 0 ) loadIdList( m_AddonDat, m_AddonIdList ); return m_AddonIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAdventureIdList() +const std::set< uint32_t >& ExdDataGenerated::getAdventureIdList() { if( m_AdventureIdList.size() == 0 ) loadIdList( m_AdventureDat, m_AdventureIdList ); return m_AdventureIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAdventureExPhaseIdList() +const std::set< uint32_t >& ExdDataGenerated::getAdventureExPhaseIdList() { if( m_AdventureExPhaseIdList.size() == 0 ) loadIdList( m_AdventureExPhaseDat, m_AdventureExPhaseIdList ); return m_AdventureExPhaseIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAetherCurrentIdList() +const std::set< uint32_t >& ExdDataGenerated::getAetherCurrentIdList() { if( m_AetherCurrentIdList.size() == 0 ) loadIdList( m_AetherCurrentDat, m_AetherCurrentIdList ); return m_AetherCurrentIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAetherialWheelIdList() +const std::set< uint32_t >& ExdDataGenerated::getAetherialWheelIdList() { if( m_AetherialWheelIdList.size() == 0 ) loadIdList( m_AetherialWheelDat, m_AetherialWheelIdList ); return m_AetherialWheelIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAetheryteIdList() +const std::set< uint32_t >& ExdDataGenerated::getAetheryteIdList() { if( m_AetheryteIdList.size() == 0 ) loadIdList( m_AetheryteDat, m_AetheryteIdList ); return m_AetheryteIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAirshipExplorationLevelIdList() +const std::set< uint32_t >& ExdDataGenerated::getAirshipExplorationLevelIdList() { if( m_AirshipExplorationLevelIdList.size() == 0 ) loadIdList( m_AirshipExplorationLevelDat, m_AirshipExplorationLevelIdList ); return m_AirshipExplorationLevelIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAirshipExplorationLogIdList() +const std::set< uint32_t >& ExdDataGenerated::getAirshipExplorationLogIdList() { if( m_AirshipExplorationLogIdList.size() == 0 ) loadIdList( m_AirshipExplorationLogDat, m_AirshipExplorationLogIdList ); return m_AirshipExplorationLogIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAirshipExplorationParamTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getAirshipExplorationParamTypeIdList() { if( m_AirshipExplorationParamTypeIdList.size() == 0 ) loadIdList( m_AirshipExplorationParamTypeDat, m_AirshipExplorationParamTypeIdList ); return m_AirshipExplorationParamTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAirshipExplorationPartIdList() +const std::set< uint32_t >& ExdDataGenerated::getAirshipExplorationPartIdList() { if( m_AirshipExplorationPartIdList.size() == 0 ) loadIdList( m_AirshipExplorationPartDat, m_AirshipExplorationPartIdList ); return m_AirshipExplorationPartIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAirshipExplorationPointIdList() +const std::set< uint32_t >& ExdDataGenerated::getAirshipExplorationPointIdList() { if( m_AirshipExplorationPointIdList.size() == 0 ) loadIdList( m_AirshipExplorationPointDat, m_AirshipExplorationPointIdList ); return m_AirshipExplorationPointIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeapon5IdList() +const std::set< uint32_t >& ExdDataGenerated::getAnimaWeapon5IdList() { if( m_AnimaWeapon5IdList.size() == 0 ) loadIdList( m_AnimaWeapon5Dat, m_AnimaWeapon5IdList ); return m_AnimaWeapon5IdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeapon5ParamIdList() +const std::set< uint32_t >& ExdDataGenerated::getAnimaWeapon5ParamIdList() { if( m_AnimaWeapon5ParamIdList.size() == 0 ) loadIdList( m_AnimaWeapon5ParamDat, m_AnimaWeapon5ParamIdList ); return m_AnimaWeapon5ParamIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeapon5PatternGroupIdList() +const std::set< uint32_t >& ExdDataGenerated::getAnimaWeapon5PatternGroupIdList() { if( m_AnimaWeapon5PatternGroupIdList.size() == 0 ) loadIdList( m_AnimaWeapon5PatternGroupDat, m_AnimaWeapon5PatternGroupIdList ); return m_AnimaWeapon5PatternGroupIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeapon5SpiritTalkIdList() +const std::set< uint32_t >& ExdDataGenerated::getAnimaWeapon5SpiritTalkIdList() { if( m_AnimaWeapon5SpiritTalkIdList.size() == 0 ) loadIdList( m_AnimaWeapon5SpiritTalkDat, m_AnimaWeapon5SpiritTalkIdList ); return m_AnimaWeapon5SpiritTalkIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeapon5SpiritTalkParamIdList() +const std::set< uint32_t >& ExdDataGenerated::getAnimaWeapon5SpiritTalkParamIdList() { if( m_AnimaWeapon5SpiritTalkParamIdList.size() == 0 ) loadIdList( m_AnimaWeapon5SpiritTalkParamDat, m_AnimaWeapon5SpiritTalkParamIdList ); return m_AnimaWeapon5SpiritTalkParamIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeapon5TradeItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getAnimaWeapon5TradeItemIdList() { if( m_AnimaWeapon5TradeItemIdList.size() == 0 ) loadIdList( m_AnimaWeapon5TradeItemDat, m_AnimaWeapon5TradeItemIdList ); return m_AnimaWeapon5TradeItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeaponFUITalkIdList() +const std::set< uint32_t >& ExdDataGenerated::getAnimaWeaponFUITalkIdList() { if( m_AnimaWeaponFUITalkIdList.size() == 0 ) loadIdList( m_AnimaWeaponFUITalkDat, m_AnimaWeaponFUITalkIdList ); return m_AnimaWeaponFUITalkIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeaponFUITalkParamIdList() +const std::set< uint32_t >& ExdDataGenerated::getAnimaWeaponFUITalkParamIdList() { if( m_AnimaWeaponFUITalkParamIdList.size() == 0 ) loadIdList( m_AnimaWeaponFUITalkParamDat, m_AnimaWeaponFUITalkParamIdList ); return m_AnimaWeaponFUITalkParamIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeaponIconIdList() +const std::set< uint32_t >& ExdDataGenerated::getAnimaWeaponIconIdList() { if( m_AnimaWeaponIconIdList.size() == 0 ) loadIdList( m_AnimaWeaponIconDat, m_AnimaWeaponIconIdList ); return m_AnimaWeaponIconIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAnimaWeaponItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getAnimaWeaponItemIdList() { if( m_AnimaWeaponItemIdList.size() == 0 ) loadIdList( m_AnimaWeaponItemDat, m_AnimaWeaponItemIdList ); return m_AnimaWeaponItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAquariumFishIdList() +const std::set< uint32_t >& ExdDataGenerated::getAquariumFishIdList() { if( m_AquariumFishIdList.size() == 0 ) loadIdList( m_AquariumFishDat, m_AquariumFishIdList ); return m_AquariumFishIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAquariumWaterIdList() +const std::set< uint32_t >& ExdDataGenerated::getAquariumWaterIdList() { if( m_AquariumWaterIdList.size() == 0 ) loadIdList( m_AquariumWaterDat, m_AquariumWaterIdList ); return m_AquariumWaterIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getAttackTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getAttackTypeIdList() { if( m_AttackTypeIdList.size() == 0 ) loadIdList( m_AttackTypeDat, m_AttackTypeIdList ); return m_AttackTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBalloonIdList() +const std::set< uint32_t >& ExdDataGenerated::getBalloonIdList() { if( m_BalloonIdList.size() == 0 ) loadIdList( m_BalloonDat, m_BalloonIdList ); return m_BalloonIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBaseParamIdList() +const std::set< uint32_t >& ExdDataGenerated::getBaseParamIdList() { if( m_BaseParamIdList.size() == 0 ) loadIdList( m_BaseParamDat, m_BaseParamIdList ); return m_BaseParamIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBattleLeveIdList() +const std::set< uint32_t >& ExdDataGenerated::getBattleLeveIdList() { if( m_BattleLeveIdList.size() == 0 ) loadIdList( m_BattleLeveDat, m_BattleLeveIdList ); return m_BattleLeveIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBeastRankBonusIdList() +const std::set< uint32_t >& ExdDataGenerated::getBeastRankBonusIdList() { if( m_BeastRankBonusIdList.size() == 0 ) loadIdList( m_BeastRankBonusDat, m_BeastRankBonusIdList ); return m_BeastRankBonusIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBeastReputationRankIdList() +const std::set< uint32_t >& ExdDataGenerated::getBeastReputationRankIdList() { if( m_BeastReputationRankIdList.size() == 0 ) loadIdList( m_BeastReputationRankDat, m_BeastReputationRankIdList ); return m_BeastReputationRankIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBeastTribeIdList() +const std::set< uint32_t >& ExdDataGenerated::getBeastTribeIdList() { if( m_BeastTribeIdList.size() == 0 ) loadIdList( m_BeastTribeDat, m_BeastTribeIdList ); return m_BeastTribeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBehaviorIdList() +const std::set< uint32_t >& ExdDataGenerated::getBehaviorIdList() { if( m_BehaviorIdList.size() == 0 ) loadIdList( m_BehaviorDat, m_BehaviorIdList ); return m_BehaviorIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBGMIdList() +const std::set< uint32_t >& ExdDataGenerated::getBGMIdList() { if( m_BGMIdList.size() == 0 ) loadIdList( m_BGMDat, m_BGMIdList ); return m_BGMIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBNpcAnnounceIconIdList() +const std::set< uint32_t >& ExdDataGenerated::getBNpcAnnounceIconIdList() { if( m_BNpcAnnounceIconIdList.size() == 0 ) loadIdList( m_BNpcAnnounceIconDat, m_BNpcAnnounceIconIdList ); return m_BNpcAnnounceIconIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBNpcBaseIdList() +const std::set< uint32_t >& ExdDataGenerated::getBNpcBaseIdList() { if( m_BNpcBaseIdList.size() == 0 ) loadIdList( m_BNpcBaseDat, m_BNpcBaseIdList ); return m_BNpcBaseIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBNpcCustomizeIdList() +const std::set< uint32_t >& ExdDataGenerated::getBNpcCustomizeIdList() { if( m_BNpcCustomizeIdList.size() == 0 ) loadIdList( m_BNpcCustomizeDat, m_BNpcCustomizeIdList ); return m_BNpcCustomizeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBNpcNameIdList() +const std::set< uint32_t >& ExdDataGenerated::getBNpcNameIdList() { if( m_BNpcNameIdList.size() == 0 ) loadIdList( m_BNpcNameDat, m_BNpcNameIdList ); return m_BNpcNameIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBuddyActionIdList() +const std::set< uint32_t >& ExdDataGenerated::getBuddyActionIdList() { if( m_BuddyActionIdList.size() == 0 ) loadIdList( m_BuddyActionDat, m_BuddyActionIdList ); return m_BuddyActionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBuddyEquipIdList() +const std::set< uint32_t >& ExdDataGenerated::getBuddyEquipIdList() { if( m_BuddyEquipIdList.size() == 0 ) loadIdList( m_BuddyEquipDat, m_BuddyEquipIdList ); return m_BuddyEquipIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBuddyItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getBuddyItemIdList() { if( m_BuddyItemIdList.size() == 0 ) loadIdList( m_BuddyItemDat, m_BuddyItemIdList ); return m_BuddyItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBuddyRankIdList() +const std::set< uint32_t >& ExdDataGenerated::getBuddyRankIdList() { if( m_BuddyRankIdList.size() == 0 ) loadIdList( m_BuddyRankDat, m_BuddyRankIdList ); return m_BuddyRankIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getBuddySkillIdList() +const std::set< uint32_t >& ExdDataGenerated::getBuddySkillIdList() { if( m_BuddySkillIdList.size() == 0 ) loadIdList( m_BuddySkillDat, m_BuddySkillIdList ); return m_BuddySkillIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCabinetIdList() +const std::set< uint32_t >& ExdDataGenerated::getCabinetIdList() { if( m_CabinetIdList.size() == 0 ) loadIdList( m_CabinetDat, m_CabinetIdList ); return m_CabinetIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCabinetCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getCabinetCategoryIdList() { if( m_CabinetCategoryIdList.size() == 0 ) loadIdList( m_CabinetCategoryDat, m_CabinetCategoryIdList ); return m_CabinetCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCalendarIdList() +const std::set< uint32_t >& ExdDataGenerated::getCalendarIdList() { if( m_CalendarIdList.size() == 0 ) loadIdList( m_CalendarDat, m_CalendarIdList ); return m_CalendarIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChainBonusIdList() +const std::set< uint32_t >& ExdDataGenerated::getChainBonusIdList() { if( m_ChainBonusIdList.size() == 0 ) loadIdList( m_ChainBonusDat, m_ChainBonusIdList ); return m_ChainBonusIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCharaMakeCustomizeIdList() +const std::set< uint32_t >& ExdDataGenerated::getCharaMakeCustomizeIdList() { if( m_CharaMakeCustomizeIdList.size() == 0 ) loadIdList( m_CharaMakeCustomizeDat, m_CharaMakeCustomizeIdList ); return m_CharaMakeCustomizeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCharaMakeTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getCharaMakeTypeIdList() { if( m_CharaMakeTypeIdList.size() == 0 ) loadIdList( m_CharaMakeTypeDat, m_CharaMakeTypeIdList ); return m_CharaMakeTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboRaceIdList() +const std::set< uint32_t >& ExdDataGenerated::getChocoboRaceIdList() { if( m_ChocoboRaceIdList.size() == 0 ) loadIdList( m_ChocoboRaceDat, m_ChocoboRaceIdList ); return m_ChocoboRaceIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboRaceAbilityIdList() +const std::set< uint32_t >& ExdDataGenerated::getChocoboRaceAbilityIdList() { if( m_ChocoboRaceAbilityIdList.size() == 0 ) loadIdList( m_ChocoboRaceAbilityDat, m_ChocoboRaceAbilityIdList ); return m_ChocoboRaceAbilityIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboRaceAbilityTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getChocoboRaceAbilityTypeIdList() { if( m_ChocoboRaceAbilityTypeIdList.size() == 0 ) loadIdList( m_ChocoboRaceAbilityTypeDat, m_ChocoboRaceAbilityTypeIdList ); return m_ChocoboRaceAbilityTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboRaceItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getChocoboRaceItemIdList() { if( m_ChocoboRaceItemIdList.size() == 0 ) loadIdList( m_ChocoboRaceItemDat, m_ChocoboRaceItemIdList ); return m_ChocoboRaceItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboRaceRankIdList() +const std::set< uint32_t >& ExdDataGenerated::getChocoboRaceRankIdList() { if( m_ChocoboRaceRankIdList.size() == 0 ) loadIdList( m_ChocoboRaceRankDat, m_ChocoboRaceRankIdList ); return m_ChocoboRaceRankIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboRaceStatusIdList() +const std::set< uint32_t >& ExdDataGenerated::getChocoboRaceStatusIdList() { if( m_ChocoboRaceStatusIdList.size() == 0 ) loadIdList( m_ChocoboRaceStatusDat, m_ChocoboRaceStatusIdList ); return m_ChocoboRaceStatusIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboRaceTerritoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getChocoboRaceTerritoryIdList() { if( m_ChocoboRaceTerritoryIdList.size() == 0 ) loadIdList( m_ChocoboRaceTerritoryDat, m_ChocoboRaceTerritoryIdList ); return m_ChocoboRaceTerritoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getChocoboTaxiStandIdList() +const std::set< uint32_t >& ExdDataGenerated::getChocoboTaxiStandIdList() { if( m_ChocoboTaxiStandIdList.size() == 0 ) loadIdList( m_ChocoboTaxiStandDat, m_ChocoboTaxiStandIdList ); return m_ChocoboTaxiStandIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getClassJobIdList() +const std::set< uint32_t >& ExdDataGenerated::getClassJobIdList() { if( m_ClassJobIdList.size() == 0 ) loadIdList( m_ClassJobDat, m_ClassJobIdList ); return m_ClassJobIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getClassJobCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getClassJobCategoryIdList() { if( m_ClassJobCategoryIdList.size() == 0 ) loadIdList( m_ClassJobCategoryDat, m_ClassJobCategoryIdList ); return m_ClassJobCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanionIdList() +const std::set< uint32_t >& ExdDataGenerated::getCompanionIdList() { if( m_CompanionIdList.size() == 0 ) loadIdList( m_CompanionDat, m_CompanionIdList ); return m_CompanionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanionMoveIdList() +const std::set< uint32_t >& ExdDataGenerated::getCompanionMoveIdList() { if( m_CompanionMoveIdList.size() == 0 ) loadIdList( m_CompanionMoveDat, m_CompanionMoveIdList ); return m_CompanionMoveIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanionTransientIdList() +const std::set< uint32_t >& ExdDataGenerated::getCompanionTransientIdList() { if( m_CompanionTransientIdList.size() == 0 ) loadIdList( m_CompanionTransientDat, m_CompanionTransientIdList ); return m_CompanionTransientIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyActionIdList() +const std::set< uint32_t >& ExdDataGenerated::getCompanyActionIdList() { if( m_CompanyActionIdList.size() == 0 ) loadIdList( m_CompanyActionDat, m_CompanyActionIdList ); return m_CompanyActionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftDraftIdList() +const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftDraftIdList() { if( m_CompanyCraftDraftIdList.size() == 0 ) loadIdList( m_CompanyCraftDraftDat, m_CompanyCraftDraftIdList ); return m_CompanyCraftDraftIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftDraftCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftDraftCategoryIdList() { if( m_CompanyCraftDraftCategoryIdList.size() == 0 ) loadIdList( m_CompanyCraftDraftCategoryDat, m_CompanyCraftDraftCategoryIdList ); return m_CompanyCraftDraftCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftManufactoryStateIdList() +const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftManufactoryStateIdList() { if( m_CompanyCraftManufactoryStateIdList.size() == 0 ) loadIdList( m_CompanyCraftManufactoryStateDat, m_CompanyCraftManufactoryStateIdList ); return m_CompanyCraftManufactoryStateIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftPartIdList() +const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftPartIdList() { if( m_CompanyCraftPartIdList.size() == 0 ) loadIdList( m_CompanyCraftPartDat, m_CompanyCraftPartIdList ); return m_CompanyCraftPartIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftProcessIdList() +const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftProcessIdList() { if( m_CompanyCraftProcessIdList.size() == 0 ) loadIdList( m_CompanyCraftProcessDat, m_CompanyCraftProcessIdList ); return m_CompanyCraftProcessIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftSequenceIdList() +const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftSequenceIdList() { if( m_CompanyCraftSequenceIdList.size() == 0 ) loadIdList( m_CompanyCraftSequenceDat, m_CompanyCraftSequenceIdList ); return m_CompanyCraftSequenceIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftSupplyItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftSupplyItemIdList() { if( m_CompanyCraftSupplyItemIdList.size() == 0 ) loadIdList( m_CompanyCraftSupplyItemDat, m_CompanyCraftSupplyItemIdList ); return m_CompanyCraftSupplyItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompanyCraftTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftTypeIdList() { if( m_CompanyCraftTypeIdList.size() == 0 ) loadIdList( m_CompanyCraftTypeDat, m_CompanyCraftTypeIdList ); return m_CompanyCraftTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompleteJournalIdList() +const std::set< uint32_t >& ExdDataGenerated::getCompleteJournalIdList() { if( m_CompleteJournalIdList.size() == 0 ) loadIdList( m_CompleteJournalDat, m_CompleteJournalIdList ); return m_CompleteJournalIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCompleteJournalCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getCompleteJournalCategoryIdList() { if( m_CompleteJournalCategoryIdList.size() == 0 ) loadIdList( m_CompleteJournalCategoryDat, m_CompleteJournalCategoryIdList ); return m_CompleteJournalCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getContentExActionIdList() +const std::set< uint32_t >& ExdDataGenerated::getContentExActionIdList() { if( m_ContentExActionIdList.size() == 0 ) loadIdList( m_ContentExActionDat, m_ContentExActionIdList ); return m_ContentExActionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getContentFinderConditionIdList() +const std::set< uint32_t >& ExdDataGenerated::getContentFinderConditionIdList() { if( m_ContentFinderConditionIdList.size() == 0 ) loadIdList( m_ContentFinderConditionDat, m_ContentFinderConditionIdList ); return m_ContentFinderConditionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getContentFinderConditionTransientIdList() +const std::set< uint32_t >& ExdDataGenerated::getContentFinderConditionTransientIdList() { if( m_ContentFinderConditionTransientIdList.size() == 0 ) loadIdList( m_ContentFinderConditionTransientDat, m_ContentFinderConditionTransientIdList ); return m_ContentFinderConditionTransientIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getContentMemberTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getContentMemberTypeIdList() { if( m_ContentMemberTypeIdList.size() == 0 ) loadIdList( m_ContentMemberTypeDat, m_ContentMemberTypeIdList ); return m_ContentMemberTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getContentRouletteIdList() +const std::set< uint32_t >& ExdDataGenerated::getContentRouletteIdList() { if( m_ContentRouletteIdList.size() == 0 ) loadIdList( m_ContentRouletteDat, m_ContentRouletteIdList ); return m_ContentRouletteIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getContentTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getContentTypeIdList() { if( m_ContentTypeIdList.size() == 0 ) loadIdList( m_ContentTypeDat, m_ContentTypeIdList ); return m_ContentTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCraftActionIdList() +const std::set< uint32_t >& ExdDataGenerated::getCraftActionIdList() { if( m_CraftActionIdList.size() == 0 ) loadIdList( m_CraftActionDat, m_CraftActionIdList ); return m_CraftActionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCraftLeveIdList() +const std::set< uint32_t >& ExdDataGenerated::getCraftLeveIdList() { if( m_CraftLeveIdList.size() == 0 ) loadIdList( m_CraftLeveDat, m_CraftLeveIdList ); return m_CraftLeveIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCraftTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getCraftTypeIdList() { if( m_CraftTypeIdList.size() == 0 ) loadIdList( m_CraftTypeDat, m_CraftTypeIdList ); return m_CraftTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCurrencyIdList() +const std::set< uint32_t >& ExdDataGenerated::getCurrencyIdList() { if( m_CurrencyIdList.size() == 0 ) loadIdList( m_CurrencyDat, m_CurrencyIdList ); return m_CurrencyIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCustomTalkIdList() +const std::set< uint32_t >& ExdDataGenerated::getCustomTalkIdList() { if( m_CustomTalkIdList.size() == 0 ) loadIdList( m_CustomTalkDat, m_CustomTalkIdList ); return m_CustomTalkIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCutsceneIdList() +const std::set< uint32_t >& ExdDataGenerated::getCutsceneIdList() { if( m_CutsceneIdList.size() == 0 ) loadIdList( m_CutsceneDat, m_CutsceneIdList ); return m_CutsceneIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getCutScreenImageIdList() +const std::set< uint32_t >& ExdDataGenerated::getCutScreenImageIdList() { if( m_CutScreenImageIdList.size() == 0 ) loadIdList( m_CutScreenImageDat, m_CutScreenImageIdList ); return m_CutScreenImageIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDailySupplyItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getDailySupplyItemIdList() { if( m_DailySupplyItemIdList.size() == 0 ) loadIdList( m_DailySupplyItemDat, m_DailySupplyItemIdList ); return m_DailySupplyItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDeepDungeonBanIdList() +const std::set< uint32_t >& ExdDataGenerated::getDeepDungeonBanIdList() { if( m_DeepDungeonBanIdList.size() == 0 ) loadIdList( m_DeepDungeonBanDat, m_DeepDungeonBanIdList ); return m_DeepDungeonBanIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDeepDungeonDangerIdList() +const std::set< uint32_t >& ExdDataGenerated::getDeepDungeonDangerIdList() { if( m_DeepDungeonDangerIdList.size() == 0 ) loadIdList( m_DeepDungeonDangerDat, m_DeepDungeonDangerIdList ); return m_DeepDungeonDangerIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDeepDungeonEquipmentIdList() +const std::set< uint32_t >& ExdDataGenerated::getDeepDungeonEquipmentIdList() { if( m_DeepDungeonEquipmentIdList.size() == 0 ) loadIdList( m_DeepDungeonEquipmentDat, m_DeepDungeonEquipmentIdList ); return m_DeepDungeonEquipmentIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDeepDungeonFloorEffectUIIdList() +const std::set< uint32_t >& ExdDataGenerated::getDeepDungeonFloorEffectUIIdList() { if( m_DeepDungeonFloorEffectUIIdList.size() == 0 ) loadIdList( m_DeepDungeonFloorEffectUIDat, m_DeepDungeonFloorEffectUIIdList ); return m_DeepDungeonFloorEffectUIIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDeepDungeonItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getDeepDungeonItemIdList() { if( m_DeepDungeonItemIdList.size() == 0 ) loadIdList( m_DeepDungeonItemDat, m_DeepDungeonItemIdList ); return m_DeepDungeonItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDeepDungeonStatusIdList() +const std::set< uint32_t >& ExdDataGenerated::getDeepDungeonStatusIdList() { if( m_DeepDungeonStatusIdList.size() == 0 ) loadIdList( m_DeepDungeonStatusDat, m_DeepDungeonStatusIdList ); return m_DeepDungeonStatusIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDefaultTalkIdList() +const std::set< uint32_t >& ExdDataGenerated::getDefaultTalkIdList() { if( m_DefaultTalkIdList.size() == 0 ) loadIdList( m_DefaultTalkDat, m_DefaultTalkIdList ); return m_DefaultTalkIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDeliveryQuestIdList() +const std::set< uint32_t >& ExdDataGenerated::getDeliveryQuestIdList() { if( m_DeliveryQuestIdList.size() == 0 ) loadIdList( m_DeliveryQuestDat, m_DeliveryQuestIdList ); return m_DeliveryQuestIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDisposalShopIdList() +const std::set< uint32_t >& ExdDataGenerated::getDisposalShopIdList() { if( m_DisposalShopIdList.size() == 0 ) loadIdList( m_DisposalShopDat, m_DisposalShopIdList ); return m_DisposalShopIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDisposalShopFilterTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getDisposalShopFilterTypeIdList() { if( m_DisposalShopFilterTypeIdList.size() == 0 ) loadIdList( m_DisposalShopFilterTypeDat, m_DisposalShopFilterTypeIdList ); return m_DisposalShopFilterTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDisposalShopItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getDisposalShopItemIdList() { if( m_DisposalShopItemIdList.size() == 0 ) loadIdList( m_DisposalShopItemDat, m_DisposalShopItemIdList ); return m_DisposalShopItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDpsChallengeIdList() +const std::set< uint32_t >& ExdDataGenerated::getDpsChallengeIdList() { if( m_DpsChallengeIdList.size() == 0 ) loadIdList( m_DpsChallengeDat, m_DpsChallengeIdList ); return m_DpsChallengeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDpsChallengeOfficerIdList() +const std::set< uint32_t >& ExdDataGenerated::getDpsChallengeOfficerIdList() { if( m_DpsChallengeOfficerIdList.size() == 0 ) loadIdList( m_DpsChallengeOfficerDat, m_DpsChallengeOfficerIdList ); return m_DpsChallengeOfficerIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getDpsChallengeTransientIdList() +const std::set< uint32_t >& ExdDataGenerated::getDpsChallengeTransientIdList() { if( m_DpsChallengeTransientIdList.size() == 0 ) loadIdList( m_DpsChallengeTransientDat, m_DpsChallengeTransientIdList ); return m_DpsChallengeTransientIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEmoteIdList() +const std::set< uint32_t >& ExdDataGenerated::getEmoteIdList() { if( m_EmoteIdList.size() == 0 ) loadIdList( m_EmoteDat, m_EmoteIdList ); return m_EmoteIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEmoteCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getEmoteCategoryIdList() { if( m_EmoteCategoryIdList.size() == 0 ) loadIdList( m_EmoteCategoryDat, m_EmoteCategoryIdList ); return m_EmoteCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getENpcBaseIdList() +const std::set< uint32_t >& ExdDataGenerated::getENpcBaseIdList() { if( m_ENpcBaseIdList.size() == 0 ) loadIdList( m_ENpcBaseDat, m_ENpcBaseIdList ); return m_ENpcBaseIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getENpcResidentIdList() +const std::set< uint32_t >& ExdDataGenerated::getENpcResidentIdList() { if( m_ENpcResidentIdList.size() == 0 ) loadIdList( m_ENpcResidentDat, m_ENpcResidentIdList ); return m_ENpcResidentIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEObjIdList() +const std::set< uint32_t >& ExdDataGenerated::getEObjIdList() { if( m_EObjIdList.size() == 0 ) loadIdList( m_EObjDat, m_EObjIdList ); return m_EObjIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEquipRaceCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getEquipRaceCategoryIdList() { if( m_EquipRaceCategoryIdList.size() == 0 ) loadIdList( m_EquipRaceCategoryDat, m_EquipRaceCategoryIdList ); return m_EquipRaceCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEquipSlotCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getEquipSlotCategoryIdList() { if( m_EquipSlotCategoryIdList.size() == 0 ) loadIdList( m_EquipSlotCategoryDat, m_EquipSlotCategoryIdList ); return m_EquipSlotCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEventActionIdList() +const std::set< uint32_t >& ExdDataGenerated::getEventActionIdList() { if( m_EventActionIdList.size() == 0 ) loadIdList( m_EventActionDat, m_EventActionIdList ); return m_EventActionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEventIconPriorityIdList() +const std::set< uint32_t >& ExdDataGenerated::getEventIconPriorityIdList() { if( m_EventIconPriorityIdList.size() == 0 ) loadIdList( m_EventIconPriorityDat, m_EventIconPriorityIdList ); return m_EventIconPriorityIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEventIconTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getEventIconTypeIdList() { if( m_EventIconTypeIdList.size() == 0 ) loadIdList( m_EventIconTypeDat, m_EventIconTypeIdList ); return m_EventIconTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEventItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getEventItemIdList() { if( m_EventItemIdList.size() == 0 ) loadIdList( m_EventItemDat, m_EventItemIdList ); return m_EventItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getEventItemHelpIdList() +const std::set< uint32_t >& ExdDataGenerated::getEventItemHelpIdList() { if( m_EventItemHelpIdList.size() == 0 ) loadIdList( m_EventItemHelpDat, m_EventItemHelpIdList ); return m_EventItemHelpIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getExVersionIdList() +const std::set< uint32_t >& ExdDataGenerated::getExVersionIdList() { if( m_ExVersionIdList.size() == 0 ) loadIdList( m_ExVersionDat, m_ExVersionIdList ); return m_ExVersionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFateIdList() +const std::set< uint32_t >& ExdDataGenerated::getFateIdList() { if( m_FateIdList.size() == 0 ) loadIdList( m_FateDat, m_FateIdList ); return m_FateIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFCActivityIdList() +const std::set< uint32_t >& ExdDataGenerated::getFCActivityIdList() { if( m_FCActivityIdList.size() == 0 ) loadIdList( m_FCActivityDat, m_FCActivityIdList ); return m_FCActivityIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFCAuthorityIdList() +const std::set< uint32_t >& ExdDataGenerated::getFCAuthorityIdList() { if( m_FCAuthorityIdList.size() == 0 ) loadIdList( m_FCAuthorityDat, m_FCAuthorityIdList ); return m_FCAuthorityIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFCAuthorityCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getFCAuthorityCategoryIdList() { if( m_FCAuthorityCategoryIdList.size() == 0 ) loadIdList( m_FCAuthorityCategoryDat, m_FCAuthorityCategoryIdList ); return m_FCAuthorityCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFCChestNameIdList() +const std::set< uint32_t >& ExdDataGenerated::getFCChestNameIdList() { if( m_FCChestNameIdList.size() == 0 ) loadIdList( m_FCChestNameDat, m_FCChestNameIdList ); return m_FCChestNameIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFccShopIdList() +const std::set< uint32_t >& ExdDataGenerated::getFccShopIdList() { if( m_FccShopIdList.size() == 0 ) loadIdList( m_FccShopDat, m_FccShopIdList ); return m_FccShopIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFCHierarchyIdList() +const std::set< uint32_t >& ExdDataGenerated::getFCHierarchyIdList() { if( m_FCHierarchyIdList.size() == 0 ) loadIdList( m_FCHierarchyDat, m_FCHierarchyIdList ); return m_FCHierarchyIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFCReputationIdList() +const std::set< uint32_t >& ExdDataGenerated::getFCReputationIdList() { if( m_FCReputationIdList.size() == 0 ) loadIdList( m_FCReputationDat, m_FCReputationIdList ); return m_FCReputationIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFCRightsIdList() +const std::set< uint32_t >& ExdDataGenerated::getFCRightsIdList() { if( m_FCRightsIdList.size() == 0 ) loadIdList( m_FCRightsDat, m_FCRightsIdList ); return m_FCRightsIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFishingSpotIdList() +const std::set< uint32_t >& ExdDataGenerated::getFishingSpotIdList() { if( m_FishingSpotIdList.size() == 0 ) loadIdList( m_FishingSpotDat, m_FishingSpotIdList ); return m_FishingSpotIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getFishParameterIdList() +const std::set< uint32_t >& ExdDataGenerated::getFishParameterIdList() { if( m_FishParameterIdList.size() == 0 ) loadIdList( m_FishParameterDat, m_FishParameterIdList ); return m_FishParameterIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGardeningSeedIdList() +const std::set< uint32_t >& ExdDataGenerated::getGardeningSeedIdList() { if( m_GardeningSeedIdList.size() == 0 ) loadIdList( m_GardeningSeedDat, m_GardeningSeedIdList ); return m_GardeningSeedIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringConditionIdList() +const std::set< uint32_t >& ExdDataGenerated::getGatheringConditionIdList() { if( m_GatheringConditionIdList.size() == 0 ) loadIdList( m_GatheringConditionDat, m_GatheringConditionIdList ); return m_GatheringConditionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringExpIdList() +const std::set< uint32_t >& ExdDataGenerated::getGatheringExpIdList() { if( m_GatheringExpIdList.size() == 0 ) loadIdList( m_GatheringExpDat, m_GatheringExpIdList ); return m_GatheringExpIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getGatheringItemIdList() { if( m_GatheringItemIdList.size() == 0 ) loadIdList( m_GatheringItemDat, m_GatheringItemIdList ); return m_GatheringItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringItemLevelConvertTableIdList() +const std::set< uint32_t >& ExdDataGenerated::getGatheringItemLevelConvertTableIdList() { if( m_GatheringItemLevelConvertTableIdList.size() == 0 ) loadIdList( m_GatheringItemLevelConvertTableDat, m_GatheringItemLevelConvertTableIdList ); return m_GatheringItemLevelConvertTableIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringItemPointIdList() +const std::set< uint32_t >& ExdDataGenerated::getGatheringItemPointIdList() { if( m_GatheringItemPointIdList.size() == 0 ) loadIdList( m_GatheringItemPointDat, m_GatheringItemPointIdList ); return m_GatheringItemPointIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringNotebookListIdList() +const std::set< uint32_t >& ExdDataGenerated::getGatheringNotebookListIdList() { if( m_GatheringNotebookListIdList.size() == 0 ) loadIdList( m_GatheringNotebookListDat, m_GatheringNotebookListIdList ); return m_GatheringNotebookListIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringPointIdList() +const std::set< uint32_t >& ExdDataGenerated::getGatheringPointIdList() { if( m_GatheringPointIdList.size() == 0 ) loadIdList( m_GatheringPointDat, m_GatheringPointIdList ); return m_GatheringPointIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringPointBaseIdList() +const std::set< uint32_t >& ExdDataGenerated::getGatheringPointBaseIdList() { if( m_GatheringPointBaseIdList.size() == 0 ) loadIdList( m_GatheringPointBaseDat, m_GatheringPointBaseIdList ); return m_GatheringPointBaseIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringPointBonusIdList() +const std::set< uint32_t >& ExdDataGenerated::getGatheringPointBonusIdList() { if( m_GatheringPointBonusIdList.size() == 0 ) loadIdList( m_GatheringPointBonusDat, m_GatheringPointBonusIdList ); return m_GatheringPointBonusIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringPointBonusTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getGatheringPointBonusTypeIdList() { if( m_GatheringPointBonusTypeIdList.size() == 0 ) loadIdList( m_GatheringPointBonusTypeDat, m_GatheringPointBonusTypeIdList ); return m_GatheringPointBonusTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringPointNameIdList() +const std::set< uint32_t >& ExdDataGenerated::getGatheringPointNameIdList() { if( m_GatheringPointNameIdList.size() == 0 ) loadIdList( m_GatheringPointNameDat, m_GatheringPointNameIdList ); return m_GatheringPointNameIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringSubCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getGatheringSubCategoryIdList() { if( m_GatheringSubCategoryIdList.size() == 0 ) loadIdList( m_GatheringSubCategoryDat, m_GatheringSubCategoryIdList ); return m_GatheringSubCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGatheringTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getGatheringTypeIdList() { if( m_GatheringTypeIdList.size() == 0 ) loadIdList( m_GatheringTypeDat, m_GatheringTypeIdList ); return m_GatheringTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGcArmyExpeditionIdList() +const std::set< uint32_t >& ExdDataGenerated::getGcArmyExpeditionIdList() { if( m_GcArmyExpeditionIdList.size() == 0 ) loadIdList( m_GcArmyExpeditionDat, m_GcArmyExpeditionIdList ); return m_GcArmyExpeditionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGcArmyExpeditionMemberBonusIdList() +const std::set< uint32_t >& ExdDataGenerated::getGcArmyExpeditionMemberBonusIdList() { if( m_GcArmyExpeditionMemberBonusIdList.size() == 0 ) loadIdList( m_GcArmyExpeditionMemberBonusDat, m_GcArmyExpeditionMemberBonusIdList ); return m_GcArmyExpeditionMemberBonusIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGcArmyExpeditionTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getGcArmyExpeditionTypeIdList() { if( m_GcArmyExpeditionTypeIdList.size() == 0 ) loadIdList( m_GcArmyExpeditionTypeDat, m_GcArmyExpeditionTypeIdList ); return m_GcArmyExpeditionTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGcArmyMemberGrowIdList() +const std::set< uint32_t >& ExdDataGenerated::getGcArmyMemberGrowIdList() { if( m_GcArmyMemberGrowIdList.size() == 0 ) loadIdList( m_GcArmyMemberGrowDat, m_GcArmyMemberGrowIdList ); return m_GcArmyMemberGrowIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGcArmyTrainingIdList() +const std::set< uint32_t >& ExdDataGenerated::getGcArmyTrainingIdList() { if( m_GcArmyTrainingIdList.size() == 0 ) loadIdList( m_GcArmyTrainingDat, m_GcArmyTrainingIdList ); return m_GcArmyTrainingIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGCScripShopCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getGCScripShopCategoryIdList() { if( m_GCScripShopCategoryIdList.size() == 0 ) loadIdList( m_GCScripShopCategoryDat, m_GCScripShopCategoryIdList ); return m_GCScripShopCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGCScripShopItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getGCScripShopItemIdList() { if( m_GCScripShopItemIdList.size() == 0 ) loadIdList( m_GCScripShopItemDat, m_GCScripShopItemIdList ); return m_GCScripShopItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGCShopIdList() +const std::set< uint32_t >& ExdDataGenerated::getGCShopIdList() { if( m_GCShopIdList.size() == 0 ) loadIdList( m_GCShopDat, m_GCShopIdList ); return m_GCShopIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGCShopItemCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getGCShopItemCategoryIdList() { if( m_GCShopItemCategoryIdList.size() == 0 ) loadIdList( m_GCShopItemCategoryDat, m_GCShopItemCategoryIdList ); return m_GCShopItemCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGCSupplyDutyIdList() +const std::set< uint32_t >& ExdDataGenerated::getGCSupplyDutyIdList() { if( m_GCSupplyDutyIdList.size() == 0 ) loadIdList( m_GCSupplyDutyDat, m_GCSupplyDutyIdList ); return m_GCSupplyDutyIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGCSupplyDutyRewardIdList() +const std::set< uint32_t >& ExdDataGenerated::getGCSupplyDutyRewardIdList() { if( m_GCSupplyDutyRewardIdList.size() == 0 ) loadIdList( m_GCSupplyDutyRewardDat, m_GCSupplyDutyRewardIdList ); return m_GCSupplyDutyRewardIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGeneralActionIdList() +const std::set< uint32_t >& ExdDataGenerated::getGeneralActionIdList() { if( m_GeneralActionIdList.size() == 0 ) loadIdList( m_GeneralActionDat, m_GeneralActionIdList ); return m_GeneralActionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGilShopIdList() +const std::set< uint32_t >& ExdDataGenerated::getGilShopIdList() { if( m_GilShopIdList.size() == 0 ) loadIdList( m_GilShopDat, m_GilShopIdList ); return m_GilShopIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGilShopItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getGilShopItemIdList() { if( m_GilShopItemIdList.size() == 0 ) loadIdList( m_GilShopItemDat, m_GilShopItemIdList ); return m_GilShopItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGoldSaucerTextDataIdList() +const std::set< uint32_t >& ExdDataGenerated::getGoldSaucerTextDataIdList() { if( m_GoldSaucerTextDataIdList.size() == 0 ) loadIdList( m_GoldSaucerTextDataDat, m_GoldSaucerTextDataIdList ); return m_GoldSaucerTextDataIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGrandCompanyIdList() +const std::set< uint32_t >& ExdDataGenerated::getGrandCompanyIdList() { if( m_GrandCompanyIdList.size() == 0 ) loadIdList( m_GrandCompanyDat, m_GrandCompanyIdList ); return m_GrandCompanyIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGrandCompanyRankIdList() +const std::set< uint32_t >& ExdDataGenerated::getGrandCompanyRankIdList() { if( m_GrandCompanyRankIdList.size() == 0 ) loadIdList( m_GrandCompanyRankDat, m_GrandCompanyRankIdList ); return m_GrandCompanyRankIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGuardianDeityIdList() +const std::set< uint32_t >& ExdDataGenerated::getGuardianDeityIdList() { if( m_GuardianDeityIdList.size() == 0 ) loadIdList( m_GuardianDeityDat, m_GuardianDeityIdList ); return m_GuardianDeityIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGuildleveAssignmentIdList() +const std::set< uint32_t >& ExdDataGenerated::getGuildleveAssignmentIdList() { if( m_GuildleveAssignmentIdList.size() == 0 ) loadIdList( m_GuildleveAssignmentDat, m_GuildleveAssignmentIdList ); return m_GuildleveAssignmentIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGuildOrderGuideIdList() +const std::set< uint32_t >& ExdDataGenerated::getGuildOrderGuideIdList() { if( m_GuildOrderGuideIdList.size() == 0 ) loadIdList( m_GuildOrderGuideDat, m_GuildOrderGuideIdList ); return m_GuildOrderGuideIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getGuildOrderOfficerIdList() +const std::set< uint32_t >& ExdDataGenerated::getGuildOrderOfficerIdList() { if( m_GuildOrderOfficerIdList.size() == 0 ) loadIdList( m_GuildOrderOfficerDat, m_GuildOrderOfficerIdList ); return m_GuildOrderOfficerIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getHouseRetainerPoseIdList() +const std::set< uint32_t >& ExdDataGenerated::getHouseRetainerPoseIdList() { if( m_HouseRetainerPoseIdList.size() == 0 ) loadIdList( m_HouseRetainerPoseDat, m_HouseRetainerPoseIdList ); return m_HouseRetainerPoseIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getHousingFurnitureIdList() +const std::set< uint32_t >& ExdDataGenerated::getHousingFurnitureIdList() { if( m_HousingFurnitureIdList.size() == 0 ) loadIdList( m_HousingFurnitureDat, m_HousingFurnitureIdList ); return m_HousingFurnitureIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getHousingYardObjectIdList() +const std::set< uint32_t >& ExdDataGenerated::getHousingYardObjectIdList() { if( m_HousingYardObjectIdList.size() == 0 ) loadIdList( m_HousingYardObjectDat, m_HousingYardObjectIdList ); return m_HousingYardObjectIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getInstanceContentIdList() +const std::set< uint32_t >& ExdDataGenerated::getInstanceContentIdList() { if( m_InstanceContentIdList.size() == 0 ) loadIdList( m_InstanceContentDat, m_InstanceContentIdList ); return m_InstanceContentIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getInstanceContentBuffIdList() +const std::set< uint32_t >& ExdDataGenerated::getInstanceContentBuffIdList() { if( m_InstanceContentBuffIdList.size() == 0 ) loadIdList( m_InstanceContentBuffDat, m_InstanceContentBuffIdList ); return m_InstanceContentBuffIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getInstanceContentTextDataIdList() +const std::set< uint32_t >& ExdDataGenerated::getInstanceContentTextDataIdList() { if( m_InstanceContentTextDataIdList.size() == 0 ) loadIdList( m_InstanceContentTextDataDat, m_InstanceContentTextDataIdList ); return m_InstanceContentTextDataIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getInstanceContentTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getInstanceContentTypeIdList() { if( m_InstanceContentTypeIdList.size() == 0 ) loadIdList( m_InstanceContentTypeDat, m_InstanceContentTypeIdList ); return m_InstanceContentTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getItemIdList() { if( m_ItemIdList.size() == 0 ) loadIdList( m_ItemDat, m_ItemIdList ); return m_ItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getItemActionIdList() +const std::set< uint32_t >& ExdDataGenerated::getItemActionIdList() { if( m_ItemActionIdList.size() == 0 ) loadIdList( m_ItemActionDat, m_ItemActionIdList ); return m_ItemActionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getItemFoodIdList() +const std::set< uint32_t >& ExdDataGenerated::getItemFoodIdList() { if( m_ItemFoodIdList.size() == 0 ) loadIdList( m_ItemFoodDat, m_ItemFoodIdList ); return m_ItemFoodIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getItemSearchCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getItemSearchCategoryIdList() { if( m_ItemSearchCategoryIdList.size() == 0 ) loadIdList( m_ItemSearchCategoryDat, m_ItemSearchCategoryIdList ); return m_ItemSearchCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getItemSeriesIdList() +const std::set< uint32_t >& ExdDataGenerated::getItemSeriesIdList() { if( m_ItemSeriesIdList.size() == 0 ) loadIdList( m_ItemSeriesDat, m_ItemSeriesIdList ); return m_ItemSeriesIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getItemSpecialBonusIdList() +const std::set< uint32_t >& ExdDataGenerated::getItemSpecialBonusIdList() { if( m_ItemSpecialBonusIdList.size() == 0 ) loadIdList( m_ItemSpecialBonusDat, m_ItemSpecialBonusIdList ); return m_ItemSpecialBonusIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getItemUICategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getItemUICategoryIdList() { if( m_ItemUICategoryIdList.size() == 0 ) loadIdList( m_ItemUICategoryDat, m_ItemUICategoryIdList ); return m_ItemUICategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getJournalCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getJournalCategoryIdList() { if( m_JournalCategoryIdList.size() == 0 ) loadIdList( m_JournalCategoryDat, m_JournalCategoryIdList ); return m_JournalCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getJournalGenreIdList() +const std::set< uint32_t >& ExdDataGenerated::getJournalGenreIdList() { if( m_JournalGenreIdList.size() == 0 ) loadIdList( m_JournalGenreDat, m_JournalGenreIdList ); return m_JournalGenreIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getJournalSectionIdList() +const std::set< uint32_t >& ExdDataGenerated::getJournalSectionIdList() { if( m_JournalSectionIdList.size() == 0 ) loadIdList( m_JournalSectionDat, m_JournalSectionIdList ); return m_JournalSectionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLeveIdList() +const std::set< uint32_t >& ExdDataGenerated::getLeveIdList() { if( m_LeveIdList.size() == 0 ) loadIdList( m_LeveDat, m_LeveIdList ); return m_LeveIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLeveAssignmentTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getLeveAssignmentTypeIdList() { if( m_LeveAssignmentTypeIdList.size() == 0 ) loadIdList( m_LeveAssignmentTypeDat, m_LeveAssignmentTypeIdList ); return m_LeveAssignmentTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLeveClientIdList() +const std::set< uint32_t >& ExdDataGenerated::getLeveClientIdList() { if( m_LeveClientIdList.size() == 0 ) loadIdList( m_LeveClientDat, m_LeveClientIdList ); return m_LeveClientIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLevelIdList() +const std::set< uint32_t >& ExdDataGenerated::getLevelIdList() { if( m_LevelIdList.size() == 0 ) loadIdList( m_LevelDat, m_LevelIdList ); return m_LevelIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLeveRewardItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getLeveRewardItemIdList() { if( m_LeveRewardItemIdList.size() == 0 ) loadIdList( m_LeveRewardItemDat, m_LeveRewardItemIdList ); return m_LeveRewardItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLeveRewardItemGroupIdList() +const std::set< uint32_t >& ExdDataGenerated::getLeveRewardItemGroupIdList() { if( m_LeveRewardItemGroupIdList.size() == 0 ) loadIdList( m_LeveRewardItemGroupDat, m_LeveRewardItemGroupIdList ); return m_LeveRewardItemGroupIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLeveVfxIdList() +const std::set< uint32_t >& ExdDataGenerated::getLeveVfxIdList() { if( m_LeveVfxIdList.size() == 0 ) loadIdList( m_LeveVfxDat, m_LeveVfxIdList ); return m_LeveVfxIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLogFilterIdList() +const std::set< uint32_t >& ExdDataGenerated::getLogFilterIdList() { if( m_LogFilterIdList.size() == 0 ) loadIdList( m_LogFilterDat, m_LogFilterIdList ); return m_LogFilterIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLogKindIdList() +const std::set< uint32_t >& ExdDataGenerated::getLogKindIdList() { if( m_LogKindIdList.size() == 0 ) loadIdList( m_LogKindDat, m_LogKindIdList ); return m_LogKindIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLogKindCategoryTextIdList() +const std::set< uint32_t >& ExdDataGenerated::getLogKindCategoryTextIdList() { if( m_LogKindCategoryTextIdList.size() == 0 ) loadIdList( m_LogKindCategoryTextDat, m_LogKindCategoryTextIdList ); return m_LogKindCategoryTextIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getLogMessageIdList() +const std::set< uint32_t >& ExdDataGenerated::getLogMessageIdList() { if( m_LogMessageIdList.size() == 0 ) loadIdList( m_LogMessageDat, m_LogMessageIdList ); return m_LogMessageIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMacroIconIdList() +const std::set< uint32_t >& ExdDataGenerated::getMacroIconIdList() { if( m_MacroIconIdList.size() == 0 ) loadIdList( m_MacroIconDat, m_MacroIconIdList ); return m_MacroIconIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMacroIconRedirectOldIdList() +const std::set< uint32_t >& ExdDataGenerated::getMacroIconRedirectOldIdList() { if( m_MacroIconRedirectOldIdList.size() == 0 ) loadIdList( m_MacroIconRedirectOldDat, m_MacroIconRedirectOldIdList ); return m_MacroIconRedirectOldIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMainCommandIdList() +const std::set< uint32_t >& ExdDataGenerated::getMainCommandIdList() { if( m_MainCommandIdList.size() == 0 ) loadIdList( m_MainCommandDat, m_MainCommandIdList ); return m_MainCommandIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMainCommandCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getMainCommandCategoryIdList() { if( m_MainCommandCategoryIdList.size() == 0 ) loadIdList( m_MainCommandCategoryDat, m_MainCommandCategoryIdList ); return m_MainCommandCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMapIdList() +const std::set< uint32_t >& ExdDataGenerated::getMapIdList() { if( m_MapIdList.size() == 0 ) loadIdList( m_MapDat, m_MapIdList ); return m_MapIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMapMarkerIdList() +const std::set< uint32_t >& ExdDataGenerated::getMapMarkerIdList() { if( m_MapMarkerIdList.size() == 0 ) loadIdList( m_MapMarkerDat, m_MapMarkerIdList ); return m_MapMarkerIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMapSymbolIdList() +const std::set< uint32_t >& ExdDataGenerated::getMapSymbolIdList() { if( m_MapSymbolIdList.size() == 0 ) loadIdList( m_MapSymbolDat, m_MapSymbolIdList ); return m_MapSymbolIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMasterpieceSupplyDutyIdList() +const std::set< uint32_t >& ExdDataGenerated::getMasterpieceSupplyDutyIdList() { if( m_MasterpieceSupplyDutyIdList.size() == 0 ) loadIdList( m_MasterpieceSupplyDutyDat, m_MasterpieceSupplyDutyIdList ); return m_MasterpieceSupplyDutyIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMasterpieceSupplyMultiplierIdList() +const std::set< uint32_t >& ExdDataGenerated::getMasterpieceSupplyMultiplierIdList() { if( m_MasterpieceSupplyMultiplierIdList.size() == 0 ) loadIdList( m_MasterpieceSupplyMultiplierDat, m_MasterpieceSupplyMultiplierIdList ); return m_MasterpieceSupplyMultiplierIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMateriaIdList() +const std::set< uint32_t >& ExdDataGenerated::getMateriaIdList() { if( m_MateriaIdList.size() == 0 ) loadIdList( m_MateriaDat, m_MateriaIdList ); return m_MateriaIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMinionRaceIdList() +const std::set< uint32_t >& ExdDataGenerated::getMinionRaceIdList() { if( m_MinionRaceIdList.size() == 0 ) loadIdList( m_MinionRaceDat, m_MinionRaceIdList ); return m_MinionRaceIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMinionRulesIdList() +const std::set< uint32_t >& ExdDataGenerated::getMinionRulesIdList() { if( m_MinionRulesIdList.size() == 0 ) loadIdList( m_MinionRulesDat, m_MinionRulesIdList ); return m_MinionRulesIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMinionSkillTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getMinionSkillTypeIdList() { if( m_MinionSkillTypeIdList.size() == 0 ) loadIdList( m_MinionSkillTypeDat, m_MinionSkillTypeIdList ); return m_MinionSkillTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMobHuntTargetIdList() +const std::set< uint32_t >& ExdDataGenerated::getMobHuntTargetIdList() { if( m_MobHuntTargetIdList.size() == 0 ) loadIdList( m_MobHuntTargetDat, m_MobHuntTargetIdList ); return m_MobHuntTargetIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getModelCharaIdList() +const std::set< uint32_t >& ExdDataGenerated::getModelCharaIdList() { if( m_ModelCharaIdList.size() == 0 ) loadIdList( m_ModelCharaDat, m_ModelCharaIdList ); return m_ModelCharaIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMonsterNoteIdList() +const std::set< uint32_t >& ExdDataGenerated::getMonsterNoteIdList() { if( m_MonsterNoteIdList.size() == 0 ) loadIdList( m_MonsterNoteDat, m_MonsterNoteIdList ); return m_MonsterNoteIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMonsterNoteTargetIdList() +const std::set< uint32_t >& ExdDataGenerated::getMonsterNoteTargetIdList() { if( m_MonsterNoteTargetIdList.size() == 0 ) loadIdList( m_MonsterNoteTargetDat, m_MonsterNoteTargetIdList ); return m_MonsterNoteTargetIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMountIdList() +const std::set< uint32_t >& ExdDataGenerated::getMountIdList() { if( m_MountIdList.size() == 0 ) loadIdList( m_MountDat, m_MountIdList ); return m_MountIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getMountActionIdList() +const std::set< uint32_t >& ExdDataGenerated::getMountActionIdList() { if( m_MountActionIdList.size() == 0 ) loadIdList( m_MountActionDat, m_MountActionIdList ); return m_MountActionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getNpcEquipIdList() +const std::set< uint32_t >& ExdDataGenerated::getNpcEquipIdList() { if( m_NpcEquipIdList.size() == 0 ) loadIdList( m_NpcEquipDat, m_NpcEquipIdList ); return m_NpcEquipIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getOmenIdList() +const std::set< uint32_t >& ExdDataGenerated::getOmenIdList() { if( m_OmenIdList.size() == 0 ) loadIdList( m_OmenDat, m_OmenIdList ); return m_OmenIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getOnlineStatusIdList() +const std::set< uint32_t >& ExdDataGenerated::getOnlineStatusIdList() { if( m_OnlineStatusIdList.size() == 0 ) loadIdList( m_OnlineStatusDat, m_OnlineStatusIdList ); return m_OnlineStatusIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getOrchestrionIdList() +const std::set< uint32_t >& ExdDataGenerated::getOrchestrionIdList() { if( m_OrchestrionIdList.size() == 0 ) loadIdList( m_OrchestrionDat, m_OrchestrionIdList ); return m_OrchestrionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getOrchestrionPathIdList() +const std::set< uint32_t >& ExdDataGenerated::getOrchestrionPathIdList() { if( m_OrchestrionPathIdList.size() == 0 ) loadIdList( m_OrchestrionPathDat, m_OrchestrionPathIdList ); return m_OrchestrionPathIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getParamGrowIdList() +const std::set< uint32_t >& ExdDataGenerated::getParamGrowIdList() { if( m_ParamGrowIdList.size() == 0 ) loadIdList( m_ParamGrowDat, m_ParamGrowIdList ); return m_ParamGrowIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getPetIdList() +const std::set< uint32_t >& ExdDataGenerated::getPetIdList() { if( m_PetIdList.size() == 0 ) loadIdList( m_PetDat, m_PetIdList ); return m_PetIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getPetActionIdList() +const std::set< uint32_t >& ExdDataGenerated::getPetActionIdList() { if( m_PetActionIdList.size() == 0 ) loadIdList( m_PetActionDat, m_PetActionIdList ); return m_PetActionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getPictureIdList() +const std::set< uint32_t >& ExdDataGenerated::getPictureIdList() { if( m_PictureIdList.size() == 0 ) loadIdList( m_PictureDat, m_PictureIdList ); return m_PictureIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getPlaceNameIdList() +const std::set< uint32_t >& ExdDataGenerated::getPlaceNameIdList() { if( m_PlaceNameIdList.size() == 0 ) loadIdList( m_PlaceNameDat, m_PlaceNameIdList ); return m_PlaceNameIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getQuestIdList() +const std::set< uint32_t >& ExdDataGenerated::getQuestIdList() { if( m_QuestIdList.size() == 0 ) loadIdList( m_QuestDat, m_QuestIdList ); return m_QuestIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getQuestRewardOtherIdList() +const std::set< uint32_t >& ExdDataGenerated::getQuestRewardOtherIdList() { if( m_QuestRewardOtherIdList.size() == 0 ) loadIdList( m_QuestRewardOtherDat, m_QuestRewardOtherIdList ); return m_QuestRewardOtherIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRaceIdList() +const std::set< uint32_t >& ExdDataGenerated::getRaceIdList() { if( m_RaceIdList.size() == 0 ) loadIdList( m_RaceDat, m_RaceIdList ); return m_RaceIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRacingChocoboItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getRacingChocoboItemIdList() { if( m_RacingChocoboItemIdList.size() == 0 ) loadIdList( m_RacingChocoboItemDat, m_RacingChocoboItemIdList ); return m_RacingChocoboItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRacingChocoboNameIdList() +const std::set< uint32_t >& ExdDataGenerated::getRacingChocoboNameIdList() { if( m_RacingChocoboNameIdList.size() == 0 ) loadIdList( m_RacingChocoboNameDat, m_RacingChocoboNameIdList ); return m_RacingChocoboNameIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRacingChocoboNameCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getRacingChocoboNameCategoryIdList() { if( m_RacingChocoboNameCategoryIdList.size() == 0 ) loadIdList( m_RacingChocoboNameCategoryDat, m_RacingChocoboNameCategoryIdList ); return m_RacingChocoboNameCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRacingChocoboNameInfoIdList() +const std::set< uint32_t >& ExdDataGenerated::getRacingChocoboNameInfoIdList() { if( m_RacingChocoboNameInfoIdList.size() == 0 ) loadIdList( m_RacingChocoboNameInfoDat, m_RacingChocoboNameInfoIdList ); return m_RacingChocoboNameInfoIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRacingChocoboParamIdList() +const std::set< uint32_t >& ExdDataGenerated::getRacingChocoboParamIdList() { if( m_RacingChocoboParamIdList.size() == 0 ) loadIdList( m_RacingChocoboParamDat, m_RacingChocoboParamIdList ); return m_RacingChocoboParamIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRecipeIdList() +const std::set< uint32_t >& ExdDataGenerated::getRecipeIdList() { if( m_RecipeIdList.size() == 0 ) loadIdList( m_RecipeDat, m_RecipeIdList ); return m_RecipeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRecipeElementIdList() +const std::set< uint32_t >& ExdDataGenerated::getRecipeElementIdList() { if( m_RecipeElementIdList.size() == 0 ) loadIdList( m_RecipeElementDat, m_RecipeElementIdList ); return m_RecipeElementIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRecipeLevelTableIdList() +const std::set< uint32_t >& ExdDataGenerated::getRecipeLevelTableIdList() { if( m_RecipeLevelTableIdList.size() == 0 ) loadIdList( m_RecipeLevelTableDat, m_RecipeLevelTableIdList ); return m_RecipeLevelTableIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRecipeNotebookListIdList() +const std::set< uint32_t >& ExdDataGenerated::getRecipeNotebookListIdList() { if( m_RecipeNotebookListIdList.size() == 0 ) loadIdList( m_RecipeNotebookListDat, m_RecipeNotebookListIdList ); return m_RecipeNotebookListIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRelicIdList() +const std::set< uint32_t >& ExdDataGenerated::getRelicIdList() { if( m_RelicIdList.size() == 0 ) loadIdList( m_RelicDat, m_RelicIdList ); return m_RelicIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRelic3IdList() +const std::set< uint32_t >& ExdDataGenerated::getRelic3IdList() { if( m_Relic3IdList.size() == 0 ) loadIdList( m_Relic3Dat, m_Relic3IdList ); return m_Relic3IdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRelicItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getRelicItemIdList() { if( m_RelicItemIdList.size() == 0 ) loadIdList( m_RelicItemDat, m_RelicItemIdList ); return m_RelicItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRelicNoteIdList() +const std::set< uint32_t >& ExdDataGenerated::getRelicNoteIdList() { if( m_RelicNoteIdList.size() == 0 ) loadIdList( m_RelicNoteDat, m_RelicNoteIdList ); return m_RelicNoteIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRelicNoteCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getRelicNoteCategoryIdList() { if( m_RelicNoteCategoryIdList.size() == 0 ) loadIdList( m_RelicNoteCategoryDat, m_RelicNoteCategoryIdList ); return m_RelicNoteCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRetainerTaskIdList() +const std::set< uint32_t >& ExdDataGenerated::getRetainerTaskIdList() { if( m_RetainerTaskIdList.size() == 0 ) loadIdList( m_RetainerTaskDat, m_RetainerTaskIdList ); return m_RetainerTaskIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRetainerTaskNormalIdList() +const std::set< uint32_t >& ExdDataGenerated::getRetainerTaskNormalIdList() { if( m_RetainerTaskNormalIdList.size() == 0 ) loadIdList( m_RetainerTaskNormalDat, m_RetainerTaskNormalIdList ); return m_RetainerTaskNormalIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRetainerTaskParameterIdList() +const std::set< uint32_t >& ExdDataGenerated::getRetainerTaskParameterIdList() { if( m_RetainerTaskParameterIdList.size() == 0 ) loadIdList( m_RetainerTaskParameterDat, m_RetainerTaskParameterIdList ); return m_RetainerTaskParameterIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getRetainerTaskRandomIdList() +const std::set< uint32_t >& ExdDataGenerated::getRetainerTaskRandomIdList() { if( m_RetainerTaskRandomIdList.size() == 0 ) loadIdList( m_RetainerTaskRandomDat, m_RetainerTaskRandomIdList ); return m_RetainerTaskRandomIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSalvageIdList() +const std::set< uint32_t >& ExdDataGenerated::getSalvageIdList() { if( m_SalvageIdList.size() == 0 ) loadIdList( m_SalvageDat, m_SalvageIdList ); return m_SalvageIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSatisfactionNpcIdList() +const std::set< uint32_t >& ExdDataGenerated::getSatisfactionNpcIdList() { if( m_SatisfactionNpcIdList.size() == 0 ) loadIdList( m_SatisfactionNpcDat, m_SatisfactionNpcIdList ); return m_SatisfactionNpcIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSatisfactionSupplyIdList() +const std::set< uint32_t >& ExdDataGenerated::getSatisfactionSupplyIdList() { if( m_SatisfactionSupplyIdList.size() == 0 ) loadIdList( m_SatisfactionSupplyDat, m_SatisfactionSupplyIdList ); return m_SatisfactionSupplyIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSatisfactionSupplyRewardIdList() +const std::set< uint32_t >& ExdDataGenerated::getSatisfactionSupplyRewardIdList() { if( m_SatisfactionSupplyRewardIdList.size() == 0 ) loadIdList( m_SatisfactionSupplyRewardDat, m_SatisfactionSupplyRewardIdList ); return m_SatisfactionSupplyRewardIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getScreenImageIdList() +const std::set< uint32_t >& ExdDataGenerated::getScreenImageIdList() { if( m_ScreenImageIdList.size() == 0 ) loadIdList( m_ScreenImageDat, m_ScreenImageIdList ); return m_ScreenImageIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSecretRecipeBookIdList() +const std::set< uint32_t >& ExdDataGenerated::getSecretRecipeBookIdList() { if( m_SecretRecipeBookIdList.size() == 0 ) loadIdList( m_SecretRecipeBookDat, m_SecretRecipeBookIdList ); return m_SecretRecipeBookIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSpearfishingItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getSpearfishingItemIdList() { if( m_SpearfishingItemIdList.size() == 0 ) loadIdList( m_SpearfishingItemDat, m_SpearfishingItemIdList ); return m_SpearfishingItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSpearfishingNotebookIdList() +const std::set< uint32_t >& ExdDataGenerated::getSpearfishingNotebookIdList() { if( m_SpearfishingNotebookIdList.size() == 0 ) loadIdList( m_SpearfishingNotebookDat, m_SpearfishingNotebookIdList ); return m_SpearfishingNotebookIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSpecialShopIdList() +const std::set< uint32_t >& ExdDataGenerated::getSpecialShopIdList() { if( m_SpecialShopIdList.size() == 0 ) loadIdList( m_SpecialShopDat, m_SpecialShopIdList ); return m_SpecialShopIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSpecialShopItemCategoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getSpecialShopItemCategoryIdList() { if( m_SpecialShopItemCategoryIdList.size() == 0 ) loadIdList( m_SpecialShopItemCategoryDat, m_SpecialShopItemCategoryIdList ); return m_SpecialShopItemCategoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getStainIdList() +const std::set< uint32_t >& ExdDataGenerated::getStainIdList() { if( m_StainIdList.size() == 0 ) loadIdList( m_StainDat, m_StainIdList ); return m_StainIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getStatusIdList() +const std::set< uint32_t >& ExdDataGenerated::getStatusIdList() { if( m_StatusIdList.size() == 0 ) loadIdList( m_StatusDat, m_StatusIdList ); return m_StatusIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getStoryIdList() +const std::set< uint32_t >& ExdDataGenerated::getStoryIdList() { if( m_StoryIdList.size() == 0 ) loadIdList( m_StoryDat, m_StoryIdList ); return m_StoryIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getSwitchTalkIdList() +const std::set< uint32_t >& ExdDataGenerated::getSwitchTalkIdList() { if( m_SwitchTalkIdList.size() == 0 ) loadIdList( m_SwitchTalkDat, m_SwitchTalkIdList ); return m_SwitchTalkIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTerritoryTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getTerritoryTypeIdList() { if( m_TerritoryTypeIdList.size() == 0 ) loadIdList( m_TerritoryTypeDat, m_TerritoryTypeIdList ); return m_TerritoryTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTextCommandIdList() +const std::set< uint32_t >& ExdDataGenerated::getTextCommandIdList() { if( m_TextCommandIdList.size() == 0 ) loadIdList( m_TextCommandDat, m_TextCommandIdList ); return m_TextCommandIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTitleIdList() +const std::set< uint32_t >& ExdDataGenerated::getTitleIdList() { if( m_TitleIdList.size() == 0 ) loadIdList( m_TitleDat, m_TitleIdList ); return m_TitleIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTomestonesIdList() +const std::set< uint32_t >& ExdDataGenerated::getTomestonesIdList() { if( m_TomestonesIdList.size() == 0 ) loadIdList( m_TomestonesDat, m_TomestonesIdList ); return m_TomestonesIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTomestonesItemIdList() +const std::set< uint32_t >& ExdDataGenerated::getTomestonesItemIdList() { if( m_TomestonesItemIdList.size() == 0 ) loadIdList( m_TomestonesItemDat, m_TomestonesItemIdList ); return m_TomestonesItemIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTopicSelectIdList() +const std::set< uint32_t >& ExdDataGenerated::getTopicSelectIdList() { if( m_TopicSelectIdList.size() == 0 ) loadIdList( m_TopicSelectDat, m_TopicSelectIdList ); return m_TopicSelectIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTownIdList() +const std::set< uint32_t >& ExdDataGenerated::getTownIdList() { if( m_TownIdList.size() == 0 ) loadIdList( m_TownDat, m_TownIdList ); return m_TownIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTraitIdList() +const std::set< uint32_t >& ExdDataGenerated::getTraitIdList() { if( m_TraitIdList.size() == 0 ) loadIdList( m_TraitDat, m_TraitIdList ); return m_TraitIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTraitRecastIdList() +const std::set< uint32_t >& ExdDataGenerated::getTraitRecastIdList() { if( m_TraitRecastIdList.size() == 0 ) loadIdList( m_TraitRecastDat, m_TraitRecastIdList ); return m_TraitRecastIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTraitTransientIdList() +const std::set< uint32_t >& ExdDataGenerated::getTraitTransientIdList() { if( m_TraitTransientIdList.size() == 0 ) loadIdList( m_TraitTransientDat, m_TraitTransientIdList ); return m_TraitTransientIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTribeIdList() +const std::set< uint32_t >& ExdDataGenerated::getTribeIdList() { if( m_TribeIdList.size() == 0 ) loadIdList( m_TribeDat, m_TribeIdList ); return m_TribeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTripleTriadIdList() +const std::set< uint32_t >& ExdDataGenerated::getTripleTriadIdList() { if( m_TripleTriadIdList.size() == 0 ) loadIdList( m_TripleTriadDat, m_TripleTriadIdList ); return m_TripleTriadIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTripleTriadCardIdList() +const std::set< uint32_t >& ExdDataGenerated::getTripleTriadCardIdList() { if( m_TripleTriadCardIdList.size() == 0 ) loadIdList( m_TripleTriadCardDat, m_TripleTriadCardIdList ); return m_TripleTriadCardIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTripleTriadCardRarityIdList() +const std::set< uint32_t >& ExdDataGenerated::getTripleTriadCardRarityIdList() { if( m_TripleTriadCardRarityIdList.size() == 0 ) loadIdList( m_TripleTriadCardRarityDat, m_TripleTriadCardRarityIdList ); return m_TripleTriadCardRarityIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTripleTriadCardResidentIdList() +const std::set< uint32_t >& ExdDataGenerated::getTripleTriadCardResidentIdList() { if( m_TripleTriadCardResidentIdList.size() == 0 ) loadIdList( m_TripleTriadCardResidentDat, m_TripleTriadCardResidentIdList ); return m_TripleTriadCardResidentIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTripleTriadCardTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getTripleTriadCardTypeIdList() { if( m_TripleTriadCardTypeIdList.size() == 0 ) loadIdList( m_TripleTriadCardTypeDat, m_TripleTriadCardTypeIdList ); return m_TripleTriadCardTypeIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTripleTriadCompetitionIdList() +const std::set< uint32_t >& ExdDataGenerated::getTripleTriadCompetitionIdList() { if( m_TripleTriadCompetitionIdList.size() == 0 ) loadIdList( m_TripleTriadCompetitionDat, m_TripleTriadCompetitionIdList ); return m_TripleTriadCompetitionIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTripleTriadRuleIdList() +const std::set< uint32_t >& ExdDataGenerated::getTripleTriadRuleIdList() { if( m_TripleTriadRuleIdList.size() == 0 ) loadIdList( m_TripleTriadRuleDat, m_TripleTriadRuleIdList ); return m_TripleTriadRuleIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTutorialIdList() +const std::set< uint32_t >& ExdDataGenerated::getTutorialIdList() { if( m_TutorialIdList.size() == 0 ) loadIdList( m_TutorialDat, m_TutorialIdList ); return m_TutorialIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTutorialDPSIdList() +const std::set< uint32_t >& ExdDataGenerated::getTutorialDPSIdList() { if( m_TutorialDPSIdList.size() == 0 ) loadIdList( m_TutorialDPSDat, m_TutorialDPSIdList ); return m_TutorialDPSIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTutorialHealerIdList() +const std::set< uint32_t >& ExdDataGenerated::getTutorialHealerIdList() { if( m_TutorialHealerIdList.size() == 0 ) loadIdList( m_TutorialHealerDat, m_TutorialHealerIdList ); return m_TutorialHealerIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getTutorialTankIdList() +const std::set< uint32_t >& ExdDataGenerated::getTutorialTankIdList() { if( m_TutorialTankIdList.size() == 0 ) loadIdList( m_TutorialTankDat, m_TutorialTankIdList ); return m_TutorialTankIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWarpIdList() +const std::set< uint32_t >& ExdDataGenerated::getWarpIdList() { if( m_WarpIdList.size() == 0 ) loadIdList( m_WarpDat, m_WarpIdList ); return m_WarpIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWeatherIdList() +const std::set< uint32_t >& ExdDataGenerated::getWeatherIdList() { if( m_WeatherIdList.size() == 0 ) loadIdList( m_WeatherDat, m_WeatherIdList ); return m_WeatherIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWeatherGroupIdList() +const std::set< uint32_t >& ExdDataGenerated::getWeatherGroupIdList() { if( m_WeatherGroupIdList.size() == 0 ) loadIdList( m_WeatherGroupDat, m_WeatherGroupIdList ); return m_WeatherGroupIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWeatherRateIdList() +const std::set< uint32_t >& ExdDataGenerated::getWeatherRateIdList() { if( m_WeatherRateIdList.size() == 0 ) loadIdList( m_WeatherRateDat, m_WeatherRateIdList ); return m_WeatherRateIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWeeklyBingoOrderDataIdList() +const std::set< uint32_t >& ExdDataGenerated::getWeeklyBingoOrderDataIdList() { if( m_WeeklyBingoOrderDataIdList.size() == 0 ) loadIdList( m_WeeklyBingoOrderDataDat, m_WeeklyBingoOrderDataIdList ); return m_WeeklyBingoOrderDataIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWeeklyBingoRewardDataIdList() +const std::set< uint32_t >& ExdDataGenerated::getWeeklyBingoRewardDataIdList() { if( m_WeeklyBingoRewardDataIdList.size() == 0 ) loadIdList( m_WeeklyBingoRewardDataDat, m_WeeklyBingoRewardDataIdList ); return m_WeeklyBingoRewardDataIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWeeklyBingoTextIdList() +const std::set< uint32_t >& ExdDataGenerated::getWeeklyBingoTextIdList() { if( m_WeeklyBingoTextIdList.size() == 0 ) loadIdList( m_WeeklyBingoTextDat, m_WeeklyBingoTextIdList ); return m_WeeklyBingoTextIdList; } -const std::set< uint32_t >& Core::Data::ExdDataGenerated::getWorldDCGroupTypeIdList() +const std::set< uint32_t >& ExdDataGenerated::getWorldDCGroupTypeIdList() { if( m_WorldDCGroupTypeIdList.size() == 0 ) loadIdList( m_WorldDCGroupTypeDat, m_WorldDCGroupTypeIdList ); From 1e29e6610173a7dc92b68bcde154d83d2347fdb0 Mon Sep 17 00:00:00 2001 From: Mordred Admin Date: Fri, 1 Dec 2017 08:44:21 +0100 Subject: [PATCH 22/29] Qualifier removed from generated file aswell as from generator itself, once again. --- src/tools/exd_struct_gen/main.cpp | 2 +- src/tools/exd_struct_test/ExdDataGenerated.h | 580 +++++++++---------- 2 files changed, 291 insertions(+), 291 deletions(-) diff --git a/src/tools/exd_struct_gen/main.cpp b/src/tools/exd_struct_gen/main.cpp index ed761121..a1e51ccd 100644 --- a/src/tools/exd_struct_gen/main.cpp +++ b/src/tools/exd_struct_gen/main.cpp @@ -53,7 +53,7 @@ std::string generateDirectGetters( const std::string& exd ) std::string generateIdListGetter( const std::string &exd ) { - std::string IdListGetter = "const std::set< uint32_t >& ExdDataGenerated::get" + exd + "IdList()\n" + std::string IdListGetter = "const std::set< uint32_t >& get" + exd + "IdList()\n" "{\n" " if( m_" + exd + "IdList.size() == 0 )\n" " loadIdList( m_" + exd + "Dat, m_" + exd + "IdList );\n" diff --git a/src/tools/exd_struct_test/ExdDataGenerated.h b/src/tools/exd_struct_test/ExdDataGenerated.h index a210a25d..24b1149d 100644 --- a/src/tools/exd_struct_test/ExdDataGenerated.h +++ b/src/tools/exd_struct_test/ExdDataGenerated.h @@ -4188,1741 +4188,1741 @@ struct WorldDCGroupType std::set< uint32_t > m_WorldDCGroupTypeIdList; -const std::set< uint32_t >& ExdDataGenerated::getAchievementIdList() +const std::set< uint32_t >& getAchievementIdList() { if( m_AchievementIdList.size() == 0 ) loadIdList( m_AchievementDat, m_AchievementIdList ); return m_AchievementIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAchievementCategoryIdList() +const std::set< uint32_t >& getAchievementCategoryIdList() { if( m_AchievementCategoryIdList.size() == 0 ) loadIdList( m_AchievementCategoryDat, m_AchievementCategoryIdList ); return m_AchievementCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAchievementKindIdList() +const std::set< uint32_t >& getAchievementKindIdList() { if( m_AchievementKindIdList.size() == 0 ) loadIdList( m_AchievementKindDat, m_AchievementKindIdList ); return m_AchievementKindIdList; } -const std::set< uint32_t >& ExdDataGenerated::getActionIdList() +const std::set< uint32_t >& getActionIdList() { if( m_ActionIdList.size() == 0 ) loadIdList( m_ActionDat, m_ActionIdList ); return m_ActionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getActionCategoryIdList() +const std::set< uint32_t >& getActionCategoryIdList() { if( m_ActionCategoryIdList.size() == 0 ) loadIdList( m_ActionCategoryDat, m_ActionCategoryIdList ); return m_ActionCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getActionComboRouteIdList() +const std::set< uint32_t >& getActionComboRouteIdList() { if( m_ActionComboRouteIdList.size() == 0 ) loadIdList( m_ActionComboRouteDat, m_ActionComboRouteIdList ); return m_ActionComboRouteIdList; } -const std::set< uint32_t >& ExdDataGenerated::getActionIndirectionIdList() +const std::set< uint32_t >& getActionIndirectionIdList() { if( m_ActionIndirectionIdList.size() == 0 ) loadIdList( m_ActionIndirectionDat, m_ActionIndirectionIdList ); return m_ActionIndirectionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getActionProcStatusIdList() +const std::set< uint32_t >& getActionProcStatusIdList() { if( m_ActionProcStatusIdList.size() == 0 ) loadIdList( m_ActionProcStatusDat, m_ActionProcStatusIdList ); return m_ActionProcStatusIdList; } -const std::set< uint32_t >& ExdDataGenerated::getActionTimelineIdList() +const std::set< uint32_t >& getActionTimelineIdList() { if( m_ActionTimelineIdList.size() == 0 ) loadIdList( m_ActionTimelineDat, m_ActionTimelineIdList ); return m_ActionTimelineIdList; } -const std::set< uint32_t >& ExdDataGenerated::getActionTransientIdList() +const std::set< uint32_t >& getActionTransientIdList() { if( m_ActionTransientIdList.size() == 0 ) loadIdList( m_ActionTransientDat, m_ActionTransientIdList ); return m_ActionTransientIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAddonIdList() +const std::set< uint32_t >& getAddonIdList() { if( m_AddonIdList.size() == 0 ) loadIdList( m_AddonDat, m_AddonIdList ); return m_AddonIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAdventureIdList() +const std::set< uint32_t >& getAdventureIdList() { if( m_AdventureIdList.size() == 0 ) loadIdList( m_AdventureDat, m_AdventureIdList ); return m_AdventureIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAdventureExPhaseIdList() +const std::set< uint32_t >& getAdventureExPhaseIdList() { if( m_AdventureExPhaseIdList.size() == 0 ) loadIdList( m_AdventureExPhaseDat, m_AdventureExPhaseIdList ); return m_AdventureExPhaseIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAetherCurrentIdList() +const std::set< uint32_t >& getAetherCurrentIdList() { if( m_AetherCurrentIdList.size() == 0 ) loadIdList( m_AetherCurrentDat, m_AetherCurrentIdList ); return m_AetherCurrentIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAetherialWheelIdList() +const std::set< uint32_t >& getAetherialWheelIdList() { if( m_AetherialWheelIdList.size() == 0 ) loadIdList( m_AetherialWheelDat, m_AetherialWheelIdList ); return m_AetherialWheelIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAetheryteIdList() +const std::set< uint32_t >& getAetheryteIdList() { if( m_AetheryteIdList.size() == 0 ) loadIdList( m_AetheryteDat, m_AetheryteIdList ); return m_AetheryteIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAirshipExplorationLevelIdList() +const std::set< uint32_t >& getAirshipExplorationLevelIdList() { if( m_AirshipExplorationLevelIdList.size() == 0 ) loadIdList( m_AirshipExplorationLevelDat, m_AirshipExplorationLevelIdList ); return m_AirshipExplorationLevelIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAirshipExplorationLogIdList() +const std::set< uint32_t >& getAirshipExplorationLogIdList() { if( m_AirshipExplorationLogIdList.size() == 0 ) loadIdList( m_AirshipExplorationLogDat, m_AirshipExplorationLogIdList ); return m_AirshipExplorationLogIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAirshipExplorationParamTypeIdList() +const std::set< uint32_t >& getAirshipExplorationParamTypeIdList() { if( m_AirshipExplorationParamTypeIdList.size() == 0 ) loadIdList( m_AirshipExplorationParamTypeDat, m_AirshipExplorationParamTypeIdList ); return m_AirshipExplorationParamTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAirshipExplorationPartIdList() +const std::set< uint32_t >& getAirshipExplorationPartIdList() { if( m_AirshipExplorationPartIdList.size() == 0 ) loadIdList( m_AirshipExplorationPartDat, m_AirshipExplorationPartIdList ); return m_AirshipExplorationPartIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAirshipExplorationPointIdList() +const std::set< uint32_t >& getAirshipExplorationPointIdList() { if( m_AirshipExplorationPointIdList.size() == 0 ) loadIdList( m_AirshipExplorationPointDat, m_AirshipExplorationPointIdList ); return m_AirshipExplorationPointIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAnimaWeapon5IdList() +const std::set< uint32_t >& getAnimaWeapon5IdList() { if( m_AnimaWeapon5IdList.size() == 0 ) loadIdList( m_AnimaWeapon5Dat, m_AnimaWeapon5IdList ); return m_AnimaWeapon5IdList; } -const std::set< uint32_t >& ExdDataGenerated::getAnimaWeapon5ParamIdList() +const std::set< uint32_t >& getAnimaWeapon5ParamIdList() { if( m_AnimaWeapon5ParamIdList.size() == 0 ) loadIdList( m_AnimaWeapon5ParamDat, m_AnimaWeapon5ParamIdList ); return m_AnimaWeapon5ParamIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAnimaWeapon5PatternGroupIdList() +const std::set< uint32_t >& getAnimaWeapon5PatternGroupIdList() { if( m_AnimaWeapon5PatternGroupIdList.size() == 0 ) loadIdList( m_AnimaWeapon5PatternGroupDat, m_AnimaWeapon5PatternGroupIdList ); return m_AnimaWeapon5PatternGroupIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAnimaWeapon5SpiritTalkIdList() +const std::set< uint32_t >& getAnimaWeapon5SpiritTalkIdList() { if( m_AnimaWeapon5SpiritTalkIdList.size() == 0 ) loadIdList( m_AnimaWeapon5SpiritTalkDat, m_AnimaWeapon5SpiritTalkIdList ); return m_AnimaWeapon5SpiritTalkIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAnimaWeapon5SpiritTalkParamIdList() +const std::set< uint32_t >& getAnimaWeapon5SpiritTalkParamIdList() { if( m_AnimaWeapon5SpiritTalkParamIdList.size() == 0 ) loadIdList( m_AnimaWeapon5SpiritTalkParamDat, m_AnimaWeapon5SpiritTalkParamIdList ); return m_AnimaWeapon5SpiritTalkParamIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAnimaWeapon5TradeItemIdList() +const std::set< uint32_t >& getAnimaWeapon5TradeItemIdList() { if( m_AnimaWeapon5TradeItemIdList.size() == 0 ) loadIdList( m_AnimaWeapon5TradeItemDat, m_AnimaWeapon5TradeItemIdList ); return m_AnimaWeapon5TradeItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAnimaWeaponFUITalkIdList() +const std::set< uint32_t >& getAnimaWeaponFUITalkIdList() { if( m_AnimaWeaponFUITalkIdList.size() == 0 ) loadIdList( m_AnimaWeaponFUITalkDat, m_AnimaWeaponFUITalkIdList ); return m_AnimaWeaponFUITalkIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAnimaWeaponFUITalkParamIdList() +const std::set< uint32_t >& getAnimaWeaponFUITalkParamIdList() { if( m_AnimaWeaponFUITalkParamIdList.size() == 0 ) loadIdList( m_AnimaWeaponFUITalkParamDat, m_AnimaWeaponFUITalkParamIdList ); return m_AnimaWeaponFUITalkParamIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAnimaWeaponIconIdList() +const std::set< uint32_t >& getAnimaWeaponIconIdList() { if( m_AnimaWeaponIconIdList.size() == 0 ) loadIdList( m_AnimaWeaponIconDat, m_AnimaWeaponIconIdList ); return m_AnimaWeaponIconIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAnimaWeaponItemIdList() +const std::set< uint32_t >& getAnimaWeaponItemIdList() { if( m_AnimaWeaponItemIdList.size() == 0 ) loadIdList( m_AnimaWeaponItemDat, m_AnimaWeaponItemIdList ); return m_AnimaWeaponItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAquariumFishIdList() +const std::set< uint32_t >& getAquariumFishIdList() { if( m_AquariumFishIdList.size() == 0 ) loadIdList( m_AquariumFishDat, m_AquariumFishIdList ); return m_AquariumFishIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAquariumWaterIdList() +const std::set< uint32_t >& getAquariumWaterIdList() { if( m_AquariumWaterIdList.size() == 0 ) loadIdList( m_AquariumWaterDat, m_AquariumWaterIdList ); return m_AquariumWaterIdList; } -const std::set< uint32_t >& ExdDataGenerated::getAttackTypeIdList() +const std::set< uint32_t >& getAttackTypeIdList() { if( m_AttackTypeIdList.size() == 0 ) loadIdList( m_AttackTypeDat, m_AttackTypeIdList ); return m_AttackTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBalloonIdList() +const std::set< uint32_t >& getBalloonIdList() { if( m_BalloonIdList.size() == 0 ) loadIdList( m_BalloonDat, m_BalloonIdList ); return m_BalloonIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBaseParamIdList() +const std::set< uint32_t >& getBaseParamIdList() { if( m_BaseParamIdList.size() == 0 ) loadIdList( m_BaseParamDat, m_BaseParamIdList ); return m_BaseParamIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBattleLeveIdList() +const std::set< uint32_t >& getBattleLeveIdList() { if( m_BattleLeveIdList.size() == 0 ) loadIdList( m_BattleLeveDat, m_BattleLeveIdList ); return m_BattleLeveIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBeastRankBonusIdList() +const std::set< uint32_t >& getBeastRankBonusIdList() { if( m_BeastRankBonusIdList.size() == 0 ) loadIdList( m_BeastRankBonusDat, m_BeastRankBonusIdList ); return m_BeastRankBonusIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBeastReputationRankIdList() +const std::set< uint32_t >& getBeastReputationRankIdList() { if( m_BeastReputationRankIdList.size() == 0 ) loadIdList( m_BeastReputationRankDat, m_BeastReputationRankIdList ); return m_BeastReputationRankIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBeastTribeIdList() +const std::set< uint32_t >& getBeastTribeIdList() { if( m_BeastTribeIdList.size() == 0 ) loadIdList( m_BeastTribeDat, m_BeastTribeIdList ); return m_BeastTribeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBehaviorIdList() +const std::set< uint32_t >& getBehaviorIdList() { if( m_BehaviorIdList.size() == 0 ) loadIdList( m_BehaviorDat, m_BehaviorIdList ); return m_BehaviorIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBGMIdList() +const std::set< uint32_t >& getBGMIdList() { if( m_BGMIdList.size() == 0 ) loadIdList( m_BGMDat, m_BGMIdList ); return m_BGMIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBNpcAnnounceIconIdList() +const std::set< uint32_t >& getBNpcAnnounceIconIdList() { if( m_BNpcAnnounceIconIdList.size() == 0 ) loadIdList( m_BNpcAnnounceIconDat, m_BNpcAnnounceIconIdList ); return m_BNpcAnnounceIconIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBNpcBaseIdList() +const std::set< uint32_t >& getBNpcBaseIdList() { if( m_BNpcBaseIdList.size() == 0 ) loadIdList( m_BNpcBaseDat, m_BNpcBaseIdList ); return m_BNpcBaseIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBNpcCustomizeIdList() +const std::set< uint32_t >& getBNpcCustomizeIdList() { if( m_BNpcCustomizeIdList.size() == 0 ) loadIdList( m_BNpcCustomizeDat, m_BNpcCustomizeIdList ); return m_BNpcCustomizeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBNpcNameIdList() +const std::set< uint32_t >& getBNpcNameIdList() { if( m_BNpcNameIdList.size() == 0 ) loadIdList( m_BNpcNameDat, m_BNpcNameIdList ); return m_BNpcNameIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBuddyActionIdList() +const std::set< uint32_t >& getBuddyActionIdList() { if( m_BuddyActionIdList.size() == 0 ) loadIdList( m_BuddyActionDat, m_BuddyActionIdList ); return m_BuddyActionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBuddyEquipIdList() +const std::set< uint32_t >& getBuddyEquipIdList() { if( m_BuddyEquipIdList.size() == 0 ) loadIdList( m_BuddyEquipDat, m_BuddyEquipIdList ); return m_BuddyEquipIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBuddyItemIdList() +const std::set< uint32_t >& getBuddyItemIdList() { if( m_BuddyItemIdList.size() == 0 ) loadIdList( m_BuddyItemDat, m_BuddyItemIdList ); return m_BuddyItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBuddyRankIdList() +const std::set< uint32_t >& getBuddyRankIdList() { if( m_BuddyRankIdList.size() == 0 ) loadIdList( m_BuddyRankDat, m_BuddyRankIdList ); return m_BuddyRankIdList; } -const std::set< uint32_t >& ExdDataGenerated::getBuddySkillIdList() +const std::set< uint32_t >& getBuddySkillIdList() { if( m_BuddySkillIdList.size() == 0 ) loadIdList( m_BuddySkillDat, m_BuddySkillIdList ); return m_BuddySkillIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCabinetIdList() +const std::set< uint32_t >& getCabinetIdList() { if( m_CabinetIdList.size() == 0 ) loadIdList( m_CabinetDat, m_CabinetIdList ); return m_CabinetIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCabinetCategoryIdList() +const std::set< uint32_t >& getCabinetCategoryIdList() { if( m_CabinetCategoryIdList.size() == 0 ) loadIdList( m_CabinetCategoryDat, m_CabinetCategoryIdList ); return m_CabinetCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCalendarIdList() +const std::set< uint32_t >& getCalendarIdList() { if( m_CalendarIdList.size() == 0 ) loadIdList( m_CalendarDat, m_CalendarIdList ); return m_CalendarIdList; } -const std::set< uint32_t >& ExdDataGenerated::getChainBonusIdList() +const std::set< uint32_t >& getChainBonusIdList() { if( m_ChainBonusIdList.size() == 0 ) loadIdList( m_ChainBonusDat, m_ChainBonusIdList ); return m_ChainBonusIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCharaMakeCustomizeIdList() +const std::set< uint32_t >& getCharaMakeCustomizeIdList() { if( m_CharaMakeCustomizeIdList.size() == 0 ) loadIdList( m_CharaMakeCustomizeDat, m_CharaMakeCustomizeIdList ); return m_CharaMakeCustomizeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCharaMakeTypeIdList() +const std::set< uint32_t >& getCharaMakeTypeIdList() { if( m_CharaMakeTypeIdList.size() == 0 ) loadIdList( m_CharaMakeTypeDat, m_CharaMakeTypeIdList ); return m_CharaMakeTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getChocoboRaceIdList() +const std::set< uint32_t >& getChocoboRaceIdList() { if( m_ChocoboRaceIdList.size() == 0 ) loadIdList( m_ChocoboRaceDat, m_ChocoboRaceIdList ); return m_ChocoboRaceIdList; } -const std::set< uint32_t >& ExdDataGenerated::getChocoboRaceAbilityIdList() +const std::set< uint32_t >& getChocoboRaceAbilityIdList() { if( m_ChocoboRaceAbilityIdList.size() == 0 ) loadIdList( m_ChocoboRaceAbilityDat, m_ChocoboRaceAbilityIdList ); return m_ChocoboRaceAbilityIdList; } -const std::set< uint32_t >& ExdDataGenerated::getChocoboRaceAbilityTypeIdList() +const std::set< uint32_t >& getChocoboRaceAbilityTypeIdList() { if( m_ChocoboRaceAbilityTypeIdList.size() == 0 ) loadIdList( m_ChocoboRaceAbilityTypeDat, m_ChocoboRaceAbilityTypeIdList ); return m_ChocoboRaceAbilityTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getChocoboRaceItemIdList() +const std::set< uint32_t >& getChocoboRaceItemIdList() { if( m_ChocoboRaceItemIdList.size() == 0 ) loadIdList( m_ChocoboRaceItemDat, m_ChocoboRaceItemIdList ); return m_ChocoboRaceItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getChocoboRaceRankIdList() +const std::set< uint32_t >& getChocoboRaceRankIdList() { if( m_ChocoboRaceRankIdList.size() == 0 ) loadIdList( m_ChocoboRaceRankDat, m_ChocoboRaceRankIdList ); return m_ChocoboRaceRankIdList; } -const std::set< uint32_t >& ExdDataGenerated::getChocoboRaceStatusIdList() +const std::set< uint32_t >& getChocoboRaceStatusIdList() { if( m_ChocoboRaceStatusIdList.size() == 0 ) loadIdList( m_ChocoboRaceStatusDat, m_ChocoboRaceStatusIdList ); return m_ChocoboRaceStatusIdList; } -const std::set< uint32_t >& ExdDataGenerated::getChocoboRaceTerritoryIdList() +const std::set< uint32_t >& getChocoboRaceTerritoryIdList() { if( m_ChocoboRaceTerritoryIdList.size() == 0 ) loadIdList( m_ChocoboRaceTerritoryDat, m_ChocoboRaceTerritoryIdList ); return m_ChocoboRaceTerritoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getChocoboTaxiStandIdList() +const std::set< uint32_t >& getChocoboTaxiStandIdList() { if( m_ChocoboTaxiStandIdList.size() == 0 ) loadIdList( m_ChocoboTaxiStandDat, m_ChocoboTaxiStandIdList ); return m_ChocoboTaxiStandIdList; } -const std::set< uint32_t >& ExdDataGenerated::getClassJobIdList() +const std::set< uint32_t >& getClassJobIdList() { if( m_ClassJobIdList.size() == 0 ) loadIdList( m_ClassJobDat, m_ClassJobIdList ); return m_ClassJobIdList; } -const std::set< uint32_t >& ExdDataGenerated::getClassJobCategoryIdList() +const std::set< uint32_t >& getClassJobCategoryIdList() { if( m_ClassJobCategoryIdList.size() == 0 ) loadIdList( m_ClassJobCategoryDat, m_ClassJobCategoryIdList ); return m_ClassJobCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCompanionIdList() +const std::set< uint32_t >& getCompanionIdList() { if( m_CompanionIdList.size() == 0 ) loadIdList( m_CompanionDat, m_CompanionIdList ); return m_CompanionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCompanionMoveIdList() +const std::set< uint32_t >& getCompanionMoveIdList() { if( m_CompanionMoveIdList.size() == 0 ) loadIdList( m_CompanionMoveDat, m_CompanionMoveIdList ); return m_CompanionMoveIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCompanionTransientIdList() +const std::set< uint32_t >& getCompanionTransientIdList() { if( m_CompanionTransientIdList.size() == 0 ) loadIdList( m_CompanionTransientDat, m_CompanionTransientIdList ); return m_CompanionTransientIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCompanyActionIdList() +const std::set< uint32_t >& getCompanyActionIdList() { if( m_CompanyActionIdList.size() == 0 ) loadIdList( m_CompanyActionDat, m_CompanyActionIdList ); return m_CompanyActionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftDraftIdList() +const std::set< uint32_t >& getCompanyCraftDraftIdList() { if( m_CompanyCraftDraftIdList.size() == 0 ) loadIdList( m_CompanyCraftDraftDat, m_CompanyCraftDraftIdList ); return m_CompanyCraftDraftIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftDraftCategoryIdList() +const std::set< uint32_t >& getCompanyCraftDraftCategoryIdList() { if( m_CompanyCraftDraftCategoryIdList.size() == 0 ) loadIdList( m_CompanyCraftDraftCategoryDat, m_CompanyCraftDraftCategoryIdList ); return m_CompanyCraftDraftCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftManufactoryStateIdList() +const std::set< uint32_t >& getCompanyCraftManufactoryStateIdList() { if( m_CompanyCraftManufactoryStateIdList.size() == 0 ) loadIdList( m_CompanyCraftManufactoryStateDat, m_CompanyCraftManufactoryStateIdList ); return m_CompanyCraftManufactoryStateIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftPartIdList() +const std::set< uint32_t >& getCompanyCraftPartIdList() { if( m_CompanyCraftPartIdList.size() == 0 ) loadIdList( m_CompanyCraftPartDat, m_CompanyCraftPartIdList ); return m_CompanyCraftPartIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftProcessIdList() +const std::set< uint32_t >& getCompanyCraftProcessIdList() { if( m_CompanyCraftProcessIdList.size() == 0 ) loadIdList( m_CompanyCraftProcessDat, m_CompanyCraftProcessIdList ); return m_CompanyCraftProcessIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftSequenceIdList() +const std::set< uint32_t >& getCompanyCraftSequenceIdList() { if( m_CompanyCraftSequenceIdList.size() == 0 ) loadIdList( m_CompanyCraftSequenceDat, m_CompanyCraftSequenceIdList ); return m_CompanyCraftSequenceIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftSupplyItemIdList() +const std::set< uint32_t >& getCompanyCraftSupplyItemIdList() { if( m_CompanyCraftSupplyItemIdList.size() == 0 ) loadIdList( m_CompanyCraftSupplyItemDat, m_CompanyCraftSupplyItemIdList ); return m_CompanyCraftSupplyItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCompanyCraftTypeIdList() +const std::set< uint32_t >& getCompanyCraftTypeIdList() { if( m_CompanyCraftTypeIdList.size() == 0 ) loadIdList( m_CompanyCraftTypeDat, m_CompanyCraftTypeIdList ); return m_CompanyCraftTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCompleteJournalIdList() +const std::set< uint32_t >& getCompleteJournalIdList() { if( m_CompleteJournalIdList.size() == 0 ) loadIdList( m_CompleteJournalDat, m_CompleteJournalIdList ); return m_CompleteJournalIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCompleteJournalCategoryIdList() +const std::set< uint32_t >& getCompleteJournalCategoryIdList() { if( m_CompleteJournalCategoryIdList.size() == 0 ) loadIdList( m_CompleteJournalCategoryDat, m_CompleteJournalCategoryIdList ); return m_CompleteJournalCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getContentExActionIdList() +const std::set< uint32_t >& getContentExActionIdList() { if( m_ContentExActionIdList.size() == 0 ) loadIdList( m_ContentExActionDat, m_ContentExActionIdList ); return m_ContentExActionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getContentFinderConditionIdList() +const std::set< uint32_t >& getContentFinderConditionIdList() { if( m_ContentFinderConditionIdList.size() == 0 ) loadIdList( m_ContentFinderConditionDat, m_ContentFinderConditionIdList ); return m_ContentFinderConditionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getContentFinderConditionTransientIdList() +const std::set< uint32_t >& getContentFinderConditionTransientIdList() { if( m_ContentFinderConditionTransientIdList.size() == 0 ) loadIdList( m_ContentFinderConditionTransientDat, m_ContentFinderConditionTransientIdList ); return m_ContentFinderConditionTransientIdList; } -const std::set< uint32_t >& ExdDataGenerated::getContentMemberTypeIdList() +const std::set< uint32_t >& getContentMemberTypeIdList() { if( m_ContentMemberTypeIdList.size() == 0 ) loadIdList( m_ContentMemberTypeDat, m_ContentMemberTypeIdList ); return m_ContentMemberTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getContentRouletteIdList() +const std::set< uint32_t >& getContentRouletteIdList() { if( m_ContentRouletteIdList.size() == 0 ) loadIdList( m_ContentRouletteDat, m_ContentRouletteIdList ); return m_ContentRouletteIdList; } -const std::set< uint32_t >& ExdDataGenerated::getContentTypeIdList() +const std::set< uint32_t >& getContentTypeIdList() { if( m_ContentTypeIdList.size() == 0 ) loadIdList( m_ContentTypeDat, m_ContentTypeIdList ); return m_ContentTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCraftActionIdList() +const std::set< uint32_t >& getCraftActionIdList() { if( m_CraftActionIdList.size() == 0 ) loadIdList( m_CraftActionDat, m_CraftActionIdList ); return m_CraftActionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCraftLeveIdList() +const std::set< uint32_t >& getCraftLeveIdList() { if( m_CraftLeveIdList.size() == 0 ) loadIdList( m_CraftLeveDat, m_CraftLeveIdList ); return m_CraftLeveIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCraftTypeIdList() +const std::set< uint32_t >& getCraftTypeIdList() { if( m_CraftTypeIdList.size() == 0 ) loadIdList( m_CraftTypeDat, m_CraftTypeIdList ); return m_CraftTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCurrencyIdList() +const std::set< uint32_t >& getCurrencyIdList() { if( m_CurrencyIdList.size() == 0 ) loadIdList( m_CurrencyDat, m_CurrencyIdList ); return m_CurrencyIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCustomTalkIdList() +const std::set< uint32_t >& getCustomTalkIdList() { if( m_CustomTalkIdList.size() == 0 ) loadIdList( m_CustomTalkDat, m_CustomTalkIdList ); return m_CustomTalkIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCutsceneIdList() +const std::set< uint32_t >& getCutsceneIdList() { if( m_CutsceneIdList.size() == 0 ) loadIdList( m_CutsceneDat, m_CutsceneIdList ); return m_CutsceneIdList; } -const std::set< uint32_t >& ExdDataGenerated::getCutScreenImageIdList() +const std::set< uint32_t >& getCutScreenImageIdList() { if( m_CutScreenImageIdList.size() == 0 ) loadIdList( m_CutScreenImageDat, m_CutScreenImageIdList ); return m_CutScreenImageIdList; } -const std::set< uint32_t >& ExdDataGenerated::getDailySupplyItemIdList() +const std::set< uint32_t >& getDailySupplyItemIdList() { if( m_DailySupplyItemIdList.size() == 0 ) loadIdList( m_DailySupplyItemDat, m_DailySupplyItemIdList ); return m_DailySupplyItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getDeepDungeonBanIdList() +const std::set< uint32_t >& getDeepDungeonBanIdList() { if( m_DeepDungeonBanIdList.size() == 0 ) loadIdList( m_DeepDungeonBanDat, m_DeepDungeonBanIdList ); return m_DeepDungeonBanIdList; } -const std::set< uint32_t >& ExdDataGenerated::getDeepDungeonDangerIdList() +const std::set< uint32_t >& getDeepDungeonDangerIdList() { if( m_DeepDungeonDangerIdList.size() == 0 ) loadIdList( m_DeepDungeonDangerDat, m_DeepDungeonDangerIdList ); return m_DeepDungeonDangerIdList; } -const std::set< uint32_t >& ExdDataGenerated::getDeepDungeonEquipmentIdList() +const std::set< uint32_t >& getDeepDungeonEquipmentIdList() { if( m_DeepDungeonEquipmentIdList.size() == 0 ) loadIdList( m_DeepDungeonEquipmentDat, m_DeepDungeonEquipmentIdList ); return m_DeepDungeonEquipmentIdList; } -const std::set< uint32_t >& ExdDataGenerated::getDeepDungeonFloorEffectUIIdList() +const std::set< uint32_t >& getDeepDungeonFloorEffectUIIdList() { if( m_DeepDungeonFloorEffectUIIdList.size() == 0 ) loadIdList( m_DeepDungeonFloorEffectUIDat, m_DeepDungeonFloorEffectUIIdList ); return m_DeepDungeonFloorEffectUIIdList; } -const std::set< uint32_t >& ExdDataGenerated::getDeepDungeonItemIdList() +const std::set< uint32_t >& getDeepDungeonItemIdList() { if( m_DeepDungeonItemIdList.size() == 0 ) loadIdList( m_DeepDungeonItemDat, m_DeepDungeonItemIdList ); return m_DeepDungeonItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getDeepDungeonStatusIdList() +const std::set< uint32_t >& getDeepDungeonStatusIdList() { if( m_DeepDungeonStatusIdList.size() == 0 ) loadIdList( m_DeepDungeonStatusDat, m_DeepDungeonStatusIdList ); return m_DeepDungeonStatusIdList; } -const std::set< uint32_t >& ExdDataGenerated::getDefaultTalkIdList() +const std::set< uint32_t >& getDefaultTalkIdList() { if( m_DefaultTalkIdList.size() == 0 ) loadIdList( m_DefaultTalkDat, m_DefaultTalkIdList ); return m_DefaultTalkIdList; } -const std::set< uint32_t >& ExdDataGenerated::getDeliveryQuestIdList() +const std::set< uint32_t >& getDeliveryQuestIdList() { if( m_DeliveryQuestIdList.size() == 0 ) loadIdList( m_DeliveryQuestDat, m_DeliveryQuestIdList ); return m_DeliveryQuestIdList; } -const std::set< uint32_t >& ExdDataGenerated::getDisposalShopIdList() +const std::set< uint32_t >& getDisposalShopIdList() { if( m_DisposalShopIdList.size() == 0 ) loadIdList( m_DisposalShopDat, m_DisposalShopIdList ); return m_DisposalShopIdList; } -const std::set< uint32_t >& ExdDataGenerated::getDisposalShopFilterTypeIdList() +const std::set< uint32_t >& getDisposalShopFilterTypeIdList() { if( m_DisposalShopFilterTypeIdList.size() == 0 ) loadIdList( m_DisposalShopFilterTypeDat, m_DisposalShopFilterTypeIdList ); return m_DisposalShopFilterTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getDisposalShopItemIdList() +const std::set< uint32_t >& getDisposalShopItemIdList() { if( m_DisposalShopItemIdList.size() == 0 ) loadIdList( m_DisposalShopItemDat, m_DisposalShopItemIdList ); return m_DisposalShopItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getDpsChallengeIdList() +const std::set< uint32_t >& getDpsChallengeIdList() { if( m_DpsChallengeIdList.size() == 0 ) loadIdList( m_DpsChallengeDat, m_DpsChallengeIdList ); return m_DpsChallengeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getDpsChallengeOfficerIdList() +const std::set< uint32_t >& getDpsChallengeOfficerIdList() { if( m_DpsChallengeOfficerIdList.size() == 0 ) loadIdList( m_DpsChallengeOfficerDat, m_DpsChallengeOfficerIdList ); return m_DpsChallengeOfficerIdList; } -const std::set< uint32_t >& ExdDataGenerated::getDpsChallengeTransientIdList() +const std::set< uint32_t >& getDpsChallengeTransientIdList() { if( m_DpsChallengeTransientIdList.size() == 0 ) loadIdList( m_DpsChallengeTransientDat, m_DpsChallengeTransientIdList ); return m_DpsChallengeTransientIdList; } -const std::set< uint32_t >& ExdDataGenerated::getEmoteIdList() +const std::set< uint32_t >& getEmoteIdList() { if( m_EmoteIdList.size() == 0 ) loadIdList( m_EmoteDat, m_EmoteIdList ); return m_EmoteIdList; } -const std::set< uint32_t >& ExdDataGenerated::getEmoteCategoryIdList() +const std::set< uint32_t >& getEmoteCategoryIdList() { if( m_EmoteCategoryIdList.size() == 0 ) loadIdList( m_EmoteCategoryDat, m_EmoteCategoryIdList ); return m_EmoteCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getENpcBaseIdList() +const std::set< uint32_t >& getENpcBaseIdList() { if( m_ENpcBaseIdList.size() == 0 ) loadIdList( m_ENpcBaseDat, m_ENpcBaseIdList ); return m_ENpcBaseIdList; } -const std::set< uint32_t >& ExdDataGenerated::getENpcResidentIdList() +const std::set< uint32_t >& getENpcResidentIdList() { if( m_ENpcResidentIdList.size() == 0 ) loadIdList( m_ENpcResidentDat, m_ENpcResidentIdList ); return m_ENpcResidentIdList; } -const std::set< uint32_t >& ExdDataGenerated::getEObjIdList() +const std::set< uint32_t >& getEObjIdList() { if( m_EObjIdList.size() == 0 ) loadIdList( m_EObjDat, m_EObjIdList ); return m_EObjIdList; } -const std::set< uint32_t >& ExdDataGenerated::getEquipRaceCategoryIdList() +const std::set< uint32_t >& getEquipRaceCategoryIdList() { if( m_EquipRaceCategoryIdList.size() == 0 ) loadIdList( m_EquipRaceCategoryDat, m_EquipRaceCategoryIdList ); return m_EquipRaceCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getEquipSlotCategoryIdList() +const std::set< uint32_t >& getEquipSlotCategoryIdList() { if( m_EquipSlotCategoryIdList.size() == 0 ) loadIdList( m_EquipSlotCategoryDat, m_EquipSlotCategoryIdList ); return m_EquipSlotCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getEventActionIdList() +const std::set< uint32_t >& getEventActionIdList() { if( m_EventActionIdList.size() == 0 ) loadIdList( m_EventActionDat, m_EventActionIdList ); return m_EventActionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getEventIconPriorityIdList() +const std::set< uint32_t >& getEventIconPriorityIdList() { if( m_EventIconPriorityIdList.size() == 0 ) loadIdList( m_EventIconPriorityDat, m_EventIconPriorityIdList ); return m_EventIconPriorityIdList; } -const std::set< uint32_t >& ExdDataGenerated::getEventIconTypeIdList() +const std::set< uint32_t >& getEventIconTypeIdList() { if( m_EventIconTypeIdList.size() == 0 ) loadIdList( m_EventIconTypeDat, m_EventIconTypeIdList ); return m_EventIconTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getEventItemIdList() +const std::set< uint32_t >& getEventItemIdList() { if( m_EventItemIdList.size() == 0 ) loadIdList( m_EventItemDat, m_EventItemIdList ); return m_EventItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getEventItemHelpIdList() +const std::set< uint32_t >& getEventItemHelpIdList() { if( m_EventItemHelpIdList.size() == 0 ) loadIdList( m_EventItemHelpDat, m_EventItemHelpIdList ); return m_EventItemHelpIdList; } -const std::set< uint32_t >& ExdDataGenerated::getExVersionIdList() +const std::set< uint32_t >& getExVersionIdList() { if( m_ExVersionIdList.size() == 0 ) loadIdList( m_ExVersionDat, m_ExVersionIdList ); return m_ExVersionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getFateIdList() +const std::set< uint32_t >& getFateIdList() { if( m_FateIdList.size() == 0 ) loadIdList( m_FateDat, m_FateIdList ); return m_FateIdList; } -const std::set< uint32_t >& ExdDataGenerated::getFCActivityIdList() +const std::set< uint32_t >& getFCActivityIdList() { if( m_FCActivityIdList.size() == 0 ) loadIdList( m_FCActivityDat, m_FCActivityIdList ); return m_FCActivityIdList; } -const std::set< uint32_t >& ExdDataGenerated::getFCAuthorityIdList() +const std::set< uint32_t >& getFCAuthorityIdList() { if( m_FCAuthorityIdList.size() == 0 ) loadIdList( m_FCAuthorityDat, m_FCAuthorityIdList ); return m_FCAuthorityIdList; } -const std::set< uint32_t >& ExdDataGenerated::getFCAuthorityCategoryIdList() +const std::set< uint32_t >& getFCAuthorityCategoryIdList() { if( m_FCAuthorityCategoryIdList.size() == 0 ) loadIdList( m_FCAuthorityCategoryDat, m_FCAuthorityCategoryIdList ); return m_FCAuthorityCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getFCChestNameIdList() +const std::set< uint32_t >& getFCChestNameIdList() { if( m_FCChestNameIdList.size() == 0 ) loadIdList( m_FCChestNameDat, m_FCChestNameIdList ); return m_FCChestNameIdList; } -const std::set< uint32_t >& ExdDataGenerated::getFccShopIdList() +const std::set< uint32_t >& getFccShopIdList() { if( m_FccShopIdList.size() == 0 ) loadIdList( m_FccShopDat, m_FccShopIdList ); return m_FccShopIdList; } -const std::set< uint32_t >& ExdDataGenerated::getFCHierarchyIdList() +const std::set< uint32_t >& getFCHierarchyIdList() { if( m_FCHierarchyIdList.size() == 0 ) loadIdList( m_FCHierarchyDat, m_FCHierarchyIdList ); return m_FCHierarchyIdList; } -const std::set< uint32_t >& ExdDataGenerated::getFCReputationIdList() +const std::set< uint32_t >& getFCReputationIdList() { if( m_FCReputationIdList.size() == 0 ) loadIdList( m_FCReputationDat, m_FCReputationIdList ); return m_FCReputationIdList; } -const std::set< uint32_t >& ExdDataGenerated::getFCRightsIdList() +const std::set< uint32_t >& getFCRightsIdList() { if( m_FCRightsIdList.size() == 0 ) loadIdList( m_FCRightsDat, m_FCRightsIdList ); return m_FCRightsIdList; } -const std::set< uint32_t >& ExdDataGenerated::getFishingSpotIdList() +const std::set< uint32_t >& getFishingSpotIdList() { if( m_FishingSpotIdList.size() == 0 ) loadIdList( m_FishingSpotDat, m_FishingSpotIdList ); return m_FishingSpotIdList; } -const std::set< uint32_t >& ExdDataGenerated::getFishParameterIdList() +const std::set< uint32_t >& getFishParameterIdList() { if( m_FishParameterIdList.size() == 0 ) loadIdList( m_FishParameterDat, m_FishParameterIdList ); return m_FishParameterIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGardeningSeedIdList() +const std::set< uint32_t >& getGardeningSeedIdList() { if( m_GardeningSeedIdList.size() == 0 ) loadIdList( m_GardeningSeedDat, m_GardeningSeedIdList ); return m_GardeningSeedIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGatheringConditionIdList() +const std::set< uint32_t >& getGatheringConditionIdList() { if( m_GatheringConditionIdList.size() == 0 ) loadIdList( m_GatheringConditionDat, m_GatheringConditionIdList ); return m_GatheringConditionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGatheringExpIdList() +const std::set< uint32_t >& getGatheringExpIdList() { if( m_GatheringExpIdList.size() == 0 ) loadIdList( m_GatheringExpDat, m_GatheringExpIdList ); return m_GatheringExpIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGatheringItemIdList() +const std::set< uint32_t >& getGatheringItemIdList() { if( m_GatheringItemIdList.size() == 0 ) loadIdList( m_GatheringItemDat, m_GatheringItemIdList ); return m_GatheringItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGatheringItemLevelConvertTableIdList() +const std::set< uint32_t >& getGatheringItemLevelConvertTableIdList() { if( m_GatheringItemLevelConvertTableIdList.size() == 0 ) loadIdList( m_GatheringItemLevelConvertTableDat, m_GatheringItemLevelConvertTableIdList ); return m_GatheringItemLevelConvertTableIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGatheringItemPointIdList() +const std::set< uint32_t >& getGatheringItemPointIdList() { if( m_GatheringItemPointIdList.size() == 0 ) loadIdList( m_GatheringItemPointDat, m_GatheringItemPointIdList ); return m_GatheringItemPointIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGatheringNotebookListIdList() +const std::set< uint32_t >& getGatheringNotebookListIdList() { if( m_GatheringNotebookListIdList.size() == 0 ) loadIdList( m_GatheringNotebookListDat, m_GatheringNotebookListIdList ); return m_GatheringNotebookListIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGatheringPointIdList() +const std::set< uint32_t >& getGatheringPointIdList() { if( m_GatheringPointIdList.size() == 0 ) loadIdList( m_GatheringPointDat, m_GatheringPointIdList ); return m_GatheringPointIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGatheringPointBaseIdList() +const std::set< uint32_t >& getGatheringPointBaseIdList() { if( m_GatheringPointBaseIdList.size() == 0 ) loadIdList( m_GatheringPointBaseDat, m_GatheringPointBaseIdList ); return m_GatheringPointBaseIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGatheringPointBonusIdList() +const std::set< uint32_t >& getGatheringPointBonusIdList() { if( m_GatheringPointBonusIdList.size() == 0 ) loadIdList( m_GatheringPointBonusDat, m_GatheringPointBonusIdList ); return m_GatheringPointBonusIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGatheringPointBonusTypeIdList() +const std::set< uint32_t >& getGatheringPointBonusTypeIdList() { if( m_GatheringPointBonusTypeIdList.size() == 0 ) loadIdList( m_GatheringPointBonusTypeDat, m_GatheringPointBonusTypeIdList ); return m_GatheringPointBonusTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGatheringPointNameIdList() +const std::set< uint32_t >& getGatheringPointNameIdList() { if( m_GatheringPointNameIdList.size() == 0 ) loadIdList( m_GatheringPointNameDat, m_GatheringPointNameIdList ); return m_GatheringPointNameIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGatheringSubCategoryIdList() +const std::set< uint32_t >& getGatheringSubCategoryIdList() { if( m_GatheringSubCategoryIdList.size() == 0 ) loadIdList( m_GatheringSubCategoryDat, m_GatheringSubCategoryIdList ); return m_GatheringSubCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGatheringTypeIdList() +const std::set< uint32_t >& getGatheringTypeIdList() { if( m_GatheringTypeIdList.size() == 0 ) loadIdList( m_GatheringTypeDat, m_GatheringTypeIdList ); return m_GatheringTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGcArmyExpeditionIdList() +const std::set< uint32_t >& getGcArmyExpeditionIdList() { if( m_GcArmyExpeditionIdList.size() == 0 ) loadIdList( m_GcArmyExpeditionDat, m_GcArmyExpeditionIdList ); return m_GcArmyExpeditionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGcArmyExpeditionMemberBonusIdList() +const std::set< uint32_t >& getGcArmyExpeditionMemberBonusIdList() { if( m_GcArmyExpeditionMemberBonusIdList.size() == 0 ) loadIdList( m_GcArmyExpeditionMemberBonusDat, m_GcArmyExpeditionMemberBonusIdList ); return m_GcArmyExpeditionMemberBonusIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGcArmyExpeditionTypeIdList() +const std::set< uint32_t >& getGcArmyExpeditionTypeIdList() { if( m_GcArmyExpeditionTypeIdList.size() == 0 ) loadIdList( m_GcArmyExpeditionTypeDat, m_GcArmyExpeditionTypeIdList ); return m_GcArmyExpeditionTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGcArmyMemberGrowIdList() +const std::set< uint32_t >& getGcArmyMemberGrowIdList() { if( m_GcArmyMemberGrowIdList.size() == 0 ) loadIdList( m_GcArmyMemberGrowDat, m_GcArmyMemberGrowIdList ); return m_GcArmyMemberGrowIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGcArmyTrainingIdList() +const std::set< uint32_t >& getGcArmyTrainingIdList() { if( m_GcArmyTrainingIdList.size() == 0 ) loadIdList( m_GcArmyTrainingDat, m_GcArmyTrainingIdList ); return m_GcArmyTrainingIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGCScripShopCategoryIdList() +const std::set< uint32_t >& getGCScripShopCategoryIdList() { if( m_GCScripShopCategoryIdList.size() == 0 ) loadIdList( m_GCScripShopCategoryDat, m_GCScripShopCategoryIdList ); return m_GCScripShopCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGCScripShopItemIdList() +const std::set< uint32_t >& getGCScripShopItemIdList() { if( m_GCScripShopItemIdList.size() == 0 ) loadIdList( m_GCScripShopItemDat, m_GCScripShopItemIdList ); return m_GCScripShopItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGCShopIdList() +const std::set< uint32_t >& getGCShopIdList() { if( m_GCShopIdList.size() == 0 ) loadIdList( m_GCShopDat, m_GCShopIdList ); return m_GCShopIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGCShopItemCategoryIdList() +const std::set< uint32_t >& getGCShopItemCategoryIdList() { if( m_GCShopItemCategoryIdList.size() == 0 ) loadIdList( m_GCShopItemCategoryDat, m_GCShopItemCategoryIdList ); return m_GCShopItemCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGCSupplyDutyIdList() +const std::set< uint32_t >& getGCSupplyDutyIdList() { if( m_GCSupplyDutyIdList.size() == 0 ) loadIdList( m_GCSupplyDutyDat, m_GCSupplyDutyIdList ); return m_GCSupplyDutyIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGCSupplyDutyRewardIdList() +const std::set< uint32_t >& getGCSupplyDutyRewardIdList() { if( m_GCSupplyDutyRewardIdList.size() == 0 ) loadIdList( m_GCSupplyDutyRewardDat, m_GCSupplyDutyRewardIdList ); return m_GCSupplyDutyRewardIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGeneralActionIdList() +const std::set< uint32_t >& getGeneralActionIdList() { if( m_GeneralActionIdList.size() == 0 ) loadIdList( m_GeneralActionDat, m_GeneralActionIdList ); return m_GeneralActionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGilShopIdList() +const std::set< uint32_t >& getGilShopIdList() { if( m_GilShopIdList.size() == 0 ) loadIdList( m_GilShopDat, m_GilShopIdList ); return m_GilShopIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGilShopItemIdList() +const std::set< uint32_t >& getGilShopItemIdList() { if( m_GilShopItemIdList.size() == 0 ) loadIdList( m_GilShopItemDat, m_GilShopItemIdList ); return m_GilShopItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGoldSaucerTextDataIdList() +const std::set< uint32_t >& getGoldSaucerTextDataIdList() { if( m_GoldSaucerTextDataIdList.size() == 0 ) loadIdList( m_GoldSaucerTextDataDat, m_GoldSaucerTextDataIdList ); return m_GoldSaucerTextDataIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGrandCompanyIdList() +const std::set< uint32_t >& getGrandCompanyIdList() { if( m_GrandCompanyIdList.size() == 0 ) loadIdList( m_GrandCompanyDat, m_GrandCompanyIdList ); return m_GrandCompanyIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGrandCompanyRankIdList() +const std::set< uint32_t >& getGrandCompanyRankIdList() { if( m_GrandCompanyRankIdList.size() == 0 ) loadIdList( m_GrandCompanyRankDat, m_GrandCompanyRankIdList ); return m_GrandCompanyRankIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGuardianDeityIdList() +const std::set< uint32_t >& getGuardianDeityIdList() { if( m_GuardianDeityIdList.size() == 0 ) loadIdList( m_GuardianDeityDat, m_GuardianDeityIdList ); return m_GuardianDeityIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGuildleveAssignmentIdList() +const std::set< uint32_t >& getGuildleveAssignmentIdList() { if( m_GuildleveAssignmentIdList.size() == 0 ) loadIdList( m_GuildleveAssignmentDat, m_GuildleveAssignmentIdList ); return m_GuildleveAssignmentIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGuildOrderGuideIdList() +const std::set< uint32_t >& getGuildOrderGuideIdList() { if( m_GuildOrderGuideIdList.size() == 0 ) loadIdList( m_GuildOrderGuideDat, m_GuildOrderGuideIdList ); return m_GuildOrderGuideIdList; } -const std::set< uint32_t >& ExdDataGenerated::getGuildOrderOfficerIdList() +const std::set< uint32_t >& getGuildOrderOfficerIdList() { if( m_GuildOrderOfficerIdList.size() == 0 ) loadIdList( m_GuildOrderOfficerDat, m_GuildOrderOfficerIdList ); return m_GuildOrderOfficerIdList; } -const std::set< uint32_t >& ExdDataGenerated::getHouseRetainerPoseIdList() +const std::set< uint32_t >& getHouseRetainerPoseIdList() { if( m_HouseRetainerPoseIdList.size() == 0 ) loadIdList( m_HouseRetainerPoseDat, m_HouseRetainerPoseIdList ); return m_HouseRetainerPoseIdList; } -const std::set< uint32_t >& ExdDataGenerated::getHousingFurnitureIdList() +const std::set< uint32_t >& getHousingFurnitureIdList() { if( m_HousingFurnitureIdList.size() == 0 ) loadIdList( m_HousingFurnitureDat, m_HousingFurnitureIdList ); return m_HousingFurnitureIdList; } -const std::set< uint32_t >& ExdDataGenerated::getHousingYardObjectIdList() +const std::set< uint32_t >& getHousingYardObjectIdList() { if( m_HousingYardObjectIdList.size() == 0 ) loadIdList( m_HousingYardObjectDat, m_HousingYardObjectIdList ); return m_HousingYardObjectIdList; } -const std::set< uint32_t >& ExdDataGenerated::getInstanceContentIdList() +const std::set< uint32_t >& getInstanceContentIdList() { if( m_InstanceContentIdList.size() == 0 ) loadIdList( m_InstanceContentDat, m_InstanceContentIdList ); return m_InstanceContentIdList; } -const std::set< uint32_t >& ExdDataGenerated::getInstanceContentBuffIdList() +const std::set< uint32_t >& getInstanceContentBuffIdList() { if( m_InstanceContentBuffIdList.size() == 0 ) loadIdList( m_InstanceContentBuffDat, m_InstanceContentBuffIdList ); return m_InstanceContentBuffIdList; } -const std::set< uint32_t >& ExdDataGenerated::getInstanceContentTextDataIdList() +const std::set< uint32_t >& getInstanceContentTextDataIdList() { if( m_InstanceContentTextDataIdList.size() == 0 ) loadIdList( m_InstanceContentTextDataDat, m_InstanceContentTextDataIdList ); return m_InstanceContentTextDataIdList; } -const std::set< uint32_t >& ExdDataGenerated::getInstanceContentTypeIdList() +const std::set< uint32_t >& getInstanceContentTypeIdList() { if( m_InstanceContentTypeIdList.size() == 0 ) loadIdList( m_InstanceContentTypeDat, m_InstanceContentTypeIdList ); return m_InstanceContentTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getItemIdList() +const std::set< uint32_t >& getItemIdList() { if( m_ItemIdList.size() == 0 ) loadIdList( m_ItemDat, m_ItemIdList ); return m_ItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getItemActionIdList() +const std::set< uint32_t >& getItemActionIdList() { if( m_ItemActionIdList.size() == 0 ) loadIdList( m_ItemActionDat, m_ItemActionIdList ); return m_ItemActionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getItemFoodIdList() +const std::set< uint32_t >& getItemFoodIdList() { if( m_ItemFoodIdList.size() == 0 ) loadIdList( m_ItemFoodDat, m_ItemFoodIdList ); return m_ItemFoodIdList; } -const std::set< uint32_t >& ExdDataGenerated::getItemSearchCategoryIdList() +const std::set< uint32_t >& getItemSearchCategoryIdList() { if( m_ItemSearchCategoryIdList.size() == 0 ) loadIdList( m_ItemSearchCategoryDat, m_ItemSearchCategoryIdList ); return m_ItemSearchCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getItemSeriesIdList() +const std::set< uint32_t >& getItemSeriesIdList() { if( m_ItemSeriesIdList.size() == 0 ) loadIdList( m_ItemSeriesDat, m_ItemSeriesIdList ); return m_ItemSeriesIdList; } -const std::set< uint32_t >& ExdDataGenerated::getItemSpecialBonusIdList() +const std::set< uint32_t >& getItemSpecialBonusIdList() { if( m_ItemSpecialBonusIdList.size() == 0 ) loadIdList( m_ItemSpecialBonusDat, m_ItemSpecialBonusIdList ); return m_ItemSpecialBonusIdList; } -const std::set< uint32_t >& ExdDataGenerated::getItemUICategoryIdList() +const std::set< uint32_t >& getItemUICategoryIdList() { if( m_ItemUICategoryIdList.size() == 0 ) loadIdList( m_ItemUICategoryDat, m_ItemUICategoryIdList ); return m_ItemUICategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getJournalCategoryIdList() +const std::set< uint32_t >& getJournalCategoryIdList() { if( m_JournalCategoryIdList.size() == 0 ) loadIdList( m_JournalCategoryDat, m_JournalCategoryIdList ); return m_JournalCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getJournalGenreIdList() +const std::set< uint32_t >& getJournalGenreIdList() { if( m_JournalGenreIdList.size() == 0 ) loadIdList( m_JournalGenreDat, m_JournalGenreIdList ); return m_JournalGenreIdList; } -const std::set< uint32_t >& ExdDataGenerated::getJournalSectionIdList() +const std::set< uint32_t >& getJournalSectionIdList() { if( m_JournalSectionIdList.size() == 0 ) loadIdList( m_JournalSectionDat, m_JournalSectionIdList ); return m_JournalSectionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getLeveIdList() +const std::set< uint32_t >& getLeveIdList() { if( m_LeveIdList.size() == 0 ) loadIdList( m_LeveDat, m_LeveIdList ); return m_LeveIdList; } -const std::set< uint32_t >& ExdDataGenerated::getLeveAssignmentTypeIdList() +const std::set< uint32_t >& getLeveAssignmentTypeIdList() { if( m_LeveAssignmentTypeIdList.size() == 0 ) loadIdList( m_LeveAssignmentTypeDat, m_LeveAssignmentTypeIdList ); return m_LeveAssignmentTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getLeveClientIdList() +const std::set< uint32_t >& getLeveClientIdList() { if( m_LeveClientIdList.size() == 0 ) loadIdList( m_LeveClientDat, m_LeveClientIdList ); return m_LeveClientIdList; } -const std::set< uint32_t >& ExdDataGenerated::getLevelIdList() +const std::set< uint32_t >& getLevelIdList() { if( m_LevelIdList.size() == 0 ) loadIdList( m_LevelDat, m_LevelIdList ); return m_LevelIdList; } -const std::set< uint32_t >& ExdDataGenerated::getLeveRewardItemIdList() +const std::set< uint32_t >& getLeveRewardItemIdList() { if( m_LeveRewardItemIdList.size() == 0 ) loadIdList( m_LeveRewardItemDat, m_LeveRewardItemIdList ); return m_LeveRewardItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getLeveRewardItemGroupIdList() +const std::set< uint32_t >& getLeveRewardItemGroupIdList() { if( m_LeveRewardItemGroupIdList.size() == 0 ) loadIdList( m_LeveRewardItemGroupDat, m_LeveRewardItemGroupIdList ); return m_LeveRewardItemGroupIdList; } -const std::set< uint32_t >& ExdDataGenerated::getLeveVfxIdList() +const std::set< uint32_t >& getLeveVfxIdList() { if( m_LeveVfxIdList.size() == 0 ) loadIdList( m_LeveVfxDat, m_LeveVfxIdList ); return m_LeveVfxIdList; } -const std::set< uint32_t >& ExdDataGenerated::getLogFilterIdList() +const std::set< uint32_t >& getLogFilterIdList() { if( m_LogFilterIdList.size() == 0 ) loadIdList( m_LogFilterDat, m_LogFilterIdList ); return m_LogFilterIdList; } -const std::set< uint32_t >& ExdDataGenerated::getLogKindIdList() +const std::set< uint32_t >& getLogKindIdList() { if( m_LogKindIdList.size() == 0 ) loadIdList( m_LogKindDat, m_LogKindIdList ); return m_LogKindIdList; } -const std::set< uint32_t >& ExdDataGenerated::getLogKindCategoryTextIdList() +const std::set< uint32_t >& getLogKindCategoryTextIdList() { if( m_LogKindCategoryTextIdList.size() == 0 ) loadIdList( m_LogKindCategoryTextDat, m_LogKindCategoryTextIdList ); return m_LogKindCategoryTextIdList; } -const std::set< uint32_t >& ExdDataGenerated::getLogMessageIdList() +const std::set< uint32_t >& getLogMessageIdList() { if( m_LogMessageIdList.size() == 0 ) loadIdList( m_LogMessageDat, m_LogMessageIdList ); return m_LogMessageIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMacroIconIdList() +const std::set< uint32_t >& getMacroIconIdList() { if( m_MacroIconIdList.size() == 0 ) loadIdList( m_MacroIconDat, m_MacroIconIdList ); return m_MacroIconIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMacroIconRedirectOldIdList() +const std::set< uint32_t >& getMacroIconRedirectOldIdList() { if( m_MacroIconRedirectOldIdList.size() == 0 ) loadIdList( m_MacroIconRedirectOldDat, m_MacroIconRedirectOldIdList ); return m_MacroIconRedirectOldIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMainCommandIdList() +const std::set< uint32_t >& getMainCommandIdList() { if( m_MainCommandIdList.size() == 0 ) loadIdList( m_MainCommandDat, m_MainCommandIdList ); return m_MainCommandIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMainCommandCategoryIdList() +const std::set< uint32_t >& getMainCommandCategoryIdList() { if( m_MainCommandCategoryIdList.size() == 0 ) loadIdList( m_MainCommandCategoryDat, m_MainCommandCategoryIdList ); return m_MainCommandCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMapIdList() +const std::set< uint32_t >& getMapIdList() { if( m_MapIdList.size() == 0 ) loadIdList( m_MapDat, m_MapIdList ); return m_MapIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMapMarkerIdList() +const std::set< uint32_t >& getMapMarkerIdList() { if( m_MapMarkerIdList.size() == 0 ) loadIdList( m_MapMarkerDat, m_MapMarkerIdList ); return m_MapMarkerIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMapSymbolIdList() +const std::set< uint32_t >& getMapSymbolIdList() { if( m_MapSymbolIdList.size() == 0 ) loadIdList( m_MapSymbolDat, m_MapSymbolIdList ); return m_MapSymbolIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMasterpieceSupplyDutyIdList() +const std::set< uint32_t >& getMasterpieceSupplyDutyIdList() { if( m_MasterpieceSupplyDutyIdList.size() == 0 ) loadIdList( m_MasterpieceSupplyDutyDat, m_MasterpieceSupplyDutyIdList ); return m_MasterpieceSupplyDutyIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMasterpieceSupplyMultiplierIdList() +const std::set< uint32_t >& getMasterpieceSupplyMultiplierIdList() { if( m_MasterpieceSupplyMultiplierIdList.size() == 0 ) loadIdList( m_MasterpieceSupplyMultiplierDat, m_MasterpieceSupplyMultiplierIdList ); return m_MasterpieceSupplyMultiplierIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMateriaIdList() +const std::set< uint32_t >& getMateriaIdList() { if( m_MateriaIdList.size() == 0 ) loadIdList( m_MateriaDat, m_MateriaIdList ); return m_MateriaIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMinionRaceIdList() +const std::set< uint32_t >& getMinionRaceIdList() { if( m_MinionRaceIdList.size() == 0 ) loadIdList( m_MinionRaceDat, m_MinionRaceIdList ); return m_MinionRaceIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMinionRulesIdList() +const std::set< uint32_t >& getMinionRulesIdList() { if( m_MinionRulesIdList.size() == 0 ) loadIdList( m_MinionRulesDat, m_MinionRulesIdList ); return m_MinionRulesIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMinionSkillTypeIdList() +const std::set< uint32_t >& getMinionSkillTypeIdList() { if( m_MinionSkillTypeIdList.size() == 0 ) loadIdList( m_MinionSkillTypeDat, m_MinionSkillTypeIdList ); return m_MinionSkillTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMobHuntTargetIdList() +const std::set< uint32_t >& getMobHuntTargetIdList() { if( m_MobHuntTargetIdList.size() == 0 ) loadIdList( m_MobHuntTargetDat, m_MobHuntTargetIdList ); return m_MobHuntTargetIdList; } -const std::set< uint32_t >& ExdDataGenerated::getModelCharaIdList() +const std::set< uint32_t >& getModelCharaIdList() { if( m_ModelCharaIdList.size() == 0 ) loadIdList( m_ModelCharaDat, m_ModelCharaIdList ); return m_ModelCharaIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMonsterNoteIdList() +const std::set< uint32_t >& getMonsterNoteIdList() { if( m_MonsterNoteIdList.size() == 0 ) loadIdList( m_MonsterNoteDat, m_MonsterNoteIdList ); return m_MonsterNoteIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMonsterNoteTargetIdList() +const std::set< uint32_t >& getMonsterNoteTargetIdList() { if( m_MonsterNoteTargetIdList.size() == 0 ) loadIdList( m_MonsterNoteTargetDat, m_MonsterNoteTargetIdList ); return m_MonsterNoteTargetIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMountIdList() +const std::set< uint32_t >& getMountIdList() { if( m_MountIdList.size() == 0 ) loadIdList( m_MountDat, m_MountIdList ); return m_MountIdList; } -const std::set< uint32_t >& ExdDataGenerated::getMountActionIdList() +const std::set< uint32_t >& getMountActionIdList() { if( m_MountActionIdList.size() == 0 ) loadIdList( m_MountActionDat, m_MountActionIdList ); return m_MountActionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getNpcEquipIdList() +const std::set< uint32_t >& getNpcEquipIdList() { if( m_NpcEquipIdList.size() == 0 ) loadIdList( m_NpcEquipDat, m_NpcEquipIdList ); return m_NpcEquipIdList; } -const std::set< uint32_t >& ExdDataGenerated::getOmenIdList() +const std::set< uint32_t >& getOmenIdList() { if( m_OmenIdList.size() == 0 ) loadIdList( m_OmenDat, m_OmenIdList ); return m_OmenIdList; } -const std::set< uint32_t >& ExdDataGenerated::getOnlineStatusIdList() +const std::set< uint32_t >& getOnlineStatusIdList() { if( m_OnlineStatusIdList.size() == 0 ) loadIdList( m_OnlineStatusDat, m_OnlineStatusIdList ); return m_OnlineStatusIdList; } -const std::set< uint32_t >& ExdDataGenerated::getOrchestrionIdList() +const std::set< uint32_t >& getOrchestrionIdList() { if( m_OrchestrionIdList.size() == 0 ) loadIdList( m_OrchestrionDat, m_OrchestrionIdList ); return m_OrchestrionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getOrchestrionPathIdList() +const std::set< uint32_t >& getOrchestrionPathIdList() { if( m_OrchestrionPathIdList.size() == 0 ) loadIdList( m_OrchestrionPathDat, m_OrchestrionPathIdList ); return m_OrchestrionPathIdList; } -const std::set< uint32_t >& ExdDataGenerated::getParamGrowIdList() +const std::set< uint32_t >& getParamGrowIdList() { if( m_ParamGrowIdList.size() == 0 ) loadIdList( m_ParamGrowDat, m_ParamGrowIdList ); return m_ParamGrowIdList; } -const std::set< uint32_t >& ExdDataGenerated::getPetIdList() +const std::set< uint32_t >& getPetIdList() { if( m_PetIdList.size() == 0 ) loadIdList( m_PetDat, m_PetIdList ); return m_PetIdList; } -const std::set< uint32_t >& ExdDataGenerated::getPetActionIdList() +const std::set< uint32_t >& getPetActionIdList() { if( m_PetActionIdList.size() == 0 ) loadIdList( m_PetActionDat, m_PetActionIdList ); return m_PetActionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getPictureIdList() +const std::set< uint32_t >& getPictureIdList() { if( m_PictureIdList.size() == 0 ) loadIdList( m_PictureDat, m_PictureIdList ); return m_PictureIdList; } -const std::set< uint32_t >& ExdDataGenerated::getPlaceNameIdList() +const std::set< uint32_t >& getPlaceNameIdList() { if( m_PlaceNameIdList.size() == 0 ) loadIdList( m_PlaceNameDat, m_PlaceNameIdList ); return m_PlaceNameIdList; } -const std::set< uint32_t >& ExdDataGenerated::getQuestIdList() +const std::set< uint32_t >& getQuestIdList() { if( m_QuestIdList.size() == 0 ) loadIdList( m_QuestDat, m_QuestIdList ); return m_QuestIdList; } -const std::set< uint32_t >& ExdDataGenerated::getQuestRewardOtherIdList() +const std::set< uint32_t >& getQuestRewardOtherIdList() { if( m_QuestRewardOtherIdList.size() == 0 ) loadIdList( m_QuestRewardOtherDat, m_QuestRewardOtherIdList ); return m_QuestRewardOtherIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRaceIdList() +const std::set< uint32_t >& getRaceIdList() { if( m_RaceIdList.size() == 0 ) loadIdList( m_RaceDat, m_RaceIdList ); return m_RaceIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRacingChocoboItemIdList() +const std::set< uint32_t >& getRacingChocoboItemIdList() { if( m_RacingChocoboItemIdList.size() == 0 ) loadIdList( m_RacingChocoboItemDat, m_RacingChocoboItemIdList ); return m_RacingChocoboItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRacingChocoboNameIdList() +const std::set< uint32_t >& getRacingChocoboNameIdList() { if( m_RacingChocoboNameIdList.size() == 0 ) loadIdList( m_RacingChocoboNameDat, m_RacingChocoboNameIdList ); return m_RacingChocoboNameIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRacingChocoboNameCategoryIdList() +const std::set< uint32_t >& getRacingChocoboNameCategoryIdList() { if( m_RacingChocoboNameCategoryIdList.size() == 0 ) loadIdList( m_RacingChocoboNameCategoryDat, m_RacingChocoboNameCategoryIdList ); return m_RacingChocoboNameCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRacingChocoboNameInfoIdList() +const std::set< uint32_t >& getRacingChocoboNameInfoIdList() { if( m_RacingChocoboNameInfoIdList.size() == 0 ) loadIdList( m_RacingChocoboNameInfoDat, m_RacingChocoboNameInfoIdList ); return m_RacingChocoboNameInfoIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRacingChocoboParamIdList() +const std::set< uint32_t >& getRacingChocoboParamIdList() { if( m_RacingChocoboParamIdList.size() == 0 ) loadIdList( m_RacingChocoboParamDat, m_RacingChocoboParamIdList ); return m_RacingChocoboParamIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRecipeIdList() +const std::set< uint32_t >& getRecipeIdList() { if( m_RecipeIdList.size() == 0 ) loadIdList( m_RecipeDat, m_RecipeIdList ); return m_RecipeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRecipeElementIdList() +const std::set< uint32_t >& getRecipeElementIdList() { if( m_RecipeElementIdList.size() == 0 ) loadIdList( m_RecipeElementDat, m_RecipeElementIdList ); return m_RecipeElementIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRecipeLevelTableIdList() +const std::set< uint32_t >& getRecipeLevelTableIdList() { if( m_RecipeLevelTableIdList.size() == 0 ) loadIdList( m_RecipeLevelTableDat, m_RecipeLevelTableIdList ); return m_RecipeLevelTableIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRecipeNotebookListIdList() +const std::set< uint32_t >& getRecipeNotebookListIdList() { if( m_RecipeNotebookListIdList.size() == 0 ) loadIdList( m_RecipeNotebookListDat, m_RecipeNotebookListIdList ); return m_RecipeNotebookListIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRelicIdList() +const std::set< uint32_t >& getRelicIdList() { if( m_RelicIdList.size() == 0 ) loadIdList( m_RelicDat, m_RelicIdList ); return m_RelicIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRelic3IdList() +const std::set< uint32_t >& getRelic3IdList() { if( m_Relic3IdList.size() == 0 ) loadIdList( m_Relic3Dat, m_Relic3IdList ); return m_Relic3IdList; } -const std::set< uint32_t >& ExdDataGenerated::getRelicItemIdList() +const std::set< uint32_t >& getRelicItemIdList() { if( m_RelicItemIdList.size() == 0 ) loadIdList( m_RelicItemDat, m_RelicItemIdList ); return m_RelicItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRelicNoteIdList() +const std::set< uint32_t >& getRelicNoteIdList() { if( m_RelicNoteIdList.size() == 0 ) loadIdList( m_RelicNoteDat, m_RelicNoteIdList ); return m_RelicNoteIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRelicNoteCategoryIdList() +const std::set< uint32_t >& getRelicNoteCategoryIdList() { if( m_RelicNoteCategoryIdList.size() == 0 ) loadIdList( m_RelicNoteCategoryDat, m_RelicNoteCategoryIdList ); return m_RelicNoteCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRetainerTaskIdList() +const std::set< uint32_t >& getRetainerTaskIdList() { if( m_RetainerTaskIdList.size() == 0 ) loadIdList( m_RetainerTaskDat, m_RetainerTaskIdList ); return m_RetainerTaskIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRetainerTaskNormalIdList() +const std::set< uint32_t >& getRetainerTaskNormalIdList() { if( m_RetainerTaskNormalIdList.size() == 0 ) loadIdList( m_RetainerTaskNormalDat, m_RetainerTaskNormalIdList ); return m_RetainerTaskNormalIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRetainerTaskParameterIdList() +const std::set< uint32_t >& getRetainerTaskParameterIdList() { if( m_RetainerTaskParameterIdList.size() == 0 ) loadIdList( m_RetainerTaskParameterDat, m_RetainerTaskParameterIdList ); return m_RetainerTaskParameterIdList; } -const std::set< uint32_t >& ExdDataGenerated::getRetainerTaskRandomIdList() +const std::set< uint32_t >& getRetainerTaskRandomIdList() { if( m_RetainerTaskRandomIdList.size() == 0 ) loadIdList( m_RetainerTaskRandomDat, m_RetainerTaskRandomIdList ); return m_RetainerTaskRandomIdList; } -const std::set< uint32_t >& ExdDataGenerated::getSalvageIdList() +const std::set< uint32_t >& getSalvageIdList() { if( m_SalvageIdList.size() == 0 ) loadIdList( m_SalvageDat, m_SalvageIdList ); return m_SalvageIdList; } -const std::set< uint32_t >& ExdDataGenerated::getSatisfactionNpcIdList() +const std::set< uint32_t >& getSatisfactionNpcIdList() { if( m_SatisfactionNpcIdList.size() == 0 ) loadIdList( m_SatisfactionNpcDat, m_SatisfactionNpcIdList ); return m_SatisfactionNpcIdList; } -const std::set< uint32_t >& ExdDataGenerated::getSatisfactionSupplyIdList() +const std::set< uint32_t >& getSatisfactionSupplyIdList() { if( m_SatisfactionSupplyIdList.size() == 0 ) loadIdList( m_SatisfactionSupplyDat, m_SatisfactionSupplyIdList ); return m_SatisfactionSupplyIdList; } -const std::set< uint32_t >& ExdDataGenerated::getSatisfactionSupplyRewardIdList() +const std::set< uint32_t >& getSatisfactionSupplyRewardIdList() { if( m_SatisfactionSupplyRewardIdList.size() == 0 ) loadIdList( m_SatisfactionSupplyRewardDat, m_SatisfactionSupplyRewardIdList ); return m_SatisfactionSupplyRewardIdList; } -const std::set< uint32_t >& ExdDataGenerated::getScreenImageIdList() +const std::set< uint32_t >& getScreenImageIdList() { if( m_ScreenImageIdList.size() == 0 ) loadIdList( m_ScreenImageDat, m_ScreenImageIdList ); return m_ScreenImageIdList; } -const std::set< uint32_t >& ExdDataGenerated::getSecretRecipeBookIdList() +const std::set< uint32_t >& getSecretRecipeBookIdList() { if( m_SecretRecipeBookIdList.size() == 0 ) loadIdList( m_SecretRecipeBookDat, m_SecretRecipeBookIdList ); return m_SecretRecipeBookIdList; } -const std::set< uint32_t >& ExdDataGenerated::getSpearfishingItemIdList() +const std::set< uint32_t >& getSpearfishingItemIdList() { if( m_SpearfishingItemIdList.size() == 0 ) loadIdList( m_SpearfishingItemDat, m_SpearfishingItemIdList ); return m_SpearfishingItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getSpearfishingNotebookIdList() +const std::set< uint32_t >& getSpearfishingNotebookIdList() { if( m_SpearfishingNotebookIdList.size() == 0 ) loadIdList( m_SpearfishingNotebookDat, m_SpearfishingNotebookIdList ); return m_SpearfishingNotebookIdList; } -const std::set< uint32_t >& ExdDataGenerated::getSpecialShopIdList() +const std::set< uint32_t >& getSpecialShopIdList() { if( m_SpecialShopIdList.size() == 0 ) loadIdList( m_SpecialShopDat, m_SpecialShopIdList ); return m_SpecialShopIdList; } -const std::set< uint32_t >& ExdDataGenerated::getSpecialShopItemCategoryIdList() +const std::set< uint32_t >& getSpecialShopItemCategoryIdList() { if( m_SpecialShopItemCategoryIdList.size() == 0 ) loadIdList( m_SpecialShopItemCategoryDat, m_SpecialShopItemCategoryIdList ); return m_SpecialShopItemCategoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getStainIdList() +const std::set< uint32_t >& getStainIdList() { if( m_StainIdList.size() == 0 ) loadIdList( m_StainDat, m_StainIdList ); return m_StainIdList; } -const std::set< uint32_t >& ExdDataGenerated::getStatusIdList() +const std::set< uint32_t >& getStatusIdList() { if( m_StatusIdList.size() == 0 ) loadIdList( m_StatusDat, m_StatusIdList ); return m_StatusIdList; } -const std::set< uint32_t >& ExdDataGenerated::getStoryIdList() +const std::set< uint32_t >& getStoryIdList() { if( m_StoryIdList.size() == 0 ) loadIdList( m_StoryDat, m_StoryIdList ); return m_StoryIdList; } -const std::set< uint32_t >& ExdDataGenerated::getSwitchTalkIdList() +const std::set< uint32_t >& getSwitchTalkIdList() { if( m_SwitchTalkIdList.size() == 0 ) loadIdList( m_SwitchTalkDat, m_SwitchTalkIdList ); return m_SwitchTalkIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTerritoryTypeIdList() +const std::set< uint32_t >& getTerritoryTypeIdList() { if( m_TerritoryTypeIdList.size() == 0 ) loadIdList( m_TerritoryTypeDat, m_TerritoryTypeIdList ); return m_TerritoryTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTextCommandIdList() +const std::set< uint32_t >& getTextCommandIdList() { if( m_TextCommandIdList.size() == 0 ) loadIdList( m_TextCommandDat, m_TextCommandIdList ); return m_TextCommandIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTitleIdList() +const std::set< uint32_t >& getTitleIdList() { if( m_TitleIdList.size() == 0 ) loadIdList( m_TitleDat, m_TitleIdList ); return m_TitleIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTomestonesIdList() +const std::set< uint32_t >& getTomestonesIdList() { if( m_TomestonesIdList.size() == 0 ) loadIdList( m_TomestonesDat, m_TomestonesIdList ); return m_TomestonesIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTomestonesItemIdList() +const std::set< uint32_t >& getTomestonesItemIdList() { if( m_TomestonesItemIdList.size() == 0 ) loadIdList( m_TomestonesItemDat, m_TomestonesItemIdList ); return m_TomestonesItemIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTopicSelectIdList() +const std::set< uint32_t >& getTopicSelectIdList() { if( m_TopicSelectIdList.size() == 0 ) loadIdList( m_TopicSelectDat, m_TopicSelectIdList ); return m_TopicSelectIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTownIdList() +const std::set< uint32_t >& getTownIdList() { if( m_TownIdList.size() == 0 ) loadIdList( m_TownDat, m_TownIdList ); return m_TownIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTraitIdList() +const std::set< uint32_t >& getTraitIdList() { if( m_TraitIdList.size() == 0 ) loadIdList( m_TraitDat, m_TraitIdList ); return m_TraitIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTraitRecastIdList() +const std::set< uint32_t >& getTraitRecastIdList() { if( m_TraitRecastIdList.size() == 0 ) loadIdList( m_TraitRecastDat, m_TraitRecastIdList ); return m_TraitRecastIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTraitTransientIdList() +const std::set< uint32_t >& getTraitTransientIdList() { if( m_TraitTransientIdList.size() == 0 ) loadIdList( m_TraitTransientDat, m_TraitTransientIdList ); return m_TraitTransientIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTribeIdList() +const std::set< uint32_t >& getTribeIdList() { if( m_TribeIdList.size() == 0 ) loadIdList( m_TribeDat, m_TribeIdList ); return m_TribeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTripleTriadIdList() +const std::set< uint32_t >& getTripleTriadIdList() { if( m_TripleTriadIdList.size() == 0 ) loadIdList( m_TripleTriadDat, m_TripleTriadIdList ); return m_TripleTriadIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTripleTriadCardIdList() +const std::set< uint32_t >& getTripleTriadCardIdList() { if( m_TripleTriadCardIdList.size() == 0 ) loadIdList( m_TripleTriadCardDat, m_TripleTriadCardIdList ); return m_TripleTriadCardIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTripleTriadCardRarityIdList() +const std::set< uint32_t >& getTripleTriadCardRarityIdList() { if( m_TripleTriadCardRarityIdList.size() == 0 ) loadIdList( m_TripleTriadCardRarityDat, m_TripleTriadCardRarityIdList ); return m_TripleTriadCardRarityIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTripleTriadCardResidentIdList() +const std::set< uint32_t >& getTripleTriadCardResidentIdList() { if( m_TripleTriadCardResidentIdList.size() == 0 ) loadIdList( m_TripleTriadCardResidentDat, m_TripleTriadCardResidentIdList ); return m_TripleTriadCardResidentIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTripleTriadCardTypeIdList() +const std::set< uint32_t >& getTripleTriadCardTypeIdList() { if( m_TripleTriadCardTypeIdList.size() == 0 ) loadIdList( m_TripleTriadCardTypeDat, m_TripleTriadCardTypeIdList ); return m_TripleTriadCardTypeIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTripleTriadCompetitionIdList() +const std::set< uint32_t >& getTripleTriadCompetitionIdList() { if( m_TripleTriadCompetitionIdList.size() == 0 ) loadIdList( m_TripleTriadCompetitionDat, m_TripleTriadCompetitionIdList ); return m_TripleTriadCompetitionIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTripleTriadRuleIdList() +const std::set< uint32_t >& getTripleTriadRuleIdList() { if( m_TripleTriadRuleIdList.size() == 0 ) loadIdList( m_TripleTriadRuleDat, m_TripleTriadRuleIdList ); return m_TripleTriadRuleIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTutorialIdList() +const std::set< uint32_t >& getTutorialIdList() { if( m_TutorialIdList.size() == 0 ) loadIdList( m_TutorialDat, m_TutorialIdList ); return m_TutorialIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTutorialDPSIdList() +const std::set< uint32_t >& getTutorialDPSIdList() { if( m_TutorialDPSIdList.size() == 0 ) loadIdList( m_TutorialDPSDat, m_TutorialDPSIdList ); return m_TutorialDPSIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTutorialHealerIdList() +const std::set< uint32_t >& getTutorialHealerIdList() { if( m_TutorialHealerIdList.size() == 0 ) loadIdList( m_TutorialHealerDat, m_TutorialHealerIdList ); return m_TutorialHealerIdList; } -const std::set< uint32_t >& ExdDataGenerated::getTutorialTankIdList() +const std::set< uint32_t >& getTutorialTankIdList() { if( m_TutorialTankIdList.size() == 0 ) loadIdList( m_TutorialTankDat, m_TutorialTankIdList ); return m_TutorialTankIdList; } -const std::set< uint32_t >& ExdDataGenerated::getWarpIdList() +const std::set< uint32_t >& getWarpIdList() { if( m_WarpIdList.size() == 0 ) loadIdList( m_WarpDat, m_WarpIdList ); return m_WarpIdList; } -const std::set< uint32_t >& ExdDataGenerated::getWeatherIdList() +const std::set< uint32_t >& getWeatherIdList() { if( m_WeatherIdList.size() == 0 ) loadIdList( m_WeatherDat, m_WeatherIdList ); return m_WeatherIdList; } -const std::set< uint32_t >& ExdDataGenerated::getWeatherGroupIdList() +const std::set< uint32_t >& getWeatherGroupIdList() { if( m_WeatherGroupIdList.size() == 0 ) loadIdList( m_WeatherGroupDat, m_WeatherGroupIdList ); return m_WeatherGroupIdList; } -const std::set< uint32_t >& ExdDataGenerated::getWeatherRateIdList() +const std::set< uint32_t >& getWeatherRateIdList() { if( m_WeatherRateIdList.size() == 0 ) loadIdList( m_WeatherRateDat, m_WeatherRateIdList ); return m_WeatherRateIdList; } -const std::set< uint32_t >& ExdDataGenerated::getWeeklyBingoOrderDataIdList() +const std::set< uint32_t >& getWeeklyBingoOrderDataIdList() { if( m_WeeklyBingoOrderDataIdList.size() == 0 ) loadIdList( m_WeeklyBingoOrderDataDat, m_WeeklyBingoOrderDataIdList ); return m_WeeklyBingoOrderDataIdList; } -const std::set< uint32_t >& ExdDataGenerated::getWeeklyBingoRewardDataIdList() +const std::set< uint32_t >& getWeeklyBingoRewardDataIdList() { if( m_WeeklyBingoRewardDataIdList.size() == 0 ) loadIdList( m_WeeklyBingoRewardDataDat, m_WeeklyBingoRewardDataIdList ); return m_WeeklyBingoRewardDataIdList; } -const std::set< uint32_t >& ExdDataGenerated::getWeeklyBingoTextIdList() +const std::set< uint32_t >& getWeeklyBingoTextIdList() { if( m_WeeklyBingoTextIdList.size() == 0 ) loadIdList( m_WeeklyBingoTextDat, m_WeeklyBingoTextIdList ); return m_WeeklyBingoTextIdList; } -const std::set< uint32_t >& ExdDataGenerated::getWorldDCGroupTypeIdList() +const std::set< uint32_t >& getWorldDCGroupTypeIdList() { if( m_WorldDCGroupTypeIdList.size() == 0 ) loadIdList( m_WorldDCGroupTypeDat, m_WorldDCGroupTypeIdList ); From dbe289385a22e1c5472c840512cbe69df051643b Mon Sep 17 00:00:00 2001 From: goaaats Date: Sat, 2 Dec 2017 17:49:38 +0100 Subject: [PATCH 23/29] * Add def for legacy mark equip flag --- src/servers/Server_Common/Common.h | 1 + src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp | 1 + 2 files changed, 2 insertions(+) diff --git a/src/servers/Server_Common/Common.h b/src/servers/Server_Common/Common.h index 9b1c1126..e16f5035 100644 --- a/src/servers/Server_Common/Common.h +++ b/src/servers/Server_Common/Common.h @@ -792,6 +792,7 @@ namespace Common { HideNothing = 0x0, HideHead = 0x1, HideWeapon = 0x2, + LegacyMark = 0x4, Visor = 0x40, }; diff --git a/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp b/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp index d4fa75b7..047f58f1 100644 --- a/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp +++ b/src/servers/Server_Zone/Network/Handlers/PacketHandlers.cpp @@ -286,6 +286,7 @@ void Core::Network::GameConnection::updatePositionHandler( const Packets::GamePa void Core::Network::GameConnection::reqEquipDisplayFlagsHandler( const Packets::GamePacket& inPacket, Entity::PlayerPtr pPlayer ) { + g_log.info( "[" + std::to_string( pPlayer->getId() ) + "] Setting EquipDisplayFlags to " + std::to_string( inPacket.getValAt< uint8_t >( 0x20 ) ) ); pPlayer->setEquipDisplayFlags( inPacket.getValAt< uint8_t >( 0x20 ) ); } From 497f555eb425d1a375f3cf2172956ce09e8fc287 Mon Sep 17 00:00:00 2001 From: goaaats Date: Sat, 2 Dec 2017 17:50:08 +0100 Subject: [PATCH 24/29] * Fix logout dc --- src/servers/Server_Zone/ServerZone.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/servers/Server_Zone/ServerZone.cpp b/src/servers/Server_Zone/ServerZone.cpp index 64d53132..d9b4f2f2 100644 --- a/src/servers/Server_Zone/ServerZone.cpp +++ b/src/servers/Server_Zone/ServerZone.cpp @@ -294,7 +294,6 @@ void Core::ServerZone::mainLoop() // remove session of players marked for removel ( logoff / kick ) if( pPlayer->isMarkedForRemoval() && diff > 1 ) { - it->second->close(); // if( it->second.unique() ) { g_log.info("[" + std::to_string(it->second->getId() ) + "] Session removal" ); From 91b8aec97d744a47fc784455de0bc5b8fc9668eb Mon Sep 17 00:00:00 2001 From: goaaats Date: Sat, 2 Dec 2017 20:45:31 +0100 Subject: [PATCH 25/29] * Better fix for logout issue --- src/servers/Server_Zone/ServerZone.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/servers/Server_Zone/ServerZone.cpp b/src/servers/Server_Zone/ServerZone.cpp index d9b4f2f2..67a47dd9 100644 --- a/src/servers/Server_Zone/ServerZone.cpp +++ b/src/servers/Server_Zone/ServerZone.cpp @@ -292,8 +292,9 @@ void Core::ServerZone::mainLoop() auto pPlayer = it->second->getPlayer(); // remove session of players marked for removel ( logoff / kick ) - if( pPlayer->isMarkedForRemoval() && diff > 1 ) + if( pPlayer->isMarkedForRemoval() && diff > 5 ) { + it->second->close(); // if( it->second.unique() ) { g_log.info("[" + std::to_string(it->second->getId() ) + "] Session removal" ); From 7a0d932f82a69d2fd7c3cb39cd22a497c787bab0 Mon Sep 17 00:00:00 2001 From: goaaats Date: Sun, 3 Dec 2017 17:24:11 +0100 Subject: [PATCH 26/29] * Orchestrion + Mount SQL loading/saving --- .../Database/CharaDbConnection.cpp | 8 ++-- src/servers/Server_REST/PlayerMinimal.cpp | 4 ++ src/servers/Server_Zone/Actor/Player.cpp | 5 ++ src/servers/Server_Zone/Actor/Player.h | 4 +- src/servers/Server_Zone/Actor/PlayerSql.cpp | 48 +++++++++++-------- .../Network/PacketWrappers/InitUIPacket.h | 3 +- 6 files changed, 45 insertions(+), 27 deletions(-) diff --git a/src/servers/Server_Common/Database/CharaDbConnection.cpp b/src/servers/Server_Common/Database/CharaDbConnection.cpp index 7ed7aada..ce5a1a7e 100644 --- a/src/servers/Server_Common/Database/CharaDbConnection.cpp +++ b/src/servers/Server_Common/Database/CharaDbConnection.cpp @@ -27,7 +27,7 @@ void Core::Db::CharaDbConnection::doPrepareStatements() "OTerritoryType, OTerritoryId, OPosX, OPosY, OPosZ, OPosR, GuardianDeity, " "BirthDay, BirthMonth, Class, Status, TotalPlayTime, FirstClass, HomePoint, " "FavoritePoint, RestPoint, StartTown, ActiveTitle, TitleList, Achievement, " - "Aetheryte, HowTo, Minions, Mounts, EquippedMannequin, ConfigFlags, " + "Aetheryte, HowTo, Minions, Mounts, Orchestrion, EquippedMannequin, ConfigFlags, " "QuestCompleteFlags, OpeningSequence, QuestTracking, GrandCompany, " "GrandCompanyRank, Discovery, GMRank, Unlocks, CFPenaltyUntil " "FROM charainfo WHERE CharacterId = ?;", CONNECTION_SYNC ); @@ -41,7 +41,7 @@ void Core::Db::CharaDbConnection::doPrepareStatements() "TerritoryType = ?, TerritoryId = ?, PosX = ?, PosY = ?, PosZ = ?, PosR = ?, " "OTerritoryType = ?, OTerritoryId = ?, OPosX = ?, OPosY = ?, OPosZ = ?, OPosR = ?, " "Class = ?, Status = ?, TotalPlayTime = ?, HomePoint = ?, FavoritePoint = ?, RestPoint = ?, " - "ActiveTitle = ?, TitleList = ?, Achievement = ?, Aetheryte = ?, HowTo = ?, Minions = ?, Mounts = ?, " + "ActiveTitle = ?, TitleList = ?, Achievement = ?, Aetheryte = ?, HowTo = ?, Minions = ?, Mounts = ?, Orchestrion = ?, " "EquippedMannequin = ?, ConfigFlags = ?, QuestCompleteFlags = ?, OpeningSequence = ?, " "QuestTracking = ?, GrandCompany = ?, GrandCompanyRank = ?, Discovery = ?, GMRank = ?, Unlocks = ?, " "CFPenaltyUntil = ? WHERE CharacterId = ?;", CONNECTION_ASYNC ); @@ -55,8 +55,8 @@ void Core::Db::CharaDbConnection::doPrepareStatements() "Customize, Voice, IsNewGame, TerritoryId, PosX, PosY, PosZ, PosR, ModelEquip, " "IsNewAdventurer, GuardianDeity, Birthday, BirthMonth, Class, Status, FirstClass, " "HomePoint, StartTown, Discovery, HowTo, QuestCompleteFlags, Unlocks, QuestTracking, " - "Aetheryte, GMRank, UPDATE_DATE ) " - "VALUES ( ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,NOW() );", + "Aetheryte, GMRank, Mounts, Orchestrion, UPDATE_DATE ) " + "VALUES ( ?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,NOW() );", CONNECTION_SYNC ); prepareStatement( CHARA_UP_NAME, "UPDATE charainfo SET Name = ? WHERE CharacterId = ?;", CONNECTION_ASYNC ); diff --git a/src/servers/Server_REST/PlayerMinimal.cpp b/src/servers/Server_REST/PlayerMinimal.cpp index 5ca8410a..724475b8 100644 --- a/src/servers/Server_REST/PlayerMinimal.cpp +++ b/src/servers/Server_REST/PlayerMinimal.cpp @@ -153,6 +153,8 @@ namespace Core { std::vector< uint8_t > discovery( 411 ); std::vector< uint8_t > questComplete( 200 ); std::vector< uint8_t > unlocks( 64 ); + std::vector< uint8_t > mountGuide( 13 ); + std::vector< uint8_t > orchestrion( 38 ); std::vector< uint8_t > modelEquip( 40 ); std::vector< uint8_t > questTracking8( 10 ); std::vector< int16_t > questTracking = { -1, -1, -1, -1, -1 }; @@ -255,6 +257,8 @@ namespace Core { stmt->setBinary( 29, questTracking8 ); stmt->setBinary( 30, aetherytes ); stmt->setInt( 31, m_gmRank ); + stmt->setBinary( 32, mountGuide ); + stmt->setBinary( 33, orchestrion ); g_charaDb.directExecute( stmt ); auto stmtSearchInfo = g_charaDb.getPreparedStatement( Db::CharaDbStatements::CHARA_SEARCHINFO_INS ); diff --git a/src/servers/Server_Zone/Actor/Player.cpp b/src/servers/Server_Zone/Actor/Player.cpp index b2d5ce20..2caab4b3 100644 --- a/src/servers/Server_Zone/Actor/Player.cpp +++ b/src/servers/Server_Zone/Actor/Player.cpp @@ -1183,6 +1183,11 @@ const uint8_t * Core::Entity::Player::getOrchestrionBitmask() const return m_orchestrion; } +const uint8_t * Core::Entity::Player::getMountGuideBitmask() const +{ + return m_mountGuide; +} + uint64_t Core::Entity::Player::getContentId() const { return m_contentId; diff --git a/src/servers/Server_Zone/Actor/Player.h b/src/servers/Server_Zone/Actor/Player.h index a705e8b7..4688e5a5 100644 --- a/src/servers/Server_Zone/Actor/Player.h +++ b/src/servers/Server_Zone/Actor/Player.h @@ -387,6 +387,8 @@ public: const uint8_t* getUnlockBitmask() const; /*! return a const pointer to the orchestrion bitmask array */ const uint8_t* getOrchestrionBitmask() const; + /*! return a const pointer to the mount guide bitmask array */ + const uint8_t* getMountGuideBitmask() const; // Spawn handling @@ -574,7 +576,7 @@ private: uint8_t m_titleList[48]; uint8_t m_howTo[33]; uint8_t m_minions[33]; - uint8_t m_mounts[13]; + uint8_t m_mountGuide[13]; uint8_t m_homePoint; uint8_t m_startTown; uint16_t m_townWarpFstFlags; diff --git a/src/servers/Server_Zone/Actor/PlayerSql.cpp b/src/servers/Server_Zone/Actor/PlayerSql.cpp index 737c9754..46fdd8d8 100644 --- a/src/servers/Server_Zone/Actor/PlayerSql.cpp +++ b/src/servers/Server_Zone/Actor/PlayerSql.cpp @@ -152,6 +152,12 @@ bool Core::Entity::Player::load( uint32_t charId, Core::SessionPtr pSession ) auto titleList = res->getBlobVector( "TitleList" ); memcpy( reinterpret_cast< char* >( m_titleList ), titleList.data(), titleList.size() ); + + auto mountGuide = res->getBlobVector( "Mounts" ); + memcpy( reinterpret_cast< char* >( m_mountGuide ), mountGuide.data(), mountGuide.size() ); + + auto orchestrion = res->getBlobVector( "Orchestrion" ); + memcpy( reinterpret_cast< char* >( m_orchestrion ), orchestrion.data(), orchestrion.size() ); auto gcRank = res->getBlobVector( "GrandCompanyRank" ); memcpy( reinterpret_cast< char* >( m_gcRank ), gcRank.data(), gcRank.size() ); @@ -296,10 +302,10 @@ void Core::Entity::Player::updateSql() "TerritoryType 18, TerritoryId 19, PosX 20, PosY 21, PosZ 22, PosR 23, " "OTerritoryType 24, OTerritoryId 25, OPosX 26, OPosY 27, OPosZ 28, OPosR 29, " "Class 30, Status 31, TotalPlayTime 32, HomePoint 33, FavoritePoint 34, RestPoint 35, " - "ActiveTitle 36, TitleList 37, Achievement 38, Aetheryte 39, HowTo 40, Minions 41, Mounts 42, " - "EquippedMannequin 43, ConfigFlags 44, QuestCompleteFlags 45, OpeningSequence 46, " - "QuestTracking 47, GrandCompany 48, GrandCompanyRank 49, Discovery 50, GMRank 51, Unlocks 52, " - "CFPenaltyUntil 53"*/ + "ActiveTitle 36, TitleList 37, Achievement 38, Aetheryte 39, HowTo 40, Minions 41, Mounts 42, Orchestrion 43, " + "EquippedMannequin 44, ConfigFlags 45, QuestCompleteFlags 46, OpeningSequence 47, " + "QuestTracking 48, GrandCompany 49, GrandCompanyRank 50, Discovery 51, GMRank 52, Unlocks 53, " + "CFPenaltyUntil 54"*/ auto stmt = g_charaDb.getPreparedStatement( Core::Db::CharaDbStatements::CHARA_UP ); stmt->setInt( 1, getHp() ); @@ -370,40 +376,44 @@ void Core::Entity::Player::updateSql() memcpy( minionsVec.data(), m_minions, sizeof( m_minions ) ); stmt->setBinary( 41, minionsVec ); - std::vector< uint8_t > mountsVec( sizeof( m_mounts ) ); - memcpy( mountsVec.data(), m_mounts, sizeof( m_mounts ) ); + std::vector< uint8_t > mountsVec( sizeof( m_mountGuide ) ); + memcpy( mountsVec.data(), m_mountGuide, sizeof( m_mountGuide ) ); stmt->setBinary( 42, mountsVec ); - stmt->setInt( 43, 0 ); // EquippedMannequin + std::vector< uint8_t > orchestrionVec( sizeof( m_orchestrion ) ); + memcpy( orchestrionVec.data(), m_orchestrion, sizeof( m_orchestrion ) ); + stmt->setBinary( 42, mountsVec ); - stmt->setInt( 44, 0 ); // DisplayFlags + stmt->setInt( 44, 0 ); // EquippedMannequin + + stmt->setInt( 45, 0 ); // DisplayFlags std::vector< uint8_t > questCompleteVec( sizeof( m_questCompleteFlags ) ); memcpy( questCompleteVec.data(), m_questCompleteFlags, sizeof( m_questCompleteFlags ) ); - stmt->setBinary( 45, questCompleteVec ); + stmt->setBinary( 46, questCompleteVec ); - stmt->setInt( 46, m_openingSequence ); + stmt->setInt( 47, m_openingSequence ); std::vector< uint8_t > questTrackerVec( sizeof( m_questTracking ) ); memcpy( questTrackerVec.data(), m_questTracking, sizeof( m_questTracking ) ); - stmt->setBinary( 47, questTrackerVec ); + stmt->setBinary( 48, questTrackerVec ); - stmt->setInt( 48, m_gc ); // DisplayFlags + stmt->setInt( 49, m_gc ); // DisplayFlags - stmt->setBinary( 49, { m_gcRank[0], m_gcRank[1], m_gcRank[2] } ); + stmt->setBinary( 50, { m_gcRank[0], m_gcRank[1], m_gcRank[2] } ); std::vector< uint8_t > discoveryVec( sizeof( m_discovery ) ); memcpy( discoveryVec.data(), m_discovery, sizeof( m_discovery ) ); - stmt->setBinary( 50, discoveryVec ); + stmt->setBinary( 51, discoveryVec ); - stmt->setInt( 51, m_gmRank ); + stmt->setInt( 52, m_gmRank ); std::vector< uint8_t > unlockVec( sizeof( m_unlocks ) ); memcpy( unlockVec.data(), m_unlocks, sizeof( m_unlocks ) ); - stmt->setBinary( 52, unlockVec ); + stmt->setBinary( 53, unlockVec ); - stmt->setInt( 53, m_cfPenaltyUntil ); + stmt->setInt( 54, m_cfPenaltyUntil ); - stmt->setInt( 54, m_id ); + stmt->setInt( 55, m_id ); g_charaDb.execute( stmt ); @@ -416,8 +426,6 @@ void Core::Entity::Player::updateSql() ////// Class updateDbClass(); - memset( m_orchestrion, 0, sizeof( m_orchestrion ) ); - } void Core::Entity::Player::updateDbClass() const diff --git a/src/servers/Server_Zone/Network/PacketWrappers/InitUIPacket.h b/src/servers/Server_Zone/Network/PacketWrappers/InitUIPacket.h index aa3ad80b..13d48cc7 100644 --- a/src/servers/Server_Zone/Network/PacketWrappers/InitUIPacket.h +++ b/src/servers/Server_Zone/Network/PacketWrappers/InitUIPacket.h @@ -64,8 +64,7 @@ private: memcpy( m_data.orchestrionMask, player->getOrchestrionBitmask(), sizeof( m_data.orchestrionMask ) ); - memset( m_data.mountGuideMask, 0xFF, sizeof( m_data.mountGuideMask) ); - memset( m_data.fishingGuideMask, 0xFF, sizeof( m_data.fishingGuideMask ) ); + memcpy( m_data.mountGuideMask, player->getMountGuideBitmask(), sizeof( m_data.mountGuideMask) ); memcpy( m_data.unlockBitmask, player->getUnlockBitmask(), sizeof( m_data.unlockBitmask ) ); From aa2cfb568517e2040eea5a5bea28b2425a65645d Mon Sep 17 00:00:00 2001 From: Mordred Date: Sun, 3 Dec 2017 18:11:56 +0100 Subject: [PATCH 27/29] Moved rotation funciton, not inlined anymore --- src/servers/Server_Zone/Actor/Actor.cpp | 12 +++++++++++- src/servers/Server_Zone/Actor/Actor.h | 10 ++-------- 2 files changed, 13 insertions(+), 9 deletions(-) diff --git a/src/servers/Server_Zone/Actor/Actor.cpp b/src/servers/Server_Zone/Actor/Actor.cpp index a137618c..02d9543d 100644 --- a/src/servers/Server_Zone/Actor/Actor.cpp +++ b/src/servers/Server_Zone/Actor/Actor.cpp @@ -827,4 +827,14 @@ void Core::Entity::Actor::removeSingleStatusEffectFromId( uint32_t id ) Core::StatusEffect::StatusEffectContainerPtr Core::Entity::Actor::getStatusEffectContainer() const { return m_pStatusEffectContainer; -} \ No newline at end of file +} + +float Core::Entity::Actor::getRotation() const +{ + return m_rot; +} + +void Core::Entity::Actor::setRotation( float rot ) +{ + m_rot = rot; +} diff --git a/src/servers/Server_Zone/Actor/Actor.h b/src/servers/Server_Zone/Actor/Actor.h index 83baaf39..6e14f8c0 100644 --- a/src/servers/Server_Zone/Actor/Actor.h +++ b/src/servers/Server_Zone/Actor/Actor.h @@ -177,15 +177,9 @@ public: void setPosition( const Common::FFXIVARR_POSITION3& pos ); void setPosition( float x, float y, float z ); - void setRotation( float rot ) - { - m_rot = rot; - } + void setRotation( float rot ); - float getRotation() const - { - return m_rot; - } + float getRotation() const; Common::FFXIVARR_POSITION3& getPos(); From 8152f679595764e99a58ae1150eb98fe242bf776 Mon Sep 17 00:00:00 2001 From: goaaats Date: Sun, 3 Dec 2017 19:24:54 +0100 Subject: [PATCH 28/29] * Forgot SQL file --- sql/charainfo.sql | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sql/charainfo.sql b/sql/charainfo.sql index 0997bb57..d6570722 100644 --- a/sql/charainfo.sql +++ b/sql/charainfo.sql @@ -15,7 +15,7 @@ CREATE TABLE `charainfo` ( `AccountId` int(11) NOT NULL, `CharacterId` decimal(20,0) NOT NULL, `ContentId` bigint(20) DEFAULT NULL, - `Name` varchar(32) COLLATE latin1_general_ci DEFAULT NULL, + `Name` varchar(32) CHARACTER SET latin1 COLLATE latin1_general_ci DEFAULT NULL, `Hp` bigint(20) DEFAULT '200', `Mp` bigint(20) DEFAULT '200', `Tp` bigint(20) DEFAULT '0', @@ -64,6 +64,7 @@ CREATE TABLE `charainfo` ( `HowTo` binary(33) DEFAULT NULL, `Minions` binary(33) DEFAULT NULL, `Mounts` binary(13) DEFAULT NULL, + `Orchestrion` binary(38) DEFAULT NULL, `EquippedMannequin` int(5) DEFAULT '0', `ConfigFlags` smallint(5) NOT NULL DEFAULT '0', `QuestCompleteFlags` binary(200) DEFAULT NULL, @@ -75,7 +76,8 @@ CREATE TABLE `charainfo` ( `GMRank` int(3) DEFAULT '0', `Unlocks` binary(64) DEFAULT NULL, `CFPenaltyUntil` int(11) DEFAULT NULL, - `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP + `UPDATE_DATE` datetime DEFAULT NULL, + PRIMARY KEY (`CharacterId`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; -- Dumping data for table sapphire.charainfo: 0 rows From d7971237427305ed1b652ae20a180ac1f78cc703 Mon Sep 17 00:00:00 2001 From: Mordred Date: Sun, 3 Dec 2017 23:43:45 +0100 Subject: [PATCH 29/29] Moved new orchestrion field to update.sql --- sql/charainfo.sql | 3 +-- sql/update.sql | 5 ++++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/sql/charainfo.sql b/sql/charainfo.sql index d6570722..4a03dd4a 100644 --- a/sql/charainfo.sql +++ b/sql/charainfo.sql @@ -64,7 +64,6 @@ CREATE TABLE `charainfo` ( `HowTo` binary(33) DEFAULT NULL, `Minions` binary(33) DEFAULT NULL, `Mounts` binary(13) DEFAULT NULL, - `Orchestrion` binary(38) DEFAULT NULL, `EquippedMannequin` int(5) DEFAULT '0', `ConfigFlags` smallint(5) NOT NULL DEFAULT '0', `QuestCompleteFlags` binary(200) DEFAULT NULL, @@ -76,7 +75,7 @@ CREATE TABLE `charainfo` ( `GMRank` int(3) DEFAULT '0', `Unlocks` binary(64) DEFAULT NULL, `CFPenaltyUntil` int(11) DEFAULT NULL, - `UPDATE_DATE` datetime DEFAULT NULL, + `UPDATE_DATE` DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, PRIMARY KEY (`CharacterId`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; diff --git a/sql/update.sql b/sql/update.sql index 4cd029d7..a2a9c38e 100644 --- a/sql/update.sql +++ b/sql/update.sql @@ -38,4 +38,7 @@ ALTER TABLE infolinkshell MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; ALTER TABLE uniqueiddata -MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; \ No newline at end of file +MODIFY COLUMN UPDATE_DATE DATETIME NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP; + +ALTER TABLE charainfo +ADD `Orchestrion` binary(38) DEFAULT NULL AFTER `Mounts`;