29 lines
815 B
C++
29 lines
815 B
C++
#include "game.h"
|
|
#include "arguments.h"
|
|
|
|
int main(int argc, char **argv) {
|
|
std::unique_ptr<cursor> curse;
|
|
std::unique_ptr<input> in;
|
|
std::unique_ptr<display> out;
|
|
std::unique_ptr<logger> log;
|
|
std::unique_ptr<RNG> rng;
|
|
|
|
|
|
feature enabled_features = proc_args(argc, argv,
|
|
curse, in, out, log, rng);
|
|
|
|
if (enabled_features &
|
|
(FEATURE_PANIC | FEATURE_PANIC_FILE |
|
|
FEATURE_CONFLICT | FEATURE_PANIC_SEED)) {
|
|
panic_args(enabled_features);
|
|
return RETURN_PANICKED;
|
|
}
|
|
|
|
game game_proc(enabled_features, in, out, log, rng);
|
|
|
|
while (game_proc.run() != game_status::terminated)
|
|
out->render();
|
|
|
|
return RETURN_FINE;
|
|
}
|