1
This commit is contained in:
parent
aa8283d53e
commit
a858b1a0da
@ -426,6 +426,7 @@ void BattleDataContext::ParseResult(a8::XObject& obj)
|
|||||||
hero_dto = obj.At("hero_dto");
|
hero_dto = obj.At("hero_dto");
|
||||||
hero_ability_->hero_uniid_ = hero_dto->Get("hero_uniid", "");
|
hero_ability_->hero_uniid_ = hero_dto->Get("hero_uniid", "");
|
||||||
hero_ability_->hero_dto = hero_dto;
|
hero_ability_->hero_dto = hero_dto;
|
||||||
|
hero_lv_ = hero_dto->HasKey("hero_lv") ? hero_dto->Get("hero_lv").GetInt() : 1;
|
||||||
const mt::Hero* meta = mt::Hero::GetById(hero_dto->Get("hero_id", ""));
|
const mt::Hero* meta = mt::Hero::GetById(hero_dto->Get("hero_id", ""));
|
||||||
if (meta) {
|
if (meta) {
|
||||||
hero_ability_->hero_meta = meta;
|
hero_ability_->hero_meta = meta;
|
||||||
@ -986,3 +987,8 @@ float BattleDataContext::GetRecoverHpAdd()
|
|||||||
{
|
{
|
||||||
return hero_ability_->GetRecoverHpAdd();
|
return hero_ability_->GetRecoverHpAdd();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int BattleDataContext::GetHeroLevel()
|
||||||
|
{
|
||||||
|
return std::max(hero_lv_, 1);
|
||||||
|
}
|
||||||
|
@ -77,6 +77,7 @@ struct BattleDataContext
|
|||||||
|
|
||||||
int GetSkinId();
|
int GetSkinId();
|
||||||
int GetLevel();
|
int GetLevel();
|
||||||
|
int GetHeroLevel();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void Clear();
|
void Clear();
|
||||||
@ -101,6 +102,7 @@ private:
|
|||||||
|
|
||||||
int skin_id_ = 0;
|
int skin_id_ = 0;
|
||||||
int level_ = 0;
|
int level_ = 0;
|
||||||
|
int hero_lv_ = 0;
|
||||||
|
|
||||||
int skill1_lv = 1;
|
int skill1_lv = 1;
|
||||||
int skill2_lv = 1;
|
int skill2_lv = 1;
|
||||||
|
@ -93,6 +93,7 @@ class Creature : public MoveableEntity
|
|||||||
int energy_shield = 0;
|
int energy_shield = 0;
|
||||||
int max_energy_shield = 0;
|
int max_energy_shield = 0;
|
||||||
int level = 1;
|
int level = 1;
|
||||||
|
int hero_level = 1;
|
||||||
|
|
||||||
Weapon second_weapon;
|
Weapon second_weapon;
|
||||||
glm::vec3 skill_pos;
|
glm::vec3 skill_pos;
|
||||||
|
@ -25,7 +25,7 @@ GunGrasp::~GunGrasp()
|
|||||||
|
|
||||||
void GunGrasp::Init()
|
void GunGrasp::Init()
|
||||||
{
|
{
|
||||||
if (owner_->IsHuman()) {
|
if (owner_->IsPlayer()) {
|
||||||
TakeOnWeapon(owner_->GetCurrWeapon());
|
TakeOnWeapon(owner_->GetCurrWeapon());
|
||||||
owner_->GetTrigger()->AddListener
|
owner_->GetTrigger()->AddListener
|
||||||
(
|
(
|
||||||
@ -51,7 +51,7 @@ void GunGrasp::Clear()
|
|||||||
void GunGrasp::TakeOnWeapon(Weapon* weapon)
|
void GunGrasp::TakeOnWeapon(Weapon* weapon)
|
||||||
{
|
{
|
||||||
std::set<int>* buffs = mt::Grasp::GetBuffs(owner_->AsHuman()->meta->id(),
|
std::set<int>* buffs = mt::Grasp::GetBuffs(owner_->AsHuman()->meta->id(),
|
||||||
owner_->GetBattleContext()->GetLevel(),
|
owner_->GetBattleContext()->GetHeroLevel(),
|
||||||
weapon->meta->id());
|
weapon->meta->id());
|
||||||
Clear();
|
Clear();
|
||||||
if (buffs) {
|
if (buffs) {
|
||||||
|
@ -563,6 +563,8 @@ void Human::FillMFObjectLess(Room* room, Human* hum, cs::MFPlayerFull* full_data
|
|||||||
p->set_shoot_offset_x(shoot_offset.x);
|
p->set_shoot_offset_x(shoot_offset.x);
|
||||||
p->set_shoot_offset_y(shoot_offset.y);
|
p->set_shoot_offset_y(shoot_offset.y);
|
||||||
p->set_level(GetBattleContext()->GetLevel());
|
p->set_level(GetBattleContext()->GetLevel());
|
||||||
|
p->set_hero_level(GetBattleContext()->GetHeroLevel());
|
||||||
|
p->set_hero_level(GetBattleContext()->GetHeroLevel());
|
||||||
GetCurrWeapon()->ToPB(this, p->mutable_weapon());
|
GetCurrWeapon()->ToPB(this, p->mutable_weapon());
|
||||||
PBUtils::Ability_FillMFAttrAdditionList(GetAbility().get(), this, p);
|
PBUtils::Ability_FillMFAttrAdditionList(GetAbility().get(), this, p);
|
||||||
if (GetCar()) {
|
if (GetCar()) {
|
||||||
@ -584,6 +586,9 @@ void Human::FillMFObjectFull(Room* room, Human* hum, cs::MFObjectFull* full_data
|
|||||||
|
|
||||||
p->set_health(GetHP());
|
p->set_health(GetHP());
|
||||||
p->set_level(GetBattleContext()->GetLevel());
|
p->set_level(GetBattleContext()->GetLevel());
|
||||||
|
#if 0
|
||||||
|
p->set_Hero_level(GetBattleContext()->GetHeroLevel());
|
||||||
|
#endif
|
||||||
p->set_max_health(GetMaxHP());
|
p->set_max_health(GetMaxHP());
|
||||||
p->set_dead(dead);
|
p->set_dead(dead);
|
||||||
p->set_downed(downed);
|
p->set_downed(downed);
|
||||||
@ -799,6 +804,7 @@ void Human::FillMFTeamData(Human* hum, cs::MFTeamData* team_data, bool is_game_o
|
|||||||
team_data->set_player_id(GetUniId());
|
team_data->set_player_id(GetUniId());
|
||||||
team_data->set_hero_id(meta->id());
|
team_data->set_hero_id(meta->id());
|
||||||
team_data->set_level(hum->GetBattleContext()->GetLevel());
|
team_data->set_level(hum->GetBattleContext()->GetLevel());
|
||||||
|
team_data->set_hero_level(hum->GetBattleContext()->GetHeroLevel());
|
||||||
team_data->set_score(stats->pve_rank_score);
|
team_data->set_score(stats->pve_rank_score);
|
||||||
if (is_game_over || !real_dead || room->GetFrameNo() - GetRealDeadFrameNo(room) < 4) {
|
if (is_game_over || !real_dead || room->GetFrameNo() - GetRealDeadFrameNo(room) < 4) {
|
||||||
TypeConvert::ToPb(GetPos(), team_data->mutable_pos());
|
TypeConvert::ToPb(GetPos(), team_data->mutable_pos());
|
||||||
|
@ -331,6 +331,7 @@ message MFPlayerFull
|
|||||||
|
|
||||||
optional int32 gemstone = 68; //宝石
|
optional int32 gemstone = 68; //宝石
|
||||||
optional int32 level = 69; //等级
|
optional int32 level = 69; //等级
|
||||||
|
optional int32 hero_level = 72; //hero等级
|
||||||
|
|
||||||
optional int32 team_member_num = 70 [default = 0]; //队伍成员数
|
optional int32 team_member_num = 70 [default = 0]; //队伍成员数
|
||||||
}
|
}
|
||||||
@ -632,6 +633,7 @@ message MFTeamData
|
|||||||
optional int32 score = 63 [default = 0]; //pve模式积分
|
optional int32 score = 63 [default = 0]; //pve模式积分
|
||||||
optional int32 hero_id = 64 [default = 0]; //英雄id(只同步一次)
|
optional int32 hero_id = 64 [default = 0]; //英雄id(只同步一次)
|
||||||
optional int32 level = 65 [default = 0]; //等级
|
optional int32 level = 65 [default = 0]; //等级
|
||||||
|
optional int32 hero_level = 72; //hero等级
|
||||||
|
|
||||||
//一下字段只在结算的时候该字段才有内容
|
//一下字段只在结算的时候该字段才有内容
|
||||||
optional string account_id = 10; //账号id
|
optional string account_id = 10; //账号id
|
||||||
|
Loading…
x
Reference in New Issue
Block a user