using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
namespace ProxyCore.Input
{
public class InputData
{
internal InputData()
{
}
///
/// Who executed the command? This will be uint.MaxValue if we execute it from a plugin or other places - meaning
/// it didn't originate from a client.
///
public uint ClientId
{
get;
internal set;
}
///
/// Use this if you want to send message to whoever executed the command. If it was executed from a plugin
/// send message to every client. Example: World.Instance.SendMessage("Test.", i.ClientMask);
///
public uint[] ClientMask
{
get
{
return ClientId != uint.MaxValue ? new[] { ClientId } : null;
}
}
///
/// The auth level of client who entered command. (1...64)
///
public int ClientAuthLevel
{
get;
internal set;
}
///
/// Whole command just as it was entered. You can change this to send something different to MUD. Just make
/// sure you return false on the command handler otherwise nothing will get sent to MUD.
///
public string Command;
///
/// Which function will we execute with this data.
///
internal InputEntry Function;
///
/// This is where we capture arguments if the arguments pattern was set. Check first if Arguments.Success, otherwise there will be no Groups set.
///
public Match Arguments
{
get;
internal set;
}
}
}