From: Jeremy Stanley Date: Wed, 30 Sep 2020 18:07:46 +0000 (+0000) Subject: Streamline can_run access control method X-Git-Tag: 0.3.0~12 X-Git-Url: https://mudpy.org/gitweb?p=mudpy.git;a=commitdiff_plain;h=c7ee3d6c896f1534d8da46e973700a26b9feb706 Streamline can_run access control method Minor rework of can_run() to replace the chain of elifs with simple short-circuiting conditions each with its own return() so that it's clearer this operates in a "first match" model. --- diff --git a/mudpy/misc.py b/mudpy/misc.py index 044614f..fd4e0ac 100644 --- a/mudpy/misc.py +++ b/mudpy/misc.py @@ -189,22 +189,18 @@ class Element: # has to be in the commands group if command not in self.universe.groups["command"].values(): - result = False + return(False) # avatars of administrators can run any command - elif self.owner and self.owner.account.get("administrator"): - result = True + if self.owner and self.owner.account.get("administrator"): + return(True) # everyone can run non-administrative commands - elif not command.get("administrative"): - result = True + if not command.get("administrative"): + return(True) # otherwise the command cannot be run by this actor - else: - result = False - - # pass back the result - return result + return(False) def update_location(self): """Make sure the location's contents contain this element."""