Add Internal command logging.

This commit is contained in:
CarbonNeuron 2020-05-01 09:37:15 -05:00
parent bdf37e427c
commit 06ea43f6c0
3 changed files with 20 additions and 2 deletions

View file

@ -156,6 +156,8 @@ namespace MinecraftClient
/// <param name="entity">Entity with updated location</param> /// <param name="entity">Entity with updated location</param>
public virtual void OnEntityMove(Mapping.Entity entity) { } public virtual void OnEntityMove(Mapping.Entity entity) { }
public virtual void OnInternalCommand(string commandName,string commandParams, string Result) { }
/// <summary> /// <summary>
/// Called when an entity spawned nearby /// Called when an entity spawned nearby
/// </summary> /// </summary>

View file

@ -12,11 +12,12 @@ namespace MinecraftClient.ChatBots
public class ChatLog : ChatBot public class ChatLog : ChatBot
{ {
public enum MessageFilter { AllText, AllMessages, OnlyChat, OnlyWhispers }; public enum MessageFilter { AllText, AllMessages, OnlyChat, OnlyWhispers, OnlyInternal };
private bool dateandtime; private bool dateandtime;
private bool saveOther = true; private bool saveOther = true;
private bool saveChat = true; private bool saveChat = true;
private bool savePrivate = true; private bool savePrivate = true;
private bool saveInternal = true;
private string logfile; private string logfile;
/// <summary> /// <summary>
@ -52,6 +53,12 @@ namespace MinecraftClient.ChatBots
savePrivate = true; savePrivate = true;
saveChat = false; saveChat = false;
break; break;
case MessageFilter.OnlyInternal:
saveOther = false;
savePrivate = false;
saveChat = false;
saveInternal = true;
break;
} }
if (String.IsNullOrEmpty(file) || file.IndexOfAny(Path.GetInvalidPathChars()) >= 0) if (String.IsNullOrEmpty(file) || file.IndexOfAny(Path.GetInvalidPathChars()) >= 0)
{ {
@ -68,6 +75,7 @@ namespace MinecraftClient.ChatBots
case "messages": return MessageFilter.AllMessages; case "messages": return MessageFilter.AllMessages;
case "chat": return MessageFilter.OnlyChat; case "chat": return MessageFilter.OnlyChat;
case "private": return MessageFilter.OnlyWhispers; case "private": return MessageFilter.OnlyWhispers;
case "internal": return MessageFilter.OnlyInternal;
default: return MessageFilter.AllText; default: return MessageFilter.AllText;
} }
} }
@ -92,6 +100,14 @@ namespace MinecraftClient.ChatBots
} }
} }
public override void OnInternalCommand(string commandName,string commandParams, string Result)
{
if (saveInternal)
{
save($"Internal {commandName}({commandParams}): {Result}");
}
}
private void save(string tosave) private void save(string tosave)
{ {
if (dateandtime) if (dateandtime)

View file

@ -389,7 +389,7 @@ namespace MinecraftClient
{ {
try try
{ {
bot.OnInternalCommand(command_name, response_msg); bot.OnInternalCommand(command_name, string.Join(" ",Command.getArgs(command)),response_msg);
} }
catch (Exception e) catch (Exception e)
{ {