diff --git a/AwesomeEvents/AwesomeEvents.lua b/AwesomeEvents/AwesomeEvents.lua index 80a57f3..af6f8f2 100644 --- a/AwesomeEvents/AwesomeEvents.lua +++ b/AwesomeEvents/AwesomeEvents.lua @@ -3,7 +3,7 @@ Author: @Ze_Mi <zemi@unive.de> Filename: AwesomeEvents.lua - Last Modified: 02.09.18 20:30 + Last Modified: 23.11.18 13:30 Copyright (c) 2018 by Martin Unkel License : CreativeCommons CC BY-NC-SA 4.0 Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) @@ -15,7 +15,7 @@ Awesome_Events = { name = 'AwesomeEvents', panelName = 'AwesomeEventsOptions', title = 'Awesome Events', - version = '1.5-RC1', + version = '1.6-RC1', defaults = { isDefault = true, diff --git a/AwesomeEvents/AwesomeEvents.txt b/AwesomeEvents/AwesomeEvents.txt index 7406b37..7c147a1 100644 --- a/AwesomeEvents/AwesomeEvents.txt +++ b/AwesomeEvents/AwesomeEvents.txt @@ -1,8 +1,8 @@ ## Title: |cFFFFB0Awesome Events|r ## Author: Ze_Mi -## Description: This addon adds many customizable notifications and information to your UI. (Version: 1.5-RC1) -## Version: 1.5-RC1 -## APIVersion: 100024 +## Description: This addon adds many customizable notifications and information to your UI. (Version: 1.6-RC1) +## Version: 1.6-RC1 +## APIVersion: 100025 ## OptionalDependsOn: LibStub, LibAddonMenu-2.0, LibMsgWin-1.0, LibFoodDrinkBuff, LibAwesomeModule-1.0 ## SavedVariables: AwesomeEvents @@ -41,6 +41,7 @@ Modules/Inventory.lua Modules/Mails.lua Modules/Mount.lua Modules/RepairKits.lua +Modules/ShadowySupplier.lua Modules/Skills.lua Modules/SkyShards.lua Modules/SoulGems.lua diff --git a/AwesomeEvents/Language/de.lua b/AwesomeEvents/Language/de.lua index 7518e2d..50eb88e 100644 --- a/AwesomeEvents/Language/de.lua +++ b/AwesomeEvents/Language/de.lua @@ -3,7 +3,7 @@ Author: @Ze_Mi <zemi@unive.de> Filename: de.lua - Last Modified: 02.09.18 17:30 + Last Modified: 23.11.18 13:30 Copyright (c) 2018 by Martin Unkel License : CreativeCommons CC BY-NC-SA 4.0 Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) @@ -176,6 +176,13 @@ SafeAddString(SI_AWEMOD_REPAIRKITS, "Reparatur-Kits", 1) SafeAddString(SI_AWEMOD_REPAIRKITS_HINT, "Lass dir anzeigen, wie viele Reparatur-Kisten du im Rucksack hast.", 1) SafeAddString(SI_AWEMOD_REPAIRKITS_LABEL, "Reparatur-Kits|r: |t16:16:EsoUI/Art/icons/store_repairkit_002.dds|t <<1[Keine/1 Kiste/$d Kisten]>>", 1) +--module-shadowysupplier +SafeAddString(SI_AWEMOD_SHADOWYSUPPLIER, "Verhüllter Versorger (Passive Fähigkeit)", 1) +SafeAddString(SI_AWEMOD_SHADOWYSUPPLIER_HINT, "Der verhüllte Versorger ist eine passive Fähigkeit aus der Fertigkeitslinie der dunklen Bruderschaft. Erhalte eine Benachrichtigung mit verbleibender Zeit, wann der nächste verhüllte Versorger zur Verfügung steht, oder ob er bereits auf dich wartet.", 1) +SafeAddString(SI_AWEMOD_SHADOWYSUPPLIER_TIMER, "Wartezeit-Hinweis ab (Minuten)", 1) +SafeAddString(SI_AWEMOD_SHADOWYSUPPLIER_TIMER_HINT, "Zeigt den Verhüllter-Versorger-Hinweis mit Countdown an, sobald der verhüllte Versorger in weniger als der hier festgelegten Minutenzahl wieder verfügbar ist.", 1) +SafeAddString(SI_AWEMOD_SHADOWYSUPPLIER_AVAILABLE_LABEL, "Verfügbar", 1) + --module-skills SafeAddString(SI_AWEMOD_SKILLS, "Attribute- und Fertigkeiten", 1) SafeAddString(SI_AWEMOD_SKILLS_HINT, "Erhalte eine Benachrichtigung, sobald du über nicht gesetzte Attributs- und Fertigkeitspunkte verfügst.", 1) diff --git a/AwesomeEvents/Language/ru.lua b/AwesomeEvents/Language/ru.lua index 8317fbc..59d0de5 100644 --- a/AwesomeEvents/Language/ru.lua +++ b/AwesomeEvents/Language/ru.lua @@ -3,7 +3,7 @@ Author: Memoraike Filename: ru.lua - Last Modified: 02.09.18 17:30 + Last Modified: 23.11.18 13:30 Copyright (c) 2018 by Martin Unkel and Memoraike License : CreativeCommons CC BY-NC-SA 4.0 Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) @@ -180,6 +180,13 @@ SafeAddString(SI_AWEMOD_MOUNT_TIMER_HINT, "Отображение таймера --SafeAddString(SI_AWEMOD_REPAIRKITS_HINT, "See how many repair kits you have in your inventory.", 1) --SafeAddString(SI_AWEMOD_REPAIRKITS_LABEL, "Repair Kits|r: |t16:16:EsoUI/Art/icons/store_repairkit_002.dds|t <<1[None/1 kit/$d kits]>>", 1) +--module-shadowysupplier +--SafeAddString(SI_AWEMOD_SHADOWYSUPPLIER, "Shadowy Supplier (Passive Skill)", 1) +--SafeAddString(SI_AWEMOD_SHADOWYSUPPLIER_HINT, "The shadowy supplier is a passive skill from the dark brotherhoods skill line. Get an information and timer about availability of Dark Brotherhood`s Shadowy Supplier (passive ability).", 1) +--SafeAddString(SI_AWEMOD_SHADOWYSUPPLIER_TIMER, "Supplier cooldown timer (minutes)", 1) +--SafeAddString(SI_AWEMOD_SHADOWYSUPPLIER_TIMER_HINT, "Will show the cooldown timer if Shadowy Supplier is available within the number of minutes below.", 1) +--SafeAddString(SI_AWEMOD_SHADOWYSUPPLIER_AVAILABLE_LABEL, "Available", 1) + --module-skills SafeAddString(SI_AWEMOD_SKILLS, "Атрибуты и очки умений", 1) SafeAddString(SI_AWEMOD_SKILLS_HINT, "Отображение уведомления, когда у Вас есть неиспользованные атрибуты или очки умений.", 1) diff --git a/AwesomeEvents/Language/strings.lua b/AwesomeEvents/Language/strings.lua index 4128a1c..22c3a0c 100644 --- a/AwesomeEvents/Language/strings.lua +++ b/AwesomeEvents/Language/strings.lua @@ -3,7 +3,7 @@ Author: @Ze_Mi <zemi@unive.de> Filename: strings.lua - Last Modified: 02.09.18 17:30 + Last Modified: 23.11.18 13:30 Copyright (c) 2018 by Martin Unkel License : CreativeCommons CC BY-NC-SA 4.0 Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) @@ -176,6 +176,13 @@ local strings = { SI_AWEMOD_REPAIRKITS_HINT="See how many repair kits you have in your inventory.", SI_AWEMOD_REPAIRKITS_LABEL="Repair Kits|r: |t16:16:EsoUI/Art/icons/store_repairkit_002.dds|t <<1[None/1 kit/$d kits]>>", + --module-shadowysupplier + SI_AWEMOD_SHADOWYSUPPLIER="Shadowy Supplier (Passive Skill)", + SI_AWEMOD_SHADOWYSUPPLIER_HINT="The shadowy supplier is a passive skill from the dark brotherhoods skill line. Get an information and timer about availability of Dark Brotherhood`s Shadowy Supplier (passive ability).", + SI_AWEMOD_SHADOWYSUPPLIER_TIMER="Supplier cooldown timer (minutes)", + SI_AWEMOD_SHADOWYSUPPLIER_TIMER_HINT="Will show the cooldown timer if Shadowy Supplier is available within the number of minutes below.", + SI_AWEMOD_SHADOWYSUPPLIER_AVAILABLE_LABEL="Available", + --module-skills SI_AWEMOD_SKILLS="Attribute- & Skillpoints", SI_AWEMOD_SKILLS_HINT="Get a notification if you have unspent attribute- or skillpoints.", diff --git a/AwesomeEvents/Modules/ShadowySupplier.lua b/AwesomeEvents/Modules/ShadowySupplier.lua new file mode 100644 index 0000000..a6e8ff8 --- /dev/null +++ b/AwesomeEvents/Modules/ShadowySupplier.lua @@ -0,0 +1,162 @@ +--[[ + This file is part of Awesome Events. + + Author: @Ze_Mi <zemi@unive.de> + Filename: ShadowySupplier.lua + Last Modified: 23.11.18 13:30 + + Copyright (c) 2018 by Martin Unkel + License : CreativeCommons CC BY-NC-SA 4.0 Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) + + Please read the README file for further information. + ]] + +local libAM = LibStub('LibAwesomeModule-1.0') +local MOD = libAM:New('shadowysupplier') + +MOD.title = GetString(SI_AWEMOD_SHADOWYSUPPLIER) +MOD.hint = GetString(SI_AWEMOD_SHADOWYSUPPLIER_HINT) +MOD.order = 40 +MOD.debug = false + +-- USER SETTINGS + +local DARKBROTHERHOOD_SHADOWYSUPPLIER_ABILITYID = 77396 +local DARKBROTHERHOOD_SHADOWYSUPPLIER_SKILLTYPE = SKILL_TYPE_GUILD --5 +local DARKBROTHERHOOD_SHADOWYSUPPLIER_SKILLINDEX = 2 +local DARKBROTHERHOOD_SHADOWYSUPPLIER_ABILITYINDEX = 4 + +-- /script local a={}; a.name,_,_,_,_,a.purchased = GetSkillAbilityInfo(5,2,4); d(a) + +MOD.options = { + minutesLeftInfo = { + type = 'slider', + name = GetString(SI_AWEMOD_SHADOWYSUPPLIER_TIMER), + tooltip = GetString(SI_AWEMOD_SHADOWYSUPPLIER_TIMER_HINT), + min = 1, + max = 1200, + default = 480, + order = 5, + }, +} + +-- OVERRIDES + +function MOD:Enable(options) + self:d('Enable (in debug-mode)') + self.data = { + hasAbility = false, + availableAt = 0, + minutesLeft = 9999, + name = "Shadowy Supplier" + } + self:OnSkillAbilityProgressionUpdate() + self.dataUpdated = true +end -- MOD:Enable + +function MOD:Set(key, value) + self:d('Set['..key..']', value) + if (key=='minutesLeftInfo') then + self:OnTimer(GetTimeStamp()) + end +end -- MOD:Set + +-- EVENT LISTENER +function MOD:GetEventListeners() + return { + { + eventCode = EVENT_AWESOME_MODULE_TIMER, + callback = function (eventCode, timestamp) + return MOD:OnTimer(timestamp) + end, + }, + { + eventCode = EVENT_SKILL_ABILITY_PROGRESSIONS_UPDATED, + callback = function (eventCode) + self:d('EVENT_SKILL_ABILITY_PROGRESSIONS_UPDATED') + MOD:OnSkillAbilityProgressionUpdate() + end, + }, + { + eventCode = EVENT_CHATTER_END, + callback = function (eventCode) + if(self.data.hasAbility) then + self:d('EVENT_CHATTER_END') + MOD:OnSkillAbilityProgressionUpdate() + end + end, + }, + } +end + +-- EVENT HANDLER + +function MOD:OnTimer(timestamp) + self:d('OnTimer') + + if(not self.data.hasAbility) then + return 0 + end + + if (self.data.availableAt > 0) then + self.data.minutesLeft = math.ceil( GetDiffBetweenTimeStamps(self.data.availableAt, timestamp) / 60) + self.dataUpdated = true + self:d(' => dataUpdated') + end + + if (self.data.availableAt == 0)then + self:StopTimer() + end +end + +function MOD:OnSkillAbilityProgressionUpdate() + self:d('OnSkillAbilityProgressionUpdate') + local abilityName,_,_,_,_,abilityPurchased = GetSkillAbilityInfo(DARKBROTHERHOOD_SHADOWYSUPPLIER_SKILLTYPE,DARKBROTHERHOOD_SHADOWYSUPPLIER_SKILLINDEX,DARKBROTHERHOOD_SHADOWYSUPPLIER_ABILITYINDEX) + + self.data.name = abilityName + self.data.hasAbility = abilityPurchased + + local timeRemaining = 0 + if(abilityPurchased) then + self:d(' => enabled') + timeRemaining = GetTimeToShadowyConnectionsResetInSeconds() + else + self:d(' => disabled') + end + + if(timeRemaining>0) then + local timestamp = GetTimeStamp() + self.data.availableAt = timestamp + timeRemaining + self.data.minutesLeft = math.ceil(timeRemaining / 60) + else + self.data.availableAt = 0 + self.data.minutesLeft = 0 + end + + self.dataUpdated = true + self:d(' => dataUpdated') +end + +-- LABEL HANDLER + +function MOD:Update(options) + self:d('Update') + + if(self.data.hasAbility) then + self.label:SetText(self.FormatLabelText(self.data, options.minutesLeftInfo)) + else + self.label:SetText("") + end +end + +function MOD.FormatLabelText(data, minutesLeftInfo) + local text = '' + if (data.minutesLeft <= minutesLeftInfo) then + if (data.minutesLeft == 0) then + text = MOD.Colorize(COLOR_AWEVS_AVAILABLE, zo_strformat("<<C:1>>",data.name)) .. ': ' .. GetString(SI_AWEMOD_SHADOWYSUPPLIER_AVAILABLE_LABEL) + else + text = MOD.Colorize(COLOR_AWEVS_HINT, zo_strformat("<<C:1>>",data.name)) .. ': ' .. FormatTimeSeconds(60 * data.minutesLeft, TIME_FORMAT_STYLE_DESCRIPTIVE_SHORT, TIME_FORMAT_PRECISION_TWENTY_FOUR_HOUR, TIME_FORMAT_DIRECTION_NONE) + end + end + return text +end \ No newline at end of file diff --git a/AwesomeEventsMod/AwesomeEventsMod.txt b/AwesomeEventsMod/AwesomeEventsMod.txt index 4954ed7..d9939f4 100644 --- a/AwesomeEventsMod/AwesomeEventsMod.txt +++ b/AwesomeEventsMod/AwesomeEventsMod.txt @@ -1,8 +1,8 @@ ## Title: |cFFFFB0Awesome Module - Balancing|r ## Author: Ze_Mi -## Description: This AddOn is a balancing module to show you how to add new modules and notifications to the AwesomeEvents AddOn. (Version: 1.5-RC1) -## Version: 1.5-RC1 -## APIVersion: 100024 +## Description: This AddOn is a balancing module to show you how to add new modules and notifications to the AwesomeEvents AddOn. (Version: 1.6-RC1) +## Version: 1.6-RC1 +## APIVersion: 100025 ## OptionalDependsOn: LibStub, LibAwesomeModule-1.0 # This Add-on is not created by, affiliated with or sponsored by ZeniMax Media Inc. or its affiliates. diff --git a/esoui_changelog.txt b/esoui_changelog.txt index 0ab8751..13a2371 100644 --- a/esoui_changelog.txt +++ b/esoui_changelog.txt @@ -3,6 +3,12 @@ [COLOR="Green"][SIZE="5"][B]Changelog (DE)[/B][/SIZE][/COLOR] +[B]1.6-RC1 (23.11.2018):[/B] +[LIST] +[*]Neu: Cooldown für den verhüllten Versorger (Passive Fertigkeit der dunklen Bruderschaft) +[*]API Bump für Murkmire +[/LIST] + [B]1.5-RC1 (02.09.2018):[/B] [LIST] [*]Der Hinweis 'Aktiviere ein AwesomeEvents Modul' ist nun in den Einstellungen an- und abschaltbar @@ -135,6 +141,12 @@ [COLOR="Green"][SIZE="5"][B]Changelog (EN)[/B][/SIZE][/COLOR] +[B]1.6-RC1 (23.11.2018):[/B] +[LIST] +[*]Neu: Cooldown for shadowy supplier (passive ability from dark brotherhoods skill line) +[*]API Bump für Murkmire +[/LIST] + [B]1.5-RC1 (02.09.2018):[/B] [LIST] [*]The 'Enabled an AwesomeEvents module' hint can be switched on and off in settings diff --git a/esoui_description.txt b/esoui_description.txt index 0a96a1e..c7c0195 100644 --- a/esoui_description.txt +++ b/esoui_description.txt @@ -33,6 +33,7 @@ Unter folgendem Link findest du die tolle Arbeit von CrazyDutchGuy: [URL="http:/ [*]Hinweis über verbleibende Himmelsscherben bis zum nächsten Fertigkeitspunkt [*]Info zu freien Analyse-Slots für die Handwerksberufe oder verbleibender Wartezeit [*]Info zu möglichem Reittier-Training oder verbleibender Wartezeit +[*]Info zu wartendem verhüllten Versorger oder verbleibender Wartezeit [*]Info zu verbleindenden Hehlerei- und Schiebe-Transaktionen [*]Neu: Info zu Bankplatz- und Rucksack-Auslastung [*]Neu: Info zu akutellem Vermögen (Gold) im Inventar und auf der Bank @@ -95,6 +96,7 @@ If you are interested in the original version check out his great work at [URL=" [*]Missing skyshards info [*]Crafts research timer / or available analysis slot info [*]Remaining mount training timer / or training available info +[*]Shadowy supplier cooldown timer / or available info [*]Remaining thieve guild sells and launders info [*]New: Backpack and bank usage info [*]New: Current money info