Пользователей: 1
Гостей: 499
Всего: 500

» Подробно
» Сегодня

Привет, Гость!

» Добавить в избранное

» Сделать стартовой

Главная
Форум
Обзор игры
Мир Зоны
Файлы
Галерея
Разное





Форумы > Архив > Свалка > Как сделать свой мод? (по 08.10.09)

Страница 45 из 56Первая«42434445464748 »Последняя

 
Автор Сообщение
erlik
[10] Житель
    
0
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
03-10-2009 13:12 GMT3 часа #1051805    
Чит-меню по смене группировок
ссылка
Можно вступить в почти во все, кроме:
экологов - а нафиг надо
сталкеров - аналогично.
Недоработки:
кнопка "выход" - не работает, но она и не нужна - выход из меню esc
Ноутбук для открытия меню покупаете у Сидора - файл иконок (мой личный с иконками из симбиона) в геймдате есть.

ЗЫ: враги не всегда становятся не враждебны, даже если вы в их группировке - смену коммьюнити лучше делать заранее, а не в гуще врага, у NPC есть такие параметры как время забывания обиды, время забывания врага, денжера (плюс еще какие то коэффициенты симпатий) - так что если вы сменили группировку, а в вас еще стреляют, надо отойти подальше и подождать, а потом вернуться.

white_wind93
Понятно. А то я размер кнопок так и не смог поменять - так что границы текста не совпадают с рамками кнопок. А фотошопа на компе щас нет. Но это не столь важно.
А вот размер рамки меню поменял.
Правда размер активного поля меню - чтобы работали все кнопки, так и не понял как правильно менять.
Там в скрипте интерфейса нужно как то это высчитывать - чисто подбором цифр получилось сделать активными все 9 кнопок, кроме Exit. С этим делом надо будет еще разбираться.

Struck
вот про это дело мне бы и надо пояснений - про координаты позиции меню (как его правильно двигать вверх-вниз, вправо-влево экрана), и как задавать нужный размер активного поля меню.

Сам скрипт по созданию интерфейса типовой - его легко переделывать под свои нужды (но много возни много с xml секцией сам два часа возился чтобы добавить еще три кнопки).
Посмотришь - думаю поймешь. Непонятное - поясню.

Насчет спальника - ты не хочешь вытаскивать амкашный таймер, для активации сна? Можно свой попробовать таймер сделать - правда амкашный он универсальный, чем и удобен.

Сообщение было успешно отредактировано erlik (03-10-2009 13:12 GMT3 часа, назад)

Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
Struck
[7] Выживший
    
0
Посты: 1946
Откуда:
Возраст:
03-10-2009 09:55 GMT3 часа #1051853    
Так, вот что я не понял, это скрипт ui_set_pult

function ui_set_pult:InitCallBacks()
function ui_set_pult:OnKeyboard(dik, keyboard_action)
function ui_set_pult:set_pult_1-9()


Снова в строю.

l
erlik
[10] Житель
    
0
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
03-10-2009 13:05 GMT3 часа #1051896    
Struck

function ui_set_pult:InitCallBacks()
эта функция инициирует колбеки - обратные вызовы на нажатие кнопок меню, которые мы чуть выше зарегистрировали в предыдущей функции - подробнее не поясню так как с колбеками еще не разобрался. там задается скриптовое имя кнопки, которое потом нам понадобится.

function ui_set_pult:OnKeyboard(dik, keyboard_action)
эта функция вешает выполнение скрипта на клавиши клавиатуры - у меня там на клавиши нумпада - 1-9, делать необязательно - это просто дубляж для быстрого выполнения скрипта без открытия меню - тут ошибся - меню все равно открывать надо, чтобы они стали активны.

function ui_set_pult:set_pult_1-9()
эти функции как бы передаточное звено - они уже непосредственно активируют повешенный на кнопку скрипт - в имени функции пишется имя созданного нами класса ui_set_pult и дальше после : имя кнопки
а в теле функции - имя_файла.имя исполняемого скрипта - тут я думаю все понятно.
так же туда можно добавить имя кнопки "выход" - что бы после активации нужной нами кнопки - меню автоматом закрывалось.

Сообщение было успешно отредактировано erlik (03-10-2009 13:05 GMT3 часа, назад)

Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
[H.O.Y]
[1] Странник
    
