private String parseAddCommand(Dictionary<String, AdKat_CommandType> tempDictionary, String strCommand, AdKat_CommandType enumCommand) { try { this.DebugWrite("Entering parseAddCommand. Command: " + strCommand, 7); //Command can be in two sections, split input string String[] split = strCommand.ToLower().Split('|'); this.DebugWrite("Split command", 7); //Attempt to add command to dictionary tempDictionary.Add(split[0], enumCommand); this.DebugWrite("added command", 7); //Check for additional input if (split.Length > 1) { //There is additional input, check if it's valid //TODO make access ranks for commands editable here /*if (split[1] == "log") { this.setLoggingForCommand(enumCommand, true); } else { this.ConsoleError("Invalid command format for: " + enumCommand); return enumCommand + " INVALID FORMAT"; }*/ } this.DebugWrite("parseAddCommand Finished!", 7); return strCommand; } catch (ArgumentException e) { //The command attempting to add was the same name as another command currently in the dictionary, inform the user. this.ConsoleError("Duplicate Command detected for " + enumCommand + ". That command will not work."); return enumCommand + " DUPLICATE COMMAND"; } catch (Exception e) { this.ConsoleError("Unknown error for " + enumCommand + ". Message: " + e.Message + ". Contact ColColonCleaner."); return enumCommand + " UNKNOWN ERROR"; } }
private Boolean hasAccess(String player_name, AdKat_CommandType command) { Boolean access = false; //Check if the player can access the desired command if (this.getAccessLevel(player_name) <= this.AdKat_CommandAccessRank[command]) { access = true; } return access; }