Exemplo n.º 1
0
        /// <summary>
        /// 把消息加入分步模式的动作列表里
        /// </summary>
        private void addMsgToStepRecorder(CMsgHeader msg)
        {
            if (bStepMode)
            {
                if (msg is CMsgSkillCast)
                {
                    CMsgSkillCast  cast = msg as CMsgSkillCast;
                    BT_MonsterTeam team = teamFromPveId(cast.caster);
                    cast.curAngry = team.curAngry;
                }

                StepRecorder.Add(msg);
            }
        }
Exemplo n.º 2
0
        public void addMsgToRecorder(CMsgHeader msg)
        {
            //可能要加入分步列表里
            addMsgToStepRecorder(msg);

            if (msg is CMsgSkillCast)
            {
                CMsgSkillCast  cast = msg as CMsgSkillCast;
                BT_MonsterTeam team = teamFromPveId(cast.caster);
                cast.curAngry = team.curAngry;
            }

            _warRecorder.Add(msg);

            if (msg is CMsgWarEnd)
            {
                CMsgWarEnd end = msg as CMsgWarEnd;
                WarIsOver = end.winner == "Att" ? 1 : 0;
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// 将战斗时候的数据,转化为Json
        /// </summary>
        /// <returns>The json.</returns>
        /// <param name="msg">Message.</param>
        public static string ToJson(CMsgHeader msg)
        {
            string json = string.Empty;

            switch (msg.status)
            {
            case CMsgHeader.STATUS_WAR_BEGIN: {
                var real = msg as CMsgWarBegin;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }

            break;

            case CMsgHeader.STATUS_ROUND_BEGIN: {
                var real = msg as CMsgRoundBegin;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_PROPERTY_KILL: {
                var real = msg as CMsgPropertyEnchance;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_ATTACK:
            case CMsgHeader.STATUS_REBOUND_ATT: {
                var real = msg as CMsgNormalAttack;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_WAR_END: {
                var real = msg as CMsgWarEnd;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_BUFF_DEBUFF: {
                var real = msg as CMsgSkillBuffDebuffEffect;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_401:
            case CMsgHeader.STATUS_NSK_416: {
                var real = msg as CMsgSkillAttack;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_402: {
                var real = msg as CMsgSkillChangeAttack;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_403: {
                var real = msg as CMsgSkillAttackCombo;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_404: {
                var real = msg as CMsgSkillSuckAttack;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_405: {
                var real = msg as CMsgSkillChangeCurAttackBoth;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_406: {
                var real = msg as CMsgSkillRevive;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_407: {
                var real = msg as CMsgSkillBlast;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_408: {
                var real = msg as CMsgSkillAngryExchange;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_409: {
                var real = msg as CMsgSkillBuffOrDebuff;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_410: {
                var real = msg as CMsgSkillChangeCurAttackAll;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_411: {
                var real = msg as CMsgSkillDeath;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_412:
            case CMsgHeader.STATUS_NSK_419: {
                var real = msg as CMsgSkillRecovery;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_413: {
                var real = msg as CMsgSkillCut;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_414: {
                var real = msg as CMsgSkillBomb;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_415: {
                var real = msg as CMsgSkillAttDelta;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_417:
            case CMsgHeader.STATUS_NSK_418: {
                var real = msg as CMsgSkillCast;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            case CMsgHeader.STATUS_NSK_420: {
                var real = msg as CMsgSkillAfterRecovery;
                if (real == null)
                {
                    json = JSON.Instance.ToJSON(msg);
                }
                else
                {
                    json = JSON.Instance.ToJSON(real);
                }
            }
            break;

            default:
                json = JSON.Instance.ToJSON(msg);
                break;
            }

            return(json);
        }