0
Посты: 158
Откуда: Москва
Возраст:
03-10-2009 14:56 GMT3 часа #1052077    
Привет всем я в свой мод уже локацию рыжий лес сделал кто нить может объяснить как переходы сделать ? Но тока через алспавн. И еще подскажите пожалуйста с логикой чтобы нпс на машинах ездили но не все а определенная группа допустим военные я знаю что это надо через custom data но как именно?


BOGGAD
[1] Странник
    
0
Посты: 83
Откуда: Старый Оскол
Возраст: 29
03-10-2009 15:08 GMT3 часа #1052087    
кто знает как менять ассортимент сидора?


Struck
[7] Выживший
    
0
Посты: 1946
Откуда:
Возраст:
03-10-2009 15:09 GMT3 часа #1052090    
BOGGAD ыыы, trade_trader.ltx в миске юзай)


Снова в строю.

l
KaZuYa
[1] Странник
    
0
Посты: 33
Откуда: чернобыль
Возраст: 33
03-10-2009 15:14 GMT3 часа #1052094    
BOGGAD
заходив gamedata/config/misc/trade_trader.ltx
;NO TRADE меняй на 10,10
и все у меня пошло


подарите балов
S.н.а.й.п.е.р.
[3] Новобранец
    
0
Посты: 316
Откуда: Рязань
Возраст: 29
03-10-2009 15:19 GMT3 часа #1052101    
Какие программы нужны для создания полноценной локации?


Хорошо смеется тот , кто стреляет первым.

S.T.A.L.K.E.R. 1st mini-mod вышел=) скачать в журнале.

Моя первая моделька ПМ в журнале=)
BOGGAD
[1] Странник
    
0
Посты: 83
Откуда: Старый Оскол
Возраст: 29
03-10-2009 15:24 GMT3 часа #1052107    
erlik ща твой пульт проверил! мне понравилось! супер!! не подскажешь, какой скрипт надо повесить на "Свободную кнопку", чтоб стать торгашом и было --- денег? и возможно ли такое вообще? (я просто в скриптах ваще никак не шарю)


KaZuYa
[1] Странник
    
0
Посты: 33
Откуда: чернобыль
Возраст: 33
03-10-2009 15:29 GMT3 часа #1052112    
BOGGAD
чтобы торговцом ста пропиши в character_desc_general.xml
ищи эту строку
<class>actor</class>
<community>actor</community>
и там где actor меняй на trader

добавлено спустя 1 минуту

а чтобы деньги получить например вот так
Например сделать, чтобы деньги дал Волк при выдаче задания на спасение Шустрого.
Для этого в файле escape_dialog.scripts (находится в папке scripts)
добавить к строчкам
function give_weapon_to_actor (trader, actor)
dialogs.relocate_item_section(trader, "wpn_pm", "in")
dialogs.relocate_item_section(trader, "ammo_9x18_fmj", "in")
dialogs.relocate_item_section(trader, "ammo_9x18_fmj", "in")
dialogs.relocate_item_section(trader, "wpn_knife", "in")
еще вот такую строчку
dialogs.relocate_money(trader, 1000000, "in")


И вот у тебя вожделенный миллион!

Сообщение было успешно отредактировано KaZuYa (03-10-2009 15:29 GMT3 часа, назад)

подарите балов
BOGGAD
[1] Странник
    
0
Посты: 83
Откуда: Старый Оскол
Возраст: 29
03-10-2009 15:30 GMT3 часа #1052116    
спасибо. ане знаешь надо новую игру начинать?


Николай ФеНиКс
[10] Житель
    
0
Посты: 1493
Откуда: От Туда!
Возраст: 29
03-10-2009 15:31 GMT3 часа #1052121    
Как сделать скрипт на пост эффект попадания в ГГ.?
дайте хотя бы "фундамент."
И ещё возможно как-нибудь расширить видео в меню??? (Которое на заднем плане.)


KaZuYa
[1] Странник
    
0
Посты: 33
Откуда: чернобыль
Возраст: 33
03-10-2009 15:35 GMT3 часа #1052122    
надо начинать новую игру а то не пойдет

добавлено спустя 2 минут

Николай ФеНиКс

добавлено спустя 1 минуту

помагите мне как сделать чтобы в лагере новичков был новый торговец

Сообщение было успешно отредактировано KaZuYa (03-10-2009 15:35 GMT3 часа, назад)

подарите балов
Николай ФеНиКс
[10] Житель
    
0
Посты: 1493
Откуда: От Туда!
Возраст: 29
03-10-2009 15:46 GMT3 часа #1052140    
расширить я в том плане что сделать его на весь экран.


KaZuYa
[1] Странник
    
0
Посты: 33
Откуда: чернобыль
Возраст: 33
03-10-2009 15:48 GMT3 часа #1052145    
незнаю у меня и так на весь экран


подарите балов
BOGGAD
[1] Странник
    
0
Посты: 83
Откуда: Старый Оскол
Возраст: 29
03-10-2009 15:52 GMT3 часа #1052148    
на основе сидора или совершенно новый?

добавлено спустя 2 минут

KaZuYa создать нового уникального НПС

Сообщение было успешно отредактировано BOGGAD (03-10-2009 15:52 GMT3 часа, назад)

erlik
[10] Житель
    
0
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
03-10-2009 16:02 GMT3 часа #1052162    
BOGGAD

вступление в торгаши по моему ничего не даст - это тока для сталкеров имеет значение (если им в spawn_sections написать stalker_trader, а не просто stalker) , чтобы им можно было создать свой файл торговли как у сидора и они могли торговать.

Можно иначе попробовать сделать: повесить на свободную кнопку новый скрипт.
для этого в функции function set_news() (файл set_com) убрать строчку news_manager.send_tip(db.actor, и т.д. )
и вписать это
db.actor:give_money(100000) --\ дать эктору 100 тысяч.

я правда не пробовал так - обычно это метод db.actor:give_money (дать эктору бабла) - используется через экшен в диалоге - а можно ли его использовать вот так - точно не знаю. Попробуй.
если не получится - верни строчку на место.


Кто-нить знает пример рабочего скрипта для телепортации эктора на выбранную дистанцию (а не в заданную точку)?
Я пробовал пару вариантов со смещением от позиции эктора - но оба, хоть и портируют ГГ на нужную дистанцию - но при этом эктор оказывается под землей. Почему так - не пойму.
Хочу сделать телепортатор для быстрого перемещения по локации.


Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
KaZuYa
[1] Странник
    
0
Посты: 33
Откуда: чернобыль
Возраст: 33
03-10-2009 16:17 GMT3 часа #1052167    
кароче как создать нового торговца

добавлено спустя 13 минут

отпишись

Сообщение было успешно отредактировано KaZuYa (03-10-2009 16:17 GMT3 часа, назад)

подарите балов
Николай ФеНиКс
[10] Житель
    
0
Посты: 1493
Откуда: От Туда!
Возраст: 29
03-10-2009 16:54 GMT3 часа #1052225    
erlik
СПС всё там понял.=)
Но через какой файл активируется функция(и)?


Николай ФеНиКс
[10] Житель
    
0
Посты: 1493
Откуда: От Туда!
Возраст: 29
03-10-2009 16:59 GMT3 часа #1052229    
Пацан,а ты нудный!
Создание непися и профиля
На Здоровье!

И так. Сперва мы создаём профиль непися. Например, в файле character_desc_escape.xml по адресу gamedata\config\gameplay\ Можно создать отдельный файл для наших неписей, это упрощает совмещение модов. В файле character_desc_escape.xml, в самом низу, перед тегом </xml> пишем профиль нового непися:

<specific_character id="esc_dark_stalker_voron" no_random = "1">
;важно при создании торговца, указать параметр no_random = "1"

<name>Ворон</name>
<icon>ui_npc_dark_voron</icon>
<map_icon x="0" y="0"></map_icon>
<bio>sim_stalker_novice_bio</bio>

<class>esc_dark_stalker_01</class> -- настраивает респавнер на класс персонажа для спавна разных моделей.
;т.к. мы спавним уникального непися, класс можно скопировать у любого другого непися или написать новый, уникальный класс.
<community>dark_stalker</community>
<money min="500000" max="500000" infinitive="1"></money>
;в поле денег, надо поставить бессконечные деньги - infinitive="1"
;иначе вы сможете продать неписю товаров исключительно на указанную сумму.

