Small changes really

This commit is contained in:
Dico200
2015-11-26 15:10:02 +01:00
parent f7626300ea
commit a59f67785c
3 changed files with 38 additions and 27 deletions

View File

@@ -13,24 +13,24 @@ events = []
class base_event():
def __init__(self,event_name):
self.name = event_name
self.canceled = False
self.cancelled = False
self._handlers = [ [],[],[],[],[],[] ]
self.canceled_lock = threading.Lock()
self.cancelled_lock = threading.Lock()
def add_handler(self,function,priority):
for prior in priorities:
if prior == priority:
self._handlers[priorities.index(prior)].append(function)
def fire(self,*args):
def call(self,*args):
for priority in self._handlers:
for handler in priority:
handler(self,*args)
def set_canceled(self,state):
with self.canceled_lock:
self.canceled = state
def set_cancelled(self,state):
with self.cancelled_lock:
self.cancelled = state
class utils_events(base_event):
@@ -38,17 +38,26 @@ class utils_events(base_event):
base_event.__init__(self,event_name)
def add_event(event_name,event = base_event): #Adds a new event
event = event(event_name)
def add_event(event_name, event_class = base_event):
"""
# Adds a new event type of the given class with the given name
"""
event = event_class(event_name)
events.append(event)
def fire_event(event_name,*args): #Fires the event
def call_event(event_name,*args):
"""
# Calls the ehe event with the given arguments
"""
for event in events:
if event.name == event_name:
event.fire(*args)
event.call(*args)
return event
def check_events(event_name): #Returns false if the even does not exist.
def check_events(event_name):
"""
# Returns whether there is an event with the name event_name
"""
for event in events:
if event.name == event_name:
return True

View File

@@ -19,14 +19,14 @@ class Command(object):
def __init__(self,
command,
parent = None,
aliases = (),
permission = None,
description = "Description",
type = Command.SENDER_ANY
no_arg_action = Command.ACTION_IGNORE
help_request_action = Command.ACTION_IGNORE
type = Command.SENDER_ANY,
no_arg_action = Command.ACTION_IGNORE,
help_request_action = Command.ACTION_IGNORE,
arguments = (),
parent = None,
):
self.command = command.lower()
@@ -67,7 +67,7 @@ class Command(object):
parent_obj.sub_commands[self.command] = self
except KeyError as e:
error("Error occurred while setting up command hierarchy: " + e.message + "\n" + trace())
raise Argument_exception("Error occurred while setting up command hierarchy: " + e.message + "\n" + trace())
def __call__(self, handler):
"""

View File

@@ -15,16 +15,18 @@ class py_player(object):
self.authenticated = False
self.login_time = time.time()
self.props ={"uuid":self.uuid,
self.props = {
"uuid":self.uuid,
"name":self.name,
"nickname":self.name,
"registered":False,
"password":"None",
"banned":False,
"banned_reason":"You have been banned!",
"banned_reason":None,
"played_time":time.time() - self.login_time,
"last_login":datetime.now(),
"first_seen":datetime.now()}
"first_seen":datetime.now(),
}
def __setattr__(self, attribute, value):
if not attribute in dir(self):
@@ -39,7 +41,7 @@ class py_player(object):
try:
return self.props[attribute]
except:
pass
raise AttributeError("Attribute %s does not exist on this py_player" % attribute)
def save(self):
properties = []