CoP. Определение координат ГГ на локации
Материал из S.T.A.L.K.E.R. Inside Wiki
Понадобятся два файла от ЗП: bind_stalker.script и ui_custom_msgs.xml
Создаём в папке с игрой, папку gamedata, в ней создаём папку scripts. Помещаем в папку scripts файл bind_stalker.script от ЗП.
Открываем файл bind_stalker.script любым текстовым редактором (например Notepad++), и ищем в нём строчку, начинающуюся на xr_s.on_actor_update(delta). Нашли? Хорошо. Теперь пишем перед этой строчкой следующий код:
if true then
local hud = get_hud()
local cs = hud:GetCustomStatic("cs_debug" )
if cs == nil then
hud:AddCustomStatic("cs_debug", true)
cs = hud:GetCustomStatic("cs_debug" )
end
local lvid, gvid = db.actor:level_vertex_id(), db.actor:game_vertex_id()
local pos, dir = db.actor: position(), db.actor:direction()
local pos2 = level.vertex_position(lvid)
local valid = pos2:distance_to(pos) <= 0.7
local msg = string.format("lvid: %d\\n", lvid) ..
string.format("gvid: %d\\n", gvid) ..
string.format("pos: %f,%f,%f\\n", pos.x, pos.y, pos.z) ..
string.format("dir: %f,%f,%f\\n", dir.x, dir.y, dir.z) ..
string.format("valid: %s", tostring(valid))
if cs ~= nil then
cs:wnd():TextControl():SetText(msg)
end
end
Сохраняем изменения в файле bind_stalker.script.
В ранее созданной папке gamedata, создаём папку configs, потом в папке configs, создаём папку ui. В папке ui помещаем файл ui_custom_msgs.xml
Открываем ui_custom_msgs.xml любым текстовым редактором (например Notepad++), и в самом конце файла пишем следующий код:
<cs_debug x="200" y="180" width="600" height="100" complex_mode="1">
<text font="graffiti22" r="240" g="217" b="182" a="255" align="l"/>
</cs_debug>
Сохраняем изменения в файле ui_custom_msgs.xml
Всё готово! Теперь в игре, на игровой интерфейс будет выводится информация с координатами ГГ на локации.
Скриншот:
Авторы:
bardak (Оригинальный скрипт), Мортарион (адаптация скрипта к ЧН), bip-bip:) (адаптация изменённого Мортарион'ом скрипта bardak'а, к ЗП), Earthworm-Jim (инструкция по вставке скрипта).