Changed all CommandExecutor arguments

Added arguments command and label to all command executor functions,
hopefully for massive performance increase.

This is due to the following mess in PythonLoader:
``` Java
@Override
public boolean onCommand(CommandSender sender, Command command, String
label, String[] args) {
boolean result;
if (argcount == -1) {
try {
result = call(4, sender, command, label, args);
argcount = 4;
} catch (PyException e) {
//this could goof up someone ... they'll probably yell at us and
eventually read this code ... fuck them
if (e.type == Py.TypeError && (e.value.toString().endsWith("takes
exactly 3 arguments (4 given)") || e.value.toString().endsWith("takes
exactly 4 arguments (5 given)"))) {
result = call(3, sender, command, label, args);
argcount = 3;
} else if (e.type == Py.TypeError && (e.value.toString().endsWith("takes
exactly 2 arguments (4 given)") || e.value.toString().endsWith("takes
exactly 3 arguments (5 given)"))) {
result = call(2, sender, command, label, args);
argcount = 2;
} else {
throw e;
}
}
} else {
result = call(argcount, sender, command, label, args);
}
return result;
}
```

Note: Still WIP on reports - I'm working on making it keep solved
reports to fix issue 10
This commit is contained in:
Dico200
2015-03-19 23:51:33 +01:00
parent d993cc223a
commit 1750c82208
20 changed files with 79 additions and 43 deletions

View File

@@ -9,7 +9,7 @@ cg_toggle_list = []
@hook.command("chatgroup")
def on_chatgroup_command(sender, args):
def on_chatgroup_command(sender, command, label, args):
plugin_header(sender, "ChatGroups")
sender_id = uid(sender)
if len(args) == 1 and args[0] == "leave":
@@ -47,7 +47,7 @@ def on_chatgroup_command(sender, args):
@hook.command("cgt")
def on_cgt_command(sender, args):
def on_cgt_command(sender, command, label, args):
p = uid(sender)
if p in cg_toggle_list:
cg_toggle_list.remove(p)