MAX_PLAYER_LEVEL is declared in this function in ReputationFrame.lua:
Lua Code:
function ReputationWatchBar_UpdateMaxLevel()
-- Initialize max player level
MAX_PLAYER_LEVEL = MAX_PLAYER_LEVEL_TABLE[GetExpansionLevel()];
end
MX_PLAYER_LEVEL_TABLE is declared in Constants.lua:
Lua Code:
MAX_PLAYER_LEVEL_TABLE = {};
MAX_PLAYER_LEVEL_TABLE[LE_EXPANSION_CLASSIC] = 60;
MAX_PLAYER_LEVEL_TABLE[LE_EXPANSION_BURNING_CRUSADE] = 70;
MAX_PLAYER_LEVEL_TABLE[LE_EXPANSION_WRATH_OF_THE_LICH_KING] = 80;
MAX_PLAYER_LEVEL_TABLE[LE_EXPANSION_CATACLYSM] = 85;
MAX_PLAYER_LEVEL_TABLE[LE_EXPANSION_MISTS_OF_PANDARIA] = 90;
MAX_PLAYER_LEVEL_TABLE[LE_EXPANSION_WARLORDS_OF_DRAENOR] = 100;
MAX_PLAYER_LEVEL_TABLE[LE_EXPANSION_LEGION] = 110;
MAX_PLAYER_LEVEL_TABLE[LE_EXPANSION_BATTLE_FOR_AZEROTH] = 120;
MAX_PLAYER_LEVEL_TABLE[LE_EXPANSION_9_0] = 120;
MAX_PLAYER_LEVEL_TABLE[LE_EXPANSION_10_0] = 120;
MAX_PLAYER_LEVEL_TABLE[LE_EXPANSION_11_0] = 120;
And the listed LE globals are as follows:
Lua Code:
LE_EXPANSION_CLASSIC = 0
LE_EXPANSION_BURNING_CRUSADE = 1
LE_EXPANSION_WRATH_OF_THE_LICH_KING = 2
LE_EXPANSION_CATACLYSM = 3
LE_EXPANSION_MISTS_OF_PANDARIA = 4
LE_EXPANSION_WARLORDS_OF_DRAENOR = 5
LE_EXPANSION_LEGION = 6
LE_EXPANSION_BATTLE_FOR_AZEROTH = 7
LE_EXPANSION_9_0 = 8
LE_EXPANSION_10_0 = 9
LE_EXPANSION_11_0 = 10
GetExpansionLevel() returns what a player can currently access, which is currently 6 for everyone due to Legion being included with just a sub, while GetAccountExpansionLevel() returns what BfA purchasers will be able to access on August 14th, which is 7. Therefore, the global MAX_LEVEL_PLAYER should be 110 for everyone with a sub as of this comment.
I'm not sure why your XP bar is showing on your max level characters after a reload, but your code is working correctly at login.