Module:Damage: Difference between revisions

no edit summary
No edit summary
Tag: Manual revert
No edit summary
Line 542: Line 542:


     local RANGE = {
     local RANGE = {
         min_count = args.range_min_count and args.range_min_count[1] or 1,
         min_count = args.range_min_count and args.range_min_count[1],
         max_count = args.range_max_count and args.range_max_count[1] or 1,
         max_count = args.range_max_count and args.range_max_count[1],
         PvE = {
         PvE = {
             min = (args.range_min and args.range_min[1] or (args.range_min_count and args.range_max and args.range_max[1])) or 1,
             min = args.range_min and args.range_min[1],
             max = args.range_max and args.range_max[1] or 1
             max = args.range_max and args.range_max[1]
         },
         },
         PvP = {
         PvP = {
             min = args.range_min and (args.range_min[2] or args.range_min[1] or (args.range_min_count and args.range_max and args.range_max[2] or args.range_max[1])) or 1,
             min = args.range_min and (args.range_min[2] or args.range_min[1]),
             max = args.range_max and (args.range_max[2] or args.range_max[1]) or 1
             max = args.range_max and (args.range_max[2] or args.range_max[1])
         }
         }
     }
     }
Line 561: Line 561:
                 WITH_RANGE[mode][damage_key] = { min = 0, max = 0 }
                 WITH_RANGE[mode][damage_key] = { min = 0, max = 0 }
                 forEachDamageType(function(damage_type)
                 forEachDamageType(function(damage_type)
                     local range_count = RANGE[damage_type .. '_count'];
                     local range_count = RANGE[damage_type .. '_count'] or 1;
                     local range_multiplier = RANGE[mode][damage_type];
                    -- If min count preset, use range_max for the multiplier.
                     local range_multiplier = RANGE[mode][damage_type] or (damage_type == 'min' and args.range_min_count and RANGE[mode].max);
                     local final_range_multiplier = (1 + ((range_multiplier - 1) * range_count));
                     local final_range_multiplier = (1 + ((range_multiplier - 1) * range_count));
                     local perm_buff = OPTIONS.perm_buff[mode];
                     local perm_buff = OPTIONS.perm_buff[mode];