Spawn через скрипт-дополнение — различия между версиями — S.T.A.L.K.E.R. Inside Wiki

Spawn через скрипт-дополнение — различия между версиями

Материал из S.T.A.L.K.E.R. Inside Wiki

Перейти к: навигация, поиск
Строка 23: Строка 23:
 
xr_sound.update_actor()
 
xr_sound.update_actor()
  
if not has_alife_info("spawn") then -вот
+
if not has_alife_info("spawn") then --вот
  
self.object:give_info_portion("spawn") - наше
+
self.object:give_info_portion("spawn") -- наше
  
end - обновление
+
end -- обновление
 
</pre>
 
</pre>
  
Строка 74: Строка 74:
 
[[Участник:Костя.н.ы.ч|Костя.н.ы.ч]]
 
[[Участник:Костя.н.ы.ч|Костя.н.ы.ч]]
  
[[Категория:Неоформленные_статьи]]
+
[[Категория:Скрипты]]

Версия 12:30, 10 мая 2011

Пишу статью специально для тех, кто только начинает увлекатся модмейкерством и не использует специальные проги для спавна (могу посоветовать ACDC-весчь улетная, спасиба разрабам:-)
Если вы хотите заспавнить в игру любой обьект-будь то непись, машина или аномалия без активации через диалог, тогда читайте и запоминайте:)
Изучая скрипты, я обнаружил, что можно запустить выдачу инфопоршны через обновление у актера... Не поняли? Объясняю - пишем в scripts\bind_stalker.script в секции обновления проверку на наличие info_portion:

function actor_binder:update(delta)
	object_binder.update(self, delta)

	-- DEBUG slowdown
--	slowdown.update()

	local time = time_global()
	
	game_stats.update (delta, self.object)

	-- апдейт погоды
	self.weather_manager:update()
	
	-- апдейт схемы детектора
	self.actor_detector:update()

	-- апдейт звуковой схемы актера
	xr_sound.update_actor()

	if not has_alife_info("spawn") then				--вот

		self.object:give_info_portion("spawn")		--	наше

	end						--		обновление

Такой функцией мы проверяем наличие инфопоршны spawn, и если её нет, выдаем игроку...
Осталось только добавить эти инфопоршну - для этого в config\gamelay\ cоздаем файл с ней, например spawn.xml с текстом:

<?xml version='1.0' encoding="windows-1251"?>

<game_information_portions>
    <info_portion id="spawn">						-вот название нашей инфопоршны
 <! -- action>название_скрипта.название_функции_в_нем</action -- >
 <action>escape_dialog.give_weapon_to_actor</action>			-для примера выдадим стартовую снарягу(ПМм и патроны,что выдает волк)
    </info_portion>

</game_information_portions>

Между

  <info_portion id="spawn">

и

  </info_portion>

Можете писать сколько угодно активаций скриптов (в пределах разумного, если не хотите загрузить процессор двумя сотнями операций:) Подключим наш файл в секцию инфопоршен в system.ltx:

[info_portions]
;список xml файлов, содержащих info_portions
files = spawn, info_portions, info_portions_light, info_portions_test, info_lchanger_ico...

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

Авторы

Статья создана: Костя.н.ы.ч

Другие места
LANGUAGE