И опять же как , да есть !!! Когда переходит границу дистанции 5-ти , то как бешенный кролик влево в право и всё . Выходит за границы 5-ти хорошо анимируется ходьбой. Хр#новина какая та.
Вот код создания и апдейта бота. (наш бот - model.На остальное не обращайте внимания.)
Function create_bot(x#,y#,z#)
b.bot=New bot
b\model=LoadAnimMesh ("Data\Bots\Zombie.b3d")
b\animrun=LoadAnimSeq (b\model,"Data\Bots\run.b3d")
b\animattack=LoadAnimSeq (b\model,"Data\Bots\attack.b3d")
Animate b\model,1,Rnd (0.4,1.
,b\animrun
ScaleEntity b\model,0.05,0.05,0.05
PositionEntity b\model,x#,y#,z#
;RotateEntity b\model,0,-180,0
b\entity=CreateSphere(32,b\model)
ScaleEntity b\entity,15,30,10
;PositionEntity b\entity,x#,y#,z#
MoveEntity b\entity,-3,40,-5
EntityAlpha b\entity,0
EntityPickMode b\entity,2
b\life=10
Return True
End Function
Function update_bot()
v#=Rnd (0.01,0.07)
For a.bot=Each bot
TurnEntity a\model,0,Sgn(DeltaYaw(a\model,player))*-0.9,0
MoveEntity a\model,0,0,-v#
;AI
dist#=EntityDistance (a\model,player)
If dist < 5 Then
If AnimSeq (a\model)<>a\animattack
Animate a\model,3,1,a\animattack,2
Else
If AnimSeq (a\model) <> a\animrun
Animate a\model,3,1,a\animrun,1
EndIf
EndIf
EndIf
;EndAI
Next
End Function