Показать сообщение отдельно
Старый 11.01.2008, 23:43   #5
H@NON
Дэвелопер
 
Регистрация: 17.01.2007
Сообщений: 1,552
Написано 351 полезных сообщений
(для 774 пользователей)
Ответ: управление в RPG

Это делается очень просто. Объясняю. Для начала присвоим террейну по которому мы хотим ходить мод 2 EntityPickMode terrain, 2 и еще обозначим нашему террейну имя, чтобы мы смогли его отличить от остальных, при пике NameEntity terrain, "terrain". Терь мы сможем находить пики по полигонно. Далее найдем нашу конечную точку пути. Делается так:
If mousehit(1) then ent = CameraPick(camera, Mousex(), Mousey())
Это пишеться в главный цикл, перед командой упдейтВорлд. теперь переменая ent нам возратит пикнутый энити, либо если мы никуда не попали, то 0. Далее будем делать условие: если мы попали куда-либо и если мы попали именно в террейн, то ставим наш указатель( это будет просто объект, к которому мы потом заставим перемещаться персонажа ) в точку пика.
If ent<> 0 then
  pickname$ = EntityName(ent)
  If pickname$="terrain" then
    PositionEntity pointer, PickedX(), pickedY(), pickedz()
  Endif
Endif
Вот и почти все. Нам осталось передвинуть нашего перса к пункту его назначения(pointer).
If entityDistance(player, pointer) <=1 then 
PointEntity player, pointer
moveentity player, 0, 0, 1
ЗЫ ниручаюсь что все сделал правильно, ибо спать хочеться, и время поджимает, так что ошибки исправте сами
(Offline)
 
Ответить с цитированием