Перейти к содержанию

Нужна помощь со скриптом


Рекомендуемые сообщения

Нужна помощь! Я делаю очень интересное дополнение. Оно почти готово, но есть одна проблема! Основной скрипт я написал ,а со вторым слегка притормозил.

Не знаю, возможно, это сделать? Нужно сделать скрипт ,который будет прикреплён к NPS. Делать он должен следущее: Во первых выводилось окно с кнопкой купить, а во вторых при её нажатии деньги игрока переходили к персонажу, а игрок получал какую-нибудь вещь от персонажа, к примеру книгу. (Что-то вроде обмена вещами).Подскажите как это сделать!!! :1anim_al:

Ссылка на комментарий
Поделиться на другие сайты

тут вроде ненужен скрипт поставь нпс скажи и он будет торговце нажми на Book дай цену этой книге и помести ее торговцу

 

или 2 вариант через диалог

Ссылка на комментарий
Поделиться на другие сайты

Это мне понятно.Всё сложней!Это не торговец!Фишка в том, что обязательно нужно,чтобы персонаж менял книгу на определённую сумму денег через меню с кнопкой "Купить". Такой вид меню используется к примеру, когда пытаешся отдохнуть в кровати.Это очень важно для моего дополнения!
Ссылка на комментарий
Поделиться на другие сайты

Скрипт на кровать содержет специальное меню которое Bethesda сделала для того чтобы спать или отдыхать. а если ты хочешь через скрипт то укажи сколько денег он должен отбирать

 

Вот скрипт только он лишает НПС возможности говорить

 

begin gromdron_kupit_script

 

short hot

 

if ( OnActivate == 1 )

if ( hot == 0 )

MessageBox "Вы хотите купить [название предмета]", "Да", "Нет"

set hot to 1

endif

endif

if ( 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

endif

endif

end

Ссылка на комментарий
Поделиться на другие сайты

Есть ещё проблема! Скрипт я проверил, подбавил строку short button, так как скрипт выводил фатальную ошибку.Всё работает кроме одного: При нажатии "Да" персонаж отдаёт мне нужный товар, но вот неувязочка - у меня не отбавляется сумма денег за товар!!!
Ссылка на комментарий
Поделиться на другие сайты

а ты перед тем как тестить, консолью себе денег не добавлял? там бывает глюк, что после етого добавления у тебя деньги вообще перестают тратится и ты всю игру пытаешься от них отделаться.

иногда внушительные суммы плохо проходят. да и писать их надо не 230 десятков (23 000 например) а 23К

попробуй так записать.

Ссылка на комментарий
Поделиться на другие сайты

у меня не отбавляется сумма денег за товар!!!

Вместо Gold_100 ставь Gold_001 и кол-во.

 

 

можно и так я через свой плагин пробовал работает отбирает добовляет.

Ссылка на комментарий
Поделиться на другие сайты

Поставил вместо Gold_100 - Gold_001.Всё очень хорошо работает! :1anim_ar:

Я слышал, что есть функция, которая позволяет запускать режим диалога персонажа.Что-то вроде: "Делаем скрипт с кнопкой <Диалог>, и при её нажатии переходим в режим диалога с нужным персонажем, указанным в скрипте.".Если кто знает, то подскажите!

Ссылка на комментарий
Поделиться на другие сайты

Буде я правильно тебя понял, это функция 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 нужного непися.

Ссылка на комментарий
Поделиться на другие сайты

Зачем Stat-ы? Зачем лишнии переменные? не пойму. А так всё верно, вроде..., за исключением на верное строки

elseif ( state == 2 ), ведь условие уже верно, хотя... Заработает, в следущем фрейме...

Ссылка на комментарий
Поделиться на другие сайты

это чтоб у непися были диалоги только в которых прописан его ID, все остальные диалоги, если выставлен этот скрипт, - городские, фракции к которой принадлежит, слухи местности - они все будут игнорироватся и не будут отображатся
Ссылка на комментарий
Поделиться на другие сайты

это чтоб у непися были диалоги только в которых прописан его ID, все остальные диалоги, если выставлен этот скрипт, - городские, фракции к которой принадлежит, слухи местности - они все будут игнорироватся и не будут отображатся

Немного неверно. Не будут отображатся диалоги в которых снизу прописано что-то типа NotLocal NoLore.

Некоторые модмейкеры об этом не задумываются(ну как и я когда-то ).

Ссылка на комментарий
Поделиться на другие сайты

Зачем Stat-ы? Зачем лишнии переменные? не пойму. А так всё верно, вроде..., за исключением на верное строки

elseif ( state == 2 ), ведь условие уже верно, хотя... Заработает, в следущем фрейме...

лишние? о великий гуру напиши мне тот же самый скрипт без этих Stat-ов и заставь его работать тогда так и быть я уйду на пенсию и перестану давать свои глупые наставления.

Ссылка на комментарий
Поделиться на другие сайты

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

 

так тоже должно заработать...

Ссылка на комментарий
Поделиться на другие сайты

ниужели? :laugh: надо полагать ты и проверить уже успел? А я вот не поленился.

 

Мораль: не учи бабушку кашлять. и закончим на сей пафосной ноте флуд.

Ссылка на комментарий
Поделиться на другие сайты

Создал я нового непися, написал скрипт, всё хорошо, только этот непись должен стоять на месте, а он ходит! Может что-то в скрипте прописать, чтоб он стоял?
Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...