[Quest API] Add GetLDoNThemeName() to Perl/Lua. (#1861)

* [Quest API] Add GetLDoNThemeName() to Perl/Lua.
- Add quest::getldonthemename(theme_id) to Perl.
- Add eq.get_ldon_theme_name(theme_id) to Lua.

* Update embparser_api.cpp
This commit is contained in:
Kinglykrab 2021-12-03 19:53:00 -05:00 committed by GitHub
parent 01a671918a
commit aa4536e1ef
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 30 additions and 2 deletions

View File

@ -8023,6 +8023,23 @@ XS(XS__getspell) {
}
}
XS(XS__getldonthemename);
XS(XS__getldonthemename) {
dXSARGS;
if (items != 1)
Perl_croak(aTHX_ "Usage: quest::getldonthemename(uint32 theme_id)");
{
dXSTARG;
uint32 theme_id = (uint32) SvUV(ST(0));
std::string theme_name = quest_manager.getldonthemename(theme_id);
sv_setpv(TARG, theme_name.c_str());
XSprePUSH;
PUSHTARG;
XSRETURN(1);
}
}
XS(XS__getfactionname);
XS(XS__getfactionname) {
dXSARGS;
@ -8034,7 +8051,7 @@ XS(XS__getfactionname) {
std::string faction_name = quest_manager.getfactionname(faction_id);
sv_setpv(TARG, faction_name.c_str());
XSprePUSH;
XSprePUSH;
PUSHTARG;
XSRETURN(1);
}
@ -8372,7 +8389,8 @@ EXTERN_C XS(boot_quest) {
newXS(strcpy(buf, "getitemname"), XS__getitemname, file);
newXS(strcpy(buf, "getItemName"), XS_qc_getItemName, file);
newXS(strcpy(buf, "getitemstat"), XS__getitemstat, file);
newXS(strcpy(buf, "getlanguagename"), XS__getlanguagename, file);
newXS(strcpy(buf, "getlanguagename"), XS__getlanguagename, file);
newXS(strcpy(buf, "getldonthemename"), XS__getldonthemename, file);
newXS(strcpy(buf, "getnpcnamebyid"), XS__getnpcnamebyid, file);
newXS(strcpy(buf, "get_spawn_condition"), XS__get_spawn_condition, file);
newXS(strcpy(buf, "getcharnamebyid"), XS__getcharnamebyid, file);

View File

@ -3351,6 +3351,10 @@ Lua_Spell lua_get_spell(uint32 spell_id) {
return Lua_Spell(spell_id);
}
std::string lua_get_ldon_theme_name(uint32 theme_id) {
return quest_manager.getldonthemename(theme_id);
}
std::string lua_get_faction_name(int faction_id) {
return quest_manager.getfactionname(faction_id);
}
@ -3806,6 +3810,7 @@ luabind::scope lua_register_general() {
luabind::def("is_npc_spawned", &lua_is_npc_spawned),
luabind::def("count_spawned_npcs", &lua_count_spawned_npcs),
luabind::def("get_spell", &lua_get_spell),
luabind::def("get_ldon_theme_name", &lua_get_ldon_theme_name),
luabind::def("get_faction_name", &lua_get_faction_name),
luabind::def("get_language_name", &lua_get_language_name),
luabind::def("get_body_type_name", &lua_get_body_type_name),

View File

@ -1036,6 +1036,10 @@ std::string QuestManager::getskillname(int skill_id) {
return EQ::skills::GetSkillName(static_cast<EQ::skills::SkillType>(skill_id));
}
std::string QuestManager::getldonthemename(uint32 theme_id) {
return EQ::constants::GetLDoNThemeName(theme_id);
}
std::string QuestManager::getfactionname(int faction_id) {
return content_db.GetFactionName(faction_id);
}

View File

@ -115,6 +115,7 @@ public:
std::string getracename(uint16 race_id);
std::string getspellname(uint32 spell_id);
std::string getskillname(int skill_id);
std::string getldonthemename(uint32 theme_id);
std::string getfactionname(int faction_id);
std::string getlanguagename(int language_id);
std::string getbodytypename(uint32 bodytype_id);