Код взят из ф-ии fnLoadLevel()
Раньше было так:
...............................
cube.cubes = New cubes
cube\obj = CopyEntity(scub)
EntityAlpha cube\obj,0.5
;ставим куда надо
PositionEntity cube\obj,x*width1+5,5,-z*depth1-5
EntityType scub,typecube
...............................
cube.cubes = New cubes
cube\obj = CopyEntity(scub2)
;ставим куда надо
PositionEntity cube\obj,x*width2+5,5,-z*depth2-5
EntityType scub2,typecube2
...............................
А должно быть так:
...............................
cube.cubes = New cubes
cube\obj = CopyEntity(scub)
EntityAlpha cube\obj,0.5
;ставим куда надо
PositionEntity cube\obj,x*width1+5,5,-z*depth1-5
EntityType cube\obj,typecube
...............................
cube.cubes = New cubes
cube\obj = CopyEntity(scub2)
;ставим куда надо
PositionEntity cube\obj,x*width2+5,5,-z*depth2-5
EntityType cube\obj,typecube2
...............................
Обратите внимание (сравните) на строчки, начинающиеся с
EntityType в старом коде и в новом...
Сделал противников 2го типа, но они дерганые какие-то получились.
Устранить дерганье можно так: сделать два "пикера" - это два пивота, которые располижить соотв. у правого и левого краёв объекта-противника в качестве его детей, и делать
EntityPick не для самого объекта, а для этих пикеров. Если противник "захотел" повернуться в сторону, то поворачивать его
только в том случае, когда оба пикера вернули НОЛЬ.
Я пробовал сделать одного пикера - не получил того, что хотел (надеюсь что потому, что делал неправильно). Поэтому выкладываю код с дерганными "чертями".
ПС:
1 - сделать противника 1го типа
2 - сделать противника 2го типа
Выкладываю ВСЕ ресурсы игры.
ППС: делаю исходник ЕЩЕ и в формате *.txt, потому что в редакторе кода он в непонятной кодировке (Юникод может?), и русские буквы у вас могут стать корявками (при копировании сюда, в форум, так и происходит).