diff --git a/src/LuaEngine/LuaFunctions.cpp b/src/LuaEngine/LuaFunctions.cpp index aa617ed846..843a6c9e94 100644 --- a/src/LuaEngine/LuaFunctions.cpp +++ b/src/LuaEngine/LuaFunctions.cpp @@ -966,6 +966,7 @@ ElunaRegister ItemTemplateMethods[] = { "GetAllowableRace", &LuaItemTemplate::GetAllowableRace }, { "GetItemLevel", &LuaItemTemplate::GetItemLevel }, { "GetRequiredLevel", &LuaItemTemplate::GetRequiredLevel }, + { "GetIcon", &LuaItemTemplate::GetIcon }, { NULL, NULL } }; diff --git a/src/LuaEngine/methods/ItemTemplateMethods.h b/src/LuaEngine/methods/ItemTemplateMethods.h index 66980c9adf..b7ffe3dfa0 100644 --- a/src/LuaEngine/methods/ItemTemplateMethods.h +++ b/src/LuaEngine/methods/ItemTemplateMethods.h @@ -196,6 +196,22 @@ namespace LuaItemTemplate Eluna::Push(L, itemTemplate->RequiredLevel); return 1; } + + /** + * Returns the icon is used by this [ItemTemplate]. + * + * @return string itemIcon + */ + int GetIcon(lua_State* L, ItemTemplate* itemTemplate) + { + uint32 display_id = itemTemplate->DisplayInfoID; + + ItemDisplayInfoEntry const* displayInfo = sItemDisplayInfoStore.LookupEntry(display_id); + const char* icon = displayInfo->inventoryIcon; + + Eluna::Push(L, icon); + return 1; + } } #endif