- Plugin 'Damage Rank': is now called 'Damage, the Game!' and was its levels adjusted to WoD.
- Plugin 'Tiny Threat': fixed player name where it was showing the realm name too. - Plugin 'Vanguard': fixed frame details (clicking on a bar) shown behind the Vanguard panel. - Plugin 'Vanguard': fixed a problem when clicking with right button wasn't opening the bookmark panel. - Plugin 'Vanguard': incoming heals now count shield amount on the player too. - Plugin 'Vanguard' Known Bug: incoming damage and melee vs avoidance seems to be inaccurate by now, we need more time to study and fix it. - Added Twins Ogron's Charge as custom spells, one for the charge by him self and other for the copies (mythic only). - Fixed few issues when using class text colors. - Fixed characters name outside instances, now it replaces the realm name with a * and show the complete name on tooltip. - Fixed damage mitigation on damage taken, this affects only specific classes like monk tank. - Fixed auto erase poping up when the player enters on its garrison. - Fixed segments tooltip showing trash cleanup segments inside garrisons. - Fixed command /details disable, wasn't disabling the capture of cooldowns. - Fixed a problem with fast dps/hps when the window is in a empty segment. - Fixed an issue using bookmark panel where it wasn't changing the display when the window is in a plugin mode.
This commit is contained in:
@@ -27,7 +27,7 @@ local function CreatePluginFrames (data)
|
||||
--local
|
||||
|
||||
--> default rank table
|
||||
DmgRank.rank = data or {level = 1, dps = 0, dpshistory = {}, lasttry = {}, annouce = true}
|
||||
DmgRank.rank = DmgRank.db
|
||||
--DmgRank.rank.level = 20
|
||||
|
||||
--> OnEvent Table
|
||||
@@ -44,7 +44,6 @@ local function CreatePluginFrames (data)
|
||||
elseif (event == "COMBAT_PLAYER_TIMESTARTED") then --> combat started
|
||||
--print ("recebeu event start")
|
||||
local combat = select (1, ...)
|
||||
--print (combat)
|
||||
DmgRank:Start()
|
||||
|
||||
elseif (event == "PLUGIN_DISABLED") then
|
||||
@@ -63,34 +62,34 @@ local function CreatePluginFrames (data)
|
||||
DmgRank.TimeGoal = {
|
||||
|
||||
--> The 30 seconds Trial
|
||||
{time = 30, damage = 1500000, name = Loc ["CHALLENGENAME_1"]}, -- Ready to Raid -- rank 2 --> -- Patrulha --> 50K DPS required
|
||||
{time = 30, damage = 1800000, name = Loc ["CHALLENGENAME_2"]}, -- Damage Practice --rank 3 --> -- Soldier --> 60K DPS required
|
||||
{time = 30, damage = 2100000, name = Loc ["CHALLENGENAME_3"]}, -- The Training Continue... -- rank 4 --> -- Corporal --> 70K DPS required
|
||||
{time = 30, damage = 350000, name = Loc ["CHALLENGENAME_1"]}, -- Ready to Raid -- rank 2 --> -- Patrulha --> ~11K DPS required
|
||||
{time = 30, damage = 420000, name = Loc ["CHALLENGENAME_2"]}, -- Damage Practice --rank 3 --> -- Soldier --> ~14K DPS required
|
||||
{time = 30, damage = 500000, name = Loc ["CHALLENGENAME_3"]}, -- The Training Continue... -- rank 4 --> -- Corporal --> ~16K DPS required
|
||||
|
||||
--> 90 seconds bracket
|
||||
{time = 90, damage = 5080000, name = Loc ["CHALLENGENAME_4"]}, -- You Just Need a Little More Time -- rank 5 --> -- Sergeant --> 56K DPS required
|
||||
{time = 90, damage = 5814800, name = Loc ["CHALLENGENAME_5"]}, -- Became a Knight -- rank 6 --> -- Sergeant --> 64K DPS required
|
||||
{time = 90, damage = 1601010, name = Loc ["CHALLENGENAME_4"]}, -- You Just Need a Little More Time -- rank 5 --> -- Sergeant --> ~17K DPS required
|
||||
{time = 90, damage = 1666660, name = Loc ["CHALLENGENAME_5"]}, -- Became a Knight -- rank 6 --> -- Sergeant --> ~18K DPS required
|
||||
|
||||
--> middle bracket
|
||||
{time = 120, damage = 7901760, name = Loc ["CHALLENGENAME_6"]}, -- Two Minutes -- rank 7 --> Iron Knight --> 65K DPS required
|
||||
{time = 120, damage = 8442112, name = Loc ["CHALLENGENAME_7"]}, --rank 8 --> Steel Knight --> 70K DPS required
|
||||
{time = 180, damage = 13452000, name = Loc ["CHALLENGENAME_8"]}, --rank 9 --> --> The High Knight --> 74K DPS required
|
||||
{time = 180, damage = 14152100, name = Loc ["CHALLENGENAME_9"]}, --rank 10 --> Yes Sir! -- Thorium Knight --> 78K DPS required
|
||||
{time = 180, damage = 15052100, name = Loc ["CHALLENGENAME_10"]}, --rank 11 --> Salute -- Silver Lieutenant --> 83K DPS required
|
||||
{time = 120, damage = 2254120, name = Loc ["CHALLENGENAME_6"]}, -- Two Minutes -- rank 7 --> Iron Knight --> ~18K DPS required
|
||||
{time = 120, damage = 2409500, name = Loc ["CHALLENGENAME_7"]}, --rank 8 --> Steel Knight --> ~20K DPS required
|
||||
{time = 180, damage = 3390000, name = Loc ["CHALLENGENAME_8"]}, --rank 9 --> --> The High Knight --> ~18K DPS required
|
||||
{time = 180, damage = 3499000, name = Loc ["CHALLENGENAME_9"]}, --rank 10 --> Yes Sir! -- Thorium Knight --> ~19K DPS required
|
||||
{time = 180, damage = 3784051, name = Loc ["CHALLENGENAME_10"]}, --rank 11 --> Salute -- Silver Lieutenant --> ~21K DPS required
|
||||
|
||||
--> burst bracket
|
||||
{time = 40, damage = 5000000, name = Loc ["CHALLENGENAME_11"]}, --rank 12 --> In Burst We Trust -- Gold Lieutenant --> 125K DPS required
|
||||
{time = 40, damage = 5700000, name = Loc ["CHALLENGENAME_12"]}, --rank 13 --> Watch me Explode -- Stone Guardian --> 142K DPS required
|
||||
{time = 40, damage = 6300000, name = Loc ["CHALLENGENAME_13"]}, --rank 14 --> T.N.T-- Fel Guardian --> 157K DPS required
|
||||
{time = 40, damage = 1351144, name = Loc ["CHALLENGENAME_11"]}, --rank 12 --> In Burst We Trust -- Gold Lieutenant --> ~33K DPS required
|
||||
{time = 40, damage = 1494404, name = Loc ["CHALLENGENAME_12"]}, --rank 13 --> Watch me Explode -- Stone Guardian --> ~37K DPS required
|
||||
{time = 40, damage = 1569900, name = Loc ["CHALLENGENAME_13"]}, --rank 14 --> T.N.T-- Fel Guardian --> ~39K DPS required
|
||||
|
||||
--> long run bracket
|
||||
{time = 300, damage = 35052100, name = Loc ["CHALLENGENAME_14"]}, --rank 15 --> Time is Damage My Friend -- Titan Guardian --> 116K DPS required
|
||||
{time = 330, damage = 41151120, name = Loc ["CHALLENGENAME_15"]}, --rank 16 - Just a Little Patience --> Bronze Centurion --> 124K DPS required
|
||||
{time = 360, damage = 47395100, name = Loc ["CHALLENGENAME_16"]}, --rank 17 --> Silver Centurion --> 131K DPS required
|
||||
{time = 300, damage = 6211201, name = Loc ["CHALLENGENAME_14"]}, --rank 15 --> Time is Damage My Friend -- Titan Guardian --> ~20K DPS required
|
||||
{time = 300, damage = 6842459, name = Loc ["CHALLENGENAME_15"]}, --rank 16 - Just a Little Patience --> Bronze Centurion --> ~22K DPS required
|
||||
{time = 300, damage = 7511983, name = Loc ["CHALLENGENAME_16"]}, --rank 17 --> Silver Centurion --> ~25K DPS required
|
||||
|
||||
{time = 300, damage = 56911000, name = Loc ["CHALLENGENAME_17"]}, --rank 18 --> Flame Centurion --> ?K DPS required
|
||||
{time = 360, damage = 71821980, name = Loc ["CHALLENGENAME_18"]}, --rank 19 --> Lower Vanquisher --> ?K DPS required
|
||||
{time = 180, damage = 45910990, name = Loc ["CHALLENGENAME_19"]}, --rank 20 --> Middle Vanquisher --> ?K DPS required
|
||||
{time = 120, damage = 4011100, name = Loc ["CHALLENGENAME_17"]}, --rank 18 --> Flame Centurion --> ~33K DPS required
|
||||
{time = 120, damage = 4300000, name = Loc ["CHALLENGENAME_18"]}, --rank 19 --> Lower Vanquisher --> 35K DPS required
|
||||
{time = 60, damage = 2650000, name = Loc ["CHALLENGENAME_19"]}, --rank 20 --> Middle Vanquisher --> 44K DPS required
|
||||
|
||||
--> end
|
||||
{time = nil, damage = nil, name = ""}, --rank 21 --> none
|
||||
@@ -237,23 +236,6 @@ local function CreatePluginFrames (data)
|
||||
background:SetDrawLayer ("background", 1)
|
||||
DmgRank.BackgroundTex = background
|
||||
|
||||
local AnimeFrame = CreateFrame ("frame", nil, DmgRankFrame)
|
||||
AnimeFrame:SetAllPoints (DmgRankFrame)
|
||||
|
||||
local background2 = AnimeFrame:CreateTexture (nil, "background")
|
||||
background2:SetTexture ("Interface\\AddOns\\Details_DmgRank\\solo_bgtimeattack")
|
||||
background2:SetPoint ("topleft", DmgRankFrame, "topleft", 2, 0)
|
||||
background2:SetPoint ("bottomright", DmgRankFrame, "bottomright", -2, 0)
|
||||
DmgRank.BackgroundTex2 = background2
|
||||
background2:SetDrawLayer ("background", 2)
|
||||
|
||||
local RotateAnimGroup = AnimeFrame:CreateAnimationGroup()
|
||||
local rotate = RotateAnimGroup:CreateAnimation ("Rotation")
|
||||
rotate:SetDegrees (360)
|
||||
rotate:SetDuration (120)
|
||||
RotateAnimGroup:SetLooping ("repeat")
|
||||
RotateAnimGroup:Play()
|
||||
|
||||
--> next rank at display
|
||||
local challengeName = DetailsFrameWork:NewLabel (DmgRankFrame, DmgRankFrame, nil, "challengeName", "", "QuestFont_Shadow_Huge")
|
||||
challengeName:SetPoint ("center", DmgRankFrame, "center")
|
||||
@@ -486,7 +468,7 @@ local function CreatePluginFrames (data)
|
||||
DmgRank.rank.level = DmgRank.rank.level + 1
|
||||
|
||||
if (DmgRank.rank.annouce) then
|
||||
SendChatMessage (UnitName ("player") .. " " .. Loc ["STRING_ANNOUNCE_STRING"] .. " " .. DmgRank.rank.level .. " (" .. self.Titles [DmgRank.rank.level] .. ") " .. Loc ["STRING_ANNOUNCE_ON"] .. " Details! " .. Loc ["STRING_PLUGIN_NAME"] .. ".", "GUILD")
|
||||
SendChatMessage (UnitName ("player") .. " " .. Loc ["STRING_ANNOUNCE_STRING"] .. " " .. DmgRank.rank.level .. " (" .. self.Titles [DmgRank.rank.level] .. ") " .. Loc ["STRING_ANNOUNCE_ON"] .. " Details!: " .. Loc ["STRING_PLUGIN_NAME"] .. ".", "GUILD")
|
||||
end
|
||||
|
||||
DmgRank.rank.dps = player.total
|
||||
@@ -545,17 +527,19 @@ function DmgRank:OnEvent (_, event, ...)
|
||||
|
||||
if (_G._detalhes) then
|
||||
|
||||
--> create widgets
|
||||
CreatePluginFrames (_detalhes_databaseDmgRank)
|
||||
|
||||
local MINIMAL_DETAILS_VERSION_REQUIRED = 1
|
||||
local MINIMAL_DETAILS_VERSION_REQUIRED = 50
|
||||
|
||||
local default_config = {level = 1, dps = 0, dpshistory = {}, lasttry = {}, annouce = true}
|
||||
|
||||
--> Install plugin inside details
|
||||
local install, saveddata = _G._detalhes:InstallPlugin ("SOLO", Loc ["STRING_PLUGIN_NAME"], "Interface\\Icons\\ACHIEVEMENT_GUILDPERK_HONORABLEMENTION_RANK2", DmgRank, "DETAILS_PLUGIN_DAMAGE_RANK", MINIMAL_DETAILS_VERSION_REQUIRED, "Details! Team", "v1.1.1")
|
||||
local install, saveddata = _G._detalhes:InstallPlugin ("SOLO", Loc ["STRING_PLUGIN_NAME"], "Interface\\Icons\\ACHIEVEMENT_GUILDPERK_HONORABLEMENTION_RANK2", DmgRank, "DETAILS_PLUGIN_DAMAGE_RANK", MINIMAL_DETAILS_VERSION_REQUIRED, "Details! Team", "v1.2.0", default_config)
|
||||
if (type (install) == "table" and install.error) then
|
||||
print (install.error)
|
||||
end
|
||||
|
||||
--> create widgets
|
||||
CreatePluginFrames()
|
||||
|
||||
--> Register needed events
|
||||
_G._detalhes:RegisterEvent (DmgRank, "COMBAT_PLAYER_TIMESTARTED")
|
||||
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
## Interface: 60000
|
||||
## Title: Details DamageRank (plugin)
|
||||
## Title: Details Damage, the Game! (plugin)
|
||||
## Notes: Plugin for Details
|
||||
## SavedVariablesPerCharacter: _detalhes_databaseDmgRank
|
||||
## RequiredDeps: Details
|
||||
## OptionalDeps: Ace3, LibSharedMedia-3.0, LibBossIDs-1.0, LibGraph-2.0, !ClassColors
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ if (not Loc) then
|
||||
end
|
||||
|
||||
--> Labels:
|
||||
Loc ["STRING_PLUGIN_NAME"] = "Damage Rank"
|
||||
Loc ["STRING_PLUGIN_NAME"] = "Damage, the Game!"
|
||||
Loc ["STRING_CURRENTRANK"] = "Your current rank is:"
|
||||
Loc ["STRING_ANNOUNCE"] = "announce"
|
||||
Loc ["STRING_ANNOUNCE_STRING"] = "has reached the level"
|
||||
|
||||
@@ -5,7 +5,7 @@ if (not Loc) then
|
||||
end
|
||||
|
||||
--> Labels:
|
||||
Loc ["STRING_PLUGIN_NAME"] = "Rank de Dano"
|
||||
Loc ["STRING_PLUGIN_NAME"] = "Dano, o Jogo!"
|
||||
Loc ["STRING_CURRENTRANK"] = "Seu rank atual:"
|
||||
Loc ["STRING_LASTTRIES"] = "Ultimas tentativas:"
|
||||
Loc ["STRING_ANNOUNCE"] = "anunciar"
|
||||
|
||||
@@ -52,6 +52,8 @@ local function CreatePluginFrames (data)
|
||||
--> localize functions
|
||||
ThreatMeter.percent_color = ThreatMeter.percent_color
|
||||
|
||||
ThreatMeter.GetOnlyName = ThreatMeter.GetOnlyName
|
||||
|
||||
--> window reference
|
||||
local instance
|
||||
local player
|
||||
@@ -367,7 +369,6 @@ local function CreatePluginFrames (data)
|
||||
pullRow:SetLeftText ("Pull Aggro At")
|
||||
local realPercent = _math_floor (aggro / topThreat [6] * 100)
|
||||
pullRow:SetRightText ("+" .. ThreatMeter:ToK2 (aggro - myThreat) .. " (" .. _math_floor (_math_abs ((myThreat / aggro * 100) - realPercent)) .. "%)") --
|
||||
--thisRow.textleft:SetTextColor ()
|
||||
pullRow:SetValue (100)
|
||||
|
||||
local myPercentToAggro = myThreat / aggro * 100
|
||||
@@ -394,7 +395,7 @@ local function CreatePluginFrames (data)
|
||||
local role = threat_actor [4]
|
||||
thisRow._icon:SetTexCoord (_unpack (RoleIconCoord [role]))
|
||||
|
||||
thisRow:SetLeftText (threat_actor [1])
|
||||
thisRow:SetLeftText (ThreatMeter:GetOnlyName (threat_actor [1]))
|
||||
|
||||
local pct = threat_actor [2]
|
||||
|
||||
|
||||
@@ -9,10 +9,12 @@ local _IsInGroup = IsInGroup --> wow api local
|
||||
local _UnitAura = UnitAura --> wow api local
|
||||
local _UnitName = UnitName --> wow api local
|
||||
local _UnitGroupRolesAssigned = UnitGroupRolesAssigned --> wow api local
|
||||
local _UnitHealth = UnitHealth --> wow api local
|
||||
local _UnitHealthMax = UnitHealthMax --> wow api local
|
||||
local _UnitIsPlayer = UnitIsPlayer --> wow api local
|
||||
local _UnitClass = UnitClass --> wow api local
|
||||
local _UnitDebuff = UnitDebuff --> wow api local
|
||||
local _UnitGetIncomingHeals = UnitGetIncomingHeals
|
||||
---------------------------------------------------------------------------------------------
|
||||
local _cstr = string.format --> lua library local
|
||||
local _table_insert = table.insert --> lua library local
|
||||
@@ -22,6 +24,7 @@ local _pairs = pairs --> lua library local
|
||||
local _math_floor = math.floor --> lua library local
|
||||
local _math_abs = math.abs --> lua library local
|
||||
local _math_min = math.min --> lua library local
|
||||
local _table_sort = table.sort
|
||||
---------------------------------------------------------------------------------------------
|
||||
|
||||
--> Create plugin Object
|
||||
@@ -310,7 +313,8 @@ local function CreatePluginFrames (data)
|
||||
local infoFrame = DetailsFrameWork:NewPanel (VanguardFrame, VanguardFrame, "VanguardInfoFrame", "infoFrame", 300, 100)
|
||||
infoFrame:SetPoint ("topleft", VanguardFrame, "topleft")
|
||||
infoFrame:Hide()
|
||||
infoFrame:SetFrameLevel (5)
|
||||
infoFrame:SetFrameLevel (VanguardFrame:GetFrameLevel() + 10)
|
||||
|
||||
VanguardFrame.InfoShown = false
|
||||
|
||||
infoFrame:SetBackdrop ("Interface\\DialogFrame\\UI-DialogBox-Background-Dark")
|
||||
@@ -339,24 +343,33 @@ local function CreatePluginFrames (data)
|
||||
ReportButton.tooltip = Loc ["STRING_REPORT_AVOIDANCE_TOOLTIP"]
|
||||
|
||||
infoFrame:SetHook ("OnMouseUp", function (_, button)
|
||||
if (string.lower (button):find ("right")) then
|
||||
--if (string.lower (button):find ("right")) then
|
||||
VanguardFrame.InfoShown = false
|
||||
infoFrame:Hide()
|
||||
if (infoFrame.refreshTick) then
|
||||
Vanguard:CancelTimer (infoFrame.refreshTick)
|
||||
infoFrame.refreshTick = nil
|
||||
end
|
||||
end
|
||||
--end
|
||||
end)
|
||||
|
||||
local funcInfo = function()
|
||||
VanguardFrame.InfoShown = true
|
||||
Vanguard:VanguardRefreshInfoFrame()
|
||||
local w, h = instancia:GetSize()
|
||||
infoFrame.width = w
|
||||
infoFrame.height = h
|
||||
infoFrame:Show()
|
||||
infoFrame.refreshTick = Vanguard:ScheduleRepeatingTimer ("VanguardRefreshInfoFrame", 1)
|
||||
local funcInfo = function (self, button)
|
||||
if (button == "LeftButton") then
|
||||
VanguardFrame.InfoShown = true
|
||||
Vanguard:VanguardRefreshInfoFrame()
|
||||
local w, h = instancia:GetSize()
|
||||
infoFrame.width = w
|
||||
infoFrame.height = h
|
||||
infoFrame:Show()
|
||||
infoFrame.refreshTick = Vanguard:ScheduleRepeatingTimer ("VanguardRefreshInfoFrame", 1)
|
||||
|
||||
elseif (button == "RightButton") then
|
||||
local instance = Vanguard:GetPluginInstance()
|
||||
if (instance) then
|
||||
_detalhes.switch:ShowMe (instance)
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
--> Info frame widgets:
|
||||
@@ -456,11 +469,11 @@ local function CreatePluginFrames (data)
|
||||
for actorName, _ in pairs (heal_from) do
|
||||
local thisActor = Vanguard:GetActor ("current", DETAILS_ATTRIBUTE_HEAL, actorName)
|
||||
local targets = thisActor.targets --> targets is a container with target classes
|
||||
local amount = targets:GetAmount (_track_player_name, "total")
|
||||
local amount = targets [_track_player_name] or 0
|
||||
myReceivedHeal [#myReceivedHeal+1] = {actorName, amount}
|
||||
end
|
||||
|
||||
table.sort (myReceivedHeal, Vanguard.Sort2) --> Sort2 sort by second index
|
||||
_table_sort (myReceivedHeal, Vanguard.Sort2) --> Sort2 sort by second index
|
||||
|
||||
for i = 1, 4 do
|
||||
if (myReceivedHeal[i]) then
|
||||
@@ -724,7 +737,7 @@ local function CreatePluginFrames (data)
|
||||
end
|
||||
|
||||
function Vanguard:UpdateHealth (index, unit)
|
||||
local percent = UnitHealth (unit) / UnitHealthMax (unit) * 100
|
||||
local percent = _UnitHealth (unit) / _UnitHealthMax (unit) * 100
|
||||
Vanguard.TankFrames [index].Life (percent)
|
||||
end
|
||||
|
||||
@@ -940,12 +953,13 @@ local function CreatePluginFrames (data)
|
||||
local on_second_tick = 0
|
||||
local half_second_tick = 0
|
||||
|
||||
-- úpdate
|
||||
local onupdate = function (self, elapsed)
|
||||
|
||||
half_second_tick = half_second_tick + elapsed
|
||||
on_second_tick = on_second_tick + elapsed
|
||||
|
||||
if (on_second_tick >= 1) then
|
||||
if (on_second_tick >= 0.3) then
|
||||
|
||||
--> capture debuffs
|
||||
for TankIndex, TankName in _ipairs (Vanguard.TankList) do
|
||||
@@ -1008,7 +1022,7 @@ local function CreatePluginFrames (data)
|
||||
on_second_tick = 0
|
||||
end
|
||||
|
||||
if (half_second_tick > 0.5 and _track_player_object.avoidance) then
|
||||
if (half_second_tick > 0.1 and _track_player_object.avoidance) then
|
||||
|
||||
--> capture the amount of hits and avoids
|
||||
|
||||
@@ -1089,8 +1103,11 @@ local function CreatePluginFrames (data)
|
||||
local dmgAmt = damage_now / #damage_taken
|
||||
DamageVsHeal:SetRightText (Vanguard:ToK ( _math_floor (dmgAmt)))
|
||||
|
||||
local IncomingHeal = UnitGetIncomingHeals (_track_player_name) or 0
|
||||
DamageVsHeal:SetLeftText (Vanguard:ToK (IncomingHeal))
|
||||
local shields = UnitGetTotalAbsorbs (_track_player_name) or 0
|
||||
local IncomingHeal = _UnitGetIncomingHeals (_track_player_name) or 0
|
||||
DamageVsHeal:SetLeftText (Vanguard:ToK (IncomingHeal + shields) .. " (|cFFFFFF55A: " .. Vanguard:ToK (shields) .. "|r)")
|
||||
|
||||
IncomingHeal = IncomingHeal + shields
|
||||
|
||||
if (dmgAmt > 0 and IncomingHeal > 0) then
|
||||
if (dmgAmt > IncomingHeal) then
|
||||
@@ -1125,7 +1142,7 @@ local function CreatePluginFrames (data)
|
||||
local amt = 1
|
||||
local hp = _UnitHealthMax (_track_player_name)/3
|
||||
|
||||
local last_events_table = _combat_object.player_last_events [MyName]
|
||||
local last_events_table = _combat_object.player_last_events [_track_player_name or MyName] or _combat_object.player_last_events [MyName]
|
||||
if (last_events_table) then
|
||||
for _, tabela in _ipairs (last_events_table) do
|
||||
if (tabela[1]) then
|
||||
|
||||
Reference in New Issue
Block a user