(state (name "main-menu") (action "main_menu") (event (data "return-quit") (new-state "quit") ) (event (data "input-n") (new-state "check-new-access") ) (event (data "input-c") (new-state "get-input-name") ) (event (data "input-r") (new-state "get-password-name") ) (event (data "input-g") (new-state "check-guest-access") ) (event (data "input-m") (new-state "main-menu") ) (event (data "input-q") (new-state "quit") ) (event (data "input-d") (new-state "delete-menu") ) (event (data "input-u") (new-state "list-players") ) (event (data "input-f") (new-state "finger-player") ) (event (data "input") (new-state "check-login-access") ) ) (state (name "finger-player") (write "Whom do you wish to finger? ") (event (data "input") (new-state "display-finger") ) ) (state (name "display-finger") (action "finger_player") (event (data "input") (new-state "main-menu") ) ) (state (name "list-players") (action "list_players") (event (data "input") (new-state "main-menu") ) ) (state (name "delete-menu") (write "/doc/login/DELETE") (event (data "input") (new-state "check-delete-name") ) ) (state (name "check-delete-name") (action "check_delete_name") (event (data "return-ok") (new-state "read-delete-password") ) (event (data "input") (new-state "main-menu") ) ) (state (name "read-delete-password") (write "Enter password: ") (no-echo true) (event (data "input") (new-state "check-delete-password") ) ) (state (name "check-delete-password") (action "check_password") (event (data "return-ok") (new-state "delete-character") ) (event (data "return-invalid") (new-state "retry-delete-password") ) (event (data "return-failed") (new-state "main-menu") ) (event (data "input") (new-state "main-menu") ) ) (state (name "retry-delete-password") (write "Enter password: ") (no-echo true) (event (data "input") (new-state "check-delete-password") ) ) (state (name "delete-character") (action "delete_character") (event (data "default") (new-state "main-menu") ) ) (state (name "check-guest-access") (action "check_guest_access") (event (data "return-ok") (new-state "get-guest-name") ) (event (data "input") (new-state "main-menu") ) ) (state (name "get-guest-name") (write "/doc/login/GUEST_LOGIN") (action "reset_counter") (event (data "input") (new-state "check-guest-name") ) ) (state (name "retry-guest-name") (write "Please try again: ") (event (data "input") (new-state "check-guest-name") ) ) (state (name "check-guest-name") (action "check_new_name") (event (data "return-ok") (new-state "get-capitalization") ) (event (data "return-invalid") (new-state "retry-guest-name") ) (event (data "return-failed") (new-state "main-menu") ) ) (state (name "check-new-access") (action "check_new_access") (event (data "return-ok") (new-state "new-character-menu") ) (event (data "return-auth") (new-state "new-character-menu") ) (event (data "input") (new-state "main-menu") ) ) (state (name "new-character-menu") (write "/doc/login/NEW_USER_NAME") (action "reset_counter") (event (data "input-g") (new-state "offer-generated-selection") ) (event (data "input") (new-state "check-new-name") ) ) (state (name "offer-generated-selection") (action "main_random_name_menu") (event (data "input-m") (new-state "main-menu") ) (event (data "input-q") (new-state "quit") ) (event (data "input") (new-state "random-lang-choice") ) ) (state (name "random-lang-choice") (action "random_lang_choice") (event (data "return-invalid") (new-state "offer-generated-selection") ) (event (data "return") (new-state "show-random-names") ) ) (state (name "show-random-names") (action "show_random_names") (event (data "input-g") (new-state "offer-generated-selection") ) (event (data "input-n") (new-state "new-character-menu") ) (event (data "input-m") (new-state "main-menu") ) (event (data "input-q") (new-state "quit") ) (event (data "input") (new-state "check-random-name") ) ) (state (name "check-random-name") (action "check_random_name") (event (data "return-ok") (new-state "confirm-new-name") ) (event (data "return-invalid") (new-state "offer-generated-selection") ) ) (state (name "retry-new-name") (write "Please try again: ") (event (data "input") (new-state "check-new-name") ) ) (state (name "check-new-name") (action "check_new_name") (event (data "return-ok") (new-state "confirm-new-name") ) (event (data "return-invalid") (new-state "retry-new-name") ) (event (data "return-generated") (new-state "display-generated") ) (event (data "return-failed") (new-state "main-menu") ) ) (state (name "confirm-new-name") (write "You have chosen the name [$name], is this correct [y/n]? ") (event (data "input-y") (new-state "recheck-new-access") ) (event (data "input") (new-state "new-character-menu") ) ) (state (name "recheck-new-access") (action "check_new_access") (event (data "return-ok") (new-state "password-advice") ) (event (data "return-auth") (new-state "get-valid-email") ) ) (state (name "get-valid-email") (write "Enter your email address: ") (event (data "input") (new-state "check-email") ) ) (state (name "check-email") (action "check_email") (event (data "return-ok") (new-state "new-player-auth") ) (event (data "return-invalid") (new-state "get-valid-email") ) ) (state (name "new-player-auth") (action "new_player_auth") (event (data "input") (new-state "main-menu") ) ) (state (name "password-advice") (write "/doc/login/NEW_USER_PASSWORD") (no-echo true) (event (data "input") (new-state "check-new-password") ) ) (state (name "get-new-password") (write "Enter password: ") (no-echo true) (event (data "input") (new-state "check-new-password") ) ) (state (name "check-new-password") (action "check_new_password") (event (data "return-ok") (new-state "reread-password") ) (event (data "return-invalid") (new-state "get-new-password") ) (event (data "return-failed") (new-state "main-menu") ) ) (state (name "reread-password") (write "Enter password again: ") (no-echo true) (event (data "input") (new-state "verify-password") ) ) (state (name "verify-password") (action "verify_password") (event (data "return-ok") (new-state "get-capitalization") ) (event (data "return-invalid") (new-state "get-new-password") ) ) (state (name "get-capitalization") (action "get_capitalization") (event (data "input-y") (new-state "get-gender") ) (event (data "input") (new-state "check-capitalization") ) ) (state (name "check-capitalization") (action "check_capitalization") (event (data "return-ok") (new-state "get-gender") ) (event (data "return-invalid") (new-state "get-capitalization") ) ) (state (name "get-gender") (write "Are you male or female? ") (event (data "input") (new-state "set-gender") ) ) (state (name "set-gender") (action "set_gender") (event (data "return-ok") (new-state "terms-and-conditions") ) (event (data "return-invalid") (new-state "get-gender") ) ) (state (name "terms-and-conditions") (action "display_terms") (event (data "return") (new-state "terms-wait") ) ) (state (name "terms-wait") (noecho true) (event (data "input-q") (new-state "quit") ) (event (data "input-quit") (new-state "quit") ) (event (data "default") (new-state "terms-wait") ) ) (state (name "agree-terms") (event (data "input-yes") (new-state "new-player-login") ) (event (data "input-no") (new-state "quit") ) (event (data "input") (new-state "terms-error") ) ) (state (name "terms-error") (write "You must enter 'yes' or 'no': ") (event (data "input-yes") (new-state "new-player-login") ) (event (data "input-no") (new-state "quit") ) (event (data "input") (new-state "terms-error") ) ) (state (name "new-player-login") (action "new_player_login") (event (data "return-error") (new-state "main-menu") ) (event (data "default") (new-state "finished") ) ) (state (name "get-input-name") (write "Enter your name: ") (event (data "input") (new-state "check-login-access") ) ) (state (name "get-password-name") (write "Enter your name: ") (event (data "input") (new-state "request-password") ) ) (state (name "request-password") (action "request_password") (event (data "return-invalid") (new-state "get-password-name") ) (event (data "input") (new-state "main-menu") ) ) (state (name "check-login-access") (action "check_login_access") (event (data "return-ok") (new-state "read-password") ) (event (data "input") (new-state "main-menu") ) ) (state (name "read-password") (write "/doc/login/WELCOME") (action "reset_counter") (no-echo true) (event (data "input") (new-state "check-password") ) ) (state (name "check-password") (action "check_password") (event (data "return-invalid") (new-state "retry-password") ) (event (data "return-new") (new-state "get-capitalization") ) (event (data "return-ok") (new-state "check-queue") ) (event (data "return-failed") (new-state "main-menu") ) (event (data "input") (new-state "main-menu") ) ) (state (name "retry-password") (write "Enter your password: ") (no-echo true) (event (data "input") (new-state "check-password") ) ) (state (name "check-reconnecting") (action "check_reconnecting") (event (data "return-no") (new-state "player-login") ) (event (data "input-yes") (new-state "reconnect") ) (event (data "input-y") (new-state "reconnect") ) (event (data "input-restart") (new-state "restart") ) (event (data "input") (new-state "quit") ) ) (state (name "reconnect") (action "reconnect") (event (data "return-login") (new-state "player-login") ) (event (data "return") (new-state "finished") ) ) (state (name "restart") (action "restart") (event (data "return") (new-state "player-login") ) ) (state (name "check-queue") (action "check_full") (event (data "return-ok") (new-state "check-reconnecting") ) (event (data "return-full") (new-state "add-to-queue") ) ) (state (name "add-to-queue") (action "add_to_queue") (event (data "return-ok") (new-state "queue-wait") ) (event (data "default") (new-state "quit") ) ) (state (name "queue-wait") (event (data "input-q") (new-state "quit") ) (event (data "input-quit") (new-state "quit") ) (event (data "input") (new-state "queue-wait") ) ) (state (name "leaving-queue") (event (data "input") (new-state "exit-queue") ) ) (state (name "exit-queue") (action "exit_queue") (event (data "return-reconnect") (new-state "check-reconnecting") ) (event (data "return-login") (new-state "player-login") ) ) (state (name "player-login") (action "player_login") (event (data "return-error") (new-state "quit") ) (event (data "default") (new-state "finished") ) ) (state (name "quit") (action "quit") (event (data "default") (new-state "quit") ) )