DSD3mon Опубликовано 3 апреля, 2006 Жалоба Поделиться Опубликовано 3 апреля, 2006 Здраствуйте. У меня есть небольшой вопрос. Как известно неписи Ходят за плеером, только в екстерьере, или в одном из интерьеров (во всяком случае я так думаю :) ) Я хотел написать скрипт для того, чтобы Неписи всюду телепортировали за игроком, когда тот отдаляется от них, припустим, на 400 ед. Но у меня создалась одна проблема. Скажите, пожалуста, какая функция укказывает на ячейку, где находится игрок?Смотрел в МSFD8, Но там есть только GetPCCell, "Cell_Id", для определения, сидит ли плеер в ячейке Cell_Id. Но для определения ячейки нет ничего. Мож поможете... Спасиба заранее Ссылка на комментарий Поделиться на другие сайты Поделиться
LofZ Опубликовано 6 апреля, 2006 Жалоба Поделиться Опубликовано 6 апреля, 2006 Как известно неписи Ходят за плеером, только в екстерьере, или в одном из интерьеров (во всяком случае я так думаю :) )А разве они ходят в зависимости от типа ячейки? телепортировали за игроком,Ой, я в этом еще мало что понимаю, но, кажется, дело не в ячейке. Это функция PlaceAtPC (телепортироваться на место персонажа). Ссылка на комментарий Поделиться на другие сайты Поделиться
DSD3mon Опубликовано 6 апреля, 2006 Автор Жалоба Поделиться Опубликовано 6 апреля, 2006 А разве они ходят в зависимости от типа ячейки?Нет, Но они не телепортируют за игроком, когда тот, припустим заходит в комнату, или едет на кораблике или силт страйдере. Это функция PlaceAtPC (телепортироваться на место персонажа). Блин, это ж идея, почему я сам не догадался :bang: Ссылка на комментарий Поделиться на другие сайты Поделиться
DSD3mon Опубликовано 6 апреля, 2006 Автор Жалоба Поделиться Опубликовано 6 апреля, 2006 Несколько проблем возникают. То непись копируется, то внезапно перестает за мной идти. Нащет того, что копируется (очень редко так делает), я понимаю, что это тогда, когда отходиш от него на 4000 едениц длины, но можно как-то его дописать, чтоб удаляло то, с чего сдублировало? begin teleport_NPC ; Скрипт ложится на непися Short go_after_the_player; Глобальная переменная которая возвращает 1, когда непись соглашается ; идти за игроком, а 0, когда игрок приказывает стоять. Ставится в диалогах. short script_is_started if ( go_after_the_player == 1 ) if ( script_is_started == 0 ) StartScript, "teleport_NPC_Global"; Скрипт, который говорит телепортировать неписю set script_is_started to 1 endif elseif ( go_after_the_player == 0 ) stopScript, "teleport_NPC_Global" set script_is_started to 0 endif end И teleport_NPC_Global: begin teleport_NPC_Global ; Глобальный скрипт Short start Float dist If ( Menumode == 1 ) return endif if ( start == 0 ) set dist to GetDistance, player if ( dist > 4000 ) set start to 1 else return endif if (CellChanged == 1) if ( getinterior == 1 ) set start to 1 endif else return endif elseif ( start == 1 ) PlaceAtPC "ID непися" 1,100,2 set start to 0 endif endИ вобще, я только начинающий, так что помогите мне пожалуста... Ссылка на комментарий Поделиться на другие сайты Поделиться
kovboi Опубликовано 1 мая, 2006 Жалоба Поделиться Опубликовано 1 мая, 2006 Если непись еще и вещами с тобой делится то не советую изпользовать placeatpc эта функция создает копию нпс.А вот чтоб телепортнуть его когда он в одном интерьере или просто далеко от тебя в экстерьере то попробуй так. Если на твоем неписе уже есть какойто скрипт то можно спокойно вставить этот скрипт в него. begin myscript short pxshort pyshort pz set px to ( player->togetpos, x )set py to ( player->togetpos, y )set pz to ( player->togetpos, z ) if ( getdistance, "player" > 4000 ) setpos, x, px setpos, y, py setpos, z, pzendif end Ссылка на комментарий Поделиться на другие сайты Поделиться
DSD3mon Опубликовано 19 мая, 2006 Автор Жалоба Поделиться Опубликовано 19 мая, 2006 kovboi, какраз в этом и проблема, чтобы между разными интерьеровскими ячейками телепортироватся Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти