diff --git a/addons/GearSwap/targets.lua b/addons/GearSwap/targets.lua index 3e47b74da..d4f0249e4 100644 --- a/addons/GearSwap/targets.lua +++ b/addons/GearSwap/targets.lua @@ -29,29 +29,33 @@ function valid_target(targ) local spelltarget = {} - local spell_targ - if pass_through_targs[targ] then + + if targ and pass_through_targs[targ] then local j = windower.ffxi.get_mob_by_target(targ) - - if j then spelltarget = target_complete(j) end - - spelltarget.raw = targ - return targ, spelltarget - elseif targ and tonumber(targ) and tonumber(targ) > 255 then - local j = windower.ffxi.get_mob_by_id(tonumber(targ)) - - if j then spelltarget = target_complete(j) end - + if j then + spelltarget = target_complete(j) + end spelltarget.raw = targ return targ, spelltarget - elseif targ and not tonumber(targ) and targ ~= '' then - local mob_array = windower.ffxi.get_mob_array() - for i,v in pairs(mob_array) do - if v.name:lower()==targ:lower() and (not v.is_npc or v.spawn_type == 14) then - spelltarget = target_complete(v) - spelltarget.raw = targ - return targ, spelltarget + elseif targ then + local id = tonumber(targ) + if id then + local j = windower.ffxi.get_mob_by_id(id) + if j then + spelltarget = target_complete(j) + end + spelltarget.raw = targ + return targ, spelltarget + elseif targ ~= '' then + local targ_name = targ:lower() + local mob_array = windower.ffxi.get_mob_array() + for i,v in pairs(mob_array) do + if v.name:lower()==targ_name and (not v.is_npc or v.spawn_type == 14) then + spelltarget = target_complete(v) + spelltarget.raw = targ + return targ, spelltarget + end end end end @@ -146,4 +150,4 @@ function target_type_check(spell) if spell.targets[temptype] then return true end return false -end \ No newline at end of file +end