Здравствуйте, После того как я увидел много вопросов о том как создать свой собственый НПС, с решил создать гайд!
Что нам нужно :
Программа для редактирования.lua
Databaseaccess
Brain.exe (Примечание: Если вы не можете найти его. Откажитесь)
Часть 1: База данных
Ну, я знаю, что это неправильное начало, но я сказал раньше: Это не Copy'n'Paste-Тута. Первый все поиски инвалидов NPC (SELECT * FROM npcresource где local_flag НЕ '0 ') Здесь вы должны отредактировать х, у, contact_script и local_flag. X и Y должны быть четкими, local_flag, тоже. Если вы не знаете, что вам придется заменить здесь, сдаваться. : 3 Сейчас contact_script: . Подумайте о добром имени, для нашего примера мы возьмем "NPC_DarknessFight" Здесь у вас есть, чтобы вставить "NPC_DarknessFight ()" - "(" & ")" очень важны!
Часть 2: Lua-Files
сейчас у вас есть выбор: использовать существующие Lua, или создать новый.. Если вы хотите создать новый, вы должны поставить это в самом начале:
function get_module_name() return "DESCRIPTION" -- Example: -- return "DarknessFight" end
Теперь мы собираемся создать дисплей для NPC. Прежде всего, вы должны помнить, Databasename, в данном случае "NPC_DarknessFight". Это будет нашим началом
-- Initalize Script function get_module_name() return "DarknessFight" end -- Start NPC function NPC_DarknessFight() -- ( & ), again important, else it wont work! -- ToDo: Function end
Теперь у нас есть пустой НПС.
Но мы хотим, чтобы при нажатии были разные разделы?
dlg_title( "ktsrz.ru" ) dlg_text( "Hello, nice to meet you." ) dlg_menu( "Menu 1", 'open_market("lalalalala")' ) dlg_menu( "Uhuh, close this shit! :D", '' )
Таким образом, полный код будет таким:
-- Initalize Script function get_module_name() return "DarknessFight" end -- Start NPC function NPC_DarknessFight() -- ( & ), again important, else it wont work! dlg_title( "ktsrz.ru" ) dlg_text( "Hello, nice to meet you." ) dlg_menu( "Menu", 'open_market("lalalalala")' ) dlg_menu( "Uhuh, close this shit! :D", '' ) end
Теперь у вас появилась новая NPC.
Если вы хотите добавить пользовательские функции, такие как добавление шопа или вставки элемента, то вы должны написать новую функцию
function test_function() warp(99999, 99999) -- This will warp you into CV end
Вы можете использовать это с небольшими изменениями:
dlg_menu( "Menu", 'test_function()' )