<rank>1000</rank>
<reputation>-553</reputation>

<visual>actors\dark_stalker\dark_stalker_voron</visual> ;ссылка на файл-модель персонажа без окончания .ogf
<snd_config>characters_voice\human_01\monolith\</snd_config>
<crouch_type>-1</crouch_type>
<panic_treshold>0</panic_treshold>
<supplies>
[spawn] \n
wpn_gauss \n
ammo_gauss \n
#include "gameplay\character_items.xml" \n
#include "gameplay\character_drugs.xml" \n
#include "gameplay\character_food.xml"
</supplies>

#include "gameplay\character_criticals_3.xml"

<start_dialog>hello_dialog_dark_stalker</start_dialog>
<actor_dialog>dm_cool_info_dialog</actor_dialog>
<actor_dialog>dm_help_wounded_medkit_dialog</actor_dialog>
<actor_dialog>join_dark</actor_dialog>
</specific_character>

Профиль создан, пара стандартных диалогов, взятых у любого другого профиля, дописать не составит труда. Я ничего не менял в своём коде. Лезем в npc_profile.xml, который находится в той же папке. Где-нить внизу делаем запись:

<character id="esc_dark_stalker_voron">
<class>esc_dark_stalker_01</class> -- настраивает респавнер на класс персонажа для спавна разных моделей.
;т.к. мы спавним уникального непися, класс можно скопировать у любого другого непися или написать новый, уникальный класс.
<specific_character>esc_dark_stalker_voron</specific_character> -- ссылка на профиль нашего непися.
</character>

[править]
Ввод в симуляцию

Непись создан. Теперь надо вводить его в симуляцию. Открываем файл gamedata\config\creatures\spawn_sections.ltx и прописываем в конце:

[esc_dark_stalker_voron]:stalker_trader - дописать суффикс торговца... хотя у меня и без него всё работало =)
$spawn = "respawn\esc_dark_stalker_voron" - опция спавна для Левел Едитора
character_profile = esc_dark_stalker_voron - профиль непися, записанный в npc_profile.xml
spec_rank = regular
community = dark_stalker - группировка

[править]
Спавн торговца через all.spawn файл

Дальше, самое нудное - спавн. Спасибо Arhet'y за пример. Используя прогу acdc от bardak'a декомпилим all.spawn, создав батник разбора спавна (без active perl толку от проги бардака нуль - просто не запустится) и в понравившемся месте делаем запись с уникальным номером. Я заспавнил на Кордоне:

[8796]
; cse_abstract properties
section_name = stalker_trader -- метка, что сталкер является торговцем
name = dark_stalker_voron -- имя любое, вроде бы; где оно используется не знаю
position = -215.67399597168,-20.403390884355,-151.03227233887 -- местоположение на игровой карте
direction = 0.0445535257458687,-0.000645029998850077,0.0144814234226942

; cse_alife_trader_abstract properties
character_profile = esc_dark_stalker_voron

; cse_alife_object properties
game_vertex_id = 61 -- геймвертекс, без него спавнер не будет знать, на какой именно карте и в какой её части спавнить объект
distance = 3.5
level_vertex_id = 42599 -- левелвертекс, без него спавнер не будет знать, в именно какой части карты спавнить объект
object_flags = 0xfffffffb
custom_data = <<END
[logic]
cfg = scripts\esc_voron.ltx -- конфиг с логикой
[smart_terrains]
none = true -- смарт террейн; если создаёте статического торговца - лучше не выставлять смарт террейн
;если хотите бродягу - пишите по аналогии с другими неписями или создавайте свой смарт террейн, куда и определяйте непися

[spawn]
wpn_gauss -- спавним в инвентаре всё, что хотим, в продажу оно не пойдёт
END
story_id = 9958 - уникальный стори_ид для меток на карте

; cse_visual properties
visual_name = actors\dark_stalker\dark_stalker_voron -- внешний вид, указать путь к .ogf модели, без окончания формата файла!

; cse_alife_creature_abstract properties
g_team = 0
g_squad = 0
g_group = 0
health = 2
dynamic_out_restrictions =
dynamic_in_restrictions =

