Подключение другого *.spawn: различия между версиями

Материал из Моддинг трилогии S.T.A.L.K.E.R. - MODFAQ.RU | +TES/Fallout
Перейти к навигации Перейти к поиску
мНет описания правки
мНет описания правки
 
(не показана 1 промежуточная версия этого же участника)
Строка 25: Строка 25:


В этой статье вы узнаете, как подключить к игре другой файл [[*.spawn]], без замены стандартного '''all.spawn'''<ref>[http://ap-pro.ru/forum/104-3334-1 Тема "Урок - Как привязать к игре другой файл спавна?" на форуме AP Production]</ref>.
В этой статье вы узнаете, как подключить к игре другой файл [[*.spawn]], без замены стандартного '''all.spawn'''<ref>[http://ap-pro.ru/forum/104-3334-1 Тема "Урок - Как привязать к игре другой файл спавна?" на форуме AP Production]</ref>.


== Вступление ==
== Вступление ==
Строка 31: Строка 30:


Попробуйте иной, более удобный способ: правка скрипта, который подключает файл [[*.spawn]] к игре.
Попробуйте иной, более удобный способ: правка скрипта, который подключает файл [[*.spawn]] к игре.


== Теория ==
== Теория ==
Строка 37: Строка 35:


Исправьте функцию под свой файл.
Исправьте функцию под свой файл.


== Практика ==
== Практика ==
Строка 71: Строка 68:
4. Сохраните измененный скрипт. Тестируйте.<br>
4. Сохраните измененный скрипт. Тестируйте.<br>


 
== Источники ==
== Источник ==
{{reflist|3}}
{{References}}


[[Категория:F.A.Q.]][[Категория:Игровые архивы]][[Категория:Скрипты]][[Категория:Спавн]]
[[Категория:F.A.Q.]][[Категория:Игровые архивы]][[Категория:Скрипты]][[Категория:Спавн]]

Текущая версия от 19:44, 27 июня 2022

Подключение другого *.spawn

Автор FantomICW
Дополнил Wookie
Тип статьи справка
Актуальность ТЧ, ЧН, ЗП
Необходимый софт Текстовый редактор
Необходимые файлы ui_main_menu.script

В этой статье вы узнаете, как подключить к игре другой файл *.spawn, без замены стандартного all.spawn[1].

Вступление

Как известно, большинство данных игрового спавна всех игровых локаций синглплеера хранятся в файле gamedata/spawns/all.spawn. Однако, довольно часто бывает так, что модмейкеры собирают спавн отдельных локаций для отладки. Обычно в этом случае оригинальный all.spawn переименовывается во что-то другое, а файл имя_уровня.spawn, в свою очередь, переименовывается в all.spawn.

Попробуйте иной, более удобный способ: правка скрипта, который подключает файл *.spawn к игре.

Теория

gamedata/scripts/ui_main_menu.script - именно тот файл, в котором спавн привязывается к игре. Правильнее будет сказать, что в ui_main_menu.script игра запускает синглплеер с указанным в функции файлом *.spawn.

Исправьте функцию под свой файл.

Практика

Предположим, что вы хотите опробовать новый *.spawn уровня "Затон".
1. Скопируйте в gamedata/spawns свой файл *.spawn (zaton.spawn).
2. Откройте ui_main_menu.script, найдите там функцию main_menu:StartGame(), которая запускает новую игру после нажатия на соответствующую кнопку в главном меню и выбора уровня сложности:

function main_menu:StartGame()
	local console = get_console()

	if (alife() ~= nil) then
		console:execute	("disconnect")
	end
	device():pause(false)
	console:execute("start server(all/single/alife/new) client(localhost)")
	console:execute("main_menu off")
end

В данном случае это следующая строка:

console:execute("start server(all/single/alife/new) client(localhost)")

all - название файла спавна без расширения (*.spawn).
3. Теперь пропишите в функцию свой файл, заменив all на zaton:

console:execute("start server(zaton/single/alife/new) client(localhost)")

В целом функция будет выглядеть так:

function main_menu:StartGame()
	local console = get_console()

	if (alife() ~= nil) then
		console:execute	("disconnect")
	end
	device():pause(false)
	console:execute("start server(zaton/single/alife/new) client(localhost)")
	console:execute("main_menu off")
end

4. Сохраните измененный скрипт. Тестируйте.

Источники