修复14 Ai命中定身BUFF,实际仍可射击
This commit is contained in:
parent
744507e9b3
commit
03612c3f73
@ -529,6 +529,9 @@ void AndroidNewAI::UpdateAttack()
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
if (myself->HasBuffEffect(kBET_Vertigo)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
float distance = myself->GetPos().Distance(node_.target.Get()->GetPos());
|
float distance = myself->GetPos().Distance(node_.target.Get()->GetPos());
|
||||||
if (distance > GetAttackRange()) {
|
if (distance > GetAttackRange()) {
|
||||||
if (ai_meta->i->pursuit_radius() <= 0) {
|
if (ai_meta->i->pursuit_radius() <= 0) {
|
||||||
@ -608,6 +611,9 @@ void AndroidNewAI::UpdatePursuit()
|
|||||||
void AndroidNewAI::DoMoveNewAI()
|
void AndroidNewAI::DoMoveNewAI()
|
||||||
{
|
{
|
||||||
Human* hum = (Human*)owner;
|
Human* hum = (Human*)owner;
|
||||||
|
if (hum->HasBuffEffect(kBET_Vertigo)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (std::abs(hum->GetMoveDir().x) > FLT_EPSILON ||
|
if (std::abs(hum->GetMoveDir().x) > FLT_EPSILON ||
|
||||||
std::abs(hum->GetMoveDir().y) > FLT_EPSILON) {
|
std::abs(hum->GetMoveDir().y) > FLT_EPSILON) {
|
||||||
hum->on_move_collision =
|
hum->on_move_collision =
|
||||||
|
@ -153,6 +153,9 @@ void HeroAI::UpdateAttack()
|
|||||||
ChangeToStateAI(HSE_Thinking);
|
ChangeToStateAI(HSE_Thinking);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (myself->HasBuffEffect(kBET_Vertigo)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
float distance = myself->GetPos().Distance(node_.target.Get()->GetPos());
|
float distance = myself->GetPos().Distance(node_.target.Get()->GetPos());
|
||||||
if (distance > GetAttackRange()) {
|
if (distance > GetAttackRange()) {
|
||||||
if (ai_meta->i->pursuit_radius() <= 0) {
|
if (ai_meta->i->pursuit_radius() <= 0) {
|
||||||
@ -236,6 +239,9 @@ void HeroAI::UpdateFollowMaster()
|
|||||||
void HeroAI::DoMoveAI()
|
void HeroAI::DoMoveAI()
|
||||||
{
|
{
|
||||||
Hero* hero = (Hero*)owner;
|
Hero* hero = (Hero*)owner;
|
||||||
|
if (hero->HasBuffEffect(kBET_Vertigo)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (std::abs(hero->GetMoveDir().x) > FLT_EPSILON ||
|
if (std::abs(hero->GetMoveDir().x) > FLT_EPSILON ||
|
||||||
std::abs(hero->GetMoveDir().y) > FLT_EPSILON) {
|
std::abs(hero->GetMoveDir().y) > FLT_EPSILON) {
|
||||||
auto old_on_move_collision_func = hero->on_move_collision;
|
auto old_on_move_collision_func = hero->on_move_collision;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user