implement redirect destinations

This commit is contained in:
Martin Michelsen
2023-10-18 17:22:07 -07:00
parent e8d8b94ffa
commit 2e36cebbcc
6 changed files with 156 additions and 11 deletions
+10
View File
@@ -124,6 +124,14 @@ struct ServerState : public std::enable_shared_from_this<ServerState> {
std::shared_ptr<const Menu> information_menu_v2;
std::shared_ptr<const Menu> information_menu_v3;
std::shared_ptr<std::vector<std::u16string>> information_contents;
std::shared_ptr<const Menu> redirect_destinations_menu_dc;
std::shared_ptr<const Menu> redirect_destinations_menu_pc;
std::shared_ptr<const Menu> redirect_destinations_menu_gc;
std::shared_ptr<const Menu> redirect_destinations_menu_xb;
std::vector<std::pair<std::string, uint16_t>> redirect_destinations_dc;
std::vector<std::pair<std::string, uint16_t>> redirect_destinations_pc;
std::vector<std::pair<std::string, uint16_t>> redirect_destinations_gc;
std::vector<std::pair<std::string, uint16_t>> redirect_destinations_xb;
std::shared_ptr<const Menu> proxy_destinations_menu_dc;
std::shared_ptr<const Menu> proxy_destinations_menu_pc;
std::shared_ptr<const Menu> proxy_destinations_menu_gc;
@@ -189,6 +197,8 @@ struct ServerState : public std::enable_shared_from_this<ServerState> {
uint32_t connect_address_for_client(std::shared_ptr<Client> c) const;
std::shared_ptr<const Menu> information_menu_for_version(GameVersion version) const;
std::shared_ptr<const Menu> redirect_destinations_menu_for_version(GameVersion version) const;
const std::vector<std::pair<std::string, uint16_t>>& redirect_destinations_for_version(GameVersion version) const;
std::shared_ptr<const Menu> proxy_destinations_menu_for_version(GameVersion version) const;
const std::vector<std::pair<std::string, uint16_t>>& proxy_destinations_for_version(GameVersion version) const;