7.9 174 Опубликовано 8 Июля 2009 (изменено) Всем привет. Очень нужны ответы на два вопроса: 1. Как из скрипта отобразить только часть текстуры? Сейчас приходится менять параметры в xml-файле. и 2. Как вращать текстуры? Всё это должно работать только на худе. Спасибо. Изменено 8 Июля 2009 пользователем 7.9 всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 8 Июля 2009 (изменено) С вопросом вращения текстур разобрались. Кому интересно, это метод SetHeading... короче вот так: (если окно через кастомстатик) get_hud():GetCustomStatic("имя кастом статика"):wnd():SetHeading(число) Вращает в радианах. Что-бы текстура вращалась в xml-файле надо указать параметр heading = "1". Вопрос про "обрезание" текстур из скрипта - остаётся актуальным. Прошу, кто знает отозваться. Изменено 8 Июля 2009 пользователем 7.9 всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 8 Января 2010 lekzd-у SetHeading() - проимер из рабочего скрипта. 1. Должен быть конфиг статика с параметром heading="1". вроде такого: <hud_compass_arrow x="512" y="484" width="137" height="137" stretch="1" heading="1" complex_mode="1" alignment="c"> <texture>текстура</texture> </hud_compass_arrow> 2. Создаёшь этот статик. примерно так: compass_arrow = hud:AddCustomStatic("hud_compass_arrow"):wnd() 3. И вращаешь: compass_arrow:SetHeading(значение в радианах). всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 7 Марта 2010 Заспавнил "инвентори бокс" - alife():create(item,vector():set(X,Y,Z),lvid,gvid) - всё как положено. Как его повернуть вокруг Y-а? всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 22 Мая 2010 (изменено) ... Я,Ч,М,Б,Ю,Ы,Ж,Э,Й,Ц,К,Е,Н,З,Х,Ъ - эти клавиши наверняка движком перехвачены... однако. Освободи их и используй. Изменено 22 Мая 2010 пользователем 7.9 всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 12 Июля 2010 Дегтярёв-у У меня вопрос по папкам ... в fsgame покывырятся надо, но я не нашёл, помогите пожалуста, а то мне надоело сохранки переименовывать Вот мой fsgame.ltx, может тебе такое больше понравиться... $game_data$ = true | false | $fs_root$ | gamedata\ $mod_dir$ = false | false | $fs_root$ | mods\ $app_data_root$ = true | false | $game_data$ | STALKER-SHOC\ $game_ai$ = true | false | $game_data$ | ai\ $game_spawn$ = true | false | $game_data$ | spawns\ $game_anims$ = true | true | $game_data$ | anims\ $game_levels$ = true | false | $game_data$ | levels\ $game_meshes$ = true | true | $game_data$ | meshes\ $game_dm$ = true | true | $game_data$ | meshes\ $game_shaders$ = true | true | $game_data$ | shaders\ $game_sounds$ = true | true | $game_data$ | sounds\ $game_textures$ = true | true | $game_data$ | textures\ $game_scripts$ = true | false | $game_data$ | scripts\ $game_config$ = true | false | $game_data$ | config\ $game_saves$ = true | false | $app_data_root$ | savedgames\ $logs$ = true | false | $app_data_root$ | logs\ $screenshots$ = true | false | $app_data_root$ | screenshots\ $downloads$ = false | false | $app_data_root$ | downloads\ $level$ = false | false | $game_levels$ всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 31 Мая 2011 У меня в одном месте есть глюк с текстурой. Вид снаружи: Вид изнутри: Похоже, что что на поверхности текстуры есть "зеркальный" эффект... Кстати, может кто знает причину такого? всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 25 Июня 2011 (изменено) Вопрос, ответ на который может-быть уже давно все знают. Но вот потребовалось. Какие предметы можно таскать по Shift+F, а какие не получится? Даже если их прописать в файле system.ltx в секции ph_capture_visuals. Например, wpn_ak74 - прописал, не берётся. Изменено 25 Июня 2011 пользователем 7.9 всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 26 Июня 2011 У меня не получилось с оружием, антирадами, консервы. Кажется, что в роде они динамические - катятся когда бросишь... Или они не "динамические"? Что определяет "динамизм" объекта? С ящиками, например, всё работает (всплывает надпись и их можно захватить), а с некоторыми другими объектами - нет. всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 20 Августа 2011 (изменено) Хочу запомнить информацию (строку) для "инвентарного ящика". Как сделать так, что-бы в pstor, сохранялись не только данные НПС, но и данные моего "инвентарного ящика". Или может это надо делать не через pstor? Делаю так: 1. Создаю: sobj = alife():create("inventory_box",vector():set(24.540,16.526,678.405),3,9) 2. Получаю: cobj = level.object_by_id(sobj.id) 3. Пишу: xr_logic.pstor_store(cobj, "data_name", "data_value") 4. Читаю: xr_logic.pstor_retrieve(cobj, "data_name", "data_default_value") --Данные есть. 5. save-load 6. Получаю: cobj = level.object_by_id(sobj.id) 7. Читаю: xr_logic.pstor_retrieve(cobj, "data_name", "data_default_value") --Ничего нет. Изменено 20 Августа 2011 пользователем 7.9 всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 21 Августа 2011 (изменено) Добавил через секцию логику своему ящику - pstor сохраняется. Но только при "ручном" сейве. При переходе между локациями (туда и сразу обратно) ящик не "биндится". Изменено 21 Августа 2011 пользователем 7.9 всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 21 Августа 2011 (изменено) Artos, извиняюсь за портянки - спойлеры не работают. Более подробная информация: Воспроизведение ситуации: начать новую игру создать ящик записать данные прочитать данные -> пстор на месте, данные читаются уйти на другую локацию сразу вернуться прочитать данные -> пстора не будет, данных соответственно, то-же записать данные прочитать данные -> пстор на месте, данные читаются сохраниться в "ручную" загрузиться прочитать данные -> пстор на месте, данные читаются сейв для удобства (начало игры, кордон, переход на свалку, рядом с ящиком) (_http://narod.ru/disk/22390122001/test_pstor.7z.html) Секция ящика. [inv_box] GroupControlSection = spawn_group discovery_dependency = $spawn = "devices\inventory box" class = O_INVBOX cform = skeleton script_binding = bind_physic_object.init custom_data = scripts\test_pstor_custom_data.ltx visual = physics\box\expl_dinamit.ogf description = "описание" radius = 1 Логика ящика. [logic] active = ph_idle@enable [ph_idle@enable] tips = "?" Скрипт (функции вызывались кнопками кейлогера) local string_test = "string_elrment1, string_elrment2, string_elrment3, string_elrment4" function create() local sobj = alife():create("inv_box",vector():set(24.540,16.526,678.405),3,9) msg("создан ящик: "..tostring(sobj.id)) db.storage[0].pstor.inv_box_id = sobj.id msg("записан id ящика: "..db.storage[0].pstor.inv_box_id) end function write() local obj_id = db.storage[0].pstor.inv_box_id if obj_id then local cobj = level.object_by_id(obj_id) if not db.storage[obj_id].pstor then db.storage[obj_id].pstor = {} end db.storage[obj_id].pstor.data = string_test local tmp = tostring(db.storage[obj_id].pstor.data).."->"..tostring(obj_id) msg("записано: "..tmp) else msg("нет ящика") end end function read() local obj_id = db.storage[0].pstor.inv_box_id if obj_id then local cobj = level.object_by_id(obj_id) if db.storage[obj_id].pstor then local tmp2 = tostring(obj_id).."->"..tostring(db.storage[obj_id].pstor.data) msg("прочитано: "..tmp2) else msg("нет pstor-a для "..tostring(obj_id)) end else msg("нет ящика") end end --\\// function msg(text) if text then db.actor:give_game_news(text, "ui\\ui_iconsTotal", Frect():set(0,188,83,47), 0, 5000) end end Версия игры 1.006 Изменено 21 Августа 2011 пользователем Cyclone Вставил в спойлер. всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 21 Августа 2011 Artos. Все действия совершались в радиусе 10 метров от ящика, в том числе и уход-заход на локацию - всё в этом радиусе. Домик на выходе с Кордона: там точка ухода, точка прихода, и сам ящик, около стола. Но поисследовать влияние переходов онлайн-офлайн надо. всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 25 Августа 2011 (изменено) Если есть имя скрипта и функции в виде строки, например такие: local script_name = "scriptname" local function_name = "functionname" Как проверить существуют такие скрипт и функция или нет? Добавлено через 2 мин.: sergi1901, добавь в систему русский язык. Изменено 25 Августа 2011 пользователем 7.9 всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 25 Августа 2011 (изменено) http://www.amk-team.ru/forum/index.php?sho...st&p=620621 Как я понял, есть 3 способа проверить скрипт и функцию в Сталкере: 1. pcall() --присоветовали в ЛС 2. проверка глобальной таблицы _G -- предложил Артос 3. loadstring() -- пока ждал ответов - сам поэкспериментировал. Сама задача такая: Есть некие предметы, по имени их секции надо проверять: "нет-ли к предмету скрипта", если есть - выполнять, если нет - ничего не делать. Имена секций непредсказуемы, но имя скрипта имеет правило - соответствует имени секции. Какой способ предпочтительней для реалий Сталкера, под такую задачу? Проверять скрипт и функцию на ошибки - это по возможности. "Способ loadstring-a": if loadstring("return scriptname")() and loadstring("return scriptname.functionname")() then return loadstring("return scriptname.functionname()")() end ** return-ы в проверкеобязательны. Изменено 25 Августа 2011 пользователем 7.9 всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 25 Августа 2011 (изменено) Artos, ... Метод чтения глобальной таблицы, признан менее затратным, лоадстринг - не совсем ясно, но вроде то-же приемлемо. В общем: вопрос - закрыли, уверенность - обрели Спасибо. Всем. Изменено 25 Августа 2011 пользователем 7.9 всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 7 Октября 2011 Wookie Я увидел запятую в строке human... всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 9 Октября 2011 (изменено) Юрa файл: gamedata\config\ui\inventory_new.xml тег: dragdrop_bag параметр: group_similar = "0" ЗЫ: Если там-же добавишь в тег "dragdrop_belt" параметр "group_similar="1"" - на поясе похожие предметы будут собираться в "стопку", но в пределах общего допустимого кол-ва предметов на поясе. У меня так: рюкзак - всё врозь, пояс - одинаковые в стопках. Изменено 9 Октября 2011 пользователем 7.9 всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 10 Октября 2011 alex5773, попробуй сейв-лоад - может их отпустит... всё легко Поделиться этим сообщением Ссылка на сообщение
7.9 174 Опубликовано 13 Октября 2011 (изменено) m_army.ltx, m_bandit.ltx - эти файлы не используются. "m_fracture.ltx" - в файле monsters.ltx ЗЫ: Я то-же в своё время "повеселился" пытаясь понять зачем в некоторых модах правили m_army.ltx не подключая его к игре... Изменено 13 Октября 2011 пользователем 7.9 всё легко Поделиться этим сообщением Ссылка на сообщение