XPBarNone
XPBarNone
XPBarNone is an XP bar with handy feature set.
Description
Lightweight XP bar with a nice set of features, the text display is customisable, the default setting resembles the following:
Exp: 1234/56789 (7586) :: 12.5% through level 34 :: 1234 XP left :: 12 kills to level
Menus
You can access two different menus to configure XPBarNone.
Shift + Right Click: This accesses the main configuration menu. It's the same menu you could get through the slash commands, but in a nice graphical form.
Control + Right Click: This menu allows you to select which faction you would like to watch on your XP Bar.
Slash Commands
/xpbarnone or /xpbn
-
View User Profile
-
Send Message
Posted Oct 3, 2019Can you please add the [percentXP] tag? I wanted to create a pull request on Github for it but I am not allowed to do so :P
-
View User Profile
-
Send Message
Posted Sep 23, 2019Love the addon! In classic, I find I get the below error every time the game starts. Also, the bar moves slightly down and to the left every time.
Date: 2019-09-23 15:45:14 ID: 1 Error occured in: Global Count: 1 Message: ..\AddOns\XPBarNone\Core.lua line 880: Cannot find a library instance of "AceDBOptions-3.0". Debug: [C]: error() !Swatter\Support\LibStub.lua:23: LibStub() XPBarNone\Core.lua:880: XPBarNone\Core.lua:849 (tail call): ? [C]: ? [string "safecall Dispatcher[1]"]:9: [string "safecall Dispatcher[1]"]:5 (tail call): ? ...ce\AddOns\Details\Libs\AceAddon-3.0\AceAddon-3.0.lua:529: InitializeAddon() ...ce\AddOns\Details\Libs\AceAddon-3.0\AceAddon-3.0.lua:644: ...ce\AddOns\Details\Libs\AceAddon-3.0\AceAddon-3.0.lua:636 Locals: None AddOns: Swatter, v8.2.6377 (SwimmingSeadragon) AtlasLootClassic, vv1.1.12 AtlasLootClassicMaps, vv1.0.0 AucAdvanced, v8.2.6420 (SwimmingSeadragon) AucFilterBasic, v8.2.6364 (SwimmingSeadragon) AucStatHistogram, v8.2.6366 (SwimmingSeadragon) AucStatiLevel, v8.2.6370 (SwimmingSeadragon) AucStatPurchased, v8.2.6367 (SwimmingSeadragon) AucStatSimple, v8.2.6399 (SwimmingSeadragon) AucStatStdDev, v8.2.6369 (SwimmingSeadragon) AucUtilFixAH, v8.2.6371 (SwimmingSeadragon) BeanCounter, v8.2.6422 (SwimmingSeadragon) BigWigs, vv3-classic Details, v DetailsTinyThreat, v DruidBarClassic, v0.7.1 ElvUI, v1.09 ElvUIBagFilter, v1.0 ElvUILocationPlus, v1.00 GTFO, v4.49.2 Guidelime, v1.028 GuidelimeBusteas160leveling, v1.6.0-Release Immersion, v1.2.0 OmniCC, v8.2.4 orbSellAndRepair, v1.0.1 Questie, v4.1.1 BETA SlideBar, v8.2.6375 (SwimmingSeadragon) Stubby, v8.2.6376 (SwimmingSeadragon) VendorPrice, v1.2.6 WeakAuras, v2.14.6 XPBarNone, v80200-3 BlizRuntimeLib_enUS v1.13.2.11302 <none> (ck=40c)-
View User Profile
-
Send Message
Posted Sep 18, 2019Thanks for this addon. In Classic every once in a while (usually either when logging on a character or reloading the UI) the remaining portion of the XP bar turns white:
It's supposed to be completely transparent. Either swapping profiles and back or checking "Hide Text" in the options fixes this temporary, but it keeps happening. Do you know what could be causing this? Thanks!
-
View User Profile
-
Send Message
Posted Sep 13, 2019Got these errors in classic with 80200-2:
2x XPBarNone\Core.lua:36: attempt to index global 'C_Reputation' (a nil value)
XPBarNone\Core.lua:36: in main chunk
Locals:
XPBarNone = <table> {
SetDefaultModuleLibraries = <function> defined @AdiBags\libs\AceAddon-3.0\AceAddon-3.0.lua:367
Enable = <function> defined @AdiBags\libs\AceAddon-3.0\AceAddon-3.0.lua:294
UnregisterAllEvents = <function> defined @BugSack\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:174
EnableModule = <function> defined @AdiBags\libs\AceAddon-3.0\AceAddon-3.0.lua:332
modules = <table> {
}
GetModule = <function> defined @AdiBags\libs\AceAddon-3.0\AceAddon-3.0.lua:210
IterateEmbeds = <function> defined @AdiBags\libs\AceAddon-3.0\AceAddon-3.0.lua:442
defaultModuleLibraries = <table> {
}
UnregisterChatCommand = <function> defined @AdiBags\libs\AceConsole-3.0\AceConsole-3.0.lua:111
Printf = <function> defined @AdiBags\libs\AceConsole-3.0\AceConsole-3.0.lua:69
SetDefaultModulePrototype = <function> defined @AdiBags\libs\AceAddon-3.0\AceAddon-3.0.lua:409
name = "XPBarNone"
IsEnabled = <function> defined @AdiBags\libs\AceAddon-3.0\AceAddon-3.0.lua:451
orderedModules = <table> {
}
DisableModule = <function> defined @AdiBags\libs\AceAddon-3.0\AceAddon-3.0.lua:350
RegisterMessage = <function> defined @BugSack\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:90
UnregisterMessage = <function> defined @BugSack\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:153
Print = <function> defined @AdiBags\libs\AceConsole-3.0\AceConsole-3.0.lua:54
IsModule = <function> defined @AdiBags\libs\AceAddon-3.0\AceAddon-3.0.lua:468
SendMessage = <function> defined @BugSack\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:59
SetEnabledState = <function> defined @AdiBags\libs\AceAddon-3.0\AceAddon-3.0.lua:424
enabledState = true
RegisterEvent = <function> defined @BugSack\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:90
UnregisterAllMessages = <function> defined @BugSack\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:174
GetArgs = <function> defined @AdiBags\libs\AceConsole-3.0\AceConsole-3.0.lua:144
RegisterChatCommand = <function> defined @AdiBags\libs\AceConsole-3.0\AceConsole-3.0.lua:85
IterateModules = <function> defined @AdiBags\libs\AceAddon-3.0\AceAddon-3.0.lua:437
NewModule = <function> defined @AdiBags\libs\AceAddon-3.0\AceAddon-3.0.lua:235
SetDefaultModuleState = <function> defined @AdiBags\libs\AceAddon-3.0\AceAddon-3.0.lua:387
GetName = <function> defined @AdiBags\libs\AceAddon-3.0\AceAddon-3.0.lua:279
defaultModuleState = true
UnregisterEvent = <function> defined @BugSack\Libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:153
Disable = <function> defined @AdiBags\libs\AceAddon-3.0\AceAddon-3.0.lua:314
}
L = <table> {
Set the font. = "Set the font."
Set the bar width. = "Set the bar width."
Hide the text on the XP and Rep bars. = "Hide the text on the XP and Rep bars."
Scale = "Scale"
Show the azerite bar instead of the XP bar when on max level. = "Show the azerite bar instead of the XP bar when on max level."
Resting = "Resting"
Toggle the border. = "Toggle the border."
Toggle bubbles on the XP bar. = "Toggle bubbles on the XP bar."
Azerite item not found! = "Azerite item not found!"
Text Position = "Text Position"
Dynamic Bars = "Dynamic Bars"
Profiles = "Profiles"
Show zero values in the various Need tags, instead of an empty string = "Show zero values in the various Need tags, instead of an empty string"
Commify = "Commify"
Change the size of the text. = "Change the size of the text."
Auto Hide Delay = "Auto Hide Delay"
Bar Colours = "Bar Colours"
Font Size = "Font Size"
Reputation Bar related options = "Reputation Bar related options"
Bubbles = "Bubbles"
Experience Bar related options = "Experience Bar related options
57x (null)
-
View User Profile
-
Send Message
Posted Sep 14, 2019In reply to aisenfaire:80200-2 doesn't support Classic, however, there is now an alpha build for Classic available that should work. https://www.curseforge.com/wow/addons/xpbarnone/files/2784212
-
View User Profile
-
Send Message
Posted Sep 12, 2019I couldn't find line 1513 or any such line but it still worked! Thank you very much!
One note though, the bar moves slightly back to the same spot (not the spot I locked it before logging out) every time I log in or reload the console. I've discovered that it's ElvUI that's doing it but not sure how to fix it without disabling ElvUI.
-
View User Profile
-
Send Message
Posted Sep 12, 2019In reply to roweboy1974:
So I just downloaded a fresh copy of XPBarNone and checked... it would prob be easier to have put it as follows
Lines 1508 - 1513 local standingText if hasBonusRep then standingText = ("%s+"):format(factionStandingLabel[standing]) else standingText = factionStandingLabel[standing] end Replace with: local standingText = factionStandingLabel[standing]-
View User Profile
-
Send Message
Posted Sep 13, 2019In reply to Umbra_Ignis:
Thanks.
Do you have any idea on how to fix the moving bar caused by ElvUI?
-
View User Profile
-
Send Message
Posted Sep 30, 2019In reply to roweboy1974:
I don't suppose you've found a fix to this? It's rather annoying but I don't want to give up using ElvUI for it
-
View User Profile
-
Send Message
Posted Sep 6, 2019So I actually was able to modify this to work with classic without too much effort, but it would be nice to have an official classic version.
-
View User Profile
-
Send Message
Posted Sep 6, 2019In reply to Umbra_Ignis:
Would you mind posting what edits you've done? :)
-
View User Profile
-
Send Message
Posted Sep 6, 2019In reply to Forge_User_65382693:
in the .toc file
becomes
remove:
29 local GetGuildInfo = GetGuildInfo 33 local GetFactionParagonInfo = C_Reputation.GetFactionParagonInfo 34 local GetFriendshipReputation = GetFriendshipReputation 39 local IsFactionParagon = C_Reputation.IsFactionParagon 42 local IsXPUserDisabled = IsXPUserDisabled 53 local GUILD = GUILD 428 autotrackguild = { 429 name = L["Auto Track Guild Reputation"], 430 desc = L["Automatically track your guild reputation increases."], 431 type = "toggle", 432 order = 250, 433 }, 735 self:RegisterEvent("PET_BATTLE_OPENING_START") 736 self:RegisterEvent("PET_BATTLE_CLOSE") 824 text = text:gsub("%[isLocked%]", IsXPUserDisabled() and "*" or "") 1131 function XPBarNone:PET_BATTLE_OPENING_START() 1132 self.frame:Hide() 1133 end 1135 function XPBarNone:PET_BATTLE_CLOSE() 1136 self.frame:Show() 1137 end 1163 local isFactionParagon = IsFactionParagon(factionID) 1509 local standingText 1510 if hasBonusRep then 1511 standingText = ("%s+"):format(factionStandingLabel[standing]) 1512 else 1514 endreplace:
875 local function GetRepText(repName, repStanding, repMin, repMax, repValue, friendID, friendTextLevel, hasBonusRep, canBeLFGBonus, isFactionParagon) new local function GetRepText(repName, repStanding, repMin, repMax, repValue) 878 local standingText if friendID then standingText = friendTextLevel else -- Add a + next to the standing for bonus or paragon reps. if hasBonusRep or isFactionParagon then standingText = ("%s+"):format(factionStandingLabel[repStanding]) else standingText = factionStandingLabel[repStanding] end 888 end new local standingText = factionStandingLabel[repStanding] 1177 local _, hasBonusRep, canBeLFGBonus local friendID, friendRep, friendMaxRep, friendName, _, _, friendTextLevel, friendThresh, nextFriendThresh = GetFriendshipReputation(factionID) if friendID then if nextFriendThresh then -- Not yet "Exalted" with friend, use provided max for current -- level. repMax = nextFriendThresh repValue = friendRep - friendThresh else -- "Exalted". Fake the maxRep. repMax = friendMaxRep + 1 repValue = 1 end repMax = repMax - friendThresh repMin = 0 else -- name, description, standingID, barMin, barMax, barValue, atWarWith, -- canToggleAtWar, isHeader, isCollapsed, hasRep, isWatched, isChild, -- factionID, hasBonusRepGain, canBeLFGBonus -- = GetFactionInfo(factionIndex); _,_,_,_,_,_,_,_,_,_,_,_,_,_,hasBonusRep,canBeLFGBonus = GetFactionInfoByID(factionID) -- If a faction is exalted in Legion, it might be a paragon rep. -- Check for that, if it's not, fudge the numbers to make it appear -- like the old full rep bar. if repStanding == STANDING_EXALTED then if isFactionParagon then local parValue, parThresh, _, _ = GetFactionParagonInfo(factionID) -- parValue is additive. We need to modulo to get the real -- reputation value vs. the current threshold. repMax = parThresh repValue = parValue % parThresh else repMax = 1000 repValue = 999 end else repMax = repMax - repMin repValue = repValue - repMin end repMin = 0 1223 end new if repStanding == STANDING_EXALTED then repMax = 1000 repValue = 999 else repMax = repMax - repMin repValue = repValue - repMin end repMin = 0 1250 repValue, friendID, friendTextLevel, hasBonusRep, canBeLFGBonus, 1255 isFactionParagon new repValue 1442 local friendID, friendRep, friendMaxRep, friendName, _, _, friendTextLevel, friendThresh, friendThreshNext = GetFriendshipReputation(repID) local isFactionParagon = IsFactionParagon(repID) -- Faction local standingText if friendID then standingText = friendTextLevel bottom = 0 earned = friendRep - friendThresh if friendThreshNext then -- Not "Exalted", use provided figure for next level. top = friendThreshNext else -- "Exalted". Fake exalted max. top = friendMaxRep + 1 earned = 1 end top = top - friendThresh else if hasBonusRep or isFactionParagon then standingText = ("%s+"):format(factionStandingLabel[standing]) else standingText = factionStandingLabel[standing] end end -- Paragon reputation values if isFactionParagon then local parValue, parThresh, _, _ = GetFactionParagonInfo(repID) bottom = 0 top = parThresh earned = parValue % parThresh 1476 end new local standingText = factionStandingLabel[standing] 1513 standingText = factionStandingLabel[standing] new local standingText = factionStandingLabel[standing]-
View User Profile
-
Send Message
Posted Sep 6, 2019In reply to Umbra_Ignis:
Thank you, worked perfectly. <3
-
View User Profile
-
Send Message
Posted Sep 12, 2019In reply to Umbra_Ignis:
couldn't get it to work after changing the core.lua file, do you mind uploading your edited Core.lua to make it work for classic?
-
View User Profile
-
Send Message
Posted Sep 12, 2019In reply to shehealseverything:
Did you change the .toc file as well?
I will double check it when I get a chance, but I do not believe I am allowed to post the modified file without authors permission according to forum rules.
-
View User Profile
-
Send Message
Posted Sep 13, 2019In reply to Umbra_Ignis:
Yeah, I changed both the .toc and .lua files and no luck. Maybe you could DM/whisper me a link to your uploaded file?
-
View User Profile
-
Send Message
Posted Sep 13, 2019In reply to Umbra_Ignis:
In reply to Umbra_Ignis:
Is it incompatible with bartender4?
-
View User Profile
-
Send Message
Posted Sep 3, 2019I would love to have this for classic, any chance of that happening?
-
View User Profile
-
Send Message
Posted Aug 29, 2019Yes, please do update this for Classic! And thank you!
-
View User Profile
-
Send Message
Posted Sep 3, 2019In reply to roweboy1974:
+1
I haven't found any Classic XP bar addon that is even close to being on par with this.
Tried reading the error message, but it might as well be Klingon, no chance of understanding it.