ща буду провоидить воспитательные работы.
вот твоя функция:
Function Update_Unit();
speed#=-1
For obj.unit=Each unit
If Not obj\go Then Return
If Not obj\status Then Return ;)
PointToEntity(obj\ent,obj\piv);
MoveEntity obj\ent,0,0,speed#
If EntityDistance(obj\ent,obj\piv)<6 Then obj\go=False
Next
End Function
Function PointToEntity( src, dest)
RotateEntity src,0,DeltaYaw#(dest,src),0
End Function
вот моя (ну всмычле исправленная):
Function Update_Unit();
speed#=-1
For obj.unit=Each unit
;If Not obj\status Then Return ;)
If obj\go
PointToEntity(obj\ent,obj\piv);
MoveEntity obj\ent,0,0,speed#
If EntityDistance(obj\ent,obj\piv)<6 Then obj\go=False
EndIf
Next
End Function
команда return ПРЕРЫВАЕТ выполнение функции. поэтому неудивительно что идет токо первый юнит. или несколько первых, т.е. подпрограмка работает до первого return. запомни.