From 811ccb7046476e0e15b49d2d6aa161ccef9cb79e Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Tue, 14 Jul 2020 10:02:38 +0800 Subject: [PATCH] 1 --- server/gameserver/android_new.ai.cc | 21 +++++++++++++++------ server/gameserver/android_new.ai.h | 2 ++ 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/server/gameserver/android_new.ai.cc b/server/gameserver/android_new.ai.cc index 288bd0d..e4ad90c 100644 --- a/server/gameserver/android_new.ai.cc +++ b/server/gameserver/android_new.ai.cc @@ -435,11 +435,9 @@ void AndroidNewAI::UpdateThinking() ChangeToStateNewAI(ASE_RandomWalk); } } else { - std::array targets = {}; - ScanTarget(targets); - Human* target = GetTarget(targets, target_range); + Human* target = GetTarget(); if (target) { - node.target = target; + node_.target = target; ChangeToStateNewAI(ASE_Attack); } else { if ((rand() % 7) < 4) { @@ -453,12 +451,18 @@ void AndroidNewAI::UpdateThinking() void AndroidNewAI::UpdateAttack() { - + if (node_.target->dead) { + ChangeToStateNewAI(ASE_Thinking); + return; + } } void AndroidNewAI::UpdateRandomWalk() { - + Human* hum = (Human*)owner; + if (hum->room->GetFrameNo() > node_.frameno + node_.param1) { + ChangeToStateNewAI(ASE_Thinking); + } } void AndroidNewAI::DoMoveNewAI() @@ -528,3 +532,8 @@ void AndroidNewAI::ChangeToStateNewAI(AndroidStateEx_e to_state) node_.frameno = hum->room->GetFrameNo(); node_.exec_frame_num = 0; } + +Human* AndroidNewAI::GetTarget() +{ + return nullptr; +} diff --git a/server/gameserver/android_new.ai.h b/server/gameserver/android_new.ai.h index d0970b7..5cab97b 100644 --- a/server/gameserver/android_new.ai.h +++ b/server/gameserver/android_new.ai.h @@ -59,6 +59,8 @@ private: void DoMoveNewAI(); void ChangeToStateNewAI(AndroidStateEx_e to_state); + Human* GetTarget(); + private: OldAiData old_ai_data_;