From d4eb937be5d317c89264ac0f14fb4705409c5516 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Tue, 6 Dec 2022 16:24:38 +0800 Subject: [PATCH] 1 --- server/gameserver/android.cc | 15 ++++++++++++--- server/gameserver/android_agent.cc | 4 +++- server/gameserver/app.cc | 3 +++ server/gameserver/movehelper.cc | 9 ++++++--- 4 files changed, 24 insertions(+), 7 deletions(-) diff --git a/server/gameserver/android.cc b/server/gameserver/android.cc index 555523fb..0c37d96f 100644 --- a/server/gameserver/android.cc +++ b/server/gameserver/android.cc @@ -91,13 +91,22 @@ void Android::InternalUpdate(int delta_time) if (GetMoveHelper()->GetPathSize() > 0) { Global::Instance()->verify_set_pos = 1; int speed = std::max(1, (int)GetSpeed()) * 1; + a8::Vec2 old_pos = GetPos(); _UpdateMove(speed); +#ifdef DEBUG1 + a8::XPrintf("updatemove old_pos:%f,%f new_pos:%f,%f\n", + { + old_pos.x, + old_pos.y, + GetPos().x, + GetPos().y, + }); +#endif Global::Instance()->verify_set_pos = 0; } behaviac::EBTStatus status = f8::BtMgr::Instance()->BtExec(agent_); -#if 0 - if (status != behaviac::BT_RUNNING) { - abort(); +#ifdef DEBUG + { } #endif } diff --git a/server/gameserver/android_agent.cc b/server/gameserver/android_agent.cc index d05983a1..0607f4a7 100644 --- a/server/gameserver/android_agent.cc +++ b/server/gameserver/android_agent.cc @@ -62,7 +62,9 @@ behaviac::EBTStatus AndroidAgent::DoRandomWalk() a8::Vec2 dir = GetOwner()->GetMoveDir(); dir.Rotate((10 + rand() % 360)/ 180.0f); dir.Normalize(); - GetOwner()->GetMoveHelper()->CalcTargetPos(500); + GetOwner()->SetMoveDir(dir); + GetOwner()->SetAttackDir(dir); + GetOwner()->GetMoveHelper()->CalcTargetPos(200); if (GetOwner()->GetMoveHelper()->GetPathSize() <= 0) { return behaviac::BT_FAILURE; } diff --git a/server/gameserver/app.cc b/server/gameserver/app.cc index 6409e4de..ad8b34bc 100644 --- a/server/gameserver/app.cc +++ b/server/gameserver/app.cc @@ -231,6 +231,9 @@ bool App::Init(int argc, char* argv[]) f8::TGLog::Instance()->Init(a8::Format(PROJ_NAME_FMT, {GAME_ID}), false, 0); f8::HttpClientPool::Instance()->Init(MAX_ALL_HTTP_NUM, MAX_SYS_HTTP_NUM, MAX_USER_HTTP_NUM); f8::BtMgr::Instance()->Init("exported"); +#ifdef DEBUG + f8::BtMgr::Instance()->SetLogging(true); +#endif SkillHelper::Init(); JsonDataMgr::Instance()->Init(); MetaMgr::Instance()->Init(); diff --git a/server/gameserver/movehelper.cc b/server/gameserver/movehelper.cc index 599274d2..08db43e9 100644 --- a/server/gameserver/movehelper.cc +++ b/server/gameserver/movehelper.cc @@ -70,6 +70,8 @@ bool MoveHelper::GetMovePosition(glm::vec3& out_pos) abort(); } return true; + } else { + ClearPath(); } return false; } @@ -136,8 +138,8 @@ void MoveHelper::CalcTargetPos(float distance) point->tar_pos.z < 0) { abort(); } -#ifdef DEBUG1 - a8::XPrintf("CalcTargetPos src_pos:%f,%f tar_pos:%f,%f is_hit:%d start:%f,%f,%f end:%f,%f,%f\n", +#ifdef DEBUG + a8::XPrintf("CalcTargetPos src_pos:%f,%f tar_pos:%f,%f is_hit:%d start:%f,%f,%f end:%f,%f,%f distance:%f\n", { point->src_pos.x, point->src_pos.z, @@ -151,7 +153,8 @@ void MoveHelper::CalcTargetPos(float distance) end.x, end.y, - end.z + end.z, + point->distance }); #endif