Derian Fox Опубликовано 21 июня, 2006 Жалоба Поделиться Опубликовано 21 июня, 2006 Нужна помощь! Я делаю очень интересное дополнение. Оно почти готово, но есть одна проблема! Основной скрипт я написал ,а со вторым слегка притормозил.Не знаю, возможно, это сделать? Нужно сделать скрипт ,который будет прикреплён к NPS. Делать он должен следущее: Во первых выводилось окно с кнопкой купить, а во вторых при её нажатии деньги игрока переходили к персонажу, а игрок получал какую-нибудь вещь от персонажа, к примеру книгу. (Что-то вроде обмена вещами).Подскажите как это сделать!!! :1anim_al: Ссылка на комментарий Поделиться на другие сайты Поделиться
GromDron Опубликовано 21 июня, 2006 Жалоба Поделиться Опубликовано 21 июня, 2006 тут вроде ненужен скрипт поставь нпс скажи и он будет торговце нажми на Book дай цену этой книге и помести ее торговцу или 2 вариант через диалог Ссылка на комментарий Поделиться на другие сайты Поделиться
Derian Fox Опубликовано 21 июня, 2006 Автор Жалоба Поделиться Опубликовано 21 июня, 2006 Это мне понятно.Всё сложней!Это не торговец!Фишка в том, что обязательно нужно,чтобы персонаж менял книгу на определённую сумму денег через меню с кнопкой "Купить". Такой вид меню используется к примеру, когда пытаешся отдохнуть в кровати.Это очень важно для моего дополнения! Ссылка на комментарий Поделиться на другие сайты Поделиться
GromDron Опубликовано 21 июня, 2006 Жалоба Поделиться Опубликовано 21 июня, 2006 Скрипт на кровать содержет специальное меню которое Bethesda сделала для того чтобы спать или отдыхать. а если ты хочешь через скрипт то укажи сколько денег он должен отбирать Вот скрипт только он лишает НПС возможности говорить begin gromdron_kupit_script short hot if ( OnActivate == 1 ) if ( hot == 0 ) MessageBox "Вы хотите купить [название предмета]", "Да", "Нет" set hot to 1 endifendifif ( hot == 1 ) set button to GetButtonPressed if ( button == -1 ) return elseif ( button == 0 ) player->removeitem "gold_100" [количество золота в сотнях без рамок] player-> additem "предмет" " количество" ;количество безковычек предмет в ковычках Set hot to 2 else MessageBox "Как хотите." set hot to 0 endif endif endifendifend Ссылка на комментарий Поделиться на другие сайты Поделиться
Derian Fox Опубликовано 21 июня, 2006 Автор Жалоба Поделиться Опубликовано 21 июня, 2006 Это я и хотел!Мне и не нужно, чтобы он говорил!Обязательно попробую этот скрипт.Заранее спасибо! Ссылка на комментарий Поделиться на другие сайты Поделиться
Derian Fox Опубликовано 21 июня, 2006 Автор Жалоба Поделиться Опубликовано 21 июня, 2006 Есть ещё проблема! Скрипт я проверил, подбавил строку short button, так как скрипт выводил фатальную ошибку.Всё работает кроме одного: При нажатии "Да" персонаж отдаёт мне нужный товар, но вот неувязочка - у меня не отбавляется сумма денег за товар!!! Ссылка на комментарий Поделиться на другие сайты Поделиться
LonWolf Опубликовано 21 июня, 2006 Жалоба Поделиться Опубликовано 21 июня, 2006 у меня не отбавляется сумма денег за товар!!!Вместо Gold_100 ставь Gold_001 и кол-во. Ссылка на комментарий Поделиться на другие сайты Поделиться
Siegrun Опубликовано 21 июня, 2006 Жалоба Поделиться Опубликовано 21 июня, 2006 а ты перед тем как тестить, консолью себе денег не добавлял? там бывает глюк, что после етого добавления у тебя деньги вообще перестают тратится и ты всю игру пытаешься от них отделаться.иногда внушительные суммы плохо проходят. да и писать их надо не 230 десятков (23 000 например) а 23Кпопробуй так записать. Ссылка на комментарий Поделиться на другие сайты Поделиться
GromDron Опубликовано 21 июня, 2006 Жалоба Поделиться Опубликовано 21 июня, 2006 LonWolf сказал: у меня не отбавляется сумма денег за товар!!!Вместо Gold_100 ставь Gold_001 и кол-во. можно и так я через свой плагин пробовал работает отбирает добовляет. Ссылка на комментарий Поделиться на другие сайты Поделиться
Derian Fox Опубликовано 23 июня, 2006 Автор Жалоба Поделиться Опубликовано 23 июня, 2006 Поставил вместо Gold_100 - Gold_001.Всё очень хорошо работает! :1anim_ar: Я слышал, что есть функция, которая позволяет запускать режим диалога персонажа.Что-то вроде: "Делаем скрипт с кнопкой <Диалог>, и при её нажатии переходим в режим диалога с нужным персонажем, указанным в скрипте.".Если кто знает, то подскажите! Ссылка на комментарий Поделиться на другие сайты Поделиться
LonWolf Опубликовано 23 июня, 2006 Жалоба Поделиться Опубликовано 23 июня, 2006 Буде я правильно тебя понял, это функция ForceGreeting. Вставляешь ее где надо и нужный непись в нужное время сам с тобой заговорит. Делаем скрипт с кнопкой <Диалог>, и при её нажатии переходим в режим диалога с нужным персонажем, указанным в скрипте.".Если кто знает, то подскажите!Вот это, к примеру, можно повесить на кольцо:Begin LW_dialog Short button Short OnPCEquip Short state if ( OnPCEquip == 1 ) Set state to 1 Set OnPCEquip to 0 endif if ( state == 1 ) MessageBox "Начать диалог?" "Да" "Нет" Set state to 2 elseif ( state == 2 ) Set button to GetButtonPressed if ( button == -1 ) return elseif ( button == 0 ) "NPC" -> ForceGreeting Set state to 0 else Set state to 0 endif endif EndВместо "NPC" ставим ID нужного непися. Ссылка на комментарий Поделиться на другие сайты Поделиться
UraXa Опубликовано 29 июня, 2006 Жалоба Поделиться Опубликовано 29 июня, 2006 Зачем Stat-ы? Зачем лишнии переменные? не пойму. А так всё верно, вроде..., за исключением на верное строкиelseif ( state == 2 ), ведь условие уже верно, хотя... Заработает, в следущем фрейме... Ссылка на комментарий Поделиться на другие сайты Поделиться
Derian Fox Опубликовано 1 июля, 2006 Автор Жалоба Поделиться Опубликовано 1 июля, 2006 Никак не пойму, для чего служит функция "short Nolore". Я часто встречаю эту функцию в диалогах.Пожалуйста объясните! :1anim_al: Ссылка на комментарий Поделиться на другие сайты Поделиться
Майк Опубликовано 1 июля, 2006 Жалоба Поделиться Опубликовано 1 июля, 2006 это чтоб у непися были диалоги только в которых прописан его ID, все остальные диалоги, если выставлен этот скрипт, - городские, фракции к которой принадлежит, слухи местности - они все будут игнорироватся и не будут отображатся Ссылка на комментарий Поделиться на другие сайты Поделиться
Derian Fox Опубликовано 1 июля, 2006 Автор Жалоба Поделиться Опубликовано 1 июля, 2006 Теперь мне ясно, почему в диалогах стоит Nolore.Спасибо!!! :1anim_ar: Ссылка на комментарий Поделиться на другие сайты Поделиться
UraXa Опубликовано 4 июля, 2006 Жалоба Поделиться Опубликовано 4 июля, 2006 Майк сказал: это чтоб у непися были диалоги только в которых прописан его ID, все остальные диалоги, если выставлен этот скрипт, - городские, фракции к которой принадлежит, слухи местности - они все будут игнорироватся и не будут отображатсяНемного неверно. Не будут отображатся диалоги в которых снизу прописано что-то типа NotLocal NoLore.Некоторые модмейкеры об этом не задумываются(ну как и я когда-то ). Ссылка на комментарий Поделиться на другие сайты Поделиться
LonWolf Опубликовано 6 июля, 2006 Жалоба Поделиться Опубликовано 6 июля, 2006 Зачем Stat-ы? Зачем лишнии переменные? не пойму. А так всё верно, вроде..., за исключением на верное строкиelseif ( state == 2 ), ведь условие уже верно, хотя... Заработает, в следущем фрейме...лишние? о великий гуру напиши мне тот же самый скрипт без этих Stat-ов и заставь его работать тогда так и быть я уйду на пенсию и перестану давать свои глупые наставления. Ссылка на комментарий Поделиться на другие сайты Поделиться
UraXa Опубликовано 6 июля, 2006 Жалоба Поделиться Опубликовано 6 июля, 2006 Begin LW_dialog Short button Short OnPCEquip if ( OnPCEquip == 0 ) return endif MessageBox "Начать диалог?" "Да" "Нет" Set button to GetButtonPressed if ( button == -1 ) return elseif ( button == 0 ) "NPC" -> ForceGreeting else return endif endif End так тоже должно заработать... Ссылка на комментарий Поделиться на другие сайты Поделиться
LonWolf Опубликовано 6 июля, 2006 Жалоба Поделиться Опубликовано 6 июля, 2006 ниужели? :laugh: надо полагать ты и проверить уже успел? А я вот не поленился. Мораль: не учи бабушку кашлять. и закончим на сей пафосной ноте флуд. Ссылка на комментарий Поделиться на другие сайты Поделиться
Derian Fox Опубликовано 11 июля, 2006 Автор Жалоба Поделиться Опубликовано 11 июля, 2006 Создал я нового непися, написал скрипт, всё хорошо, только этот непись должен стоять на месте, а он ходит! Может что-то в скрипте прописать, чтоб он стоял? Ссылка на комментарий Поделиться на другие сайты Поделиться
Ворон Опубликовано 11 июля, 2006 Жалоба Поделиться Опубликовано 11 июля, 2006 В КС выбери непися, и нажми внизу основого меню кнопку AI и там выдели надпись Wander и нажми DEL )))) Ссылка на комментарий Поделиться на другие сайты Поделиться
Derian Fox Опубликовано 11 июля, 2006 Автор Жалоба Поделиться Опубликовано 11 июля, 2006 Хорошо, я попробую! Заранее спасибо! Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти