mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-07-20 04:17:33 +01:00
Adds a framework for airlocks changing access depending on security level. (#17849)
* Adds a framework for airlocks changing access depending on security level. * cleanup * s * s * req_one_access * update --------- Co-authored-by: Matt Atlas <liermattia@gmail.com>
This commit is contained in:
@@ -221,4 +221,16 @@ var/global/maint_all_access = 0
|
||||
var/exceptional_circumstances = maint_all_access || maint_sec_access
|
||||
if(exceptional_circumstances && src.check_access_list(list(access_maint_tunnels)))
|
||||
return 1
|
||||
if(access_by_level || req_one_access_by_level)
|
||||
var/sec_level = get_security_level()
|
||||
if(sec_level in (req_one_access_by_level ? req_one_access_by_level : access_by_level))
|
||||
var/access_to_use = req_one_access_by_level ? req_one_access_by_level[sec_level] : access_by_level[sec_level]
|
||||
if(!access_to_use)
|
||||
return TRUE
|
||||
if(req_one_access_by_level)
|
||||
if(has_access(req_one_access = access_to_use, accesses = A))
|
||||
return TRUE
|
||||
else
|
||||
if(has_access(access_to_use, accesses = A))
|
||||
return TRUE
|
||||
return ..(M)
|
||||
|
||||
Reference in New Issue
Block a user