options: add help option and rename bot argument for later
This commit is contained in:
parent
4a5fbe88d3
commit
6fc3580102
23
src/main.cpp
23
src/main.cpp
@ -4,19 +4,36 @@
|
||||
#include <vector>
|
||||
#include <iostream>
|
||||
|
||||
void Help(void) {
|
||||
std::cout << "Usage: snakeplusplus [OPTIONS]" << std::endl;
|
||||
std::cout << "Options:" << std::endl;
|
||||
std::cout << "\t--server\tRun snake in server mode (also sets --bot)" << std::endl;
|
||||
std::cout << "\t--auto\t\tControl snake using a bot or AI" << std::endl;
|
||||
std::cout << "\t-h, --help\tPrint this help message and exit" << std::endl;
|
||||
std::cout << std::endl;
|
||||
std::cout << "Autoplay options (requires --auto):" << std::endl;
|
||||
std::cout << "\t--dumb\t\tPlays using basic search algorithms BFS and DFS" << std::endl;
|
||||
std::cout << "\t--smart\t\tTrains an algorithm using unsupervised learning" << std::endl;
|
||||
std::cout << std::endl;
|
||||
}
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
std::vector<std::string> args(argv, argv + argc);
|
||||
g_pEngine = std::make_unique<GameEngine>();
|
||||
for (int i = 1; i < args.size(); ++i) {
|
||||
if (args[i].compare("--no-gui") == 0) {
|
||||
if (args[i].compare("--server") == 0) {
|
||||
g_pEngine->state.m_bNoDisplay = true;
|
||||
g_pEngine->state.m_bIsBotControlled = true;
|
||||
std::cout << "[LOG - Main] Disabling display" << std::endl;
|
||||
} else if (args[i].compare("--bot") == 0) {
|
||||
} else if (args[i].compare("--auto") == 0) {
|
||||
g_pEngine->state.m_bIsBotControlled = true;
|
||||
std::cout << "[LOG - Main] Bot control enabled" << std::endl;
|
||||
} else if (args[i].compare("-h") == 0 || args[i].compare("--help") == 0) {
|
||||
Help();
|
||||
return 0;
|
||||
} else {
|
||||
std::cerr << "[ERROR] Argument " << args[i].c_str() << "not found, exiting..." << std::endl;
|
||||
std::cout << "[LOG - Main] Argument `" << args[i] << "` unrecognized, printing help and exiting..."<< std::endl;
|
||||
Help();
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user