Приступим...
__________________________________________________________
Шаг № 1
Какие файлы нам нужны:
Из \config\creatures , файл m_zombie.ltx
Из \config\gameplay , файл info_portions.xml
Из \scripts , файл xr_statistic.script
Как Вы поняли будем восстанавливать зомби, если поймёте как Зомбака восстановить значит сможете и остальных тоже восстановить!
__________________________________________________________
Шаг № 2
Действуем!
Открываем файл m_zombie.ltx
И в конец файла пропишем нового Зомбака
[zombie_ghost]:zombie_strong
$spawn = "monsters\zombies\zombie_ghost"
visual = monsters\zombi\zombi_1_ghost
Сохраняем.
Для того, чтобы игра не вылетала после того, как мы добавили новый тип монстра, его нужно добавить в файл xr_statistic.script
Добавим в local killCountProps к монстрам строчку:
zombie_weak = 1, zombie_normal = 2, zombie_strong = 3
В local sect_alias строчку:
zombie_weak = "zombie_weak", zombie_normal = "zombie_normal", zombie_strong = "zombie_strong"
Ниже в monster_classes строчку:
[clsid.zombie_s ] = "zombie"
В функцию getNpcType(npc) добавляем следующее:
elseif npc:character_community() == "zombie" then community = "zombie"
Сохраняем и закрываем файл.
__________________________________________________________
Шаг № 3
Спавн, определение координат
Чтобы определить координаты и вертексы нужно:
в файле main_menu.scripts прописать в конце, ну или после любого енда вот эту функцию:
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
Потом запускаем игру, идем в то место где хотим заспавнить что-либо и нажимаем Esc потом нажать Титры и возвращаешься в игру приходит сообщение с данными ,делаем скрин, выходи из игры и смотрим координаты на скрине и прописывает куда нужно!
Создаём файл в \scripts ,
Назовём его esc_zombi.script
В него пишем:
function esc_zombi ()
alife():create("zombie_ghost",vector():set(XYZ),l_V,G_V)
end
Чтобы Зомбак заспавнился сразу как начинается игра в файле info_portions.xml
пишем:
<game_information_portions>
<info_portion id="storyline_actor_start">
<task>storyline_eliminate_gunslinger</task>
<action>esc_zombi.esc_zombi</action>
</info_portion>
ВСЁ!
Пишем свои координаты и зомби появляется без проблем!=)
НО есть маленькая неувязочка!
Сейчас же исправим её!
Чтобы у нас не вылетала игра когда мы будем шарить в трупе зомби создадим ему иконку!
Вернемся к файлу m_zombie.ltx и в секцию
[m_zombie_e]:monster_base
впишем параметр
icon = ui_npc_monster_kontroler
(иконка контролера конечно, но зато вылетать не будет!
Потом Вы уж сами нарисуете и вставите свою иконку=)
Вот и Всё Зомби восстановлен, по этому примеру легко восстановить остальных!
__________________________________________________________
Шаг № 1
Какие файлы нам нужны:
Из \config\creatures , файл m_zombie.ltx
Из \config\gameplay , файл info_portions.xml
Из \scripts , файл xr_statistic.script
Как Вы поняли будем восстанавливать зомби, если поймёте как Зомбака восстановить значит сможете и остальных тоже восстановить!
__________________________________________________________
Шаг № 2
Действуем!
Открываем файл m_zombie.ltx
И в конец файла пропишем нового Зомбака
[zombie_ghost]:zombie_strong
$spawn = "monsters\zombies\zombie_ghost"
visual = monsters\zombi\zombi_1_ghost
Сохраняем.
Для того, чтобы игра не вылетала после того, как мы добавили новый тип монстра, его нужно добавить в файл xr_statistic.script
Добавим в local killCountProps к монстрам строчку:
zombie_weak = 1, zombie_normal = 2, zombie_strong = 3
В local sect_alias строчку:
zombie_weak = "zombie_weak", zombie_normal = "zombie_normal", zombie_strong = "zombie_strong"
Ниже в monster_classes строчку:
[clsid.zombie_s ] = "zombie"
В функцию getNpcType(npc) добавляем следующее:
elseif npc:character_community() == "zombie" then community = "zombie"
Сохраняем и закрываем файл.
__________________________________________________________
Шаг № 3
Спавн, определение координат
Чтобы определить координаты и вертексы нужно:
в файле main_menu.scripts прописать в конце, ну или после любого енда вот эту функцию:
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
Потом запускаем игру, идем в то место где хотим заспавнить что-либо и нажимаем Esc потом нажать Титры и возвращаешься в игру приходит сообщение с данными ,делаем скрин, выходи из игры и смотрим координаты на скрине и прописывает куда нужно!
Создаём файл в \scripts ,
Назовём его esc_zombi.script
В него пишем:
function esc_zombi ()
alife():create("zombie_ghost",vector():set(XYZ),l_V,G_V)
end
Чтобы Зомбак заспавнился сразу как начинается игра в файле info_portions.xml
пишем:
<game_information_portions>
<info_portion id="storyline_actor_start">
<task>storyline_eliminate_gunslinger</task>
<action>esc_zombi.esc_zombi</action>
</info_portion>
ВСЁ!
Пишем свои координаты и зомби появляется без проблем!=)
НО есть маленькая неувязочка!
Сейчас же исправим её!
Чтобы у нас не вылетала игра когда мы будем шарить в трупе зомби создадим ему иконку!
Вернемся к файлу m_zombie.ltx и в секцию
[m_zombie_e]:monster_base
впишем параметр
icon = ui_npc_monster_kontroler
(иконка контролера конечно, но зато вылетать не будет!
Потом Вы уж сами нарисуете и вставите свою иконку=)
Вот и Всё Зомби восстановлен, по этому примеру легко восстановить остальных!