private bool checkToNextOrOver() //下一波? { bool next = false; fightDiff = 0; //---- 加入杀人统计--- if (!_curDefer.alive) { _curAtter.addKillCount(_curDefer); //记录下当前敌人在第几波 statictis.enemyIndex = _curDefer.pveId; } if (!_curAtter.alive) { _curDefer.addKillCount(_curAtter); } if (_attTeam.over || _defTeam.over) { _battleStatus = CMsgHeader.STATUS_WAR_END; CMsgWarEnd msg = null; if (_attTeam.over) { msg = new CMsgWarEnd("Def"); } else { msg = new CMsgWarEnd("Att"); } addMsgToRecorder(msg); ConsoleEx.DebugLog("CheckToNextOrOver: Game Over!"); } else //下一回合开始. { _curLun++; _curAtter.enterNextLun(); _curDefer.enterNextLun(); //可以进入下个回合 next = true; } return(next); }
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; } }