diff --git a/Jamba/AceGUIContainer-JambaWindow.lua b/Jamba/AceGUIContainer-JambaWindow.lua index 7b8bc11..9b84543 100644 --- a/Jamba/AceGUIContainer-JambaWindow.lua +++ b/Jamba/AceGUIContainer-JambaWindow.lua @@ -17,7 +17,7 @@ Really the olny thing changed is to lower the setframestata for InitializePopupD --[[----------------------------------------------------------------------------- Frame Container -------------------------------------------------------------------------------]] -local Type, Version = "JambaWindow", 2 +local Type, Version = "JambaWindow", 3 local AceGUI = LibStub and LibStub("AceGUI-3.0", true) if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end @@ -37,7 +37,8 @@ local CreateFrame, UIParent = CreateFrame, UIParent Scripts -------------------------------------------------------------------------------]] local function Button_OnClick(frame) - PlaySound("gsTitleOptionExit") + --7.3 PlaySound Update. + PlaySound(PlaySoundKitID and "gsTitleOptionExit" or 799) -- SOUNDKIT.GS_TITLE_OPTION_EXIT frame.obj:Hide() end diff --git a/Jamba/CHANGELOG.txt b/Jamba/CHANGELOG.txt index deb27b6..d168679 100644 --- a/Jamba/CHANGELOG.txt +++ b/Jamba/CHANGELOG.txt @@ -1,6 +1,197 @@ --------------------------- ChangeLogs: --------------------------- +Jamba Version: 5.3.0 +WoW Game Version: 7.3 +File Version: 7.3.0-5.3.0 +Release Date: 30/8/2017 +Modules Changed: Core, communications, Item-Use, Team-Display, Jamba-sell Jamba-Trade, Avd Loot +Modules Removed: Macros, Target + +*Jamba-Core + - Should Nolonger LUA error when sending to a toon that does not have the module Installed (GameData/commsData) + - Added a new library LibItemUpGradeInfo. + - Updated Ace3 for Patch 7.3 + - Updated PlaySound in JambaFrameWindow to support the 7.3 changes + - Updated Toc to 7.3 + +*Jamba-Communications + - Removed BN communications (To much excess Data to check was kinda pointless and did not work right.) + - Added Guild communications - this will put all communications though the guild Might for use with big teams. + - Added support for Guild communications to use the Automated Online/Offline System. + +*Jamba-ItemUse + - No Longer sends all Settings when changing items on the bar. + - Added a Sync Button next to clear (In Case minions are not Synced) + +*Jamba-Team_Display + - Changed the minions name colour when the minion is in combat + - Added support for incoming Heals. + - Can Set the health Bar to class colour + - Can set a option to show health/mana updates when not in a party ( might lag out communications Use at own risk, works well with guild communications ) + +*Jamba-Sell + - *sell items with team(Alt)* No longer trys to Equips Items when not interacting with the merchant. + - Should now sell ALL gray's in your bags. (Not half at a time) + - New Options Sell Items by Quality, ItemLevel and if item is Soulbound. + - Tells The Team the amount of Items they have sold and the gold they have made. + - Removed Old Usable soulbound Items and Lower tier options ( Game has come a long way since then ) + +*Jamba-Trade + - Updated Trade BoE to support the new tooltip Scanner + +*jamba-Currency + - if the minion is Maxed on a currency type (EG can not have anymore of that currency ) then the text will show red. + - Changed FrameStrata from "BACKGROUND" to "LOW" (ticket #182) ((PS: I guess a dropdown list would be better)) + - Added 7.3 currencies: + - Writhing Essence + - Argus Waystone + - Veiled Argunite + +*Jamba-Advanced_Loot + - trying new event LOOT_READY + + +*Jamba-Macro + - Removed module. + +*Jamba-Target + - Removed module. + + +--------------------------- +Jamba Version: 5.2.4 +WoW Game Version: 7.2.5 +File Version: 7.2.5-5.2.4 +Release Date: 14/6/2017 +Modules Changed: Core, Display-Curr + +*Jamba-Currency + - Fixed a icon bug with patch 7.2.5 + - Should now update frame position when sending settings without a reload on UI. + - Added new 7.2.5 Currency "Coins of Air" + + +--------------------------- +Jamba Version: 5.2.3 +WoW Game Version: 7.2.0 +File Version: 7.2.0-5.2.3 +Release Date: 23/5/2017 +Modules Changed: Core, Display-Team, Quest-Watcher, Jamba-Team, Jamba-Trade, Jamba_itemUse + + +*Jamba-Display Team + - Added xp bars Animations + +*Jamba-Quest-Watcher + - Fixed bug #117 + +*Jamba-ItemUse + - Fixed a buged where Emissary quest items Nolonger would show on bar. + - Nolonger adds LockBox to the Item-Bar + +*Jamba-Team + - added Enhancement #179* + *- Add Party to team works with Raids. + - Added Class colour Support Jamba_API/EMA_API + +*jamba-Trade + - Added Enhancement #181* + *- Premade for Crafting Reagents. + +--------------------------- +Jamba Version: 5.2.2 +WoW Game Version: 7.2.0 +File Version: 7.2.0-5.2.2 +Release Date: 4/5/2017 +Modules Changed: Core, Display-Team + + +*jamba-Display Team + + - Fixed the artifact bug -- am really sorry this one took so long, av not been very well. + + + + +--------------------------- +Jamba Version: 5.2.1 +WoW Game Version: 7.2.1 +File Version: 7.2.0-5.2.1 +Release Date: 21/4/2017 +Modules Changed: Core, Mount, Currency + +*Jamba-Core + *(Communications) fixed a small bug with this not working. + +*Jamba-Mount + *Temp Fix undone most changes form 5.2.0 + +*jamba-Currency + - Added currency Legionfall War Supplies (1342) + + + +--------------------------- +Jamba Version: 5.2.0 +WoW Game Version: 7.2.0 +File Version: 7.2.0-5.2.0 +Release Date: 28/3/2017 +Modules Changed: Core, Toon, Trade, Team, Mount, Trade, Currency, Taxi, Quest, Follow, Team-Display + +*Jamba-Core + *(Communications) + - Added support for Cross Realm using BNSendGameData Jamba will look fo the character + and will do all the magic. (you need to turn this on in options) + +*Jamba-Toon + (Holding Shift will stop most stuff forwarding to team) + - Ready-check with Team. + - LFG Role-check Auto. + - Teleport LFG with team. + - Roll Need/greed/Etc... with Team + - Removed AFK (PvP) + +*Jamba-Quest + - Removed support for Unignore and Ignore --Blizzard removed in patch 7.2 + - Jamba_Quest 3.0 + - Now shows a Popup Dialog when you track or abandon quests asking if you like to do it with the team. + - Removed "box" icons for abandon/track/share ALL, Changed for Blizzard Buttons. + - No Longer spams raid warning if the toon does not have the quest to abandon + - Does not loop on all toon's when abandoning/track/share all quests. + +*Jamba-Trade + - Removed the Old Trade PopUp Window + - You can now make a list of items you want to trade with master. + - Now will only trade gold to the master Toon. + - Added a option to trade Binds When Equipped Items With Master. (Green/Blue/Purple) + +*jamba-Currency + - Fixed a bug when Border/Background not Sending Settings. + +*Jamba-Team + - Added a option to set all members to assistant when you join a raid group. + - Remove command "/jamba-team InviteTag". + - "/Jamba-Team Invite" now support's <Tag> + - If Tag is Unknown it will tell you. + +*Jamba-Taxi + - Changed default Taxi dely to 2 sec, added in 0.5sec max 5 sec now. + - When Closing out the Taxi Frame the Team will close as well. + +*Jamba-Mount + - Fixed for Chauffeur Mount ( Level 1 Mount ) + - Warns if the toon trying to mount is in combat. + - Checks the toon is not moving before it Mounts if toon is moving it will try again until toon stop moving. + +*Jamba-Follow + - Having ticked [Auto Follow After Combat] will now warn when follow breaks. + - Updated the speed the follow message gets sent by 0.5 secs. + +*Jamba-Team_Display + - Added a glow effect when follow brecks on the Display-team bar. + +--------------------------- Jamba Version: 5.1.7 WoW Game Version: 7.1.5 File Version: 7.1.5-5.1.7 diff --git a/Jamba/Jamba.toc b/Jamba/Jamba.toc index 0f450ae..46c8952 100644 --- a/Jamba/Jamba.toc +++ b/Jamba/Jamba.toc @@ -1,8 +1,8 @@ -## Interface: 70100 +## Interface: 70300 ## Title: Jamba ## Notes: Jamba ## Author: Ebony, Former Author: Jafula -## Version: 7.1.5-5.1.7 +## Version: 5.3.0 ## SavedVariables: JambaCoreProfileDB, JambaCommunicationsProfileDB, JambaTeamProfileDB, JambaTagProfileDB, JambaMessageProfileDB JambaEmbeds.xml JambaUtilities.lua diff --git a/Jamba/JambaCommunications.lua b/Jamba/JambaCommunications.lua index 78509b1..2c55fea 100644 --- a/Jamba/JambaCommunications.lua +++ b/Jamba/JambaCommunications.lua @@ -38,16 +38,11 @@ AJM.chatCommand = "jamba-comm" -- Communication methods. AJM.COMMUNICATION_WHISPER = "WHISPER" AJM.COMMUNICATION_GROUP = "RAID" +AJM.COMMUNICATION_GUILD = "GUILD" -- Communication message prefix. AJM.MESSAGE_PREFIX = "JmbCmMsg" ---[[ --- Communication over channel for online status. -AJM.COMMUNICATION_TEAM_ONLINE_PREFIX = "JmbCmTmOn" -AJM.COMMUNICATION_MESSAGE_ONLINE = "JmbCmTmOnTe" -AJM.COMMUNICATION_MESSAGE_OFFLINE = "JmbCmTmOnFe" ---]] -- Communication priorities. AJM.COMMUNICATION_PRIORITY_BULK = "BULK" @@ -66,8 +61,6 @@ AJM.COMMAND_INTERNAL_SEND_SETTINGS = "JmbCmSdSet" -- Messages module sends. ------------------------------------------------------------------------------------------------------------- ---AJM.MESSAGE_CHARACTER_ONLINE = "JmbTmChrOn" ---AJM.MESSAGE_CHARACTER_OFFLINE = "JmbTmChrOf" -- Get a settings value. function AJM:ConfigurationGetSetting( key ) @@ -89,6 +82,7 @@ AJM.settings = { assumeTeamAlwaysOnline = false, -- This is a place holder And is used as backup DO NOT CHANGE assumeTeamAlwaysOnline unless you know what your doing that you probs don't ;) autoSetTeamOnlineorOffline = true, boostCommunication = true, + useGuildComms = false, }, } @@ -123,7 +117,6 @@ end ------------------------------------------------------------------------------------------------------------- -- Character online management. ------------------------------------------------------------------------------------------------------------- --- TODO: Is a character online? This needs Working on Ebony Or needs to go for now it always return true local function IsCharacterOnline( characterName ) if AJM.db.assumeTeamAlwaysOnline == true then return true @@ -162,48 +155,6 @@ local function CreateCommandToSend( moduleName, commandName, ... ) return message end ---[[ --- Rewrite of communications start ebony. Using Guild, Party, then whisper --- Send a command to all members of the current team. Trying to use a goble channel to send all communications on. -local function CommandAll( moduleName, commandName, ... ) - AJM:DebugMessage( "Command All: ", moduleName, commandName, ... ) - -- Get the message to send. - local message = CreateCommandToSend( moduleName, commandName, ... ) - for characterName, characterOrder in JambaPrivate.Team.TeamList() do - -- Send command to all in party. - --if UnitInParty( characterName ) == true then and not isInInstance - --local Instance, instanceType = IsInInstance() - --AJM.Print("Raid test", Instance) - --if Instance == false then - if UnitInParty( Ambiguate( characterName, "none" ) ) == true then - if not UnitInBattleground( "player" ) then - --if not IsInInstance("raid") then - --AJM.Print("UnitisinParty", characterName ) - AJM:DebugMessage("Sending command to group.", message, "Group", nil) - AJM:SendCommMessage( - AJM.COMMAND_PREFIX, - message, - AJM.COMMUNICATION_GROUP, - nil, - AJM.COMMUNICATION_PRIORITY_ALERT - ) - --end - end - else - if IsCharacterOnline( characterName ) == true then - AJM:DebugMessage("Sending command to others not in party/raid.", message, "WHISPER", characterName, "online", IsCharacterOnline) - AJM:SendCommMessage( - AJM.COMMAND_PREFIX, - message, - AJM.COMMUNICATION_WHISPER, - characterName, - AJM.COMMUNICATION_PRIORITY_ALERT - ) - end - end - end -end ---]] local function CommandAll( moduleName, commandName, ... ) -- AJM:DebugMessage( "Command All: ", moduleName, commandName, ... ) @@ -211,9 +162,19 @@ local function CommandAll( moduleName, commandName, ... ) -- Get the message to send. local message = CreateCommandToSend( moduleName, commandName, ... ) local channel + if AJM.db.useGuildComms == true then + AJM:SendCommMessage( + AJM.COMMAND_PREFIX, + message, + AJM.COMMUNICATION_GUILD, + nil, + AJM.COMMUNICATION_PRIORITY_ALERT + ) + return + end -- toon has to be in a group if UnitInBattleground( "player" ) then - AJM:DebugMessage( "PvP_INSTANCE") + AJM:DebugMessage( "PvP_INSTANCE") channel = "INSTANCE_CHAT" elseif IsInGroup() then AJM:DebugMessage( "Group") @@ -254,19 +215,18 @@ local function CommandAll( moduleName, commandName, ... ) end --if the unit is not in the party then it unlikely did not get the party message, for characterName, characterOrder in JambaPrivate.Team.TeamList() do - --AJM:Print( "Toon not in party:", characterName) - if UnitInParty( Ambiguate( characterName, "none" ) ) == false then + if UnitInParty( Ambiguate( characterName, "none" ) ) == false then AJM:DebugMessage( "Toon not in party:", characterName) if IsCharacterOnline( characterName ) == true then AJM:DebugMessage("Sending command to others not in party/raid.", message, "WHISPER", characterName) - AJM:SendCommMessage( - AJM.COMMAND_PREFIX, - message, - AJM.COMMUNICATION_WHISPER, - characterName, - AJM.COMMUNICATION_PRIORITY_ALERT - ) - --AJM:Print("testWis", AJM.COMMAND_PREFIX, AJM.COMMUNICATION_WHISPER, characterName , AJM.COMMUNICATION_PRIORITY_ALERT) + AJM:SendCommMessage( + AJM.COMMAND_PREFIX, + message, + AJM.COMMUNICATION_WHISPER, + characterName, + AJM.COMMUNICATION_PRIORITY_ALERT + ) + --AJM:Print("testWis", AJM.COMMAND_PREFIX, AJM.COMMUNICATION_WHISPER, characterName , AJM.COMMUNICATION_PRIORITY_ALERT) end end end @@ -346,30 +306,6 @@ end ChatFrame_AddMessageEventFilter("CHAT_MSG_SYSTEM", SystemSpamFilter) ---Ebony old way. was this is a better way? it did not work with EvlUI. ---[[ -function AJM:ChatFrame_MessageEventHandler(frame, event, msg, ...) - --if event == "CHAT_MSG_SYSTEM" then - if( event == "CHAT_MSG_SYSTEM") then - --local match = strmatch(msg, format(ERR_CHAT_PLAYER_NOT_FOUND_S, "(.+)")) - --if match then - if msg:match(string.format(ERR_CHAT_PLAYER_NOT_FOUND_S, "(.+)")) then - return true - --if (not match) then - --IF not match then Go about whatever you wonted to do, If match hide Msg from player. - --self:DebugMessage( "Not matched!" ) - --self.hooks.ChatFrame_MessageEventHandler(frame, event, ...) - --AJM.hooks["ChatFrame_MessageEventHandler"]( self, event, ... ) - end - else - self.hooks.ChatFrame_MessageEventHandler(frame, event, ...); - end - -end ---]] ---ChatFrame_AddMessageEventFilter("CHAT_MSG_SYSTEM", SystemSpamFilter) ---AJM.ChatFrame_AddMessageEventVanasKoS("CHAT_MSG_SYSTEM", AJM:ChatFrame_MessageEventHandler) - -- Receive a command from another character. function AJM:CommandReceived( prefix, message, distribution, sender ) @@ -381,12 +317,12 @@ function AJM:CommandReceived( prefix, message, distribution, sender ) --checks the char is in the team if not everyone can change settings and we do not want that if JambaPrivate.Team.IsCharacterInTeam( sender ) == true then AJM:DebugMessage( "Sender is in team list." ) - --automaic setting team members online. -- we don't really need to keep sending this so we add a if + --automaic setting team members online. --AJM:Print("toonnonline", sender ) - if JambaPrivate.Team.GetCharacterOnlineStatus( characterName ) == false then - --AJM:Print("Setting Toon online", sender, characterName ) - JambaApi.setOnline( characterName, true) - end + if JambaPrivate.Team.GetCharacterOnlineStatus( characterName ) == false then + --AJM:Print("Setting Toon online", distribution, sender, characterName ) + JambaApi.setOnline( characterName, true) + end -- Split the command into its components. local moduleName, commandName, argumentsStringSerialized = strsplit( AJM.COMMAND_SEPERATOR, message ) local argumentsTable = {} @@ -479,7 +415,6 @@ function AJM:OnInitialize() self.characterName = self.characterNameLessRealm.."-"..self.characterRealm AJM.characterGUID = UnitGUID( "player" ) -- End of needed: - --AJM:RegisterChatCommand( AJM.chatCommand, "JambaChatCommand" ) -- Register communications as a module. JambaPrivate.Core.RegisterModule( AJM, AJM.moduleName ) end @@ -487,6 +422,7 @@ end function AJM:OnEnable() --local hookSecure = true --AJM:RawHook( "ChatFrame_MessageEventHandler", true ) + AJM:RegisterEvent("GUILD_ROSTER_UPDATE") if AJM.db.boostCommunication == true then AJM:BoostCommunication() -- Repeat every 5 minutes. @@ -516,23 +452,29 @@ function AJM:JambaChatCommand( input ) end end ---[[ -function AJM:StopChannelPollTimer() - if AJM.channelPollTimer ~= nil then - AJM:CancelTimer( AJM.channelPollTimer ) - end -end - - -function AJM:StartChannelPollTimer() - -- Poll for characters every 5 seconds. - AJM.channelPollTimer = AJM:ScheduleRepeatingTimer( ListChannelByName, 5, AJM.lastChannel ) -end ---]] function AJM:OnDisable() --AJM:CancelAllTimers() end +function AJM:GUILD_ROSTER_UPDATE(event, ... ) + if AJM.db.useGuildComms == false then + return + end + local numGuildMembers, numOnline, numOnlineAndMobile = GetNumGuildMembers() + for index = 1, numGuildMembers do + characterName,_,_,_,class,_,_,_,online,status,classFileName,_, _,isMobile = GetGuildRosterInfo(index) + --AJM:Print("Name", fullName, "online", online ) + if online == false then + if AJM.db.autoSetTeamOnlineorOffline == true then + if JambaApi.IsCharacterInTeam(characterName) == true and IsCharacterOnline( characterName ) == true then + JambaApi.setOffline( characterName, false ) + --AJM:Print("player offline in team", characterName ) + end + end + end + end +end + ------------------------------------------------------------------------------------------------------------- -- Settings Dialogs. ------------------------------------------------------------------------------------------------------------- @@ -612,18 +554,40 @@ function AJM:SettingsCreateOptions( top ) L["**reload UI to take effect, may cause disconnections"] ) movingTop = movingTop - buttonHeight - AJM.settingsControl.checkBoxShowChannel = JambaHelperSettings:CreateCheckBox( + AJM.settingsControl.checkBoxUseGuildComms = JambaHelperSettings:CreateCheckBox( AJM.settingsControl, headingWidth, column1Left, movingTop, + L["Use Guild Communications***"], + AJM.CheckBoxUseGuildComms + ) + movingTop = movingTop - checkBoxHeight + AJM.settingsControl.labelInformationBNComms = JambaHelperSettings:CreateContinueLabel( + AJM.settingsControl, + headingWidth, + column1Left, + movingTop, + L["*** EveryToon will be classed as online and needs to be in same guild!"] + ) +--[[ AJM.settingsControl.checkBoxShowChannel = JambaHelperSettings:CreateCheckBox( + AJM.settingsControl, + headingWidth, + column1Left, + movingTop, L["Show Online Channel Traffic (For Debugging Purposes)"], AJM.CheckBoxShowChannelClick ) +]] movingTop = movingTop - checkBoxHeight return movingTop end +function AJM:CheckBoxUseGuildComms( event, value ) + AJM.db.useGuildComms = value + AJM:SettingsRefresh() +end + function AJM:CheckBoxBoostCommunication( event, value ) AJM.db.boostCommunication = value AJM:SettingsRefresh() @@ -650,6 +614,7 @@ function AJM:SettingsRefresh() -- AJM.settingsControl.checkBoxAssumeAlwaysOnline:SetValue( AJM.db.assumeTeamAlwaysOnline ) AJM.settingsControl.checkBoxAutoSetTeamOnlineorOffline:SetValue( AJM.db.autoSetTeamOnlineorOffline ) AJM.settingsControl.checkBoxBoostCommunication:SetValue( AJM.db.boostCommunication ) + AJM.settingsControl.checkBoxUseGuildComms:SetValue( AJM.db.useGuildComms ) end -- Settings received. @@ -664,6 +629,7 @@ function AJM:JambaOnSettingsReceived( characterName, settings ) AJM.db.assumeTeamAlwaysOnline = settings.assumeTeamAlwaysOnline AJM.db.autoSetTeamOnlineorOffline = settings.autoSetTeamOnlineorOffline AJM.db.boostCommunication = settings.boostCommunication + AJM.db.useGuildComms = settings.useGuildComms -- Refresh the settings. AJM:SettingsRefresh() -- Tell the player. @@ -673,55 +639,6 @@ function AJM:JambaOnSettingsReceived( characterName, settings ) end end --- text = message to send --- chatDestination = "PARTY, WHISPER, RAID, CHANNEL, etc" --- characterOrChannelName = character name if WHISPER or channel name if CHANNEL or nil otherwise --- priority = one of --- AJM.COMMUNICATION_PRIORITY_BULK, --- AJM.COMMUNICATION_PRIORITY_NORMAL --- AJM.COMMUNICATION_PRIORITY_ALERT -local function SendChatMessage( text, chatDestination, characterOrChannelName, priority ) - -- Message small enough to send? - AJM:Print("test", text, chatDestination, characterOrChannelName, priority) - - if text:len() <= 255 then - --AJM:Print("test TURE!!!!! TOBIG" ) - ChatThrottleLib:SendChatMessage( priority, AJM.MESSAGE_PREFIX, text, chatDestination, nil, characterOrChannelName, nil ) - - - else - -- No, message is too big, split into smaller messages, taking UTF8 characters into account. - local bytesAvailable = string.utf8len(text1) - local currentPosition = 1 - local countBytes = 1 - local startPosition = currentPosition - local splitText = "" - -- Iterate all the utf8 characters, character by character until we reach 255 characters, then send - -- those off and start counting over. - while currentPosition <= bytesAvailable do - -- Count the number of bytes the character at this position takes up. - countBytes = countBytes + jambautf8charbytes( text, currentPosition ) - -- More than 255 bytes yet? - if countBytes <= 255 then - -- No, increment the position and keep counting. - currentPosition = currentPosition + jambautf8charbytes( text, currentPosition ) - else - -- Yes, more than 255. Send this amount off. - splitText = text:sub( startPosition, currentPosition ) - ChatThrottleLib:SendChatMessage( priority, AJM.MESSAGE_PREFIX, splitText, chatDestination, nil, characterOrChannelName, nil ) - -- New start position and count. - startPosition = currentPosition + 1 - countBytes = 1 - end - end - -- Any more bytes left to send? - if startPosition < currentPosition then - -- Yes, send them. - splitText = text:sub( startPosition, currentPosition ) - ChatThrottleLib:SendChatMessage( priority, AJM.MESSAGE_PREFIX, splitText, chatDestination, nil, characterOrChannelName, nil ) - end - end -end -- Functions available from Jamba Communications for other Jamba internal objects. JambaPrivate.Communications.COMMUNICATION_PRIORITY_BULK = AJM.COMMUNICATION_PRIORITY_BULK @@ -735,13 +652,3 @@ JambaPrivate.Communications.SendCommandToon = SendCommandToon JambaPrivate.Communications.SendCommandMaster = SendCommandMaster JambaPrivate.Communications.SendCommandToon = SendCommandToon JambaPrivate.Communications.AssumeTeamAlwaysOnline = AssumeTeamAlwaysOnline --- moved to jamba-team ---JambaPrivate.Communications.MESSAGE_CHARACTER_ONLINE = AJM.MESSAGE_CHARACTER_ONLINE ---JambaPrivate.Communications.MESSAGE_CHARACTER_OFFLINE = AJM.MESSAGE_CHARACTER_OFFLINE -JambaApi.SendChatMessage = SendChatMessage -JambaApi.COMMUNICATION_PRIORITY_BULK = AJM.COMMUNICATION_PRIORITY_BULK -JambaApi.COMMUNICATION_PRIORITY_NORMAL = AJM.COMMUNICATION_PRIORITY_NORMAL -JambaApi.COMMUNICATION_PRIORITY_ALERT = AJM.COMMUNICATION_PRIORITY_ALERT --- moved to jamba-team ---JambaApi.MESSAGE_CHARACTER_ONLINE = AJM.MESSAGE_CHARACTER_ONLINE ---JambaApi.MESSAGE_CHARACTER_OFFLINE = AJM.MESSAGE_CHARACTER_OFFLINE diff --git a/Jamba/JambaCore.lua b/Jamba/JambaCore.lua index 4a74c64..87ef9d6 100644 --- a/Jamba/JambaCore.lua +++ b/Jamba/JambaCore.lua @@ -353,7 +353,12 @@ local function SendCommandToTeam( moduleAddress, commandName, ... ) -- Get the name of the module. local moduleName = AJM.registeredModulesByAddress[moduleAddress] -- Send the command identified by the module name. + if moduleAddress == nil then + AJM:Print(L["Module Not Loaded:"], moduleName) + return + else JambaPrivate.Communications.SendCommandAll( moduleName, commandName, ... ) + end end -- Send a command for the module specified (using its address) to the master character. @@ -361,14 +366,24 @@ local function SendCommandToMaster( moduleAddress, commandName, ... ) -- Get the name of the module. local moduleName = AJM.registeredModulesByAddress[moduleAddress] -- Send the command identified by the module name. + if moduleAddress == nil then + AJM:Print(L["Module Not Loaded:"], moduleName) + return + else JambaPrivate.Communications.SendCommandMaster( moduleName, commandName, ... ) + end end local function SendCommandToToon( moduleAddress, characterName, commandName, ... ) -- Get the name of the module. local moduleName = AJM.registeredModulesByAddress[moduleAddress] -- Send the command identified by the module name. + if moduleAddress == nil then + AJM:Print(L["Module Not Loaded:"], moduleName) + return + else JambaPrivate.Communications.SendCommandToon( moduleName, characterName, commandName, ... ) + end end -- A command is received, pass it to the relevant module. @@ -377,7 +392,12 @@ local function OnCommandReceived( sender, moduleName, commandName, ... ) -- Get the address of the module. local moduleAddress = AJM.registeredModulesByName[moduleName] -- Pass the module its settings. - moduleAddress:JambaOnCommandReceived( sender, commandName, ... ) + if moduleAddress == nil then + AJM:Print(L["Module Not Loaded:"], moduleName) + return + else + moduleAddress:JambaOnCommandReceived( sender, commandName, ... ) + end end ------------------------------------------------------------------------------------------------------------- @@ -669,7 +689,7 @@ function AJM:CoreSettingsCreateInfo( top ) L["Text10"] ) --movingTop = movingTop - labelContinueHeight - movingTop = movingTop - buttonHeight * 3 +--[[ movingTop = movingTop - buttonHeight * 3 AJM.settingsControl.buttonPushSettingsForAllModules = JambaHelperSettings:CreateButton( AJM.settingsControl, buttonPushAllSettingsWidth, @@ -679,6 +699,7 @@ function AJM:CoreSettingsCreateInfo( top ) AJM.ShowChangeLog, L["Shows the Full changelog\nOpens a new Frame."] ) +--]] -- Special thanks Heading movingTop = movingTop - buttonHeight @@ -706,7 +727,7 @@ function AJM:CoreSettingsCreateInfo( top ) headingWidth, column1Left, movingTop, - L["To Schilm (Max Schilling) for Advanced Loot and Jamba-Quest for 4.3"] + L["To Schilm (Max Schilling) for Advanced Loot"] ) -- Useful websites Heading movingTop = movingTop - labelContinueHeight * 2 diff --git a/Jamba/JambaEmbeds.xml b/Jamba/JambaEmbeds.xml index 0f2ee8c..9788a46 100644 --- a/Jamba/JambaEmbeds.xml +++ b/Jamba/JambaEmbeds.xml @@ -29,6 +29,7 @@ http://jafula.com/jamba/ <Include file="Libs\LibDeformat-3.0\lib.xml" /> <Include file="LibItemUtilsJamba-1.0.lua" /> <Include file="LibActionButtonJamba-1.0.lua" /> + <Include file="Libs\LibButtonGlow-1.0\LibButtonGlow-1.0.lua" /> <Include file="Libs\LibRangeCheck-2.0\LibRangeCheck-2.0.lua" /> <Include file="Libs\UTF8\utf8data.lua" /> <Include file="Libs\UTF8\utf8.lua" /> @@ -36,4 +37,6 @@ http://jafula.com/jamba/ <Include file="AceGUIWidget-JambaNormalLabel.lua" /> <Include file="AceGUIWidget-JambaContinueLabel.lua" /> <Include file="AceGUIWidget-JambaKeybinding.lua" /> + <Include file="Libs\LibItemUpgradeInfo-1.0\LibItemUpgradeInfo-1.0.xml" /> + </Ui> diff --git a/Jamba/JambaMessage.lua b/Jamba/JambaMessage.lua index 3cac3d0..db70abc 100644 --- a/Jamba/JambaMessage.lua +++ b/Jamba/JambaMessage.lua @@ -1033,4 +1033,4 @@ JambaPrivate.Message.SendMessage = SendMessage JambaApi.MessageAreaList = MessageAreaList JambaApi.DefaultMessageArea = DefaultMessageArea JambaApi.DefaultWarningArea = DefaultWarningArea -JambaApi.MESSAGE_MESSAGE_AREAS_CHANGED = AJM.MESSAGE_MESSAGE_AREAS_CHANGED +JambaApi.MESSAGE_MESSAGE_AREAS_CHANGED = AJM.MESSAGE_MESSAGE_AREAS_CHANGED \ No newline at end of file diff --git a/Jamba/JambaStartupMessage.xml b/Jamba/JambaStartupMessage.xml index db4cbfb..c6c9507 100644 --- a/Jamba/JambaStartupMessage.xml +++ b/Jamba/JambaStartupMessage.xml @@ -79,4 +79,4 @@ </Button> </Frames> </Frame> -</Ui> +</Ui> \ No newline at end of file diff --git a/Jamba/JambaTag.lua b/Jamba/JambaTag.lua index 56210e6..1dc7b49 100644 --- a/Jamba/JambaTag.lua +++ b/Jamba/JambaTag.lua @@ -765,4 +765,4 @@ JambaApi.AllTagsList = AllTagsList JambaApi.AllTagsListIterator = AllTagsListIterator JambaApi.DoesCharacterHaveTag = DoesCharacterHaveTag JambaApi.IsAValidTag = IsAValidTag -JambaApi.GetCharacterWithTag = GetCharacterWithTag +JambaApi.GetCharacterWithTag = GetCharacterWithTag \ No newline at end of file diff --git a/Jamba/JambaTeam.lua b/Jamba/JambaTeam.lua index e0c8864..32fc934 100644 --- a/Jamba/JambaTeam.lua +++ b/Jamba/JambaTeam.lua @@ -39,6 +39,7 @@ AJM.settings = { master = "", teamList = {}, characterOnline = {}, + characterClass = {}, focusChangeSetMaster = false, masterChangePromoteLeader = false, inviteAcceptTeam = true, @@ -47,6 +48,7 @@ AJM.settings = { inviteAcceptGuild = false, inviteDeclineStrangers = false, inviteConvertToRaid = true, + inviteSetAllAssistant = false, lootSetAutomatically = false, lootSetFreeForAll = true, lootSetGroupLoot = false, @@ -102,7 +104,7 @@ function AJM:GetConfiguration() invite = { type = "input", name = L["Invite"], - desc = L["Invite team members to a party."], + desc = L["Invite team members to a party with or without a <tag>."], usage = "/jamba-team invite", get = false, set = "InviteTeamToParty", @@ -111,7 +113,7 @@ function AJM:GetConfiguration() type = "input", name = L["Invites"], desc = L["Invite team members to a <tag> party."], - usage = "/jamba-team invite <tag>", + usage = "/jamba-team inviteTag <tag>", get = false, set = "InviteTeamToPartys", }, @@ -295,7 +297,7 @@ local function SettingsCreateTeamList() topOfList - verticalSpacing - buttonHeight - verticalSpacing - buttonHeight - verticalSpacing - buttonHeight, L["Add Party"], AJM.SettingsAddPartyClick, - L["Adds all Party members to the team list"] + L["Adds all Party/Raid members to the team list"] ) AJM.settingsControl.teamListButtonRemove = JambaHelperSettings:CreateButton( AJM.settingsControl, @@ -304,7 +306,7 @@ local function SettingsCreateTeamList() topOfList - verticalSpacing - buttonHeight - verticalSpacing - buttonHeight - verticalSpacing - buttonHeight - verticalSpacing - buttonHeight, L["Remove"], AJM.SettingsRemoveClick, - L["Removes Party members from the team list"] + L["Removes Members from the team list"] ) AJM.settingsControl.teamListButtonSetMaster = JambaHelperSettings:CreateButton( AJM.settingsControl, @@ -393,7 +395,7 @@ local function SettingsCreatePartyInvitationsControl( top ) local checkBoxWidth = (headingWidth - horizontalSpacing) / 2 local column1Left = left local column2Left = left + checkBoxWidth + horizontalSpacing - local bottomOfSection = top - headingHeight - (checkBoxHeight * 3) - (verticalSpacing * 2) + local bottomOfSection = top - headingHeight - (checkBoxHeight * 4) - (verticalSpacing * 2) -- Create a heading. JambaHelperSettings:CreateHeading( AJM.settingsControl, L["Party Invitations Control"], top, false ) -- Create checkboxes. @@ -406,11 +408,20 @@ local function SettingsCreatePartyInvitationsControl( top ) AJM.SettingsinviteConvertToRaidToggle, L["Auto Convert To Raid if team is over five character's"] ) - AJM.settingsControl.partyInviteControlCheckBoxAcceptMembers = JambaHelperSettings:CreateCheckBox( + AJM.settingsControl.partyInviteControlCheckBoxSetAllAssist = JambaHelperSettings:CreateCheckBox( AJM.settingsControl, checkBoxWidth, column2Left, - top - headingHeight, + top - headingHeight, + L["Auto Set All Assistant"], + AJM.SettingsinviteSetAllAssistToggle, + L["Auto Set all raid Member's to Assistant"] + ) + AJM.settingsControl.partyInviteControlCheckBoxAcceptMembers = JambaHelperSettings:CreateCheckBox( + AJM.settingsControl, + checkBoxWidth, + column1Left, + top - headingHeight - checkBoxHeight, L["Accept from team."], AJM.SettingsAcceptInviteMembersToggle, L["Auto Accept invites from the team."] @@ -418,7 +429,7 @@ local function SettingsCreatePartyInvitationsControl( top ) AJM.settingsControl.partyInviteControlCheckBoxAcceptFriends = JambaHelperSettings:CreateCheckBox( AJM.settingsControl, checkBoxWidth, - column1Left, + column2Left, top - headingHeight - checkBoxHeight, L["Accept from friends."], AJM.SettingsAcceptInviteFriendsToggle, @@ -427,16 +438,16 @@ local function SettingsCreatePartyInvitationsControl( top ) AJM.settingsControl.partyInviteControlCheckBoxAcceptBNFriends = JambaHelperSettings:CreateCheckBox( AJM.settingsControl, checkBoxWidth, - column2Left, - top - headingHeight - checkBoxHeight, - L["Accept from BattleNet friends."], + column1Left, + top - headingHeight - checkBoxHeight - checkBoxHeight, + L["Accept From BattleTag Friends."], AJM.SettingsAcceptInviteBNFriendsToggle, - L["Auto Accept invites from your Battlenet or RealID Friends list."] + L["Auto Accept invites from your BatteTag or RealID Friends list."] ) AJM.settingsControl.partyInviteControlCheckBoxAcceptGuild = JambaHelperSettings:CreateCheckBox( AJM.settingsControl, checkBoxWidth, - column1Left, + column2Left, top - headingHeight - checkBoxHeight - checkBoxHeight, L["Accept from guild."], AJM.SettingsAcceptInviteGuildToggle, @@ -445,8 +456,8 @@ local function SettingsCreatePartyInvitationsControl( top ) AJM.settingsControl.partyInviteControlCheckBoxDeclineStrangers = JambaHelperSettings:CreateCheckBox( AJM.settingsControl, checkBoxWidth, - column2Left, - top - headingHeight - checkBoxHeight - checkBoxHeight, + column1Left, + top - headingHeight - checkBoxHeight - checkBoxHeight - checkBoxHeight, L["Decline from strangers."], AJM.SettingsDeclineInviteStrangersToggle, L["Decline invites from anyone else."] @@ -468,7 +479,7 @@ local function SettingsCreatePartyLootControl( top ) local indentContinueLabel = horizontalSpacing * 13 local column1Left = left local column2Left = left + checkBoxWidth + horizontalSpacing - local bottomOfSection = top - headingHeight - checkBoxHeight - radioBoxHeight - verticalSpacing - checkBoxHeight - checkBoxHeight - (verticalSpacing * 4) - labelContinueHeight - checkBoxHeight + local bottomOfSection = top - headingHeight - checkBoxHeight - radioBoxHeight - verticalSpacing - checkBoxHeight - checkBoxHeight - checkBoxHeight - (verticalSpacing * 4) - labelContinueHeight - checkBoxHeight -- Create a heading. JambaHelperSettings:CreateHeading( AJM.settingsControl, L["Party Loot Control (Instances)"], top, false ) -- Create checkboxes. @@ -626,9 +637,24 @@ local function TeamList() end local function Offline() - return pairs( AJM.db.characterOnline) + return pairs( AJM.db.characterOnline ) +end + +local function characterClass() + return pairs( AJM.db.characterClass ) end +local function setClass() + for characterName, position in pairs( AJM.db.teamList ) do + local class, classFileName, classIndex = UnitClass( Ambiguate(characterName, "none") ) + --AJM:Print("new", class, CharacterName ) + if class ~= nil then + AJM.db.characterClass[characterName] = classFileName + end + end +end + + -- Get the largest order number from the team list. local function GetTeamListMaximumOrder() local largestPosition = 0 @@ -754,11 +780,19 @@ local function AddMember( characterName ) if characterName ~= nil and characterName:trim() ~= "" and characterName:len() > 1 then -- If the character is not already in the list... local character = JambaUtilities:AddRealmToNameIfMissing( characterName ) - if AJM.db.teamList[character] == nil then + if AJM.db.teamList[character] == nil then -- Get the maximum order number. local maxOrder = GetTeamListMaximumOrder() -- Yes, add to the member list. AJM.db.teamList[character] = maxOrder + 1 + + local class, classFileName, classIndex = UnitClass( characterName ) + if class ~= nil then + --AJM:Print( classFileName ) + AJM.db.characterClass[character] = classFileName + else + AJM.db.characterClass[character] = nil + end JambaPrivate.Team.SetTeamOnline() --AJM.Print("teamList", character) -- Send a message to any listeners that AJM character has been added. @@ -779,12 +813,23 @@ end -- Add all party members to the member list. does not worl cross rwalm todo function AJM:AddPartyMembers() - local numberPartyMembers = GetNumSubgroupMembers() + --local numberPartyMembers = GetNumSubgroupMembers() + local numberPartyMembers = GetNumGroupMembers() for iteratePartyMembers = numberPartyMembers, 1, -1 do - local partyMemberName, partyMemberRealm = UnitName( "party"..iteratePartyMembers ) - local character = JambaUtilities:AddRealmToNameIfNotNil( partyMemberName, partyMemberRealm ) - if IsCharacterInTeam( character ) == false then - AddMember( character ) + --AJM:Print("party/raid", numberPartyMembers, iteratePartyMembers) + local inRaid = IsInRaid() + if inRaid == true then + local partyMemberName, partyMemberRealm = UnitName( "raid"..iteratePartyMembers ) + local character = JambaUtilities:AddRealmToNameIfNotNil( partyMemberName, partyMemberRealm ) + if IsCharacterInTeam( character ) == false then + AddMember( character ) + end + else + local partyMemberName, partyMemberRealm = UnitName( "party"..iteratePartyMembers ) + local character = JambaUtilities:AddRealmToNameIfNotNil( partyMemberName, partyMemberRealm ) + if IsCharacterInTeam( character ) == false then + AddMember( character ) + end end end end @@ -1048,30 +1093,25 @@ end ------------------------------------------------------------------------------------------------------------- -- Invite team to party. -function AJM:InviteTeamToParty() - -- Iterate each enabled member and invite them to a group. - AJM.inviteList = {} - AJM.inviteCount = 0 - for index, characterName in TeamListOrdered() do - if GetCharacterOnlineStatus( characterName ) == true then - -- As long as they are not the player doing the inviting. - if characterName ~= AJM.characterName then - AJM.inviteList[AJM.inviteCount] = characterName - AJM.inviteCount = AJM.inviteCount + 1 - end - end - end - AJM.currentInviteCount = 0 - AJM:ScheduleTimer( "DoTeamPartyInvite", 0.5 ) + +function AJM:InviteTeamToPartys() + --Clean up in next xpac! + AJM:Print("This Command Has Been Removed and is now used as \"/Jamba-Team Invite <TagName>/") end + function AJM.DoTeamPartyInvite() InviteUnit( AJM.inviteList[AJM.currentInviteCount] ) AJM.currentInviteCount = AJM.currentInviteCount + 1 if AJM.currentInviteCount < AJM.inviteCount then --if GetTeamListMaximumOrderOnline() > 5 and AJM.db.inviteConvertToRaid == true then if AJM.inviteCount > 5 and AJM.db.inviteConvertToRaid == true then - ConvertToRaid() + if AJM.db.inviteSetAllAssistant == true then + ConvertToRaid() + SetEveryoneIsAssistant(true) + else + ConvertToRaid() + end end AJM:ScheduleTimer( "DoTeamPartyInvite", 0.5 ) else @@ -1081,28 +1121,28 @@ function AJM.DoTeamPartyInvite() end end -function AJM:InviteTeamToPartys( info, tag ) + +function AJM:InviteTeamToParty( info, tag ) -- Iterate each enabled member and invite them to a group. - if tag == nil then - return + if tag == nil or tag == "" then + tag = "all" end - if JambaPrivate.Tag.DoesCharacterHaveTag( AJM.characterName, tag ) == false then - --AJM:Print("IDONOTHAVETAG", tag) - for index, characterName in TeamListOrdered() do - --AJM:Print("NextChartohavetag", tag, characterName ) - if JambaPrivate.Tag.DoesCharacterHaveTag( characterName, tag ) then - --AJM:Print("i have tag", tag, characterName ) - AJM:JambaSendCommandToTeam( AJM.COMMAND_TAG_PARTY, characterName, tag ) - break + if JambaUtilities:InTagList(tag) == true then + if JambaPrivate.Tag.DoesCharacterHaveTag( AJM.characterName, tag ) == false then + --AJM:Print("IDONOTHAVETAG", tag) + for index, characterName in TeamListOrderedOnline() do + --AJM:Print("NextChartohavetag", tag, characterName ) + if JambaPrivate.Tag.DoesCharacterHaveTag( characterName, tag ) then + --AJM:Print("i have tag", tag, characterName ) + AJM:JambaSendCommandToTeam( AJM.COMMAND_TAG_PARTY, characterName, tag ) + break + end end - end - return - else - AJM.inviteList = {} - AJM.inviteCount = 0 - for index, characterName in TeamListOrdered() do - if GetCharacterOnlineStatus( characterName ) == true then - --AJM:Print("test", characterName, tag ) + return + else + AJM.inviteList = {} + AJM.inviteCount = 0 + for index, characterName in TeamListOrderedOnline() do if JambaPrivate.Tag.DoesCharacterHaveTag( characterName, tag ) then --AJM:Print("HasTag", characterName, tag ) -- As long as they are not the player doing the inviting. @@ -1113,17 +1153,19 @@ function AJM:InviteTeamToPartys( info, tag ) end end end - end - AJM.currentInviteCount = 0 - AJM:ScheduleTimer( "DoTeamPartyInvite", 0.5 ) + AJM.currentInviteCount = 0 + AJM:ScheduleTimer( "DoTeamPartyInvite", 0.5 ) + else + AJM:Print (L["Unknown Tag "]..tag ) + end end -function AJM:TagParty(test, characterName, tag, ...) +function AJM:TagParty(event, characterName, tag, ...) --AJM:Print("test", characterName, tag ) if AJM.characterName == characterName then --AJM:Print("this msg is for me", characterName ) if JambaPrivate.Tag.DoesCharacterHaveTag( AJM.characterName, tag ) then - AJM:InviteTeamToPartys( nil, tag) + AJM:InviteTeamToParty( nil, tag) else return end @@ -1241,14 +1283,12 @@ function AJM:PARTY_INVITE_REQUEST( event, inviter, ... ) -- Accept an invite from BNET/RealD? if AJM.db.inviteAcceptBNFriends and BNFeaturesEnabledAndConnected() == true then -- Iterate each friend; searching for the inviter in the friends list. - for bnIndex = 1, BNGetNumFriends() do - --local _, _, _, _, name, toonid = BNGetFriendGameAccountInfo( bnIndex ) + local _, numFriends = BNGetNumFriends() + for bnIndex = 1, numFriends do for toonIndex = 1, BNGetNumFriendGameAccounts( bnIndex ) do local _, toonName, client, realmName = BNGetFriendGameAccountInfo( bnIndex, toonIndex ) - --AJM:Print("Test", inviter, toonName, realmName, client ) + --AJM:Print("BNFrindsTest", toonName, client, realmName, "inviter", inviter) if client == "WoW" then - --inviter = inviter:match("(.+)%-.+") or inviter - --AJM:Print("True", toonName.."-"..realmName ) if toonName == inviter or toonName.."-"..realmName == inviter then acceptInvite = true break @@ -1371,6 +1411,9 @@ function AJM:OnInitialize() AJM.db.teamList = JambaUtilities:CopyTable( updatedTeamList ) end end + --Sets The class of the char. + setClass() + --todo look at this ebony -- local updateMatchStart = AJM.db.master:find( "-" ) -- if not updateMatchStart then @@ -1431,6 +1474,7 @@ function AJM:SettingsRefresh() AJM.settingsControl.partyInviteControlCheckBoxAcceptGuild:SetValue( AJM.db.inviteAcceptGuild ) AJM.settingsControl.partyInviteControlCheckBoxDeclineStrangers:SetValue( AJM.db.inviteDeclineStrangers ) AJM.settingsControl.partyInviteControlCheckBoxConvertToRaid:SetValue( AJM.db.inviteConvertToRaid ) + AJM.settingsControl.partyInviteControlCheckBoxSetAllAssist:SetValue( AJM.db.inviteSetAllAssistant ) -- Party Loot Control. AJM.settingsControl.partyLootControlCheckBoxSetLootMethod:SetValue( AJM.db.lootSetAutomatically ) AJM.settingsControl.partyLootControlCheckBoxSetFFA:SetValue( AJM.db.lootSetFreeForAll ) @@ -1440,6 +1484,7 @@ function AJM:SettingsRefresh() --AJM.settingsControl.partyLootControlCheckBoxFriendsNotStrangers:SetValue( AJM.db.lootToGroupFriendsAreNotStrangers ) --AJM.settingsControl.partyLootControlCheckBoxSetOptOutOfLoot:SetValue( AJM.db.lootSlavesOptOutOfLoot ) -- Ensure correct state. + AJM.settingsControl.partyInviteControlCheckBoxSetAllAssist:SetDisabled (not AJM.db.inviteConvertToRaid ) AJM.settingsControl.partyLootControlCheckBoxSetFFA:SetDisabled( not AJM.db.lootSetAutomatically ) AJM.settingsControl.partyLootControlCheckBoxSetGroupLoot:SetDisabled( not AJM.db.lootSetAutomatically ) AJM.settingsControl.partyLootControlCheckBoxSetPersLooter:SetDisabled( not AJM.db.lootSetAutomatically ) @@ -1464,6 +1509,7 @@ function AJM:JambaOnSettingsReceived( characterName, settings ) AJM.db.inviteAcceptGuild = settings.inviteAcceptGuild AJM.db.inviteDeclineStrangers = settings.inviteDeclineStrangers AJM.db.inviteConvertToRaid = settings.inviteConvertToRaid + AJM.db.inviteSetAllAssistant = settings.inviteSetAllAssistant AJM.db.lootSetAutomatically = settings.lootSetAutomatically AJM.db.lootSetFreeForAll = settings.lootSetFreeForAll AJM.db.lootSetGroupLoot = settings.lootSetGroupLoot @@ -1515,6 +1561,17 @@ function AJM:SettingsTeamListScrollRefresh() if isOnline == false then displayCharacterName = characterName.." "..L["(Offline)"] end + local class = AJM.db.characterClass[characterName] + --AJM:Print("Test", class) + -- Set Class Color + if class ~= nil then + local color = RAID_CLASS_COLORS[class] + --Debug -- AJM:Print("Name", characterName, class) + AJM.settingsControl.teamList.rows[iterateDisplayRows].columns[1].textString:SetTextColor( color.r, color.g, color.b, 1.0 ) + if isOnline == false then + AJM.settingsControl.teamList.rows[iterateDisplayRows].columns[1].textString:SetTextColor( color.r, color.g, color.b, 0.4 ) + end + end local isMaster = false local characterType = L["Minion"] if IsCharacterTheMaster( characterName ) == true then @@ -1525,14 +1582,13 @@ function AJM:SettingsTeamListScrollRefresh() AJM.settingsControl.teamList.rows[iterateDisplayRows].columns[2].textString:SetText( characterType ) -- Master is a yellow colour. if isMaster == true then - AJM.settingsControl.teamList.rows[iterateDisplayRows].columns[1].textString:SetTextColor( 1.0, 0.96, 0.41, 1.0 ) + --AJM.settingsControl.teamList.rows[iterateDisplayRows].columns[1].textString:SetTextColor( 1.0, 0.96, 0.41, 1.0 ) AJM.settingsControl.teamList.rows[iterateDisplayRows].columns[2].textString:SetTextColor( 1.0, 0.96, 0.41, 1.0 ) end - -- Offline is a grey colour. - if isOnline == false then - AJM.settingsControl.teamList.rows[iterateDisplayRows].columns[1].textString:SetTextColor( 1.0, 1.0, 1.0, 0.6 ) - AJM.settingsControl.teamList.rows[iterateDisplayRows].columns[2].textString:SetTextColor( 1.0, 1.0, 1.0, 0.6 ) - end + -- -- Offline is a grey colour. + -- + -- AJM.settingsControl.teamList.rows[iterateDisplayRows].columns[2].textString:SetTextColor( 1.0, 1.0, 1.0, 0.6 ) + -- end -- Highlight the selected row. if dataRowNumber == AJM.settingsControl.teamListHighlightRow then --AJM.settingsControl.teamList.rows[iterateDisplayRows].highlight:SetTexture( 1.0, 1.0, 0.0, 0.5 ) @@ -1600,7 +1656,7 @@ function AJM.SettingsAddPartyClick( event ) AJM:AddPartyMembers() end function AJM:SettingsInviteClick( event ) - AJM:InviteTeamToParty() + AJM:InviteTeamToParty(nil) end function AJM:SettingsDisbandClick( event ) @@ -1665,6 +1721,10 @@ function AJM:SettingsinviteConvertToRaidToggle( event, checked ) AJM:SettingsRefresh() end +function AJM:SettingsinviteSetAllAssistToggle( event, checked ) + AJM.db.inviteSetAllAssistant = checked +end + function AJM:SettingsSetLootMethodToggle( event, checked ) AJM.db.lootSetAutomatically = checked AJM:SettingsRefresh() @@ -1806,3 +1866,5 @@ JambaApi.setOnline = setOnline JambaApi.GetTeamListMaximumOrderOnline = GetTeamListMaximumOrderOnline JambaApi.TeamListOrderedOnline = TeamListOrderedOnline JambaApi.GetPositionForCharacterNameOnline = GetPositionForCharacterNameOnline +JambaApi.GetClass = characterClass +JambaApi.SetClass = setClass diff --git a/Jamba/JambaUtilities.lua b/Jamba/JambaUtilities.lua index 8154374..682ae3d 100644 --- a/Jamba/JambaUtilities.lua +++ b/Jamba/JambaUtilities.lua @@ -120,6 +120,9 @@ end -- itemLink - the item link to extract an item id from. -- Gets an item id from an item link. Returns nil, if an item id could not be found. function JambaUtilities:GetItemIdFromItemLink( itemLink ) + if itemLink == nil then + return + end local itemIdFound = nil local itemStringStart, itemStringEnd, itemString = itemLink:find( "^|c%x+|H(.+)|h%[.*%]" ) if itemStringStart then @@ -189,16 +192,84 @@ function JambaUtilities:FixValueToRange( value, minValue, maxValue ) end - - - - - - - - - - - +function JambaUtilities:CheckIsFromMyRealm( name ) + --print("test", name) + local sameRealm = false + if name ~= nil then + local player, realm = strsplit( "-", name, 2 ) + local myRealm = string.gsub(GetRealmName(), "%s+", "") + if realm == myRealm then + --print("Real SameRealm") + sameRealm = true + else + local connectedServers = GetAutoCompleteRealms() + if connectedServers then --Check if realm matches any realm in our connection + for i = 1, #connectedServers do + if realm == connectedServers[i] then + --print("connectedRealm") + sameRealm = true + end + end + else + --print("NotFromARealm") + sameRealm = false + end + end + end + return sameRealm +end +function JambaUtilities:InTagList( tag ) + local isInTagList = false + if tag ~= nil then + local tagList = JambaApi.AllTagsList() + for i = 1, #tagList do + if tag == tagList[i] then + isInTagList = true + end + end + end + return isInTagList +end + +function JambaUtilities:TooltipScaner(item) + local text = nil + local text2 = nil + if item ~= nil then + local tooltipName = "AJMScanner" + local tooltipScanner = CreateFrame("GameTooltip", tooltipName, nil, "GameTooltipTemplate") + tooltipScanner:SetOwner(UIParent, "ANCHOR_NONE") + tooltipScanner:SetHyperlink(item) + local tooltipText = _G[tooltipName.."TextLeft2"]:GetText() + local tooltipTextTwo = _G[tooltipName.."TextLeft3"]:GetText() + --print("test", tooltipTextTwo) + text = tooltipText + text2 = tooltipTextTwo + end + --print("test9", text, text2) + return text, text2 +end + + +function JambaUtilities:ToolTipBagScaner(item, bag, slot) + --print("test", item, bag, slot ) + if item ~= nil or bag ~= nil or slot ~= nil then + local boe = nil + local ilvl = nil + local tooltipName = "AJMBagScanner" + local tooltipbagScanner = CreateFrame("GameTooltip", tooltipName , nil, "GameTooltipTemplate") + tooltipbagScanner:SetOwner(UIParent, "ANCHOR_NONE") + tooltipbagScanner:SetBagItem(bag, slot) + tooltipbagScanner:Show() + for i = 1,6 do + local t = _G[tooltipName.."TextLeft"..i]:GetText() + --print("test", t) + if (t == ITEM_SOULBOUND) then + boe = ITEM_SOULBOUND + end + end + tooltipbagScanner:Hide() + return boe + end +end \ No newline at end of file diff --git a/Jamba/Libs/AceComm-3.0/AceComm-3.0.lua b/Jamba/Libs/AceComm-3.0/AceComm-3.0.lua index 8d944a5..5815530 100644 --- a/Jamba/Libs/AceComm-3.0/AceComm-3.0.lua +++ b/Jamba/Libs/AceComm-3.0/AceComm-3.0.lua @@ -9,7 +9,7 @@ -- make into AceComm. -- @class file -- @name AceComm-3.0 --- @release $Id: AceComm-3.0.lua 1107 2014-02-19 16:40:32Z nevcairiel $ +-- @release $Id: AceComm-3.0.lua 1161 2017-08-12 14:30:16Z funkydude $ --[[ AceComm-3.0 @@ -17,15 +17,14 @@ TODO: Time out old data rotting around from dead senders? Not a HUGE deal since ]] -local MAJOR, MINOR = "AceComm-3.0", 9 +local CallbackHandler = LibStub("CallbackHandler-1.0") +local CTL = assert(ChatThrottleLib, "AceComm-3.0 requires ChatThrottleLib") +local MAJOR, MINOR = "AceComm-3.0", 10 local AceComm,oldminor = LibStub:NewLibrary(MAJOR, MINOR) if not AceComm then return end -local CallbackHandler = LibStub:GetLibrary("CallbackHandler-1.0") -local CTL = assert(ChatThrottleLib, "AceComm-3.0 requires ChatThrottleLib") - -- Lua APIs local type, next, pairs, tostring = type, next, pairs, tostring local strsub, strfind = string.sub, string.find diff --git a/Jamba/Libs/AceConfig-3.0/AceConfig-3.0.lua b/Jamba/Libs/AceConfig-3.0/AceConfig-3.0.lua index 3bedf8c..a99ddf7 100644 --- a/Jamba/Libs/AceConfig-3.0/AceConfig-3.0.lua +++ b/Jamba/Libs/AceConfig-3.0/AceConfig-3.0.lua @@ -3,7 +3,7 @@ -- as well as associate it with a slash command. -- @class file -- @name AceConfig-3.0 --- @release $Id: AceConfig-3.0.lua 969 2010-10-07 02:11:48Z shefki $ +-- @release $Id: AceConfig-3.0.lua 1161 2017-08-12 14:30:16Z funkydude $ --[[ AceConfig-3.0 @@ -12,13 +12,14 @@ Very light wrapper library that combines all the AceConfig subcomponents into on ]] -local MAJOR, MINOR = "AceConfig-3.0", 2 +local cfgreg = LibStub("AceConfigRegistry-3.0") +local cfgcmd = LibStub("AceConfigCmd-3.0") + +local MAJOR, MINOR = "AceConfig-3.0", 3 local AceConfig = LibStub:NewLibrary(MAJOR, MINOR) if not AceConfig then return end -local cfgreg = LibStub("AceConfigRegistry-3.0") -local cfgcmd = LibStub("AceConfigCmd-3.0") --TODO: local cfgdlg = LibStub("AceConfigDialog-3.0", true) --TODO: local cfgdrp = LibStub("AceConfigDropdown-3.0", true) diff --git a/Jamba/Libs/AceConfig-3.0/AceConfigCmd-3.0/AceConfigCmd-3.0.lua b/Jamba/Libs/AceConfig-3.0/AceConfigCmd-3.0/AceConfigCmd-3.0.lua index 2023981..33f9fe1 100644 --- a/Jamba/Libs/AceConfig-3.0/AceConfigCmd-3.0/AceConfigCmd-3.0.lua +++ b/Jamba/Libs/AceConfig-3.0/AceConfigCmd-3.0/AceConfigCmd-3.0.lua @@ -1,7 +1,7 @@ --- AceConfigCmd-3.0 handles access to an options table through the "command line" interface via the ChatFrames. -- @class file -- @name AceConfigCmd-3.0 --- @release $Id: AceConfigCmd-3.0.lua 1045 2011-12-09 17:58:40Z nevcairiel $ +-- @release $Id: AceConfigCmd-3.0.lua 1161 2017-08-12 14:30:16Z funkydude $ --[[ AceConfigCmd-3.0 @@ -14,8 +14,9 @@ REQUIRES: AceConsole-3.0 for command registration (loaded on demand) -- TODO: plugin args +local cfgreg = LibStub("AceConfigRegistry-3.0") -local MAJOR, MINOR = "AceConfigCmd-3.0", 13 +local MAJOR, MINOR = "AceConfigCmd-3.0", 14 local AceConfigCmd = LibStub:NewLibrary(MAJOR, MINOR) if not AceConfigCmd then return end @@ -23,7 +24,6 @@ if not AceConfigCmd then return end AceConfigCmd.commands = AceConfigCmd.commands or {} local commands = AceConfigCmd.commands -local cfgreg = LibStub("AceConfigRegistry-3.0") local AceConsole -- LoD local AceConsoleName = "AceConsole-3.0" diff --git a/Jamba/Libs/AceConfig-3.0/AceConfigDialog-3.0/AceConfigDialog-3.0.lua b/Jamba/Libs/AceConfig-3.0/AceConfigDialog-3.0/AceConfigDialog-3.0.lua index 3612fe8..f2d5266 100644 --- a/Jamba/Libs/AceConfig-3.0/AceConfigDialog-3.0/AceConfigDialog-3.0.lua +++ b/Jamba/Libs/AceConfig-3.0/AceConfigDialog-3.0/AceConfigDialog-3.0.lua @@ -1,10 +1,13 @@ --- AceConfigDialog-3.0 generates AceGUI-3.0 based windows based on option tables. -- @class file -- @name AceConfigDialog-3.0 --- @release $Id: AceConfigDialog-3.0.lua 1139 2016-07-03 07:43:51Z nevcairiel $ +-- @release $Id: AceConfigDialog-3.0.lua 1163 2017-08-14 14:04:39Z nevcairiel $ local LibStub = LibStub -local MAJOR, MINOR = "AceConfigDialog-3.0", 61 +local gui = LibStub("AceGUI-3.0") +local reg = LibStub("AceConfigRegistry-3.0") + +local MAJOR, MINOR = "AceConfigDialog-3.0", 64 local AceConfigDialog, oldminor = LibStub:NewLibrary(MAJOR, MINOR) if not AceConfigDialog then return end @@ -17,9 +20,6 @@ AceConfigDialog.frame.apps = AceConfigDialog.frame.apps or {} AceConfigDialog.frame.closing = AceConfigDialog.frame.closing or {} AceConfigDialog.frame.closeAllOverride = AceConfigDialog.frame.closeAllOverride or {} -local gui = LibStub("AceGUI-3.0") -local reg = LibStub("AceConfigRegistry-3.0") - -- Lua APIs local tconcat, tinsert, tsort, tremove, tsort = table.concat, table.insert, table.sort, table.remove, table.sort local strmatch, format = string.match, string.format @@ -611,6 +611,31 @@ local function confirmPopup(appName, rootframe, basepath, info, message, func, . end end +local function validationErrorPopup(message) + if not StaticPopupDialogs["ACECONFIGDIALOG30_VALIDATION_ERROR_DIALOG"] then + StaticPopupDialogs["ACECONFIGDIALOG30_VALIDATION_ERROR_DIALOG"] = {} + end + local t = StaticPopupDialogs["ACECONFIGDIALOG30_VALIDATION_ERROR_DIALOG"] + t.text = message + t.button1 = OKAY + t.preferredIndex = STATICPOPUP_NUMDIALOGS + local dialog, oldstrata + t.OnAccept = function() + if dialog and oldstrata then + dialog:SetFrameStrata(oldstrata) + end + end + t.timeout = 0 + t.whileDead = 1 + t.hideOnEscape = 1 + + dialog = StaticPopup_Show("ACECONFIGDIALOG30_VALIDATION_ERROR_DIALOG") + if dialog then + oldstrata = dialog:GetFrameStrata() + dialog:SetFrameStrata("TOOLTIP") + end +end + local function ActivateControl(widget, event, ...) --This function will call the set / execute handler for the widget --widget:GetUserDataTable() contains the needed info @@ -696,32 +721,26 @@ local function ActivateControl(widget, event, ...) end local rootframe = user.rootframe - if type(validated) == "string" then - --validate function returned a message to display - if rootframe.SetStatusText then - rootframe:SetStatusText(validated) - else - -- TODO: do something else. - end - PlaySound("igPlayerInviteDecline") - del(info) - return true - elseif not validated then - --validate returned false - if rootframe.SetStatusText then + if not validated or type(validated) == "string" then + if not validated then if usage then - rootframe:SetStatusText(name..": "..usage) + validated = name..": "..usage else if pattern then - rootframe:SetStatusText(name..": Expected "..pattern) + validated = name..": Expected "..pattern else - rootframe:SetStatusText(name..": Invalid Value") + validated = name..": Invalid Value" end end + end + + -- show validate message + if rootframe.SetStatusText then + rootframe:SetStatusText(validated) else - -- TODO: do something else + validationErrorPopup(validated) end - PlaySound("igPlayerInviteDecline") + PlaySound(PlaySoundKitID and "igPlayerInviteDecline" or 882) -- SOUNDKIT.IG_PLAYER_INVITE_DECLINE || XXX _DECLINE is actually missing from the table del(info) return true else diff --git a/Jamba/Libs/AceConfig-3.0/AceConfigRegistry-3.0/AceConfigRegistry-3.0.lua b/Jamba/Libs/AceConfig-3.0/AceConfigRegistry-3.0/AceConfigRegistry-3.0.lua index cf81973..b84e770 100644 --- a/Jamba/Libs/AceConfig-3.0/AceConfigRegistry-3.0/AceConfigRegistry-3.0.lua +++ b/Jamba/Libs/AceConfig-3.0/AceConfigRegistry-3.0/AceConfigRegistry-3.0.lua @@ -8,16 +8,16 @@ -- :IterateOptionsTables() (and :GetOptionsTable() if only given one argument) return a function reference that the requesting config handling addon must call with valid "uiType", "uiName". -- @class file -- @name AceConfigRegistry-3.0 --- @release $Id: AceConfigRegistry-3.0.lua 1139 2016-07-03 07:43:51Z nevcairiel $ -local MAJOR, MINOR = "AceConfigRegistry-3.0", 16 +-- @release $Id: AceConfigRegistry-3.0.lua 1161 2017-08-12 14:30:16Z funkydude $ +local CallbackHandler = LibStub("CallbackHandler-1.0") + +local MAJOR, MINOR = "AceConfigRegistry-3.0", 17 local AceConfigRegistry = LibStub:NewLibrary(MAJOR, MINOR) if not AceConfigRegistry then return end AceConfigRegistry.tables = AceConfigRegistry.tables or {} -local CallbackHandler = LibStub:GetLibrary("CallbackHandler-1.0") - if not AceConfigRegistry.callbacks then AceConfigRegistry.callbacks = CallbackHandler:New(AceConfigRegistry) end diff --git a/Jamba/Libs/AceEvent-3.0/AceEvent-3.0.lua b/Jamba/Libs/AceEvent-3.0/AceEvent-3.0.lua index 578ae25..bbf55c2 100644 --- a/Jamba/Libs/AceEvent-3.0/AceEvent-3.0.lua +++ b/Jamba/Libs/AceEvent-3.0/AceEvent-3.0.lua @@ -9,8 +9,10 @@ -- make into AceEvent. -- @class file -- @name AceEvent-3.0 --- @release $Id: AceEvent-3.0.lua 975 2010-10-23 11:26:18Z nevcairiel $ -local MAJOR, MINOR = "AceEvent-3.0", 3 +-- @release $Id: AceEvent-3.0.lua 1161 2017-08-12 14:30:16Z funkydude $ +local CallbackHandler = LibStub("CallbackHandler-1.0") + +local MAJOR, MINOR = "AceEvent-3.0", 4 local AceEvent = LibStub:NewLibrary(MAJOR, MINOR) if not AceEvent then return end @@ -18,8 +20,6 @@ if not AceEvent then return end -- Lua APIs local pairs = pairs -local CallbackHandler = LibStub:GetLibrary("CallbackHandler-1.0") - AceEvent.frame = AceEvent.frame or CreateFrame("Frame", "AceEvent30Frame") -- our event frame AceEvent.embeds = AceEvent.embeds or {} -- what objects embed this lib diff --git a/Jamba/Libs/AceGUI-3.0-SharedMediaWidgets/AceGUI-3.0-SharedMediaWidgets.toc b/Jamba/Libs/AceGUI-3.0-SharedMediaWidgets/AceGUI-3.0-SharedMediaWidgets.toc index 482fb71..3644493 100644 --- a/Jamba/Libs/AceGUI-3.0-SharedMediaWidgets/AceGUI-3.0-SharedMediaWidgets.toc +++ b/Jamba/Libs/AceGUI-3.0-SharedMediaWidgets/AceGUI-3.0-SharedMediaWidgets.toc @@ -1,4 +1,4 @@ -## Interface: 60200 +## Interface: 60200 ## X-Curse-Packaged-Version: r53 ## X-Curse-Project-Name: AceGUI-3.0-SharedMediaWidgets ## X-Curse-Project-ID: ace-gui-3-0-shared-media-widgets @@ -16,4 +16,4 @@ # Libs\AceGUI-3.0\AceGUI-3.0.xml #@end-no-lib-strip@ -widget.xml +widget.xml \ No newline at end of file diff --git a/Jamba/Libs/AceGUI-3.0-SharedMediaWidgets/AceGUI-3.0-SharedMediaWidgets/widget.xml b/Jamba/Libs/AceGUI-3.0-SharedMediaWidgets/AceGUI-3.0-SharedMediaWidgets/widget.xml index 43c46a1..15cd102 100644 --- a/Jamba/Libs/AceGUI-3.0-SharedMediaWidgets/AceGUI-3.0-SharedMediaWidgets/widget.xml +++ b/Jamba/Libs/AceGUI-3.0-SharedMediaWidgets/AceGUI-3.0-SharedMediaWidgets/widget.xml @@ -6,4 +6,4 @@ <Script file="StatusbarWidget.lua" /> <Script file="BorderWidget.lua" /> <Script file="BackgroundWidget.lua" /> -</Ui> +</Ui> \ No newline at end of file diff --git a/Jamba/Libs/AceGUI-3.0-SharedMediaWidgets/widget.xml b/Jamba/Libs/AceGUI-3.0-SharedMediaWidgets/widget.xml index ecf2945..dd3eb2b 100644 --- a/Jamba/Libs/AceGUI-3.0-SharedMediaWidgets/widget.xml +++ b/Jamba/Libs/AceGUI-3.0-SharedMediaWidgets/widget.xml @@ -1,4 +1,4 @@ <Ui xmlns="http://www.blizzard.com/wow/ui/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.blizzard.com/wow/ui/ ..\FrameXML\UI.xsd"> <Include file="AceGUI-3.0-SharedMediaWidgets\widget.xml" /> -</Ui> +</Ui> \ No newline at end of file diff --git a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-Frame.lua b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-Frame.lua index 0dae68c..020eaf6 100644 --- a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-Frame.lua +++ b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-Frame.lua @@ -1,7 +1,7 @@ --[[----------------------------------------------------------------------------- Frame Container -------------------------------------------------------------------------------]] -local Type, Version = "Frame", 24 +local Type, Version = "Frame", 26 local AceGUI = LibStub and LibStub("AceGUI-3.0", true) if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end @@ -21,10 +21,14 @@ local CreateFrame, UIParent = CreateFrame, UIParent Scripts -------------------------------------------------------------------------------]] local function Button_OnClick(frame) - PlaySound("gsTitleOptionExit") + PlaySound(PlaySoundKitID and "gsTitleOptionExit" or 799) -- SOUNDKIT.GS_TITLE_OPTION_EXIT frame.obj:Hide() end +local function Frame_OnShow(frame) + frame.obj:Fire("OnShow") +end + local function Frame_OnClose(frame) frame.obj:Fire("OnClose") end @@ -186,6 +190,7 @@ local function Constructor() frame:SetBackdropColor(0, 0, 0, 1) frame:SetMinResize(400, 200) frame:SetToplevel(true) + frame:SetScript("OnShow", Frame_OnShow) frame:SetScript("OnHide", Frame_OnClose) frame:SetScript("OnMouseDown", Frame_OnMouseDown) diff --git a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-ScrollFrame.lua b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-ScrollFrame.lua index 6dd0c4d..9afb54b 100644 --- a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-ScrollFrame.lua +++ b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-ScrollFrame.lua @@ -6,8 +6,6 @@ local Type, Version = "ScrollFrame", 24 local AceGUI = LibStub and LibStub("AceGUI-3.0", true) if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end -local IsLegion = select(4, GetBuildInfo()) >= 70000 - -- Lua APIs local pairs, assert, type = pairs, assert, type local min, max, floor, abs = math.min, math.max, math.floor, math.abs @@ -178,11 +176,7 @@ local function Constructor() local scrollbg = scrollbar:CreateTexture(nil, "BACKGROUND") scrollbg:SetAllPoints(scrollbar) - if IsLegion then - scrollbg:SetColorTexture(0, 0, 0, 0.4) - else - scrollbg:SetTexture(0, 0, 0, 0.4) - end + scrollbg:SetColorTexture(0, 0, 0, 0.4) --Container Support local content = CreateFrame("Frame", nil, scrollframe) diff --git a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-TabGroup.lua b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-TabGroup.lua index 00be129..d00470e 100644 --- a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-TabGroup.lua +++ b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-TabGroup.lua @@ -2,7 +2,7 @@ TabGroup Container Container that uses tabs on top to switch between groups. -------------------------------------------------------------------------------]] -local Type, Version = "TabGroup", 35 +local Type, Version = "TabGroup", 36 local AceGUI = LibStub and LibStub("AceGUI-3.0", true) if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end @@ -63,7 +63,7 @@ Scripts -------------------------------------------------------------------------------]] local function Tab_OnClick(frame) if not (frame.selected or frame.disabled) then - PlaySound("igCharacterInfoTab") + PlaySound(PlaySoundKitID and "igCharacterInfoTab" or 841) -- SOUNDKIT.IG_CHARACTER_INFO_TAB frame.obj:SelectTab(frame.value) end end diff --git a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-TreeGroup.lua b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-TreeGroup.lua index 9bf17d8..617d5dc 100644 --- a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-TreeGroup.lua +++ b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-TreeGroup.lua @@ -6,8 +6,6 @@ local Type, Version = "TreeGroup", 40 local AceGUI = LibStub and LibStub("AceGUI-3.0", true) if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end -local IsLegion = select(4, GetBuildInfo()) >= 70000 - -- Lua APIs local next, pairs, ipairs, assert, type = next, pairs, ipairs, assert, type local math_min, math_max, floor = math.min, math.max, floor @@ -672,12 +670,7 @@ local function Constructor() local scrollbg = scrollbar:CreateTexture(nil, "BACKGROUND") scrollbg:SetAllPoints(scrollbar) - - if IsLegion then - scrollbg:SetColorTexture(0,0,0,0.4) - else - scrollbg:SetTexture(0,0,0,0.4) - end + scrollbg:SetColorTexture(0,0,0,0.4) local border = CreateFrame("Frame",nil,frame) border:SetPoint("TOPLEFT", treeframe, "TOPRIGHT") diff --git a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-Window.lua b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-Window.lua index bb0a2a2..6c36aca 100644 --- a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-Window.lua +++ b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIContainer-Window.lua @@ -21,14 +21,18 @@ local CreateFrame, UIParent = CreateFrame, UIParent ]] do local Type = "Window" - local Version = 4 + local Version = 6 + + local function frameOnShow(this) + this.obj:Fire("OnShow") + end local function frameOnClose(this) this.obj:Fire("OnClose") end local function closeOnClick(this) - PlaySound("gsTitleOptionExit") + PlaySound(PlaySoundKitID and "gsTitleOptionExit" or 799) -- SOUNDKIT.GS_TITLE_OPTION_EXIT this.obj:Hide() end @@ -180,6 +184,7 @@ do frame:SetFrameStrata("FULLSCREEN_DIALOG") frame:SetScript("OnMouseDown", frameOnMouseDown) + frame:SetScript("OnShow",frameOnShow) frame:SetScript("OnHide",frameOnClose) frame:SetMinResize(240,240) frame:SetToplevel(true) diff --git a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-Button.lua b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-Button.lua index c7c72c1..55b7bc8 100644 --- a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-Button.lua +++ b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-Button.lua @@ -2,7 +2,7 @@ Button Widget Graphical Button. -------------------------------------------------------------------------------]] -local Type, Version = "Button", 23 +local Type, Version = "Button", 24 local AceGUI = LibStub and LibStub("AceGUI-3.0", true) if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end @@ -18,7 +18,7 @@ Scripts -------------------------------------------------------------------------------]] local function Button_OnClick(frame, ...) AceGUI:ClearFocus() - PlaySound("igMainMenuOption") + PlaySound(PlaySoundKitID and "igMainMenuOption" or 852) -- SOUNDKIT.IG_MAINMENU_OPTION frame.obj:Fire("OnClick", ...) end diff --git a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-CheckBox.lua b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-CheckBox.lua index 8847ebc..b8426e3 100644 --- a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-CheckBox.lua +++ b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-CheckBox.lua @@ -1,7 +1,7 @@ --[[----------------------------------------------------------------------------- Checkbox Widget -------------------------------------------------------------------------------]] -local Type, Version = "CheckBox", 22 +local Type, Version = "CheckBox", 23 local AceGUI = LibStub and LibStub("AceGUI-3.0", true) if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end @@ -60,9 +60,9 @@ local function CheckBox_OnMouseUp(frame) self:ToggleChecked() if self.checked then - PlaySound("igMainMenuOptionCheckBoxOn") + PlaySound(PlaySoundKitID and "igMainMenuOptionCheckBoxOn" or 856) -- SOUNDKIT.IG_MAINMENU_OPTION_CHECKBOX_ON else -- for both nil and false (tristate) - PlaySound("igMainMenuOptionCheckBoxOff") + PlaySound(PlaySoundKitID and "igMainMenuOptionCheckBoxOff" or 857) -- SOUNDKIT.IG_MAINMENU_OPTION_CHECKBOX_OFF end self:Fire("OnValueChanged", self.checked) diff --git a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-ColorPicker.lua b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-ColorPicker.lua index 740a467..05e2b57 100644 --- a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-ColorPicker.lua +++ b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-ColorPicker.lua @@ -5,8 +5,6 @@ local Type, Version = "ColorPicker", 23 local AceGUI = LibStub and LibStub("AceGUI-3.0", true) if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end -local IsLegion = select(4, GetBuildInfo()) >= 70000 - -- Lua APIs local pairs = pairs @@ -148,11 +146,7 @@ local function Constructor() local texture = frame:CreateTexture(nil, "BACKGROUND") texture:SetWidth(16) texture:SetHeight(16) - if IsLegion then - texture:SetColorTexture(1, 1, 1) - else - texture:SetTexture(1, 1, 1) - end + texture:SetColorTexture(1, 1, 1) texture:SetPoint("CENTER", colorSwatch) texture:Show() diff --git a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-DropDown-Items.lua b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-DropDown-Items.lua index 5ea840f..cb9c14c 100644 --- a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-DropDown-Items.lua +++ b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-DropDown-Items.lua @@ -1,9 +1,7 @@ ---[[ $Id: AceGUIWidget-DropDown-Items.lua 1137 2016-05-15 10:57:36Z nevcairiel $ ]]-- +--[[ $Id: AceGUIWidget-DropDown-Items.lua 1161 2017-08-12 14:30:16Z funkydude $ ]]-- local AceGUI = LibStub("AceGUI-3.0") -local IsLegion = select(4, GetBuildInfo()) >= 70000 - -- Lua APIs local select, assert = select, assert @@ -325,7 +323,7 @@ end -- Does not close the pullout on click. do local widgetType = "Dropdown-Item-Toggle" - local widgetVersion = 3 + local widgetVersion = 4 local function UpdateToggle(self) if self.value then @@ -345,9 +343,9 @@ do if self.disabled then return end self.value = not self.value if self.value then - PlaySound("igMainMenuOptionCheckBoxOn") + PlaySound(PlaySoundKitID and "igMainMenuOptionCheckBoxOn" or 856) -- SOUNDKIT.IG_MAINMENU_OPTION_CHECKBOX_ON else - PlaySound("igMainMenuOptionCheckBoxOff") + PlaySound(PlaySoundKitID and "igMainMenuOptionCheckBoxOff" or 857) -- SOUNDKIT.IG_MAINMENU_OPTION_CHECKBOX_OFF end UpdateToggle(self) self:Fire("OnValueChanged", self.value) @@ -457,11 +455,7 @@ do local line = self.frame:CreateTexture(nil, "OVERLAY") line:SetHeight(1) - if IsLegion then - line:SetColorTexture(.5, .5, .5) - else - line:SetTexture(.5, .5, .5) - end + line:SetColorTexture(.5, .5, .5) line:SetPoint("LEFT", self.frame, "LEFT", 10, 0) line:SetPoint("RIGHT", self.frame, "RIGHT", -10, 0) diff --git a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-DropDown.lua b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-DropDown.lua index 0dd3bff..37a365b 100644 --- a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-DropDown.lua +++ b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-DropDown.lua @@ -1,4 +1,4 @@ ---[[ $Id: AceGUIWidget-DropDown.lua 1116 2014-10-12 08:15:46Z nevcairiel $ ]]-- +--[[ $Id: AceGUIWidget-DropDown.lua 1161 2017-08-12 14:30:16Z funkydude $ ]]-- local AceGUI = LibStub("AceGUI-3.0") -- Lua APIs @@ -356,7 +356,7 @@ end do local widgetType = "Dropdown" - local widgetVersion = 30 + local widgetVersion = 31 --[[ Static data ]]-- @@ -381,7 +381,7 @@ do local function Dropdown_TogglePullout(this) local self = this.obj - PlaySound("igMainMenuOptionCheckBoxOn") -- missleading name, but the Blizzard code uses this sound + PlaySound(PlaySoundKitID and "igMainMenuOptionCheckBoxOn" or 856) -- SOUNDKIT.IG_MAINMENU_OPTION_CHECKBOX_ON if self.open then self.open = nil self.pullout:Close() diff --git a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-EditBox.lua b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-EditBox.lua index d039026..6594684 100644 --- a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-EditBox.lua +++ b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-EditBox.lua @@ -1,7 +1,7 @@ --[[----------------------------------------------------------------------------- EditBox Widget -------------------------------------------------------------------------------]] -local Type, Version = "EditBox", 26 +local Type, Version = "EditBox", 27 local AceGUI = LibStub and LibStub("AceGUI-3.0", true) if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end @@ -73,7 +73,7 @@ local function EditBox_OnEnterPressed(frame) local value = frame:GetText() local cancel = self:Fire("OnEnterPressed", value) if not cancel then - PlaySound("igMainMenuOptionCheckBoxOn") + PlaySound(PlaySoundKitID and "igMainMenuOptionCheckBoxOn" or 856) -- SOUNDKIT.IG_MAINMENU_OPTION_CHECKBOX_ON HideButton(self) end end diff --git a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-InteractiveLabel.lua b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-InteractiveLabel.lua index 9e06049..036efee 100644 --- a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-InteractiveLabel.lua +++ b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-InteractiveLabel.lua @@ -1,7 +1,7 @@ --[[----------------------------------------------------------------------------- InteractiveLabel Widget -------------------------------------------------------------------------------]] -local Type, Version = "InteractiveLabel", 20 +local Type, Version = "InteractiveLabel", 21 local AceGUI = LibStub and LibStub("AceGUI-3.0", true) if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end diff --git a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-Label.lua b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-Label.lua index 23897d5..75817a0 100644 --- a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-Label.lua +++ b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-Label.lua @@ -2,7 +2,7 @@ Label Widget Displays text and optionally an icon. -------------------------------------------------------------------------------]] -local Type, Version = "Label", 23 +local Type, Version = "Label", 24 local AceGUI = LibStub and LibStub("AceGUI-3.0", true) if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end @@ -78,6 +78,8 @@ local methods = { self:SetImageSize(16, 16) self:SetColor() self:SetFontObject() + self:SetJustifyH("LEFT") + self:SetJustifyV("TOP") -- reset the flag self.resizing = nil @@ -134,6 +136,14 @@ local methods = { self.image:SetHeight(height) UpdateImageAnchor(self) end, + + ["SetJustifyH"] = function(self, justifyH) + self.label:SetJustifyH(justifyH) + end, + + ["SetJustifyV"] = function(self, justifyV) + self.label:SetJustifyV(justifyV) + end, } --[[----------------------------------------------------------------------------- @@ -144,9 +154,6 @@ local function Constructor() frame:Hide() local label = frame:CreateFontString(nil, "BACKGROUND", "GameFontHighlightSmall") - label:SetJustifyH("LEFT") - label:SetJustifyV("TOP") - local image = frame:CreateTexture(nil, "BACKGROUND") -- create widget diff --git a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-Slider.lua b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-Slider.lua index 583f29d..5946d8d 100644 --- a/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-Slider.lua +++ b/Jamba/Libs/AceGUI-3.0/widgets/AceGUIWidget-Slider.lua @@ -2,7 +2,7 @@ Slider Widget Graphical Slider, like, for Range values. -------------------------------------------------------------------------------]] -local Type, Version = "Slider", 21 +local Type, Version = "Slider", 22 local AceGUI = LibStub and LibStub("AceGUI-3.0", true) if not AceGUI or (AceGUI:GetWidgetVersion(Type) or 0) >= Version then return end @@ -108,7 +108,7 @@ local function EditBox_OnEnterPressed(frame) end if value then - PlaySound("igMainMenuOptionCheckBoxOn") + PlaySound(PlaySoundKitID and "igMainMenuOptionCheckBoxOn" or 856) -- SOUNDKIT.IG_MAINMENU_OPTION_CHECKBOX_ON self.slider:SetValue(value) self:Fire("OnMouseUp", value) end diff --git a/Jamba/Libs/LibBabble-Class-3.0/LibBabble-Class-3.0.lua b/Jamba/Libs/LibBabble-Class-3.0/LibBabble-Class-3.0.lua index 8c406f2..db5985e 100644 --- a/Jamba/Libs/LibBabble-Class-3.0/LibBabble-Class-3.0.lua +++ b/Jamba/Libs/LibBabble-Class-3.0/LibBabble-Class-3.0.lua @@ -1,4 +1,4 @@ ---[[ +--[[ Name: LibBabble-Class-3.0 Revision: $Rev: 50 $ Author(s): ckknight (ckknight@gmail.com) diff --git a/Jamba/Libs/LibBabble-Inventory-3.0/LibStub/tests/test.lua b/Jamba/Libs/LibBabble-Inventory-3.0/LibStub/tests/test.lua index 338bcf4..276ddab 100644 --- a/Jamba/Libs/LibBabble-Inventory-3.0/LibStub/tests/test.lua +++ b/Jamba/Libs/LibBabble-Inventory-3.0/LibStub/tests/test.lua @@ -38,4 +38,4 @@ assert(newOldMinor == 3) -- previous version was 3 (even though it gave a string local newLib, newOldMinor = LibStub:NewLibrary("Pants", 5) -- register a new library, using a normal number instead of a string assert(newLib) -assert(newOldMinor == 4) -- previous version was 4 (even though it gave a string) +assert(newOldMinor == 4) -- previous version was 4 (even though it gave a string) \ No newline at end of file diff --git a/Jamba/Libs/LibBabble-Inventory-3.0/LibStub/tests/test3.lua b/Jamba/Libs/LibBabble-Inventory-3.0/LibStub/tests/test3.lua index 21bda2b..30f7b94 100644 --- a/Jamba/Libs/LibBabble-Inventory-3.0/LibStub/tests/test3.lua +++ b/Jamba/Libs/LibBabble-Inventory-3.0/LibStub/tests/test3.lua @@ -11,4 +11,4 @@ assert(not success or not ret) -- either error because proxy is not a string or assert(not pcall(LibStub.NewLibrary, LibStub, "Something", "No number in here")) -- should error, minor has no string in it. -assert(not LibStub:GetLibrary("Something", true)) -- shouldn't've created it from the above statement +assert(not LibStub:GetLibrary("Something", true)) -- shouldn't've created it from the above statement \ No newline at end of file diff --git a/Jamba/Libs/LibBabble-Inventory-3.0/LibStub/tests/test4.lua b/Jamba/Libs/LibBabble-Inventory-3.0/LibStub/tests/test4.lua index 4735246..43eb338 100644 --- a/Jamba/Libs/LibBabble-Inventory-3.0/LibStub/tests/test4.lua +++ b/Jamba/Libs/LibBabble-Inventory-3.0/LibStub/tests/test4.lua @@ -38,4 +38,4 @@ loadfile("../LibStub.lua")() assert(LibStub.IterateLibraries == 123) -print("OK") +print("OK") \ No newline at end of file diff --git a/Jamba/Libs/LibBabble-Inventory-3.0/lib.xml b/Jamba/Libs/LibBabble-Inventory-3.0/lib.xml index 8b7a32c..b9f9904 100644 --- a/Jamba/Libs/LibBabble-Inventory-3.0/lib.xml +++ b/Jamba/Libs/LibBabble-Inventory-3.0/lib.xml @@ -2,4 +2,4 @@ ..\FrameXML\UI.xsd"> <Script file="LibBabble-3.0.lua" /> <Script file="LibBabble-Inventory-3.0.lua" /> -</Ui> +</Ui> \ No newline at end of file diff --git a/Jamba/Libs/LibBagUtils-1.0/LibBagUtils-1.0.xml b/Jamba/Libs/LibBagUtils-1.0/LibBagUtils-1.0.xml index 67b3140..493de1c 100644 --- a/Jamba/Libs/LibBagUtils-1.0/LibBagUtils-1.0.xml +++ b/Jamba/Libs/LibBagUtils-1.0/LibBagUtils-1.0.xml @@ -1,4 +1,4 @@ <Ui xmlns="http://www.blizzard.com/wow/ui/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.blizzard.com/wow/ui/ ..\FrameXML\UI.xsd"> <Script file="LibBagUtils-1.0.lua"/> -</Ui> +</Ui> \ No newline at end of file diff --git a/Jamba/Libs/LibButtonGlow-1.0/LibButtonGlow-1.0.lua b/Jamba/Libs/LibButtonGlow-1.0/LibButtonGlow-1.0.lua index b587030..2d7dcef 100644 --- a/Jamba/Libs/LibButtonGlow-1.0/LibButtonGlow-1.0.lua +++ b/Jamba/Libs/LibButtonGlow-1.0/LibButtonGlow-1.0.lua @@ -1,5 +1,5 @@ --[[ -Copyright (c) 2015, Hendrik "nevcairiel" Leppkes <h.leppkes@gmail.com> +Copyright (c) 2015-2017, Hendrik "nevcairiel" Leppkes <h.leppkes@gmail.com> All rights reserved. @@ -28,7 +28,7 @@ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ]] local MAJOR_VERSION = "LibButtonGlow-1.0" -local MINOR_VERSION = 4 +local MINOR_VERSION = 6 if not LibStub then error(MAJOR_VERSION .. " requires LibStub.") end local lib, oldversion = LibStub:NewLibrary(MAJOR_VERSION, MINOR_VERSION) @@ -68,12 +68,13 @@ local function CreateScaleAnim(group, target, order, duration, x, y, delay) end end -local function CreateAlphaAnim(group, target, order, duration, change, delay) +local function CreateAlphaAnim(group, target, order, duration, fromAlpha, toAlpha, delay) local alpha = group:CreateAnimation("Alpha") alpha:SetTarget(target:GetName()) alpha:SetOrder(order) alpha:SetDuration(duration) - alpha:SetChange(change) + alpha:SetFromAlpha(fromAlpha) + alpha:SetToAlpha(toAlpha) if delay then alpha:SetStartDelay(delay) @@ -162,25 +163,25 @@ local function CreateOverlayGlow() -- setup antimations overlay.animIn = overlay:CreateAnimationGroup() CreateScaleAnim(overlay.animIn, overlay.spark, 1, 0.2, 1.5, 1.5) - CreateAlphaAnim(overlay.animIn, overlay.spark, 1, 0.2, 1) + CreateAlphaAnim(overlay.animIn, overlay.spark, 1, 0.2, 0, 1) CreateScaleAnim(overlay.animIn, overlay.innerGlow, 1, 0.3, 2, 2) CreateScaleAnim(overlay.animIn, overlay.innerGlowOver, 1, 0.3, 2, 2) - CreateAlphaAnim(overlay.animIn, overlay.innerGlowOver, 1, 0.3, -1) + CreateAlphaAnim(overlay.animIn, overlay.innerGlowOver, 1, 0.3, 1, 0) CreateScaleAnim(overlay.animIn, overlay.outerGlow, 1, 0.3, 0.5, 0.5) CreateScaleAnim(overlay.animIn, overlay.outerGlowOver, 1, 0.3, 0.5, 0.5) - CreateAlphaAnim(overlay.animIn, overlay.outerGlowOver, 1, 0.3, -1) + CreateAlphaAnim(overlay.animIn, overlay.outerGlowOver, 1, 0.3, 1, 0) CreateScaleAnim(overlay.animIn, overlay.spark, 1, 0.2, 2/3, 2/3, 0.2) - CreateAlphaAnim(overlay.animIn, overlay.spark, 1, 0.2, -1, 0.2) - CreateAlphaAnim(overlay.animIn, overlay.innerGlow, 1, 0.2, -1, 0.3) - CreateAlphaAnim(overlay.animIn, overlay.ants, 1, 0.2, 1, 0.3) + CreateAlphaAnim(overlay.animIn, overlay.spark, 1, 0.2, 1, 0, 0.2) + CreateAlphaAnim(overlay.animIn, overlay.innerGlow, 1, 0.2, 1, 0, 0.3) + CreateAlphaAnim(overlay.animIn, overlay.ants, 1, 0.2, 0, 1, 0.3) overlay.animIn:SetScript("OnPlay", AnimIn_OnPlay) overlay.animIn:SetScript("OnFinished", AnimIn_OnFinished) overlay.animOut = overlay:CreateAnimationGroup() - CreateAlphaAnim(overlay.animOut, overlay.outerGlowOver, 1, 0.2, 1) - CreateAlphaAnim(overlay.animOut, overlay.ants, 1, 0.2, -1) - CreateAlphaAnim(overlay.animOut, overlay.outerGlowOver, 2, 0.2, -1) - CreateAlphaAnim(overlay.animOut, overlay.outerGlow, 2, 0.2, -1) + CreateAlphaAnim(overlay.animOut, overlay.outerGlowOver, 1, 0.2, 0, 1) + CreateAlphaAnim(overlay.animOut, overlay.ants, 1, 0.2, 1, 0) + CreateAlphaAnim(overlay.animOut, overlay.outerGlowOver, 2, 0.2, 1, 0) + CreateAlphaAnim(overlay.animOut, overlay.outerGlow, 2, 0.2, 1, 0) overlay.animOut:SetScript("OnFinished", OverlayGlowAnimOutFinished) -- scripts @@ -210,6 +211,7 @@ function lib.ShowOverlayGlow(frame) local overlay = GetOverlayGlow() local frameWidth, frameHeight = frame:GetSize() overlay:SetParent(frame) + overlay:SetFrameLevel(frame:GetFrameLevel() + 5) overlay:ClearAllPoints() --Make the height/width available before the next frame: overlay:SetSize(frameWidth * 1.4, frameHeight * 1.4) diff --git a/Jamba/Libs/LibButtonGlow-1.0/LibButtonGlow-1.0.toc b/Jamba/Libs/LibButtonGlow-1.0/LibButtonGlow-1.0.toc index b72ed09..1dbd3ab 100644 --- a/Jamba/Libs/LibButtonGlow-1.0/LibButtonGlow-1.0.toc +++ b/Jamba/Libs/LibButtonGlow-1.0/LibButtonGlow-1.0.toc @@ -1,4 +1,4 @@ -## Interface: 60100 +## Interface: 70100 ## Title: Lib: ButtonGlow-1.0 ## Notes: Replacement for ActionButton_Show/HideOverlayGlow APIs ## Author: Nevcairiel @@ -6,16 +6,8 @@ ## X-Category: Library ## X-License: BSD ## X-Website: http://www.wowace.com/addons/libbuttonglow-1-0/ -## Version: 1.2.1 +## Version: 1.2.6 ## OptionalDeps: Masque -## X-Curse-Packaged-Version: 1.2.1 -## X-Curse-Project-Name: LibButtonGlow-1.0 -## X-Curse-Project-ID: libbuttonglow-1-0 -## X-Curse-Repository-ID: wow/libbuttonglow-1-0/mainline -## X-Curse-Packaged-Version: Beta-4.3i-1-g3e0e1d6 -## X-Curse-Project-Name: Jamba -## X-Curse-Project-ID: jamba -## X-Curse-Repository-ID: wow/jamba/mainline LibStub\LibStub.lua diff --git a/Jamba/Libs/LibButtonGlow-1.0/LibStub/LibStub.toc b/Jamba/Libs/LibButtonGlow-1.0/LibStub/LibStub.toc index 1708840..4d9130c 100644 --- a/Jamba/Libs/LibButtonGlow-1.0/LibStub/LibStub.toc +++ b/Jamba/Libs/LibButtonGlow-1.0/LibStub/LibStub.toc @@ -5,13 +5,5 @@ ## X-Website: http://jira.wowace.com/browse/LS ## X-Category: Library ## X-License: Public Domain -## X-Curse-Packaged-Version: 1.0 -## X-Curse-Project-Name: LibStub -## X-Curse-Project-ID: libstub -## X-Curse-Repository-ID: wow/libstub/mainline -## X-Curse-Packaged-Version: Beta-4.3i-1-g3e0e1d6 -## X-Curse-Project-Name: Jamba -## X-Curse-Project-ID: jamba -## X-Curse-Repository-ID: wow/jamba/mainline LibStub.lua diff --git a/Jamba/Libs/LibDeformat-3.0/LibDeformat-3.0.lua b/Jamba/Libs/LibDeformat-3.0/LibDeformat-3.0.lua index 29f28e2..6580517 100644 --- a/Jamba/Libs/LibDeformat-3.0/LibDeformat-3.0.lua +++ b/Jamba/Libs/LibDeformat-3.0/LibDeformat-3.0.lua @@ -269,4 +269,4 @@ function LibDeformat.Test() end --@end-debug@]===] -setmetatable(LibDeformat, { __call = function(self, ...) return self.Deformat(...) end }) +setmetatable(LibDeformat, { __call = function(self, ...) return self.Deformat(...) end }) \ No newline at end of file diff --git a/Jamba/Libs/LibDeformat-3.0/lib.xml b/Jamba/Libs/LibDeformat-3.0/lib.xml index 0f66a4d..cf6abae 100644 --- a/Jamba/Libs/LibDeformat-3.0/lib.xml +++ b/Jamba/Libs/LibDeformat-3.0/lib.xml @@ -1,4 +1,4 @@ <Ui xmlns="http://www.blizzard.com/wow/ui/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.blizzard.com/wow/ui/ ..\FrameXML\UI.xsd"> <Script file="LibDeformat-3.0.lua" /> -</Ui> +</Ui> \ No newline at end of file diff --git a/Jamba/Libs/LibGratuity-3.0/LibGratuity-3.0.toc b/Jamba/Libs/LibGratuity-3.0/LibGratuity-3.0.toc index abd9c15..8219037 100644 --- a/Jamba/Libs/LibGratuity-3.0/LibGratuity-3.0.toc +++ b/Jamba/Libs/LibGratuity-3.0/LibGratuity-3.0.toc @@ -1,4 +1,4 @@ -## Interface: 50400 +## Interface: 50400 ## LoadOnDemand: 1 ## Title: Lib: Gratuity-3.0 ## Notes: Tooltip scanning library. diff --git a/Jamba/Libs/LibGratuity-3.0/LibStub/tests/test.lua b/Jamba/Libs/LibGratuity-3.0/LibStub/tests/test.lua index 338bcf4..276ddab 100644 --- a/Jamba/Libs/LibGratuity-3.0/LibStub/tests/test.lua +++ b/Jamba/Libs/LibGratuity-3.0/LibStub/tests/test.lua @@ -38,4 +38,4 @@ assert(newOldMinor == 3) -- previous version was 3 (even though it gave a string local newLib, newOldMinor = LibStub:NewLibrary("Pants", 5) -- register a new library, using a normal number instead of a string assert(newLib) -assert(newOldMinor == 4) -- previous version was 4 (even though it gave a string) +assert(newOldMinor == 4) -- previous version was 4 (even though it gave a string) \ No newline at end of file diff --git a/Jamba/Libs/LibGratuity-3.0/LibStub/tests/test3.lua b/Jamba/Libs/LibGratuity-3.0/LibStub/tests/test3.lua index 21bda2b..30f7b94 100644 --- a/Jamba/Libs/LibGratuity-3.0/LibStub/tests/test3.lua +++ b/Jamba/Libs/LibGratuity-3.0/LibStub/tests/test3.lua @@ -11,4 +11,4 @@ assert(not success or not ret) -- either error because proxy is not a string or assert(not pcall(LibStub.NewLibrary, LibStub, "Something", "No number in here")) -- should error, minor has no string in it. -assert(not LibStub:GetLibrary("Something", true)) -- shouldn't've created it from the above statement +assert(not LibStub:GetLibrary("Something", true)) -- shouldn't've created it from the above statement \ No newline at end of file diff --git a/Jamba/Libs/LibGratuity-3.0/LibStub/tests/test4.lua b/Jamba/Libs/LibGratuity-3.0/LibStub/tests/test4.lua index 4735246..43eb338 100644 --- a/Jamba/Libs/LibGratuity-3.0/LibStub/tests/test4.lua +++ b/Jamba/Libs/LibGratuity-3.0/LibStub/tests/test4.lua @@ -38,4 +38,4 @@ loadfile("../LibStub.lua")() assert(LibStub.IterateLibraries == 123) -print("OK") +print("OK") \ No newline at end of file diff --git a/Jamba/Libs/LibGratuity-3.0/lib.xml b/Jamba/Libs/LibGratuity-3.0/lib.xml index 2934f6f..9b361c4 100644 --- a/Jamba/Libs/LibGratuity-3.0/lib.xml +++ b/Jamba/Libs/LibGratuity-3.0/lib.xml @@ -1,4 +1,4 @@ <Ui xmlns="http://www.blizzard.com/wow/ui/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.blizzard.com/wow/ui/ ..\FrameXML\UI.xsd"> <Script file="LibGratuity-3.0.lua" /> -</Ui> +</Ui> \ No newline at end of file diff --git a/Jamba/Libs/LibSharedMedia-3.0/lib.xml b/Jamba/Libs/LibSharedMedia-3.0/lib.xml index 7f2fd53..34aa874 100644 --- a/Jamba/Libs/LibSharedMedia-3.0/lib.xml +++ b/Jamba/Libs/LibSharedMedia-3.0/lib.xml @@ -1,4 +1,4 @@ <Ui xmlns="http://www.blizzard.com/wow/ui/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.blizzard.com/wow/ui/ ..\FrameXML\UI.xsd"> <Script file="LibSharedMedia-3.0.lua" /> -</Ui> +</Ui> \ No newline at end of file diff --git a/Jamba/Libs/UTF8/UTF8.toc b/Jamba/Libs/UTF8/UTF8.toc index 86efe27..e971b12 100644 --- a/Jamba/Libs/UTF8/UTF8.toc +++ b/Jamba/Libs/UTF8/UTF8.toc @@ -12,4 +12,4 @@ ## X-Website: http://www.wowace.com/addons/utf8/ utf8data.lua -utf8.lua +utf8.lua \ No newline at end of file diff --git a/Jamba/Libs/UTF8/utf8.lua b/Jamba/Libs/UTF8/utf8.lua index 159f7ae..485582c 100644 --- a/Jamba/Libs/UTF8/utf8.lua +++ b/Jamba/Libs/UTF8/utf8.lua @@ -314,4 +314,4 @@ end -- install in the string library if not string.utf8reverse then string.utf8reverse = utf8reverse -end +end \ No newline at end of file diff --git a/Jamba/Libs/UTF8/utf8data.lua b/Jamba/Libs/UTF8/utf8data.lua index 8bcc38f..655f719 100644 --- a/Jamba/Libs/UTF8/utf8data.lua +++ b/Jamba/Libs/UTF8/utf8data.lua @@ -1,4 +1,4 @@ -utf8_lc_uc = { +utf8_lc_uc = { ["a"] = "A", ["b"] = "B", ["c"] = "C", diff --git a/Jamba/Locales/JambaCore-Locale-enUS.lua b/Jamba/Locales/JambaCore-Locale-enUS.lua index cab5d03..991572e 100644 --- a/Jamba/Locales/JambaCore-Locale-enUS.lua +++ b/Jamba/Locales/JambaCore-Locale-enUS.lua @@ -6,7 +6,7 @@ License: The MIT License local L = LibStub("AceLocale-3.0"):NewLocale( "Jamba-Core", "enUS", true ) --Change ME when update version -L["Version"] = "5.1" +L["Version"] = "5.3" --End of Changeme L["Slash Commands"] = true L["Team"] = true @@ -44,8 +44,10 @@ L["Change Channel"] = true L["Change the communications channel."] = true L["Jamba4"] = true L["Jamba"] = true - L["The Awesome Multi-Boxer Assistant"] = true +L["Use Guild Communications***"] = true +L["*** EveryToon will be classed as online and needs to be in same guild!"] = true + L["Jafula's Awesome Multi-Boxer Assistant"] = true @@ -55,8 +57,8 @@ L["Copyright 2008-2016 Michael 'Jafula' Miller, Now managed By Ebony"] = true L["Copyright 2008-2016 Michael 'Jafula' Miller, Released Under The MIT License"] = true L["Current Project Manager - Jennifer 'Ebony'"] = true L["Special thanks:"] = true -L["To Schilm (Max Schilling) for building Advanced Loot and The changes to Jamba-Quest for 4.3"] = true -L["To Schilm (Max Schilling) for Advanced Loot and Jamba-Quest for 4.3"] = true +L["To Schilm (Max Schilling) for building Advanced Loot"] = true +L["To Schilm (Max Schilling) for Advanced Loot"] = true L["To Olipcs on dual-boxing.com for writing the FTL Helper module."] = true L["To Michael 'Jafula' Miller who made Jamba"] = true L["Made For MultiBoxing"] = true @@ -67,7 +69,7 @@ L["www.dual-boxing.com"] = true L["www.isboxer.com"] = true L["www.twitter.com/jenn_ebony"] = true L["Special thanks to olipcs on dual-boxing.com for writing the FTL Helper module."] = true -L["Advanced Loot by schilm (Max Schilling) - modified by Tehtsuo and Jafula."] = true +L["Advanced Loot by schilm (Max Schilling) - modified by Tehtsuo and Jafula and Ebony."] = true L["Attempting to reset the Jamba Settings Frame."] = true L["Reset Settings Frame"] = true L["Settings"] = true @@ -78,6 +80,9 @@ L["Assume All Team Members Always Online*"] = true L["Boost Jamba to Jamba Communications**"] = true L["**reload UI to take effect, may cause disconnections"] = true L["*reload UI to take effect"] = true +L["Use BatteTag Communications***"] = true +L["*** Can not work if the team are on the same Blizzard Account"] = true + L["Release Notes / News: "] = true L["Close and Do Not Show Again"] = true L["Close"] = true @@ -93,15 +98,15 @@ L["Full Change Log"] = true L["Full ChangeLog"] = true L["ChangeLog"] = true L["Shows the Full changelog\nOpens a new Frame."] = true -L["Text1"] = "Welcome to Legion 7.1.0!" -L["Text2"] = "" -L["Text3"] = "Jamba Has Had a few changes for 7.1 to check out" -L["Text4"] = "" -L["Text5"] = "Jamba-Mount one button to mount all the team." -L["Text6"] = "" -L["Text7"] = "Artifact Power is now Auto added to to the item Use bar!" -L["Text8"] = "" -L["Text9"] = "You can not use jamba to invite groups with tags." +L["Text1"] = "Welcome to Legion Patch7.2.0!" +L["Text2"] = "Jamba-Trade 2.0 Now is a list to trade items with Master" +L["Text3"] = "" +L["Text4"] = "Jamba-Quest 3.0 No more Taint menu" +L["Text5"] = "" +L["Text6"] = "Tons of bug fix's" +L["Text7"] = "" +L["Text8"] = "See ChangeLog" +L["Text9"] = "" L["Text10"] = "" diff --git a/Jamba/Locales/JambaMessage-Locale-enUS.lua b/Jamba/Locales/JambaMessage-Locale-enUS.lua index cb55c55..ed282d2 100644 --- a/Jamba/Locales/JambaMessage-Locale-enUS.lua +++ b/Jamba/Locales/JambaMessage-Locale-enUS.lua @@ -60,4 +60,4 @@ L["Help1"] = "Core: Message Display Help" L["Help2"] = [[Help Here]] L["Help3"] = "" L["Help4"] = [[More Help Here]] -L["Sound To Play"] = true +L["Sound To Play"] = true \ No newline at end of file diff --git a/Jamba/Locales/JambaTeam-Locale-enUS.lua b/Jamba/Locales/JambaTeam-Locale-enUS.lua index 39131ae..1f8843d 100644 --- a/Jamba/Locales/JambaTeam-Locale-enUS.lua +++ b/Jamba/Locales/JambaTeam-Locale-enUS.lua @@ -25,7 +25,7 @@ L["I Am Master"] = true L["Set this character to be the master character."] = true L["Invite"] = true L["Invites"] = true -L["Invite team members to a party."] = true +L["Invite team members to a party with or without a <tag>."] = true L["Invite team members to a <tag> party."] = true L["Disband"] = true L["Disband all team members from their parties."] = true @@ -41,6 +41,7 @@ L["When Master changes, promote Master to party leader."] = true L["Party Invitations Control"] = true L["Accept from team."] = true L["Auto Convert Team Over Five To Raid"] = true +L["Auto Set All Assistant"] = true L["Accept from friends."] = true L["Accept from BattleNet/RealD friends."] = true L["Accept from guild."] = true @@ -83,15 +84,15 @@ L["Set All Team Members OnLine"] = true L["Set Team OnLine"] = true L["Set Offline"] = true L["Sets a member offline"] = true - +L["Unknown Tag "] = true -- ebony tooltip work and Gui Changes. L["Move the character up a place in the team list"] = true L["Move the character down a place in the team list"] = true L["Adds a member to the team list\nYou can Use:\nCharacterName\nCharacterName-realm\n@Target\n@Mouseover"] = true -L["Adds all Party members to the team list"] = true -L["Removes Party members from the team list"] = true +L["Adds all Party/Raid members to the team list"] = true +L["Removes Members from the team list"] = true L["Set the selected member to be the master of the group"] = true L["Invites all Team members online to a party or raid.\nThis can be set as a keyBinding"] = true L["Asks all Team members to leave a party or raid.\nThis can be set as a keyBinding"] = true @@ -110,10 +111,13 @@ L["Minions Don't need loot."] = true L["Set to Group Loot "] = true L["Override: Set loot to Group Loot if stranger is in group."] = true L["Set the Loot Method to..."] = true -L["Accept from BattleNet friends."] = true -L["Auto Accept invites from your Battlenet or RealID Friends list."] = true + +L["Accept From BattleTag Friends."] = true + +L["Auto Accept invites from your BatteTag or RealID Friends list."] = true L["Auto Convert To Raid if team is over five character's"] = true L["Auto Convert To Raid"] = true +L["Auto Set all raid Member's to Assistant"] = true L["Promote Master to party leader."] = true L["Set the Master to the Focus."] = true L["Focus will set master toon."] = true diff --git a/Jamba/Locales/Locales.xml b/Jamba/Locales/Locales.xml index e645a09..95b38f9 100644 --- a/Jamba/Locales/Locales.xml +++ b/Jamba/Locales/Locales.xml @@ -9,4 +9,4 @@ License: The MIT License <Script file="JambaTeam-Locale-enUS.lua" /> <Script file="JambaTag-Locale-enUS.lua" /> <Script file="JambaMessage-Locale-enUS.lua" /> -</Ui> +</Ui> \ No newline at end of file