diff --git a/server/gameserver/aicomponent.cc b/server/gameserver/aicomponent.cc index 4c1d816..809f222 100644 --- a/server/gameserver/aicomponent.cc +++ b/server/gameserver/aicomponent.cc @@ -24,6 +24,7 @@ void AIComponent::SetAiMode(int ai_mode) int AIComponent::GetAiLevel() { + return 1; return ai_level_; } diff --git a/server/gameserver/android.ai.cc b/server/gameserver/android.ai.cc index ce6a220..66b9e93 100644 --- a/server/gameserver/android.ai.cc +++ b/server/gameserver/android.ai.cc @@ -475,15 +475,11 @@ void AndroidNewAI::UpdateThinking() hum->room->IsWaitingStart() || hum->HasBuffEffect(kBET_Jump) || a8::HasBitFlag(hum->status, HS_DisableAttack)) { - #if 1 if (hum->room->IsWaitingStart()) { ChangeToStateNewAI(ASE_Idle); } else { ChangeToStateNewAI(ASE_RandomWalk); } - #else - ChangeToStateNewAI(ASE_RandomWalk); - #endif } else { Human* target = GetTarget(); if (target) { diff --git a/server/gameserver/android.cc b/server/gameserver/android.cc index 5cbc42f..6e4a157 100644 --- a/server/gameserver/android.cc +++ b/server/gameserver/android.cc @@ -60,6 +60,11 @@ void Android::InternalUpdate(int delta_time) if (action_type != AT_None) { UpdateAction(); } + if (HasBuffEffect(kBET_Fly)) { + SetPos(room->plane.curr_pos); + room->grid_service->MoveHuman(this); + return; + } ai->Update(delta_time); } diff --git a/server/gameserver/player.cc b/server/gameserver/player.cc index 2b7a664..281ad18 100644 --- a/server/gameserver/player.cc +++ b/server/gameserver/player.cc @@ -55,6 +55,11 @@ void Player::InternalUpdate(int delta_time) if (poisoning) { poisoning_time += delta_time; } + if (HasBuffEffect(kBET_Fly)) { + SetPos(room->plane.curr_pos); + room->grid_service->MoveHuman(this); + return; + } if (HasSpecMove()) { _UpdateSpecMove(); } else {