Display legally required classification notices.

This commit is contained in:
Condorra 2023-02-20 22:42:51 +11:00
parent d4fd71d839
commit ea5b5ef70d
2 changed files with 36 additions and 3 deletions

View File

@ -40,6 +40,8 @@ have legal obligations not to distribute it to anyone under a certain age.
Regarding the use of official Blastmud resources such as our GitHub project and game server instance: to ensure minors are protected, you must not post versions of Blastmud that disable the checking of `age-verification.yml` (or post any other complete unclassified game or game that is unsuitable for minors of any age), nor post patches, pull requests, or instructions for doing the same. You may be blocked from further interaction with the project if you do this (unless we are satisfied it was accidental). Regarding the use of official Blastmud resources such as our GitHub project and game server instance: to ensure minors are protected, you must not post versions of Blastmud that disable the checking of `age-verification.yml` (or post any other complete unclassified game or game that is unsuitable for minors of any age), nor post patches, pull requests, or instructions for doing the same. You may be blocked from further interaction with the project if you do this (unless we are satisfied it was accidental).
Please note the game displays an "R18+" symbol from the Classifications (Publications, Films and Computer Games) (Markings and Consumer Advice) Determination 2014, which is a symbol that can only legally be displayed if your game has that classification. If you fork the code and distribute a modified version, you will be required to change the name, but if you change the name, you will need to get your fork formally classified (for example, by submitting it to the Google Play store and obtaining a classification via the Ratings Tool).
# Architecture # Architecture
Blastmud consists of the following main components: Blastmud consists of the following main components:

View File

