From a2104aaf2f7427ee5f0e021bf40f52fb85ca8fc2 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Tue, 31 Mar 2020 13:14:56 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=AD=BB=E4=BA=A1=E7=BB=93?= =?UTF-8?q?=E7=AE=97=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/gameserver/human.cc | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/server/gameserver/human.cc b/server/gameserver/human.cc index 76de7b0..3221955 100644 --- a/server/gameserver/human.cc +++ b/server/gameserver/human.cc @@ -2006,11 +2006,21 @@ void Human::GenBattleReportData(a8::MutableXObject* params) std::sort(human_list.begin(), human_list.end(), [] (Human* a, Human* b ) { - if (a->dead_frameno == b->dead_frameno) { - return a->entity_uniid < b->entity_uniid; + if (a->real_dead && b->real_dead) { + if (a->dead_frameno == b->dead_frameno) { + return a->entity_uniid < b->entity_uniid; + } else { + return a->dead_frameno == 0 || + (b->dead_frameno != 0 && a->dead_frameno > b->dead_frameno); + } } else { - return a->dead_frameno == 0 || - (b->dead_frameno != 0 && a->dead_frameno > b->dead_frameno); + if (a->real_dead) { + return false; + } + if (b->real_dead) { + return true; + } + return a->entity_uniid < b->entity_uniid; } }); rank = human_list.size();