edit: reworked how constants are defined
This commit is contained in:
@ -6,10 +6,6 @@ console_input::console_input(std::istream &cin):
|
||||
in{cin} {}
|
||||
|
||||
game_command console_input::get_command() {
|
||||
const char *COMMANDS[] = {
|
||||
"q", "no", "so", "ea", "we", "ne", "nw", "se", "sw", "u", "a"
|
||||
};
|
||||
const int COMMANDS_CNT = 11;
|
||||
std::string cmd;
|
||||
in >> cmd;
|
||||
game_command tmp;
|
||||
@ -17,15 +13,15 @@ game_command console_input::get_command() {
|
||||
if (cmd == "q")
|
||||
return game_command_terminate;
|
||||
else if (cmd == "u")
|
||||
return (game_command)((tmp = get_direction(cmd, COMMANDS,
|
||||
COMMANDS_CNT)) == game_command_panic
|
||||
return (game_command)((tmp = get_direction(cmd)) ==
|
||||
game_command_panic
|
||||
? tmp : tmp - move_north + apply_north);
|
||||
else if (cmd == "a")
|
||||
return (game_command)((tmp = get_direction(cmd, COMMANDS,
|
||||
COMMANDS_CNT)) == game_command_panic
|
||||
return (game_command)((tmp = get_direction(cmd)) ==
|
||||
game_command_panic
|
||||
? tmp : tmp - move_north + attack_north);
|
||||
else // is just moving
|
||||
return get_direction(cmd, COMMANDS, COMMANDS_CNT);
|
||||
return get_direction(cmd);
|
||||
|
||||
return game_command_pass;
|
||||
}
|
||||
|
Reference in New Issue
Block a user