This commit is contained in:
aozhiwei 2024-09-09 14:23:45 +08:00
parent eee573e791
commit 2e428dbb1b
2 changed files with 17 additions and 0 deletions

View File

@ -1023,6 +1023,15 @@ void Player::_CMMove(f8::MsgHdr* hdr, const cs::CMMove& msg)
){ ){
glm::vec3 tmp_pos; glm::vec3 tmp_pos;
TypeConvert::FromPb(tmp_pos, &msg.move_target_pos()); TypeConvert::FromPb(tmp_pos, &msg.move_target_pos());
if (GetPos().Distance2D2(tmp_pos) < 200) {
if (!GetMovement()->MoveToPos(tmp_pos)) {
Pullback();
} else {
move_target_pos_ = tmp_pos;
}
} else {
Pullback();
}
} }
} else { } else {
((cs::CMMove*)&msg)->clear_move_dir(); ((cs::CMMove*)&msg)->clear_move_dir();
@ -1998,3 +2007,10 @@ void Player::SetShotHold(bool hold)
} }
shot_hold = hold; shot_hold = hold;
} }
void Player::Pullback()
{
cs::SMPullback msg;
TypeConvert::ToPb(GetPos().ToGlmVec3(), msg.mutable_pos());
SendNotifyMsg(msg);
}

View File

@ -151,6 +151,7 @@ class Player : public Human
void _CMMobaBattleData(f8::MsgHdr* hdr, const cs::CMMobaBattleData& msg); void _CMMobaBattleData(f8::MsgHdr* hdr, const cs::CMMobaBattleData& msg);
virtual void SetAttackDir(const glm::vec3& attack_dir) override; virtual void SetAttackDir(const glm::vec3& attack_dir) override;
void AsyncRequestWatchWar(bool send_rsp_msg); void AsyncRequestWatchWar(bool send_rsp_msg);
void Pullback();
protected: protected:
Player(); Player();