Example #1
0
        /// <summary>
        /// 确定指定的对象是否等于当前对象
        /// </summary>
        /// <param name="obj">要与当前对象进行比较的对象</param>
        /// <returns>如果指定的对象等于当前对象,则为 <code>true</code>,否则为 <code>false</code></returns>
        public override bool Equals(object obj)
        {
            CQCode code = obj as CQCode;

            if (code != null)
            {
                return(string.Equals(this._originalString, code._originalString));
            }
            return(base.Equals(obj));
        }
Example #2
0
        /// <summary>
        /// 使用 <see cref="CQApi"/> 和相关消息来初始化 <see cref="QQMessage"/> 类的新实例
        /// </summary>
        /// <param name="api">模型使用的 <see cref="Cqp.CQApi"/></param>
        /// <param name="msgId">模型使用的消息Id</param>
        /// <param name="msg">模型使用的消息原文</param>
        /// <param name="isRegexMsg">指示当前实例是否是正则消息</param>
        public QQMessage(CQApi api, int msgId, string msg, bool isRegexMsg = false)
            : base(api, (isRegexMsg == true) ? msg : string.Empty)
        {
            if (msg == null)
            {
                throw new ArgumentNullException("msg");
            }

            this.Id             = msgId;
            this.Text           = msg;
            this.IsRegexMessage = isRegexMsg;
            if (!this.IsRegexMessage)
            {
                this.CQCodes = CQCode.Parse(this.Text);
            }
        }
Example #3
0
 /// <summary>
 /// 判断是否是语音 <see cref="CQCode"/>
 /// </summary>
 /// <param name="code">要判断的 <see cref="CQCode"/> 实例</param>
 /// <returns>如果是语音 <see cref="CQCode"/> 返回 <see langword="true"/> 否则返回 <see langword="false"/></returns>
 public static bool EqualIsRecordCQCode(CQCode code)
 {
     return(code.Function == CQFunction.Record);
 }
Example #4
0
 /// <summary>
 /// 判断是否是图片 <see cref="CQCode"/>
 /// </summary>
 /// <param name="code">要判断的 <see cref="CQCode"/> 实例</param>
 /// <returns>如果是图片 <see cref="CQCode"/> 返回 <see langword="true"/> 否则返回 <see langword="false"/></returns>
 public static bool EqualIsImageCQCode(CQCode code)
 {
     return(code.Function == CQFunction.Image);
 }