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

CoP. Определение координат ГГ на локации — различия между версиями

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

Перейти к: навигация, поиск
(Отмена правки 12131 участника Schoolfucker (обсуждение))
(Отмена правки 12132 участника Еarthworm-Jim (обсуждение))
Строка 1: Строка 1:
КГ/АМ
+
Понадобятся два файла от ЗП: '''bind_stalker.script''' и '''ui_custom_msgs.xml'''
  
Автор, убейся об парту.
+
Создаём в папке с игрой, папку '''gamedata''', в ней создаём папку '''scripts'''. Помещаем в папку <u>'''scripts'''</u> файл '''bind_stalker.script''' от ЗП.
 +
 
 +
Открываем файл '''bind_stalker.script''' любым текстовым редактором (например Notepad++), и ищем в нём строчку, начинающуюся на '''xr_s.on_actor_update(delta)'''. Нашли? Хорошо. Теперь пишем перед этой строчкой следующий код:
 +
<code>
 +
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
 +
</code>
 +
Сохраняем изменения в файле '''bind_stalker.script'''.
 +
 
 +
 
 +
В ранее созданной папке <u>'''gamedata'''</u>, создаём папку '''configs''', потом в папке '''configs''', создаём папку '''ui'''. В папке <u>'''ui'''</u> помещаем файл '''ui_custom_msgs.xml'''
 +
 
 +
Открываем '''ui_custom_msgs.xml''' любым текстовым редактором (например Notepad++), и в самом конце файла пишем следующий код:
 +
<code>
 +
        <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>
 +
</code>
 +
Сохраняем изменения в файле '''ui_custom_msgs.xml'''
 +
 
 +
Всё готово! Теперь в игре, на игровой интерфейс будет выводится информация с координатами ГГ на локации.
 +
 
 +
== Скриншот: ==
 +
 
 +
[[Файл:CoP._Определение_координат_ГГ_на_локации.jpg|200px|‎]]
 +
 
 +
== Авторы: ==
 +
 
 +
 
 +
'''bardak''' (Оригинальный скрипт), '''Мортарион''' (адаптация скрипта к ЧН), '''bip-bip:)''' (адаптация изменённого ''Мортарион'ом'' скрипта ''bardak'а'', к ЗП), '''Earthworm-Jim''' (инструкция по вставке скрипта).

Версия 16:35, 24 мая 2012

Понадобятся два файла от ЗП: 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 (инструкция по вставке скрипта).

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