add atk_add

This commit is contained in:
aozhiwei 2019-08-12 13:55:18 +08:00
parent f6dc39d11c
commit f22a50de88
4 changed files with 14 additions and 0 deletions

View File

@ -1468,6 +1468,12 @@ void Human::FillBodyState(::google::protobuf::RepeatedPtrField<::cs::MFBodyState
state->set_left_time(std::max(0, skill_meta->last_time * 1000 - passed_time));
state->set_lasting_time(skill_meta->last_time * 1000);
}
if (a8::HasBitFlag(status, HS_AtkAdd)) {
cs::MFBodyState* state = states->Add();
state->set_state_type(HS_AtkAdd);
state->set_left_time(999 * 1000);
state->set_lasting_time(999 * 1000);
}
}
void Human::SummonHero()

View File

@ -24,6 +24,7 @@ enum HumanStatus
HS_RecoverHP = 8,
HS_ReflectDamage = 9,
HS_SummonHero = 10,
HS_AtkAdd = 11,
HS_End
};
@ -80,6 +81,7 @@ class Human : public Entity
long long dead_frameno = 0;
long long join_frameno = 0;
int status = 0;
float atk_add = 0.0f;
Weapon default_weapon;
std::vector<Weapon> weapons;

View File

@ -53,6 +53,10 @@ Player* PlayerMgr::CreatePlayerByCMJoin(long ip_saddr, int socket, const cs::CMJ
hum->energy_shield = msg.energy_shield();
hum->create_tick = a8::XGetTickCount();
hum->account_registertime = f8::ExtractRegisterTimeFromSessionId(msg.session_id());
hum->atk_add = msg.atk_add();
if (hum->atk_add > 0.9999f) {
a8::SetBitFlag(hum->status, HS_AtkAdd);
}
for (auto& weapon : msg.weapons()) {
if (weapon.weapon_id() != 0 && weapon.weapon_lv() > 0) {
hum->weapon_configs[weapon.weapon_id()] = weapon.weapon_lv();

View File

@ -588,6 +588,7 @@ message MFBodyState
8:
9:
10:
11
*/
optional int32 state_type = 1;
optional float left_time = 2; //()
@ -625,6 +626,7 @@ message CMJoin
repeated int32 prepare_items = 19; // energy_shield
optional string session_id = 20; //session_id
optional string from_appid = 21; //from_appid
optional float atk_add = 22; //
}
//