#include "wound_atk.h"

#include <algorithm>
#include "constants.h"

wound_atk::wound_atk(const position &pos):
        potion{potion_type::WOUND_ATK, -1, pos} {}

void wound_atk::apply(const enum race &race, int &HP, int &ATK, int &DEF,
                      fraction &base_hit_rate) {
        if (remaining_duration != 0) {
                int tmp = WOUND_ATK;

                if (race == DROW)
                        tmp *= DROW_POTION_MUL;

                ATK  = std::max(ATK - tmp, 0);
                --remaining_duration;
        }
}

int wound_atk::get_priority() const {
        return CALC_BASE;
}

const char *wound_atk::get_name() const {
        return "WA";
}
