diff --git a/server/gameserver/pbutils.cc b/server/gameserver/pbutils.cc index 10e008f2..777c596d 100644 --- a/server/gameserver/pbutils.cc +++ b/server/gameserver/pbutils.cc @@ -375,6 +375,11 @@ void Car::FillMFObjectFull(Room* room, Human* hum, cs::MFObjectFull* full_data) } else { p->set_bullet_num(0); } + #if 0 + p->set_hero_level(GetHeroLevel()); + p->set_hero_exp(GetHeroExp()); + p->set_hero_max_exp(GetHeroMaxExp()); + #endif p->set_seat_num(meta->_int_param2); Creature_FillBuffList(this, hum, p->mutable_buff_list()); Creature_FillEffectList(this, hum, p->mutable_effect_list()); @@ -604,8 +609,9 @@ void Human::FillMFObjectLess(Room* room, Human* hum, cs::MFPlayerFull* full_data p->set_shoot_offset_x(shoot_offset.x); p->set_shoot_offset_y(shoot_offset.y); p->set_level(GetNetData()->GetLevel()); - p->set_hero_level(GetNetData()->GetHeroLevel()); - p->set_hero_level(GetNetData()->GetHeroLevel()); + p->set_hero_level(GetHeroLevel()); + p->set_hero_exp(GetHeroExp()); + p->set_hero_max_exp(GetHeroMaxExp()); GetCurrWeapon()->ToPB(this, p->mutable_weapon()); PBUtils::Ability_FillMFAttrAdditionList(GetAbility().get(), this, p); if (GetCar()) { @@ -627,7 +633,9 @@ void Human::FillMFObjectFull(Room* room, Human* hum, cs::MFObjectFull* full_data p->set_health(GetHP()); p->set_level(GetNetData()->GetLevel()); - p->set_hero_level(GetNetData()->GetHeroLevel()); + p->set_hero_level(GetHeroLevel()); + p->set_hero_exp(GetHeroExp()); + p->set_hero_max_exp(GetHeroMaxExp()); p->set_max_health(GetMaxHP()); p->set_dead(dead); p->set_downed(downed); @@ -865,6 +873,9 @@ void Human::FillMFTeamData(Human* hum, cs::MFTeamData* team_data, bool is_game_o team_data->set_hero_id(meta->id()); team_data->set_level(hum->GetNetData()->GetLevel()); team_data->set_hero_level(hum->GetNetData()->GetHeroLevel()); + team_data->set_hero_level(GetHeroLevel()); + team_data->set_hero_exp(GetHeroExp()); + team_data->set_hero_max_exp(GetHeroMaxExp()); team_data->set_score(stats->pve_rank_score); if (is_game_over || !real_dead || room->GetFrameNo() - GetRealDeadFrameNo(room) < 4) { TypeConvert::ToPb(GetPos(), team_data->mutable_pos()); diff --git a/server/tools/protobuild/cs_proto.proto b/server/tools/protobuild/cs_proto.proto index aa160850..8cb54760 100755 --- a/server/tools/protobuild/cs_proto.proto +++ b/server/tools/protobuild/cs_proto.proto @@ -721,6 +721,8 @@ message MFTeamData optional int32 hero_id = 64 [default = 0]; //英雄id(只同步一次) optional int32 level = 65 [default = 0]; //等级 optional int32 hero_level = 72; //hero等级 + optional int32 hero_exp = 73; //hero经验 + optional int32 hero_max_exp = 74; //hero max经验 //一下字段只在结算的时候该字段才有内容 optional string account_id = 10; //账号id