Skip to content

Commit ff788a2

Browse files
author
minecraft server
committed
Commands now work.
1 parent 7079d0d commit ff788a2

File tree

1 file changed

+11
-9
lines changed

1 file changed

+11
-9
lines changed

plugins/acl_cmds.py

+11-9
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111

1212
from player_cmd import register
1313
from plugin_helpers import tell
14-
from helpers import all_users
14+
from helpers import all_users, ops
1515
from zones import get_zones
1616
from acls import ALL_PERMS, ADMIN
1717

@@ -20,10 +20,10 @@ def on_start():
2020
re_name = r'(?:[^"][^ ]+|"(?:[^"]|\\")+")'
2121
register("/acls help", aclhelp)
2222
register("/acls commands", aclcmdhelp)
23-
register("/acls %s set ([^ ]+)((?: [A-Z]+)+)" % re_name, aclset)
24-
register("/acls %s add ([^ ]+) ([A-Z]+)" % re_name, acladd)
25-
register("/acls %s remove ([^ ]+) ([A-Z]+)" % re_name, aclrm)
26-
register("/acls %s clear ([^ ]+)" % re_name, aclclear)
23+
register("/acls (%s) set ([^ ]+)((?: [A-Z]+)+)" % re_name, aclset)
24+
register("/acls (%s) add ([^ ]+) ([A-Z]+)" % re_name, acladd)
25+
register("/acls (%s) remove ([^ ]+) ([A-Z]+)" % re_name, aclrm)
26+
register("/acls (%s) clear ([^ ]+)" % re_name, aclclear)
2727

2828

2929
def aclhelp(message, user):
@@ -62,6 +62,7 @@ def wrapped_fn(message, user, zone, name, *args):
6262
zone = zone.strip('"')
6363
if zone not in get_zones():
6464
tell(user, "Zone does not exist.")
65+
print zone
6566
return
6667
zone = get_zones()[zone]
6768
if 'acls' not in zone:
@@ -75,12 +76,13 @@ def wrapped_fn(message, user, zone, name, *args):
7576
tell(user, "Warning: %s is not a player known to this server.\n"
7677
"If you have made a mistake, type:\n/acls %s clear %s" % (zone_original, name))
7778

78-
if ADMIN not in zone['acls'].get(name, zone['acls']['EVERYONE']):
79+
if ADMIN not in zone['acls'].get(name, zone['acls']['EVERYONE']) and user.username not in ops():
7980
tell(user, "You do not have permission to modify ACLs for this zone. "
8081
"If you have accidentially locked yourself out, please contact an op for assistance.")
8182
return
8283

8384
return fn(message, user, zone, name, *args)
85+
return wrapped_fn
8486

8587

8688
@common
@@ -100,7 +102,7 @@ def acladd(message, user, zone, name, perm):
100102
tell(user, "%s not an ACL." % perm)
101103
current = zone['acls'].setdefault(name, zone['acls']['EVERYONE'][:])
102104
if perm in current:
103-
tell(user, "%s can already %s" % (name, perm)
105+
tell(user, "%s can already %s" % (name, perm))
104106
else:
105107
current.append(perm)
106108
tell(user, "Success")
@@ -111,8 +113,8 @@ def aclrm(message, user, zone, name, perm):
111113
if perm not in ALL_PERMS:
112114
tell(user, "%s not an ACL." % perm)
113115
current = zone['acls'].setdefault(name, zone['acls']['EVERYONE'][:])
114-
if perm in current:
115-
tell(user, "%s can already %s" % (name, perm)
116+
if perm not in current:
117+
tell(user, "%s already can't %s" % (name, perm))
116118
else:
117119
current.remove(perm)
118120
tell(user, "Success")

0 commit comments

Comments
 (0)