| 2195 | } |
| 2196 | |
| 2197 | static void mutateActionTimerCore(df::unit_action *action, |
| 2198 | std::function<double(double)> mutator) |
| 2199 | { |
| 2200 | int32_t *timer = getActionTimerPointer(action); |
| 2201 | if (timer != nullptr && *timer > 0) |
| 2202 | { |
| 2203 | double value = *timer; |
| 2204 | value = mutator(value); |
| 2205 | if (value > INT32_MAX) |
| 2206 | value = INT32_MAX; |
| 2207 | else if (value < INT32_MIN) |
| 2208 | value = INT32_MIN; |
| 2209 | *timer = value; |
| 2210 | } |
| 2211 | } |
| 2212 | |
| 2213 | void Units::subtractActionTimers(color_ostream &out, df::unit *unit, |
| 2214 | int32_t amount, df::unit_action_type affectedActionType) |
no test coverage detected