From 1ef12de7ca61f9e1be244d1e364861352e4ea6da Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Sat, 3 Jun 2023 18:53:33 +0800 Subject: [PATCH] 1 --- server/gameserver/pbutils.cc | 3 +++ server/gameserver/player.cc | 3 ++- server/tools/protobuild/cs_proto.proto | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/server/gameserver/pbutils.cc b/server/gameserver/pbutils.cc index a53b2445..6ef7db0d 100644 --- a/server/gameserver/pbutils.cc +++ b/server/gameserver/pbutils.cc @@ -376,6 +376,9 @@ void Car::FillMFObjectFull(Room* room, Human* hum, cs::MFObjectFull* full_data) Creature_FillBuffList(this, hum, p->mutable_buff_list()); Creature_FillEffectList(this, hum, p->mutable_effect_list()); p->set_team_id(team_id); + if (GetDriver()) { + Creature_FillSkillList(this, p->mutable_skill_list()); + } } void Hero::FillMFObjectPart(Room* room, Human* hum, cs::MFObjectPart* part_data) diff --git a/server/gameserver/player.cc b/server/gameserver/player.cc index de289d47..6fa09eae 100644 --- a/server/gameserver/player.cc +++ b/server/gameserver/player.cc @@ -596,7 +596,8 @@ void Player::UpdateSwitchSeat() void Player::UpdateUseSkill() { - if (GetCar()) { + if (GetCar() && GetCar()->IsDriver(this)) { + GetCar()->DoSkill(use_skill_id, skill_target_id, skill_dir, skill_distance); } else { DoSkill(use_skill_id, skill_target_id, skill_dir, skill_distance); } diff --git a/server/tools/protobuild/cs_proto.proto b/server/tools/protobuild/cs_proto.proto index 2fd43e71..5c93373d 100755 --- a/server/tools/protobuild/cs_proto.proto +++ b/server/tools/protobuild/cs_proto.proto @@ -508,7 +508,7 @@ message MFCarFull optional int32 bullet_num = 16; //子弹数量 repeated MFEffect effect_list = 18; //特效列表 optional int32 team_id = 19; //队伍id - + repeated MFSkill skill_list = 20; //技能列表 /* 乘客列表(包含驾驶员) !!!注意这里只返回客户端必要的用于显示玩家外观的信息而不是全量信息