24 lines
401 B
C++
24 lines
401 B
C++
#pragma once
|
|
|
|
#include "helper.h"
|
|
|
|
typedef void (*remaining_callback_t)(int8);
|
|
struct : public CallbackAware<remaining_callback_t> {
|
|
|
|
void operator=(int8 value) {
|
|
remaining = value;
|
|
if (callback) callback(remaining);
|
|
}
|
|
|
|
operator int8() {
|
|
return remaining;
|
|
}
|
|
|
|
void decrease() {
|
|
*this = remaining - 1;
|
|
}
|
|
|
|
private:
|
|
int8 remaining = 0;
|
|
} timer;
|