@ -5,11 +5,42 @@ use ansi::ansi;
use std::default::Default; use std::default::Default;
use crate::models::session::Session; use crate::models::session::Session;
// ANSI art version of the symbol we are legally required to display per:
// https://www.legislation.gov.au/Details/F2017C00102
// https://dom111.github.io/image-to-ansi/ can help convert it.
const AUS_RATING_SYMBOL: &'static str = "\x1b[48;5;234m \x1b[38;5;252;48;5;235m▄\x1b[38;5;255;48;5;242m▄\x1b[38;5;15;48;5;250m▄\x1b[38;5;15;48;5;254m▄\x1b[38;5;15;48;5;255m▄▄▄\x1b[38;5;15;48;5;254m▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄\x1b[38;5;15;48;5;255m▄\x1b[38;5;255;48;5;254m▄\x1b[38;5;15;48;5;250m▄\x1b[38;5;15;48;5;242m▄\x1b[38;5;249;48;5;236m▄\x1b[38;5;237;48;5;234m▄\x1b[38;5;233;48;5;234m▄\x1b[38;5;235;48;5;234m▄\x1b[m
\x1b[38;5;242;48;5;235m\x1b[38;5;255;48;5;251m\x1b[38;5;254;48;5;15m\x1b[38;5;240;48;5;254m\x1b[38;5;233;48;5;245m\x1b[38;5;233;48;5;239m\x1b[38;5;234;48;5;238m\x1b[38;5;234;48;5;239m\x1b[38;5;233;48;5;238m\x1b[38;5;234;48;5;237m\x1b[38;5;234;48;5;238m\x1b[38;5;234;48;5;237m\x1b[38;5;233;48;5;240m\x1b[38;5;232;48;5;8m\x1b[38;5;239;48;5;255m\x1b[38;5;188;48;5;15m\x1b[38;5;15;48;5;250m\x1b[38;5;8;48;5;234m\x1b[38;5;232;48;5;234m\x1b[m
\x1b[38;5;254;48;5;250m\x1b[48;5;15m \x1b[38;5;239;48;5;246m\x1b[38;5;233;48;5;233m\x1b[38;5;236;48;5;233m\x1b[38;5;236;48;5;234m\x1b[38;5;233;48;5;233m\x1b[38;5;235;48;5;235m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;234m\x1b[38;5;233;48;5;233m\x1b[38;5;240;48;5;8m\x1b[38;5;15;48;5;15m\x1b[38;5;254;48;5;251m\x1b[38;5;235;48;5;233m\x1b[m
\x1b[38;5;254;48;5;254m\x1b[38;5;15;48;5;15m\x1b[38;5;238;48;5;238m\x1b[38;5;235;48;5;234m\x1b[38;5;232;48;5;233m\x1b[38;5;234;48;5;235m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;233m\x1b[48;5;234m \x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;234m\x1b[48;5;234m \x1b[38;5;235;48;5;233m\x1b[38;5;236;48;5;233m\x1b[38;5;235;48;5;234m\x1b[38;5;236;48;5;238m\x1b[38;5;15;48;5;15m\x1b[38;5;254;48;5;254m\x1b[48;5;235m \x1b[m
\x1b[38;5;254;48;5;254m\x1b[48;5;15m \x1b[38;5;238;48;5;236m\x1b[38;5;233;48;5;235m\x1b[38;5;235;48;5;235m\x1b[48;5;235m \x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;235m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;234m\x1b[48;5;234m \x1b[38;5;235;48;5;234m\x1b[38;5;236;48;5;234m\x1b[38;5;233;48;5;232m\x1b[38;5;239;48;5;238m\x1b[38;5;255;48;5;15m\x1b[38;5;254;48;5;255m\x1b[38;5;235;48;5;234m\x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[48;5;238m \x1b[48;5;233m \x1b[48;5;234m \x1b[48;5;235m \x1b[48;5;234m \x1b[38;5;234;48;5;235m\x1b[38;5;233;48;5;234m\x1b[38;5;234;48;5;235m\x1b[38;5;236;48;5;234m\x1b[38;5;234;48;5;234m\x1b[38;5;233;48;5;235m\x1b[38;5;234;48;5;234m\x1b[38;5;233;48;5;234m\x1b[48;5;234m \x1b[38;5;235;48;5;234m\x1b[38;5;236;48;5;233m\x1b[38;5;232;48;5;236m\x1b[38;5;235;48;5;234m\x1b[38;5;233;48;5;234m\x1b[38;5;235;48;5;234m\x1b[48;5;234m \x1b[48;5;238m \x1b[48;5;15m \x1b[48;5;254m \x1b[48;5;235m \x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[48;5;238m \x1b[48;5;233m \x1b[48;5;234m \x1b[48;5;235m \x1b[48;5;234m \x1b[38;5;234;48;5;234m\x1b[38;5;234;48;5;235m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;233m\x1b[38;5;236;48;5;232m\x1b[38;5;247;48;5;238m\x1b[38;5;254;48;5;245m\x1b[38;5;251;48;5;239m\x1b[38;5;237;48;5;232m\x1b[38;5;232;48;5;235m\x1b[38;5;235;48;5;232m\x1b[38;5;235;48;5;235m\x1b[38;5;234;48;5;235m\x1b[38;5;234;48;5;232m\x1b[38;5;234;48;5;235m\x1b[48;5;234m \x1b[48;5;238m \x1b[48;5;15m \x1b[48;5;254m \x1b[48;5;235m \x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[48;5;238m \x1b[48;5;233m \x1b[48;5;234m \x1b[48;5;235m \x1b[48;5;234m \x1b[38;5;235;48;5;235m\x1b[38;5;233;48;5;234m\x1b[38;5;235;48;5;233m\x1b[38;5;252;48;5;235m\x1b[38;5;247;48;5;7m\x1b[38;5;232;48;5;145m\x1b[38;5;235;48;5;234m\x1b[38;5;0;48;5;247m\x1b[38;5;248;48;5;254m\x1b[38;5;254;48;5;235m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;234m\x1b[38;5;232;48;5;235m\x1b[38;5;237;48;5;233m\x1b[38;5;233;48;5;235m\x1b[48;5;234m \x1b[48;5;238m \x1b[48;5;15m \x1b[48;5;254m \x1b[48;5;235m \x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[48;5;238m \x1b[48;5;233m \x1b[48;5;234m \x1b[48;5;235m \x1b[48;5;234m \x1b[38;5;234;48;5;233m\x1b[38;5;251;48;5;236m\x1b[38;5;247;48;5;7m\x1b[38;5;0;48;5;145m\x1b[38;5;0;48;5;234m\x1b[38;5;235;48;5;232m\x1b[38;5;232;48;5;235m\x1b[38;5;233;48;5;235m\x1b[38;5;234;48;5;0m\x1b[38;5;0;48;5;145m\x1b[38;5;248;48;5;254m\x1b[38;5;254;48;5;236m\x1b[38;5;236;48;5;233m\x1b[38;5;232;48;5;234m\x1b[38;5;235;48;5;235m\x1b[38;5;233;48;5;235m\x1b[48;5;234m \x1b[48;5;238m \x1b[48;5;15m \x1b[48;5;254m \x1b[48;5;235m \x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[38;5;238;48;5;238m\x1b[38;5;232;48;5;234m\x1b[48;5;235m \x1b[48;5;234m \x1b[38;5;235;48;5;234m\x1b[38;5;233;48;5;235m\x1b[38;5;236;48;5;233m\x1b[38;5;251;48;5;235m\x1b[38;5;248;48;5;251m\x1b[38;5;233;48;5;247m\x1b[38;5;247;48;5;59m\x1b[38;5;15;48;5;242m\x1b[38;5;255;48;5;8m\x1b[38;5;15;48;5;243m\x1b[38;5;15;48;5;242m\x1b[38;5;254;48;5;237m\x1b[38;5;247;48;5;233m\x1b[48;5;232m \x1b[38;5;233;48;5;248m\x1b[38;5;248;48;5;254m\x1b[38;5;7;48;5;237m\x1b[38;5;237;48;5;233m\x1b[38;5;233;48;5;235m\x1b[38;5;234;48;5;235m\x1b[38;5;235;48;5;235m\x1b[38;5;235;48;5;233m\x1b[38;5;233;48;5;236m\x1b[38;5;237;48;5;233m\x1b[38;5;8;48;5;233m\x1b[38;5;236;48;5;234m\x1b[38;5;233;48;5;234m\x1b[38;5;241;48;5;233m\x1b[38;5;245;48;5;233m\x1b[38;5;8;48;5;233m\x1b[38;5;234;48;5;236m\x1b[38;5;234;48;5;233m\x1b[38;5;236;48;5;234m\x1b[38;5;234;48;5;236m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;234m\x1b[48;5;234m \x1b[38;5;238;48;5;236m\x1b[38;5;15;48;5;15m\x1b[38;5;253;48;5;255m\x1b[38;5;234;48;5;235m\x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[38;5;236;48;5;238m\x1b[38;5;235;48;5;233m\x1b[38;5;234;48;5;234m\x1b[38;5;232;48;5;235m\x1b[38;5;235;48;5;234m\x1b[38;5;7;48;5;234m\x1b[38;5;249;48;5;7m\x1b[38;5;233;48;5;248m\x1b[38;5;236;48;5;233m\x1b[38;5;232;48;5;0m\x1b[38;5;250;48;5;252m\x1b[48;5;15m \x1b[38;5;145;48;5;255m\x1b[38;5;234;48;5;188m\x1b[38;5;235;48;5;251m\x1b[38;5;236;48;5;255m\x1b[38;5;251;48;5;15m\x1b[38;5;15;48;5;15m\x1b[38;5;250;48;5;243m\x1b[38;5;234;48;5;0m\x1b[38;5;232;48;5;234m\x1b[38;5;233;48;5;249m\x1b[38;5;145;48;5;253m\x1b[38;5;252;48;5;237m\x1b[38;5;235;48;5;233m\x1b[38;5;236;48;5;233m\x1b[38;5;233;48;5;234m\x1b[38;5;102;48;5;238m\x1b[38;5;246;48;5;255m\x1b[38;5;254;48;5;255m\x1b[38;5;235;48;5;237m\x1b[38;5;251;48;5;239m\x1b[38;5;246;48;5;188m\x1b[38;5;0;48;5;247m\x1b[38;5;235;48;5;252m\x1b[38;5;254;48;5;250m\x1b[38;5;240;48;5;235m\x1b[38;5;234;48;5;233m\x1b[38;5;233;48;5;236m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;232m\x1b[38;5;235;48;5;234m\x1b[38;5;236;48;5;234m\x1b[38;5;233;48;5;233m\x1b[38;5;237;48;5;238m\x1b[48;5;15m \x1b[38;5;255;48;5;254m\x1b[38;5;234;48;5;235m\x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[38;5;239;48;5;239m\x1b[38;5;0;48;5;234m\x1b[38;5;238;48;5;232m\x1b[38;5;249;48;5;236m\x1b[38;5;248;48;5;251m\x1b[38;5;232;48;5;248m\x1b[38;5;232;48;5;235m\x1b[38;5;235;48;5;232m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;232m\x1b[38;5;7;48;5;249m\x1b[38;5;15;48;5;15m\x1b[38;5;253;48;5;246m\x1b[38;5;238;48;5;0m\x1b[38;5;237;48;5;234m\x1b[38;5;102;48;5;0m\x1b[38;5;254;48;5;145m\x1b[48;5;15m \x1b[38;5;248;48;5;252m\x1b[38;5;233;48;5;232m\x1b[38;5;234;48;5;236m\x1b[38;5;236;48;5;0m\x1b[38;5;233;48;5;233m\x1b[38;5;233;48;5;248m\x1b[38;5;247;48;5;253m\x1b[38;5;252;48;5;237m\x1b[38;5;235;48;5;234m\x1b[38;5;233;48;5;234m\x1b[38;5;238;48;5;237m\x1b[38;5;255;48;5;188m\x1b[38;5;236;48;5;235m\x1b[38;5;238;48;5;249m\x1b[38;5;254;48;5;247m\x1b[38;5;250;48;5;0m\x1b[38;5;253;48;5;237m\x1b[38;5;248;48;5;254m\x1b[38;5;234;48;5;239m\x1b[38;5;232;48;5;234m\x1b[38;5;232;48;5;233m\x1b[38;5;102;48;5;239m\x1b[38;5;247;48;5;59m\x1b[38;5;234;48;5;233m\x1b[38;5;233;48;5;234m\x1b[38;5;233;48;5;233m\x1b[38;5;238;48;5;237m\x1b[48;5;15m \x1b[38;5;254;48;5;255m\x1b[38;5;235;48;5;234m\x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[38;5;239;48;5;236m\x1b[38;5;233;48;5;232m\x1b[38;5;235;48;5;102m\x1b[38;5;251;48;5;15m\x1b[38;5;247;48;5;233m\x1b[38;5;233;48;5;235m\x1b[38;5;234;48;5;235m\x1b[38;5;235;48;5;234m\x1b[38;5;235;48;5;233m\x1b[38;5;232;48;5;233m\x1b[38;5;249;48;5;7m\x1b[38;5;15;48;5;255m\x1b[38;5;15;48;5;15m\x1b[38;5;253;48;5;15m\x1b[48;5;15m \x1b[38;5;15;48;5;15m\x1b[38;5;254;48;5;15m\x1b[38;5;237;48;5;252m\x1b[38;5;234;48;5;237m\x1b[38;5;235;48;5;233m\x1b[38;5;235;48;5;234m\x1b[38;5;235;48;5;233m\x1b[38;5;234;48;5;234m\x1b[38;5;232;48;5;234m\x1b[38;5;247;48;5;232m\x1b[38;5;188;48;5;254m\x1b[38;5;235;48;5;252m\x1b[38;5;234;48;5;0m\x1b[38;5;237;48;5;237m\x1b[38;5;252;48;5;255m\x1b[38;5;238;48;5;233m\x1b[38;5;252;48;5;243m\x1b[38;5;240;48;5;188m\x1b[38;5;232;48;5;8m\x1b[38;5;233;48;5;145m\x1b[38;5;252;48;5;145m\x1b[38;5;243;48;5;235m\x1b[38;5;239;48;5;239m\x1b[38;5;248;48;5;246m\x1b[38;5;252;48;5;249m\x1b[38;5;252;48;5;254m\x1b[38;5;145;48;5;243m\x1b[38;5;8;48;5;240m\x1b[38;5;0;48;5;234m\x1b[38;5;237;48;5;239m\x1b[48;5;15m \x1b[38;5;253;48;5;253m\x1b[38;5;235;48;5;235m\x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[38;5;239;48;5;237m\x1b[38;5;233;48;5;235m\x1b[38;5;235;48;5;233m\x1b[38;5;233;48;5;235m\x1b[38;5;235;48;5;251m\x1b[38;5;252;48;5;248m\x1b[38;5;249;48;5;234m\x1b[38;5;233;48;5;234m\x1b[38;5;235;48;5;233m\x1b[38;5;234;48;5;233m\x1b[38;5;249;48;5;249m\x1b[38;5;255;48;5;15m\x1b[38;5;145;48;5;250m\x1b[38;5;232;48;5;0m\x1b[38;5;235;48;5;247m\x1b[38;5;255;48;5;15m\x1b[38;5;15;48;5;255m\x1b[38;5;251;48;5;240m\x1b[38;5;235;48;5;232m\x1b[38;5;234;48;5;234m\x1b[38;5;236;48;5;234m\x1b[38;5;0;48;5;234m\x1b[38;5;248;48;5;232m\x1b[38;5;252;48;5;248m\x1b[38;5;237;48;5;254m\x1b[38;5;233;48;5;236m\x1b[38;5;234;48;5;233m\x1b[38;5;238;48;5;238m\x1b[38;5;253;48;5;254m\x1b[38;5;238;48;5;236m\x1b[38;5;242;48;5;251m\x1b[38;5;253;48;5;243m\x1b[38;5;145;48;5;0m\x1b[38;5;249;48;5;233m\x1b[38;5;251;48;5;188m\x1b[38;5;237;48;5;242m\x1b[38;5;232;48;5;233m\x1b[38;5;235;48;5;232m\x1b[38;5;239;48;5;102m\x1b[38;5;242;48;5;248m\x1b[38;5;233;48;5;233m\x1b[38;5;234;48;5;233m\x1b[38;5;233;48;5;233m\x1b[38;5;238;48;5;238m\x1b[48;5;15m \x1b[38;5;254;48;5;253m\x1b[38;5;235;48;5;235m\x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[38;5;238;48;5;237m\x1b[38;5;233;48;5;235m\x1b[38;5;236;48;5;233m\x1b[38;5;233;48;5;236m\x1b[38;5;234;48;5;234m\x1b[38;5;234;48;5;232m\x1b[38;5;235;48;5;188m\x1b[38;5;252;48;5;248m\x1b[38;5;249;48;5;233m\x1b[38;5;0;48;5;232m\x1b[38;5;7;48;5;251m\x1b[38;5;15;48;5;255m\x1b[38;5;249;48;5;250m\x1b[38;5;233;48;5;232m\x1b[38;5;234;48;5;233m\x1b[38;5;236;48;5;246m\x1b[38;5;255;48;5;15m\x1b[38;5;254;48;5;239m\x1b[38;5;234;48;5;232m\x1b[38;5;246;48;5;233m\x1b[38;5;254;48;5;247m\x1b[38;5;236;48;5;254m\x1b[38;5;232;48;5;237m\x1b[38;5;235;48;5;232m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;235m\x1b[38;5;235;48;5;235m\x1b[38;5;233;48;5;235m\x1b[38;5;234;48;5;242m\x1b[38;5;233;48;5;235m\x1b[38;5;234;48;5;233m\x1b[38;5;232;48;5;240m\x1b[38;5;233;48;5;246m\x1b[38;5;234;48;5;243m\x1b[38;5;233;48;5;235m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;234m\x1b[38;5;235;48;5;233m\x1b[38;5;234;48;5;236m\x1b[38;5;233;48;5;236m\x1b[38;5;235;48;5;234m\x1b[48;5;235m \x1b[38;5;233;48;5;233m\x1b[38;5;238;48;5;237m\x1b[38;5;15;48;5;15m\x1b[38;5;255;48;5;255m\x1b[38;5;234;48;5;234m\x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[38;5;238;48;5;237m\x1b[38;5;232;48;5;234m\x1b[38;5;236;48;5;235m\x1b[38;5;235;48;5;233m\x1b[38;5;235;48;5;235m\x1b[38;5;232;48;5;236m\x1b[38;5;235;48;5;233m\x1b[38;5;232;48;5;235m\x1b[38;5;234;48;5;251m\x1b[38;5;188;48;5;248m\x1b[38;5;247;48;5;242m\x1b[38;5;235;48;5;245m\x1b[38;5;233;48;5;243m\x1b[38;5;233;48;5;235m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;234m\x1b[38;5;0;48;5;243m\x1b[38;5;233;48;5;247m\x1b[48;5;246m \x1b[38;5;252;48;5;7m\x1b[38;5;237;48;5;253m\x1b[38;5;233;48;5;236m\x1b[38;5;234;48;5;232m\x1b[38;5;234;48;5;235m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;234m\x1b[38;5;235;48;5;235m\x1b[38;5;234;48;5;234m\x1b[38;5;234;48;5;235m\x1b[38;5;234;48;5;236m\x1b[38;5;235;48;5;233m\x1b[38;5;233;48;5;234m\x1b[38;5;234;48;5;236m\x1b[38;5;234;48;5;234m\x1b[38;5;233;48;5;234m\x1b[38;5;235;48;5;235m\x1b[38;5;235;48;5;234m\x1b[38;5;235;48;5;235m\x1b[38;5;233;48;5;234m\x1b[38;5;233;48;5;233m\x1b[38;5;239;48;5;239m\x1b[38;5;15;48;5;255m\x1b[48;5;255m \x1b[38;5;235;48;5;234m\x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[38;5;238;48;5;238m\x1b[38;5;235;48;5;235m\x1b[38;5;234;48;5;233m\x1b[38;5;233;48;5;235m\x1b[38;5;237;48;5;233m\x1b[38;5;234;48;5;235m\x1b[38;5;233;48;5;235m\x1b[38;5;234;48;5;235m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;252m\x1b[38;5;251;48;5;246m\x1b[38;5;145;48;5;235m\x1b[38;5;234;48;5;232m\x1b[38;5;233;48;5;234m\x1b[38;5;233;48;5;235m\x1b[38;5;247;48;5;234m\x1b[38;5;254;48;5;246m\x1b[38;5;237;48;5;252m\x1b[38;5;232;48;5;238m\x1b[38;5;233;48;5;232m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;236m\x1b[38;5;234;48;5;232m\x1b[38;5;233;48;5;234m\x1b[38;5;236;48;5;234m\x1b[38;5;234;48;5;233m\x1b[38;5;234;48;5;235m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;235m\x1b[38;5;235;48;5;233m\x1b[38;5;234;48;5;235m\x1b[38;5;233;48;5;236m\x1b[38;5;235;48;5;233m\x1b[38;5;234;48;5;235m\x1b[38;5;233;48;5;236m\x1b[38;5;235;48;5;233m\x1b[38;5;234;48;5;235m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;233m\x1b[38;5;238;48;5;238m\x1b[38;5;15;48;5;15m\x1b[38;5;254;48;5;254m\x1b[38;5;234;48;5;235m\x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[48;5;238m \x1b[48;5;233m \x1b[48;5;234m \x1b[48;5;235m \x1b[48;5;234m \x1b[48;5;235m \x1b[48;5;234m \x1b[38;5;235;48;5;235m\x1b[38;5;234;48;5;234m\x1b[38;5;233;48;5;235m\x1b[38;5;237;48;5;7m\x1b[38;5;248;48;5;145m\x1b[38;5;254;48;5;233m\x1b[38;5;251;48;5;248m\x1b[38;5;237;48;5;253m\x1b[38;5;233;48;5;238m\x1b[38;5;234;48;5;0m\x1b[38;5;236;48;5;235m\x1b[38;5;234;48;5;235m\x1b[38;5;233;48;5;234m\x1b[38;5;235;48;5;235m\x1b[38;5;234;48;5;235m\x1b[48;5;234m \x1b[48;5;238m \x1b[48;5;15m \x1b[48;5;254m \x1b[48;5;235m \x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[48;5;238m \x1b[48;5;233m \x1b[48;5;234m \x1b[48;5;235m \x1b[48;5;234m \x1b[48;5;235m \x1b[48;5;234m \x1b[38;5;234;48;5;233m\x1b[38;5;234;48;5;235m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;235m\x1b[38;5;234;48;5;232m\x1b[38;5;232;48;5;238m\x1b[38;5;233;48;5;247m\x1b[38;5;233;48;5;238m\x1b[38;5;235;48;5;232m\x1b[38;5;235;48;5;233m\x1b[38;5;234;48;5;235m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;235m\x1b[38;5;234;48;5;233m\x1b[48;5;234m \x1b[48;5;238m \x1b[48;5;15m \x1b[48;5;254m \x1b[48;5;235m \x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[48;5;238m \x1b[48;5;233m \x1b[48;5;234m \x1b[48;5;235m \x1b[48;5;234m \x1b[48;5;235m \x1b[48;5;234m \x1b[38;5;233;48;5;235m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;234m\x1b[48;5;234m \x1b[38;5;235;48;5;234m\x1b[48;5;234m \x1b[38;5;235;48;5;234m\x1b[38;5;233;48;5;236m\x1b[38;5;233;48;5;234m\x1b[38;5;235;48;5;235m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;234m\x1b[38;5;234;48;5;233m\x1b[38;5;234;48;5;235m\x1b[48;5;234m \x1b[48;5;238m \x1b[48;5;15m \x1b[48;5;254m \x1b[48;5;235m \x1b[m
\x1b[48;5;254m \x1b[48;5;15m \x1b[48;5;238m \x1b[48;5;233m \x1b[48;5;234m \x1b[48;5;235m \x1b[48;5;234m \x1b[48;5;235m \x1b[48;5;234m \x1b[38;5;234;48;5;234m\x1b[38;5;234;48;5;236m\x1b[38;5;235;48;5;233m\x1b[38;5;234;48;5;235m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;235m\x1b[38;5;233;48;5;235m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;234m\x1b[38;5;234;48;5;235m\x1b[38;5;234;48;5;234m\x1b[48;5;234m \x1b[48;5;238m \x1b[48;5;15m \x1b[48;5;254m \x1b[48;5;235m \x1b[m
\x1b[38;5;253;48;5;255m\x1b[38;5;15;48;5;15m\x1b[38;5;240;48;5;237m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;235m\x1b[38;5;233;48;5;235m\x1b[38;5;235;48;5;235m\x1b[38;5;234;48;5;234m\x1b[38;5;235;48;5;235m\x1b[38;5;234;48;5;234m\x1b[38;5;233;48;5;236m\x1b[38;5;235;48;5;234m\x1b[38;5;234;48;5;232m\x1b[38;5;239;48;5;238m\x1b[38;5;255;48;5;15m\x1b[38;5;255;48;5;255m\x1b[38;5;234;48;5;234m\x1b[m
\x1b[38;5;242;48;5;145m\x1b[48;5;15m \x1b[38;5;255;48;5;245m\x1b[38;5;239;48;5;0m\x1b[38;5;234;48;5;233m\x1b[38;5;234;48;5;235m\x1b[38;5;234;48;5;234m\x1b[38;5;234;48;5;235m\x1b[38;5;232;48;5;233m\x1b[38;5;233;48;5;235m\x1b[38;5;232;48;5;236m\x1b[38;5;233;48;5;234m\x1b[38;5;239;48;5;233m\x1b[38;5;254;48;5;102m\x1b[38;5;15;48;5;15m\x1b[38;5;8;48;5;253m\x1b[38;5;0;48;5;233m\x1b[m
\x1b[38;5;233;48;5;236m\x1b[38;5;237;48;5;249m\x1b[38;5;249;48;5;15m\x1b[38;5;15;48;5;253m\x1b[38;5;15;48;5;102m\x1b[38;5;15;48;5;238m\x1b[38;5;15;48;5;239m\x1b[38;5;15;48;5;238m\x1b[38;5;15;48;5;59m\x1b[38;5;15;48;5;8m\x1b[38;5;15;48;5;254m\x1b[38;5;248;48;5;15m\x1b[38;5;238;48;5;145m\x1b[38;5;233;48;5;235m\x1b[38;5;235;48;5;234m\x1b[m
\x1b[49;38;5;233m\x1b[49;38;5;235m\x1b[49;38;5;242m\x1b[49;38;5;249m\x1b[49;38;5;254m\x1b[49;38;5;255m\x1b[49;38;5;253m\x1b[49;38;5;255m\x1b[49;38;5;254m\x1b[49;38;5;255m\x1b[49;38;5;254m\x1b[49;38;5;7m\x1b[49;38;5;243m\x1b[49;38;5;235m\x1b[49;38;5;233m\x1b[49;38;5;234m\x1b[49;38;5;233m\x1b[m";
pub async fn handle(session: &ListenerSession, source: String, pool: &DBPool) -> DResult<()> { pub async fn handle(session: &ListenerSession, source: String, pool: &DBPool) -> DResult<()> {
pool.start_session(session, &Session { source, ..Default::default() }).await?; pool.start_session(session, &Session { source, ..Default::default() }).await?;
pool.queue_for_session(&session, Some(&ansi!("\ pool.queue_for_session(&session, Some(&(ansi!("\
Welcome to <red>BlastMud<reset> - a text-based post-apocalyptic \ Welcome to <red>BlastMud<reset> - a text-based post-apocalyptic \
game <bold>restricted to adults (18+)<reset>\r\n\ game <bold>restricted to adults (18+)<reset>\r\n").to_owned() + AUS_RATING_SYMBOL + ansi!("\r\n\
Restricted to 18 and over. High impact violence. Online interactivity.\r\n\
\r\n\
Some commands to get you started:\r\n\ Some commands to get you started:\r\n\
\t<bold>register <lt>username> <lt>password> <lt>email><reset> to register as a new user.\r\n\ \t<bold>register <lt>username> <lt>password> <lt>email><reset> to register as a new user.\r\n\
\t<bold>login <lt>username> <lt>password><reset> to log in as an existing user.\r\n\ \t<bold>login <lt>username> <lt>password><reset> to log in as an existing user.\r\n\
@ -17,6 +48,6 @@ pub async fn handle(session: &ListenerSession, source: String, pool: &DBPool) ->
[Please contact staff@blastmud.org with any feedback or suggestions on how to \r\n\ [Please contact staff@blastmud.org with any feedback or suggestions on how to \r\n\
improve Blastmud, to report any inappropriate user generated content or behaviour, or if you \r\n\ improve Blastmud, to report any inappropriate user generated content or behaviour, or if you \r\n\
need any other help from the game's operators].\r\n\ need any other help from the game's operators].\r\n\
Blastmud's privacy policy: https://blastmud.org/privacy/\r\n"))).await?; Blastmud's privacy policy: https://blastmud.org/privacy/\r\n")))).await?;
Ok(()) Ok(())
} }