From 89375263385040a4041d554549e567e05794ee2e Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Tue, 28 Jul 2020 14:47:31 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=83=B5=E5=B0=B8=E6=99=AE?= =?UTF-8?q?=E6=94=BB=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/gameserver/human.cc | 12 ++++++++++++ server/tools/protobuild/metatable.proto | 1 + 2 files changed, 13 insertions(+) diff --git a/server/gameserver/human.cc b/server/gameserver/human.cc index feec2b3..0262129 100644 --- a/server/gameserver/human.cc +++ b/server/gameserver/human.cc @@ -3773,6 +3773,18 @@ void Human::AddPassiveSkillBuff(MetaData::Skill* skill_meta) void Human::OnMetaChange() { + if (GetRace() == kZombieRace) { + MetaData::Equip* weapon_meta = MetaMgr::Instance()->GetEquip(meta->i->normal_skill()); + if (weapon_meta) { + default_weapon.weapon_idx = 0; + default_weapon.weapon_id = weapon_meta->i->id(); + default_weapon.weapon_lv = 1; + default_weapon.ammo = 1; + default_weapon.meta = weapon_meta; + default_weapon.Recalc(); + curr_weapon = &weapons[0]; + } + } skill_meta_ = MetaMgr::Instance()->GetSkill(meta->i->active_skill()); ResetSkill(); MetaData::Skill* passive_skill_meta = MetaMgr::Instance()->GetSkill(meta->i->passive_skill()); diff --git a/server/tools/protobuild/metatable.proto b/server/tools/protobuild/metatable.proto index c0bed36..29a9164 100755 --- a/server/tools/protobuild/metatable.proto +++ b/server/tools/protobuild/metatable.proto @@ -128,6 +128,7 @@ message Player optional int32 zbmode_weapon_lv = 21; optional int32 revive_time = 22; optional string name = 23; + optional int32 normal_skill = 24; } message Robot