Merge pull request #13661 from timothyteakettle/age-verification

adds in-game age verification as an alternative to access requests
This commit is contained in:
LetterJay
2020-11-08 11:07:05 -06:00
committed by GitHub
6 changed files with 77 additions and 31 deletions
@@ -78,6 +78,28 @@
popup.set_content(output)
popup.open(FALSE)
/mob/dead/new_player/proc/age_verify()
if(CONFIG_GET(flag/age_verification)) //make sure they are verified
if(!client.set_db_player_flags())
message_admins("Blocked [src] from new player panel because age verification could not access player database flags.")
return FALSE
else
var/dbflags = client.prefs.db_flags
if(dbflags & DB_FLAG_AGE_CONFIRMATION_INCOMPLETE) //they have not completed age verification
var/age_verification = askuser(src, "Are you 18+", "Age Verification", "I am 18+", "I am not 18+", null, TRUE, null)
if(age_verification != "1")
create_message("note", ckey, "Server - Automated Age Verification", "Failed age verification.", null, null, TRUE, TRUE, null, "9999-01-01", "High") //log this occurence
qdel(client) //kick the user
return FALSE
else
//they claim to be of age, so allow them to continue and update their flags
client.update_flag_db(DB_FLAG_AGE_CONFIRMATION_COMPLETE, TRUE)
client.update_flag_db(DB_FLAG_AGE_CONFIRMATION_INCOMPLETE, FALSE)
//log this
message_admins("[ckey] has joined through the automated age verification process.")
return TRUE
return TRUE
/mob/dead/new_player/Topic(href, href_list[])
if(src != usr)
return 0
@@ -85,6 +107,9 @@
if(!client)
return 0
if(!age_verify())
return
//Determines Relevent Population Cap
var/relevant_cap
var/hpc = CONFIG_GET(number/hard_popcap)