Exemplo n.º 1
0
        // Methods
        public FFXIVLog(FFXIVProcess ffxiv, int messageId, string who, string message)
        {
            FFXIV = ffxiv;
            MessageTypeID = messageId;
            Who = who;
            Message = message;

            if (string.IsNullOrEmpty(Who)) Who = string.Empty;
            if (string.IsNullOrEmpty(Message)) Message = string.Empty;
        }
Exemplo n.º 2
0
 /// <summary>
 /// バイナリデータより指定範囲のログを列挙します。
 /// </summary>
 /// <param name="logData"></param>
 /// <param name="enc"></param>
 /// <returns></returns>
 public static IEnumerable<FFXIVLog> GetLogs(byte[] logData, Encoding enc, FFXIVProcess ff14)
 {
     var buf = logData
         .SkipWhile(a => a != 0x30)
         .ToArray();
     var input = enc.GetString(TABConvertor.TabEscape(buf));
     var matchs = regex.Matches(input);
     var strArray = regex.Split(input);
     for (var j = 1; j < strArray.Length; j++) {
         var strArray2 = strArray[j].Split(new char[] { ':' }, 2, StringSplitOptions.None);
         var strType = matchs[j - 1].Value.TrimEnd(new char[] { ':' });
         var numType = int.Parse(strType, NumberStyles.AllowHexSpecifier);
         var strWho = strArray2[0].Replace("\0", "").Trim();
         var strMes = strArray2[1].Replace("\0", "");
         var item = new FFXIVLog(ff14, numType, strWho, strMes);
         yield return item;
     }
 }
Exemplo n.º 3
0
 private static FFXIVLog Internal(FFXIVProcess ff14, FFXILogMessageType tp, string message)
 {
     return new FFXIVLog(ff14, (int)tp, "", message);
 }
Exemplo n.º 4
0
 /// <summary>
 /// コンストラクタ。
 /// </summary>
 /// <param name="_ffxiv"></param>
 public LogStatusSearcher(FFXIVProcess _ffxiv)
 {
     this.ffxiv = _ffxiv;
 }
Exemplo n.º 5
0
 // Methods
 public FFXIVLogStatus(FFXIVProcess _ffxiv, int entry)
 {
     FFXIV = _ffxiv;
     Entry = entry;
 }