Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version 2.20 #81

Merged
merged 5 commits into from
Feb 7, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions BuffsDebuffs.lua
Original file line number Diff line number Diff line change
Expand Up @@ -627,6 +627,8 @@ rockgrove.oaxiltso_savage_blitz = {
}
-- Oaxiltso's Noxious Sludge
rockgrove.oaxiltso_noxious_sludge = 157860
-- Havocrel Annihilator's Cinder Cleave at the fight with Oaxiltso
rockgrove.oaxiltso_annihilator_cinder_cleave = 152688
-- Radiating Heat (player gains this effect while Prime Meteor is present)
rockgrove.meteor_radiating_heat = {
[152462] = true, -- on trash
Expand Down
13 changes: 11 additions & 2 deletions RaidNotifier.lua
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ local RaidNotifier = RaidNotifier

RaidNotifier.Name = "RaidNotifier"
RaidNotifier.DisplayName = "Raid Notifier"
RaidNotifier.Version = "2.19.1"
RaidNotifier.Version = "2.20"
RaidNotifier.Author = "|c009ad6Kyoma, Memus, Woeler, silentgecko|r"
RaidNotifier.SV_Name = "RNVars"
RaidNotifier.SV_Version = 4
Expand Down Expand Up @@ -630,12 +630,14 @@ do ----------------------
dbg("Register for %s (%s)", GetRaidZoneName(self.raidId), GetString("SI_DUNGEONDIFFICULTY", self.raidDifficulty))

local trial = self.Trial[self.raidId]
local combatStateChangedCallback

if (trial) then
trial.Initialize()
local combatEventCallback = trial.OnCombatEvent
local bossesChangedCallback = trial.OnBossesChanged
local effectChangedCallback = trial.OnEffectChanged
local combatStateChangedCallback = trial.OnCombatStateChanged
combatStateChangedCallback = trial.OnCombatStateChanged

local abilityList = {}
local function RegisterForAbility(abId)
Expand Down Expand Up @@ -745,6 +747,13 @@ do ----------------------
EVENT_MANAGER:UnregisterForEvent(self.Name, EVENT_BOSSES_CHANGED)
EVENT_MANAGER:UnregisterForEvent(self.Name, EVENT_PLAYER_COMBAT_STATE)

local trial = self.Trial[self.raidId]

-- Remove custom handlers which may have been assigned inside the trial "class"
if type(trial.Shutdown) == "function" then
trial.Shutdown()
end

--self:RemoveFragment()
self:HideAllElements()
listening = false
Expand Down
2 changes: 1 addition & 1 deletion RaidNotifier.txt
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
## Title: |cEFEBBERaidNotifier|r
## Description: Displays on-screen notifications on different events during trials.
## Author: |c009ad6Kyoma, Memus, Woeler, silentgecko|r
## Version: 2.19.1
## Version: 2.20
## APIVersion: 101032
## SavedVariables: RNVars RN_DEBUG_LOG
## DependsOn: LibAddonMenu-2.0>=28 LibUnits2
Expand Down
8 changes: 8 additions & 0 deletions Settings.lua
Original file line number Diff line number Diff line change
Expand Up @@ -312,6 +312,7 @@ do ------------------
havocrel_barbarian_hasted_assault = false,
oaxiltso_savage_blitz = false,
oaxiltso_noxious_sludge = 0, -- "Off"
oaxiltso_annihilator_cinder_cleave = 0, -- "Off"
bahsei_embrace_of_death = 0, -- "Off"
},
dbg = {
Expand Down Expand Up @@ -559,6 +560,7 @@ function RaidNotifier:CreateSettingsMenu()
rockgrove = {
sulxan_reaver_sundering_strike = off_self_all,
oaxiltso_noxious_sludge = off_self_all,
oaxiltso_annihilator_cinder_cleave = off_self_all,
bahsei_embrace_of_death = off_self_all,
},
}
Expand Down Expand Up @@ -1683,6 +1685,12 @@ function RaidNotifier:CreateSettingsMenu()
tooltip = L.Settings_Rockgrove_Noxious_Sludge_TT,
choices = choices.rockgrove.oaxiltso_noxious_sludge,
}, "rockgrove", "oaxiltso_noxious_sludge")
MakeControlEntry({
type = "dropdown",
name = L.Settings_Rockgrove_Cinder_Cleave,
tooltip = L.Settings_Rockgrove_Cinder_Cleave_TT,
choices = choices.rockgrove.oaxiltso_annihilator_cinder_cleave,
}, "rockgrove", "oaxiltso_annihilator_cinder_cleave")
MakeControlEntry({
type = "dropdown",
name = L.Settings_Rockgrove_Embrace_Of_Death,
Expand Down
17 changes: 15 additions & 2 deletions TrialAsylumSanctorium.lua
Original file line number Diff line number Diff line change
Expand Up @@ -11,18 +11,29 @@ local data = {}
function RaidNotifier.AS.Initialize()
p = RaidNotifier.p
dbg = RaidNotifier.dbg

data = {}
end

function RaidNotifier.AS.Shutdown()
-- In case of zoning out during the battle "OnCombatStateChanged" handler may be unregistered before it'll be called
-- outside the combat; so we have to manually unregister handler for interval check here
EVENT_MANAGER:UnregisterForUpdate(RaidNotifier.Name .. "_IntervalCheck")
end

local function OnIntervalCheck()
local self = RaidNotifier
local raidId = RaidNotifier.raidId
local buffsDebuffs = RaidNotifier.BuffsDebuffs[raidId]
local settings = self.Vars.asylum

if (settings.olms_gusts_of_steam and settings.olms_gusts_of_steam_slider > 0) then
health, maxHealth = GetUnitPower("boss1", POWERTYPE_HEALTH) -- Llothi
local health, maxHealth = GetUnitPower("boss1", POWERTYPE_HEALTH) -- It's always Olms in AS
-- Precautious check in case of situation when the fight is finished already but the combat state check didn't fire yet
-- (as we have 3 seconds delay for that currently)
if (health == 0 or maxHealth == 0) then
return
end
local healthPercent = health * 100 / maxHealth
if (data.olmsHealthChecked == nil) then
data.olmsHealthChecked = healthPercent
Expand All @@ -40,6 +51,8 @@ end
function RaidNotifier.AS.OnCombatStateChanged(inCombat)
local self = RaidNotifier
if (inCombat) then
-- At the start of the fight we want to clear all previous fight data collected
data = {}
EVENT_MANAGER:RegisterForUpdate(self.Name .. "_IntervalCheck", 1000, OnIntervalCheck);
dbg("start interval check")
else
Expand Down
7 changes: 7 additions & 0 deletions TrialRockgrove.lua
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,13 @@ function RaidNotifier.RG.OnCombatEvent(_, result, isError, aName, aGraphic, aAct
if (settings.oaxiltso_savage_blitz and tName ~= "") then
self:AddAnnouncement(zo_strformat(GetString(RAIDNOTIFIER_ALERTS_ROCKGROVE_SAVAGE_BLITZ), tName), "rockgrove", "oaxiltso_savage_blitz")
end
-- Havocrel Annihilator's Cinder Cleave at the fight with Oaxiltso
elseif (abilityId == buffsDebuffs.oaxiltso_annihilator_cinder_cleave) then
if (settings.oaxiltso_annihilator_cinder_cleave >= 1 and tType == COMBAT_UNIT_TYPE_PLAYER) then
self:AddAnnouncement(GetString(RAIDNOTIFIER_ALERTS_ROCKGROVE_CINDER_CLEAVE), "rockgrove", "oaxiltso_annihilator_cinder_cleave")
elseif (settings.oaxiltso_annihilator_cinder_cleave == 2 and tName ~= "") then
self:AddAnnouncement(zo_strformat(GetString(RAIDNOTIFIER_ALERTS_ROCKGROVE_CINDER_CLEAVE_OTHER), tName), "rockgrove", "oaxiltso_annihilator_cinder_cleave")
end
end
elseif (result == ACTION_RESULT_EFFECT_FADED) then
-- Sul-Xan Soulweaver's Soul Remnant attack (his Astral Shield is broken)
Expand Down
2 changes: 1 addition & 1 deletion lang/de.lua
Original file line number Diff line number Diff line change
Expand Up @@ -405,7 +405,7 @@ L.Alerts_Asylum_Teleport_Strike_Other = "|cFF3366Teleportationsschlag
L.Alerts_Asylum_Exhaustive_Charges = "Eingehende |cFF0000Erschöpfende Ladungen|r"
L.Alerts_Asylum_Storm_The_Heavens = "Eingehende |cFF0000Erstürmung des Himmels|r! Kite!"
L.Alerts_Asylum_Gusts_Of_Steam = "Eingehende |cFF9900Dampfschwaden|r! Verstecken!"
L.Alerts_Asylum_Pre_Gusts_Of_Steam = "<<1>> vor |cFF0000Sprung|r! Bereit zu Laufen!"
L.Alerts_Asylum_Pre_Gusts_Of_Steam = "|cFF0000<<1>>%|r vor |cFF9900Sprung|r! Bereit zu Laufen!"
L.Alerts_Asylum_Trial_By_Fire = "Eingehendes |cFF5500Feuer|r!"
L.Alerts_Asylum_Protector_Spawn = "|c0000FFGeschütz|r erscheint!"
L.Alerts_Asylum_Protector_Active = "|c0000FFGeschütz|r aktiv!"
Expand Down
12 changes: 8 additions & 4 deletions lang/en.lua
Original file line number Diff line number Diff line change
Expand Up @@ -414,7 +414,7 @@ L.Alerts_Asylum_Teleport_Strike_Other = "|cFF3366Teleport Strike|r on
L.Alerts_Asylum_Exhaustive_Charges = "Incoming |cFF0000Exhaustive Charges|r"
L.Alerts_Asylum_Storm_The_Heavens = "Incoming |cFF0000Storm The Heavens|r! Kite!"
L.Alerts_Asylum_Gusts_Of_Steam = "Incoming |cFF9900Gusts Of Steam|r! Hide!"
L.Alerts_Asylum_Pre_Gusts_Of_Steam = "<<1>> to |cFF0000jump|r! Prepare to Hide!"
L.Alerts_Asylum_Pre_Gusts_Of_Steam = "|cFF0000<<1>>%|r to |cFF9900jump|r! Prepare to Hide!"
L.Alerts_Asylum_Trial_By_Fire = "Incoming |cFF5500Fire|r!"
L.Alerts_Asylum_Protector_Spawn = "|c0000FFProtector|r spawning!"
L.Alerts_Asylum_Protector_Active = "|c0000FFProtector|r active!"
Expand Down Expand Up @@ -570,7 +570,7 @@ L.Settings_KynesAegis_Ichor_Eruption_CD_Time_TT = "Time before Ichor Eruptio

-- Alerts
L.Alerts_KynesAegis_Crashing_Wall = "|cd2a100Crashing Wall|r in"
L.Alerts_KynesAegis_Sanguine_Prison_Other = "|cff0000<<!aC:1>>|r trapped in |cb00000Sanguine Prison|r. Free him!"
L.Alerts_KynesAegis_Sanguine_Prison_Other = "|cff0000<<!aC:1>>|r trapped in |cb00000Sanguine Prison|r. Free them!"
L.Alerts_KynesAegis_Blood_Fountain = "|cb00000Blood Fountain|r in"
L.Alerts_KynesAegis_Dragon_Totem = "Two |cffa500Dragon Totems|r spawned. Avoid the fire!"
L.Alerts_KynesAegis_Harpy_Totem = "|c00bfffHarpy Totem|r spawned."
Expand Down Expand Up @@ -600,6 +600,8 @@ L.Settings_Rockgrove_Savage_Blitz = "Oaxiltso: Savage Blitz"
L.Settings_Rockgrove_Savage_Blitz_TT = "Alerts you when the Oaxiltso charges at the furthest player."
L.Settings_Rockgrove_Noxious_Sludge = "Oaxiltso: Noxious Sludge"
L.Settings_Rockgrove_Noxious_Sludge_TT = "Alerts you when someone is poisoned by Oaxiltso and has to go cleanse in the pool."
L.Settings_Rockgrove_Cinder_Cleave = "Oaxiltso's mini-boss: Cinder Cleave"
L.Settings_Rockgrove_Cinder_Cleave_TT = "Alerts you when Havocrel Annihilator casts his Cinder Cleave ability on someone during the fight with Oaxiltso."
L.Settings_Rockgrove_Embrace_Of_Death = "Flame-Herald Bahsei: Embrace of Death"
L.Settings_Rockgrove_Embrace_Of_Death_TT = "Alerts you when someone got cursed by Flame-Herald Bahsei. That person will explode after 8 seconds, spreading the curse. It's important to keep cursed player separated from the group."
L.Settings_Rockgrove_Embrace_Of_Death_TT_All = "|cFF0000WARNING!|r If your group will get too much curses your screen may be fully covered in countdowns for a duration of those curses! We're working on ways to improve this notification."
Expand All @@ -615,8 +617,10 @@ L.Alerts_Rockgrove_Savage_Blitz = "Oaxiltso charges at |cFF00
L.Alerts_Rockgrove_Noxious_Sludge_Self = "You're poisoned by |c008C22Noxious Sludge|r! Cleanse in the pool!"
L.Alerts_Rockgrove_Noxious_Sludge_Other1 = "|cFF0000<<!aC:1>>|r is poisoned by |c008C22Noxious Sludge|r."
L.Alerts_Rockgrove_Noxious_Sludge_Other2 = "|cFF0000<<!aC:1>>|r and |cFF0000<<!aC:2>>|r are poisoned by |c008C22Noxious Sludge|r."
L.Alerts_Rockgrove_Embrace_Of_Death = "You're cursed by |c370073Embrace of Death|r! Stay away! Explosion in"
L.Alerts_Rockgrove_Embrace_Of_Death_Other = "|cFF0000<<!aC:1>>|r cursed by |c370073Embrace of Death|r! Explosion in"
L.Alerts_Rockgrove_Cinder_Cleave = "|cD74700Cinder Cleave|r on you!"
L.Alerts_Rockgrove_Cinder_Cleave_Other = "|cD74700Cinder Cleave|r on |cFF0000<<!aC:1>>|r."
L.Alerts_Rockgrove_Embrace_Of_Death = "You're cursed by |c0A929BEmbrace of Death|r! Stay away! Explosion in"
L.Alerts_Rockgrove_Embrace_Of_Death_Other = "|cFF0000<<!aC:1>>|r cursed by |c0A929BEmbrace of Death|r! Explosion in"


--------------------------------
Expand Down
2 changes: 1 addition & 1 deletion lang/es.lua
Original file line number Diff line number Diff line change
Expand Up @@ -416,7 +416,7 @@ L.Alerts_Asylum_Teleport_Strike_Other = "|cFF3366 Golpe de transporta
L.Alerts_Asylum_Exhaustive_Charges = "|cFF0000Cargas agotadoras|r inminente."
L.Alerts_Asylum_Storm_The_Heavens = "¡|cFF0000Asalto desde los Cielos|r inminente! ¡Aléjate lentamente!"
L.Alerts_Asylum_Gusts_Of_Steam = "¡|cFF9900Ráfagas de vapor|r inminente! ¡Escóndete!"
L.Alerts_Asylum_Pre_Gusts_Of_Steam = "¡<<1>> va a |cFF0000saltar|r! ¡Preparate para esconderte!"
L.Alerts_Asylum_Pre_Gusts_Of_Steam = "¡|cFF0000<<1>>%|r va a |cFF9900saltar|r! ¡Preparate para esconderte!"
L.Alerts_Asylum_Trial_By_Fire = "¡|cFF5500Fuego|r inminente!"
L.Alerts_Asylum_Protector_Spawn = "¡|c0000FFProtector|r apareciendo!"
L.Alerts_Asylum_Protector_Active = "¡|c0000FFProtector|r activo!"
Expand Down
2 changes: 1 addition & 1 deletion lang/fr.lua
Original file line number Diff line number Diff line change
Expand Up @@ -398,7 +398,7 @@ L.Alerts_Asylum_Teleport_Strike_Other = "|cFF3366Téléportation|r su
L.Alerts_Asylum_Exhaustive_Charges = "En Approche |cFF0000Charges Épuisantes|r"
L.Alerts_Asylum_Storm_The_Heavens = "En Approche |cFF0000Assaillir les Cieux|r! Courez!"
L.Alerts_Asylum_Gusts_Of_Steam = "En Approche |cFF9900Nuages de Vapeur|r! Cachez vous!"
L.Alerts_Asylum_Pre_Gusts_Of_Steam = "<<1>>% avant |cFF0000Saut|r! Préparez vous!"
L.Alerts_Asylum_Pre_Gusts_Of_Steam = "|cFF0000<<1>>%|r avant |cFF9900Saut|r! Préparez vous!"
L.Alerts_Asylum_Trial_By_Fire = "En Approche |cFF5500Feu|r!"
L.Alerts_Asylum_Protector_Spawn = "Apparition d'un |c0000FFProtecteur|r!"
L.Alerts_Asylum_Protector_Active = "|c0000FFProtecteur|r actif!"
Expand Down
1 change: 1 addition & 0 deletions lang/ru.lua
Original file line number Diff line number Diff line change
Expand Up @@ -398,6 +398,7 @@ L.Alerts_Asylum_Storm_The_Heavens = "Приближается |cF
L.Alerts_Asylum_Eruption = "|c595959Eruption|r нацелена на тебя!"
L.Alerts_Asylum_Eruption_Other = "|c595959Eruption|r нацелена на игрока |cFC0000<<!aC:1>>|r!"
L.Alerts_Asylum_Gusts_Of_Steam = "Приближается |cFF9900Gusts Of Steam|r! СПРЯЧЬСЯ!"
L.Alerts_Asylum_Pre_Gusts_Of_Steam = "|cFF0000<<1>>%|r до |cFF9900прыжка|r! ГОТОВЬСЯ прятаться!"
L.Alerts_Asylum_Trial_By_Fire = "Приближается |cFF5500Fire|r!"
L.Alerts_Asylum_Protector_Spawn = "Появляется |c0000FFЗащитник|r!"
L.Alerts_Asylum_Protector_Active = "|c0000FFЗащитник|r активирован!"
Expand Down