From f3c49ec02e45e27b9264d0768d648ae0ec8f2d08 Mon Sep 17 00:00:00 2001 From: Tercio Jose Date: Tue, 4 Jul 2023 18:46:22 -0300 Subject: [PATCH] Added: Details:DoesCombatWithUIDExists(uniqueCombatId); Details:GetCombatByUID(uniqueCombatId); combat:GetCombatUID() --- classes/class_combat.lua | 7 +++++++ classes/container_segments.lua | 30 ++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+) diff --git a/classes/class_combat.lua b/classes/class_combat.lua index 3b1ceae4..a0b5a3f3 100644 --- a/classes/class_combat.lua +++ b/classes/class_combat.lua @@ -76,6 +76,13 @@ end classCombat.__call = Details.call_combate + ---get the unique combat identifier + ---@param self combat + ---@return number + function classCombat:GetCombatUID() + return self.combat_counter + end + --get the start date and end date function classCombat:GetDate() return self.data_inicio, self.data_fim diff --git a/classes/container_segments.lua b/classes/container_segments.lua index 561b94ca..5c378c2c 100644 --- a/classes/container_segments.lua +++ b/classes/container_segments.lua @@ -57,6 +57,36 @@ function Details:GetCombat(combat) return nil end +---get a unique combat id and check if exists a combat with this id +---@param uniqueCombatId number +---@return boolean bExistsCombat +function Details:DoesCombatWithUIDExists(uniqueCombatId) + local segmentsTable = Details:GetCombatSegments() + + for segmentId, combatObject in ipairs(segmentsTable) do + if (combatObject.combat_counter == uniqueCombatId) then + return true + end + end + + return false +end + +---get a unique combat id and return the combat object +---@param uniqueCombatId number +---@return combat|boolean combatObject +function Details:GetCombatByUID(uniqueCombatId) + local segmentsTable = Details:GetCombatSegments() + + for segmentId, combatObject in ipairs(segmentsTable) do + if (combatObject.combat_counter == uniqueCombatId) then + return combatObject + end + end + + return false +end + ---remove a segment from the segments table ---@param segmentIndex number ---@return boolean, combat