Anonymous

Module:Test: Difference between revisions

From Elwiki
no edit summary
No edit summary
Tag: Manual revert
No edit summary
Line 281: Line 281:


     -- Function to apply inheritance for a specific argument key
     -- Function to apply inheritance for a specific argument key
     local function applyInheritanceForKey(args, prefix, mainKey, argTable, damageTypeIndex)
     local function applyInheritanceForKey(args, prefix, argTable, damageTypeIndex, damageType)
        local mainKey = argTable[1] .. damageType
         local mainKeyPrefixed = prefix .. mainKey
         local mainKeyPrefixed = prefix .. mainKey
         local mainArgValues = args[mainKeyPrefixed]
         local mainArgValues = args[mainKeyPrefixed]
Line 293: Line 294:


                 for ix, inheritKey in ipairs(argTable) do
                 for ix, inheritKey in ipairs(argTable) do
                     local inheritArg = args[prefix .. inheritKey] or args[inheritKey]
                     local inheritArg = args[prefix .. inheritKey .. damageType] or args[inheritKey .. damageType] and args[prefix .. inheritKey] or args[inheritKey]


                     if inheritArg and inheritArg[i] and inheritArg[i] ~= '' and
                     if inheritArg and inheritArg[i] and inheritArg[i] ~= '' and tonumber(inheritArg[i]) and
                         (damageTypeIndex == 1 and ix ~= 1 or damageTypeIndex ~= 1)
                         (damageTypeIndex == 1 and ix ~= 1 or damageTypeIndex ~= 1)
                     then
                     then
Line 316: Line 317:
                 if argTableKey ~= 'provided' and isTableNotEmpty(argTable) then
                 if argTableKey ~= 'provided' and isTableNotEmpty(argTable) then
                     for damageTypeIndex, damageType in ipairs({ '', '_min', '_max' }) do
                     for damageTypeIndex, damageType in ipairs({ '', '_min', '_max' }) do
                         applyInheritanceForKey(args, prefix, argTable[1] .. damageType, argTable, damageTypeIndex)
                         applyInheritanceForKey(args, prefix, argTable, damageTypeIndex, damageType)
                     end
                     end
                 end
                 end