upd:health = 2
upd:timestamp = 0
upd:creature_flags = 0
upd:position = -215.67399597168,-20.403390884355,-151.03227233887 -- те же координаты, что и в секции position
upd:o_model = 0
upd:o_torso = 0,0,0
upd:g_team = 0
upd:g_squad = 0
upd:g_group = 0

; cse_alife_monster_abstract properties

upd:next_game_vertex_id = 65535
upd:prev_game_vertex_id = 65535
upd:distance_from_point = 0
upd:distance_to_point = 0

; cse_alife_human_abstract properties
predicate5 = 2,2,1,2,0
predicate4 = 2,2,1,2

; cse_ph_skeleton properties

upd:start_dialog =

; se_stalker properties

Спавн файл еще рано собирать!
[править]
Логика торговца

Далее, создаём файл конфиг торговца, который указали в спавне - gamedata\config\scripts\esc_voron.ltx и пишем в нём:

[logic]
active = walker
trade = misc\trade_voron.ltx -- файл торговли, создаётся по аналогии с существующими
trader_flags = 0 - флаг трейдера
inv_max_weight = 10000 -- вес инвентаря торговца
on_death = death

[walker]
path_walk = esc_sin_voron_walk -- привязка вейпоинта, чтобы трейдер стоял на месте или двигался по определённому курсу
path_look = esc_sin_voron_look -- куда будет смотреть непись
meet = meet -- параметры реакции непися на встречу с актором

[meet]
use = true
use_wpn = true -- перезаряжает оружие
meet_talk_enabled = true

Теперь лезем за скриптом от бардака и снимаем координаты местоположения нашего непися. У кого нету скрипта, копируем в gamedata/scripts/ui_main_menu.script этот скрипт:

function main_menu:OnButton_credits_clicked()
local text
local vid
local gvid
local a = vector()
local text
a = db.actor:position()
vid = db.actor:level_vertex_id()
gvid = db.actor:game_vertex_id()
text = "Позиция:\\nX= "..a.x.."\\nY= "..a.y.."\\nZ= "..a.z.."\\nlevel_vertex= "..vid.."\\ngame_vertex_id= "..gvid
news_manager.send_tip(db.actor, text, nil, nil, 30000)
end

Заходим в игру, ищем нужное нам место (ногами), жмём из меню кнопку CREDITS и мы услышим звуковой сигнал, после чего выходим в игру из меню, и в строке сообщений высветиться вся инфа. Всё - F12 или на бумажку списываем полученные координаты.
[править]
Создаём вейпоинты и лукпоинты

И так, мы сняли координаты мест, где хотим видеть торговца и где мы хотим, чтобы он ходил - теперь в разобранном all.spawn ищите файл way_*левел*.ltx и туда пишем данные. Я приведу пример свой, опять таки. В файле way_l01_escape.ltx пишем:

[esc_sin_voron_look] -- имя, которые мы записали в ''gamedata\config\scripts\esc_voron.ltx''
points = p0,p1
p0:name = wp00
p0:flags = 0x1
p0:position = -205.306793212891,-20.4855155944824,-150.415893554688
p0:game_vertex_id = 46
p0:level_vertex_id = 54218

p1:name = wp01
p1:flags = 0x1
p1:position = -207.645278930664,-20.2700958251953,-146.980590820313
p1:game_vertex_id = 61
p1:level_vertex_id = 45276


[esc_sin_voron_walk] -- имя, которые мы записали в ''gamedata\config\scripts\esc_voron.ltx''
points = p0
p0:name = wp00
p0:flags = 0x1
p0:position = -215.67399597168,-20.403390884355,-151.03227233887
p0:game_vertex_id = 47
p0:level_vertex_id = 37503

Если нужно создать несколько вейпоинтов - смотрите по аналогии с уже существующими.

После всего этого собираем all.spawn батником (что писать в батниках для сбора и разбора спавна - в файле help.txt в папке с программой), закидываем новый файл спавна в gamedata/spawn и стартуем новую игру.
[править]
Присваеваем торговлю уже имеющемуся неписю

Можно и описанным способом, но иногда требуется присвоить торговлю к уже имеющимся неписям. Будем делать торговцем кого-нибудь из уже имеющихся... Кого, кого, кого...

