feat(PlayerMethods): Expose GetTalentTreePoints and GetMostPointsTalentTree (#382)

This commit is contained in:
mostlynick3
2026-05-03 09:52:22 +02:00
committed by GitHub
parent 3eca176853
commit 7a6ec6e870
2 changed files with 28 additions and 0 deletions

View File

@@ -564,6 +564,8 @@ ALERegister<Player> PlayerMethods[] =
{ "GetLastPetNumber", &LuaPlayer::GetLastPetNumber }, { "GetLastPetNumber", &LuaPlayer::GetLastPetNumber },
{ "GetLastPetSpell", &LuaPlayer::GetLastPetSpell }, { "GetLastPetSpell", &LuaPlayer::GetLastPetSpell },
{ "GetQuestSlotQuestId", &LuaPlayer::GetQuestSlotQuestId }, { "GetQuestSlotQuestId", &LuaPlayer::GetQuestSlotQuestId },
{ "GetTalentTreePoints", &LuaPlayer::GetTalentTreePoints },
{ "GetMostPointsTalentTree", &LuaPlayer::GetMostPointsTalentTree },
// Setters // Setters
{ "SetTemporaryUnsummonedPetNumber", &LuaPlayer::SetTemporaryUnsummonedPetNumber }, { "SetTemporaryUnsummonedPetNumber", &LuaPlayer::SetTemporaryUnsummonedPetNumber },

View File

@@ -5136,6 +5136,32 @@ namespace LuaPlayer
#endif #endif
return 1; return 1;
} }
/**
* Returns the [Player]s spent talent points in each talent tree for the active spec
*
* @return uint8 tree1, uint8 tree2, uint8 tree3
*/
int GetTalentTreePoints(lua_State* L, Player* player)
{
uint8 specPoints[3] = {0, 0, 0};
player->GetTalentTreePoints(specPoints);
ALE::Push(L, specPoints[0]);
ALE::Push(L, specPoints[1]);
ALE::Push(L, specPoints[2]);
return 3;
}
/**
* Returns the index of the talent tree the [Player] has spent the most points in for the active spec
*
* @return uint8 treeIndex
*/
int GetMostPointsTalentTree(lua_State* L, Player* player)
{
ALE::Push(L, player->GetMostPointsTalentTree());
return 1;
}
}; };
#endif #endif