go to bot_core and replace the whole def preserve_unit series with
def preserve_unit(unit_series, target='trapper.png', keep_min=False):
"""
Remove 1x of the highest rank unit from the merge_series
param: unit_series - pandas series of units to remove
param: target - target unit to keep
param: keep_min - if true, keep the lowest rank unit instead of highest
"""
merge_series = unit_series.copy()
# Special handling for inquisitor
if target == 'inquisitor.png':
inquisitor_series = adv_filter_keys(merge_series, units=target, remove=False)
total_inquisitors = sum(inquisitor_series)
if total_inquisitors in [4, 7, 10]:
# Check if we need to add or remove inquisitors
if total_inquisitors < 10:
merge_series['inquisitor.png'] = 10 - total_inquisitors
elif total_inquisitors > 10:
merge_series['inquisitor.png'] = 0
# General handling for other units
else:
preserve_series = adv_filter_keys(merge_series, units=target, remove=False)
if not preserve_series.empty:
if keep_min:
preserve_unit = preserve_series.index.min()
else:
preserve_unit = preserve_series.index.max()
# Remove 1 count of highest/lowest rank
merge_series[merge_series.index == preserve_unit] = merge_series[merge_series.index == preserve_unit] - 1
# Remove 0 counts
merge_series = merge_series[merge_series > 0]
go to bot_core and replace the whole def preserve_unit series with
def preserve_unit(unit_series, target='trapper.png', keep_min=False): """ Remove 1x of the highest rank unit from the merge_series param: unit_series - pandas series of units to remove param: target - target unit to keep param: keep_min - if true, keep the lowest rank unit instead of highest """ merge_series = unit_series.copy()