Как обычно Волка (у меня две подопытных "крысы"-Сидорович и Волк, а так как Сид уже им является, выбор очевиден. Ну чтож приступим. Необходимо создать "файл торговли" типа "trade_....ltx". Можно прописать его самому(как это делать я объяснять не буду, т.к. и до меня все это сделано не один раз, можно скопировать любой другой... я скопировал "trade_freedom.ltx" и переименовал его в "trade_wolf" и удалил все прикондишны с информацией на разрешение торговли.

Теперь нужно сослаться на него. Делается это в файле логики, то бишь в "gulag_escape.ltx" (почему в эскейп, думаю понятно, наш Волк находится на Кордоне. Открываем файл и ищем строки:

;-------------------------------------------------------------------------------------------------
;-- ESCAPE LAGER
;-------------------------------------------------------------------------------------------------
; Волк
[logic@esc_lager_volk]
active = walker@esc_lager_volk_walker1
on_death = death@wolf

[walker@esc_lager_volk_walker1]
path_walk = wolf_walk
path_look = wolf_look
meet = meet@wolf
on_actor_dist_le = 23| {+tutorial_wounded_start -esc_kill_bandits_quest_kill} remark@esc_lager_volk1
on_actor_dist_le_nvis = 5| walker@esc_lager_volk_walker2
danger = danger_condition@shustryi

[remark@esc_lager_volk1]
anim = hello_wpn
snd = esc_wolf_say_thanks
target = actor
on_signal = sound_end| walker@esc_lager_volk_walker2
on_actor_dist_le_nvis = 5| walker@esc_lager_volk_walker2
danger = danger_condition@shustryi

Теперь сошлемся на наш трад-в секцию "[logic@esc_lager_volk]" добавим строки:

trade = misc\trade_wolf.ltx
inv_max_weight = 10000

То есть должно получится следующее:

;-------------------------------------------------------------------------------------------------
;-- ESCAPE LAGER
;-------------------------------------------------------------------------------------------------
; Волк
[logic@esc_lager_volk]
active = walker@esc_lager_volk_walker1
on_death = death@wolf
trade = misc\trade_wolf.ltx
inv_max_weight = 10000

Традом мы ссылаемся на наш "торговый файл", а вот следующей строкой увеличиваем переносимый вес, поскольку он и у неписей ограничен. Осталось только дать нашему "новорождённому" торговцу-Волку побольше денег. Делаем это точно также как описано, но различие в том, что мы редактируем секцию Волка в "character_desc_escape.xml". Я еще и удалил строку "#include "gameplay\character_criticals_4.xml"" с ограничением по весу, но правда на всякий случай, поскольку не проверял, работает ли с ним.

На этом все, заходим в игру и наслаждаемся собственным творением.

P.S.-Упс, работает, но как-то неправильно, у торговца оказывается нет поддержки перемещения. Поэтому ГСЦ всех торгошей и биндят не сталкером, а монстром Заработало только когда я в бинде сталкера прописал:

function actor_binder:reinit()
object_binder.reinit(self)

local npc_id = self.object:id()

db.storage[npc_id] = { }

self.st = db.storage[npc_id]
self.st.pstor = nil

self.next_restrictors_update_time = -10000

self.object:set_callback(callback.inventory_info, self.info_callback, self)
self.object:set_callback(callback.article_info, self.article_callback, self)
self.object:set_callback(callback.on_item_take, self.on_item_take, self)
self.object:set_callback(callback.on_item_drop, self.on_item_drop, self)
self.object:set_callback(callback.trade_sell_buy_item, self.on_trade, self) -- for game stats
--self.object:set_callback(callback.actor_sleep, self.sleep_callback, self)
self.object:set_callback(callback.task_state, self.task_callback, self)
--self.object:set_callback(callback.map_location_added, self.map_location_added_callback, self)
self.object:set_callback(callback.level_border_enter, self.level_border_enter, self)
self.object:set_callback(callback.level_border_exit, self.level_border_exit, self)
self.object:set_callback(callback.take_item_from_box, self.take_item_from_box, self)
;вот мои строки
if self.object:clsid() ~= clsid.script_trader then
self.object:set_patrol_extrapolate_callback(bind_monster.generic_object_binder.extrapolate_callback, self)
end

db.storage[self.object:id()] = { }

self.st = db.storage[self.object:id()]

self.object:set_callback(callback.patrol_path_in_point, self.waypoint_callback, self)
self.object:set_callback(callback.hit, self.hit_callback, self)
self.object:set_callback(callback.death, self.death_callback, self)
end

Все будет работать на УРА, с одним огрехом - Волк не будет отмечатся как цель при задании поговорить с Волком перед АТП, но думаю это не столь важно. Ну и еще без ствола будет ходить, но если будет атакован, то пушка появится "из широких штанин" Волка и он будет из нее пытаться вас нашпиговать свинцом.

Пост скриптум, дубль два... Теоретически, если строки с калбеками из обычной секции сталкера прописать в мою, то наш традер (в данном случае Волк) будет неким гибридом, сочетающим свойства как и НПС, так и уникальных торговцев, попробуйте, должно работать.


Struck
[7] Выживший
    
0
Посты: 1946
Откуда:
Возраст:
03-10-2009 18:45 GMT3 часа #1052341    
Николай ФеНиКс пиши в бинд сталкере следующие

После

function actor_binder:update(delta)
object_binder.update(self, delta)
local time = time_global()
game_stats.update (delta, self.object)


Пиши

имя твоего скрипта.имя функции()


Мой вопрос :

А как(и вообще можно ли) сделать скриптовую функцию выдачи квеста?


Снова в строю.

l
Deхter
[70] Миротворец
    
0
Посты: 8627
Откуда: Irkutsk
Возраст: 29
03-10-2009 19:14 GMT3 часа #1052369    
Marshal777 Если ты хочеш сделать его другом, то можно.
Напишу тебе в пм как.


Struck
[7] Выживший
    
0
Посты: 1946
Откуда:
Возраст:
03-10-2009 19:59 GMT3 часа #1052410    
SYREX дргуом сделать это ожно, а приручить это совсем другое


Снова в строю.

l
[H.O.Y]
[1] Странник
    
0
Посты: 158
Откуда: Москва
Возраст:
03-10-2009 20:06 GMT3 часа #1052419    
ЗдесЬ кто нить может помочь хочу сделать переходы на локации рыжий лес через алспавн но как незнаю помогите


Struck
[7] Выживший
    
0
Посты: 1946
Откуда:
Возраст:
03-10-2009 22:05 GMT3 часа #1052579    
KaZuYa мне кажется или ты правда набиваеш тупые посты?


Снова в строю.

l
KaZuYa
[1] Странник
    
0
Посты: 33
Откуда: чернобыль
Возраст: 33
03-10-2009 22:16 GMT3 часа #1052593    
Struck нет я их не н а б и в а ю
а как сделать чтобы ггероем был волкодав а не меченый


подарите балов
Struck
[7] Выживший
    
0
Посты: 1946
Откуда:
Возраст:
03-10-2009 22:28 GMT3 часа #1052612    
Замени модель имя ранг содержимое инвентаря(если надо), группировку советую не менять, ну или переиминуй группировку актёр(одиночка) в актёр(наёмник)


Снова в строю.

l
dan8
[3] Новобранец
    
0
Посты: 500
Откуда: ventspils
Возраст: 29
03-10-2009 23:15 GMT3 часа #1052673    
а как сделать чтобы сталкеров можно было нанимать


Все ,что то пишут в своих подписях а я возьму и не НАПИШУ!!!
Struck
[7] Выживший
    
0
Посты: 1946
Откуда:
Возраст:
03-10-2009 23:25 GMT3 часа #1052690    
_http://stalkerin.gameru.net/modules.php?name=Downloads тут посмотри мод "Наёмники"


Снова в строю.

l
-DxD-
[1] Banned
    
0
Посты: 13
Откуда:
Возраст:
04-10-2009 00:23 GMT3 часа #1052795    
Хоть убейте,но не помню..
как правильно прописать в hit_type = ,чтоб была пси-атака?
надеюсь все поняли что мне нужно..




Форумы > Архив > Свалка > Как сделать свой мод? (по 08.10.09)

Страница 45 из 56Первая«42434445464748 »Последняя

Эта тема закрыта, публикация новых сообщений недоступна.

Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для
просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.

Использование материалов сайта возможно с разрешения администрации. Все права защищены. © 2004–2024 «Stalker-Portal.ru»