AndreySol 215 Опубликовано 14 Декабря 2017 Поделиться Опубликовано 14 Декабря 2017 1 час назад, Winsor сказал: ... UIItemInfo.cpp. Знаю. 2 часа назад, Winsor сказал: броня CUIOutfitParams Поиском в 1.0007rc1 такой класс не найден. Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1143686
Winsor 178 Опубликовано 14 Декабря 2017 Поделиться Опубликовано 14 Декабря 2017 (изменено) У нас наверное разные 1.0007 xr_3da\xrGame\ui\UIOutfitParams.cpp === хотя, да. возможно это уже мое расширение. Но тем не менее - это не отменяет того факта что все задается через конфиг. изучайте исходники - там указан xml файл, с которого все загружается. дальше - по конкретным элементам смотрите координаты. Изменено 14 Декабря 2017 пользователем Winsor Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1143689
dsh 3 824 Опубликовано 14 Декабря 2017 Поделиться Опубликовано 14 Декабря 2017 @Winsor если уж взялся помогать, так не стесняйся, покажи этот UIOutfitParams.cpp или ссылку на него дай. Может это и поможет вопрошающему. А то, как сам вопросы задавать, так это пожалуйста, помогите люди сами мы не местные, а как другим помочь, так не, мое. dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1143691
Earth2Space 308 Опубликовано 15 Декабря 2017 Поделиться Опубликовано 15 Декабря 2017 @Winsor так 11 часов назад, Winsor сказал: CUIOutfitParams или 8 часов назад, Winsor сказал: UIOutfitParams ? Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1143704
AndreySol 215 Опубликовано 15 Декабря 2017 Поделиться Опубликовано 15 Декабря 2017 Ладно, отбой... Я уже понял, что ничего конкретного я не увижу. Всем спасибо.... Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1143786
Battemen | Mr. Pred 62 Опубликовано 15 Декабря 2017 Поделиться Опубликовано 15 Декабря 2017 Посильно ли чайнику вставить раскачку из "раскачки ЛА для тч 1.0006" в огсешные xrcore, xrgame и xrnetserver? Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1143812
Winsor 178 Опубликовано 18 Декабря 2017 Поделиться Опубликовано 18 Декабря 2017 (изменено) В 14.12.2017 в 23:23, dsh сказал: как другим помочь, так не, мое не понятна агрессия по данному поводу, да ладно. Там где я могу - там я помогаю. содержимое данного класса не относиться к вопросу, тем более у меня переписаны и другие классы вывода информации для итемов, т.е. человек не сможет использовать "мой" класс без остальных изменений в классе CUIItemInfo. На свои вопросы, я к сожалению, так же не всегда получаю ответы, приходится разбираться самому. Вот Вам класс. https://drive.google.com/file/d/1-zIzxMqteZvmsd-2rkOlT58HLEnP4_Wc/view?usp=sharinghttps://drive.google.com/file/d/1FnpLY4ysZYzn-FAGqa9EC-1omwuhv3yX/view?usp=sharing Помог? Суть моего поста была в том что абсолютно не важен класс, либо еще что - вся разметка UI находится в конфигах игры. и движком элементы UI не сдвигаются. если человек не захотел, банально, посмотреть на содержимое void CUIItemInfo::Init(LPCSTR xml_name) и увидеть что нет там сдвигов - хоть давай я ему исходники своего класса - хоть не давай - ну не поможет. В 15.12.2017 в 07:50, Earth2Space сказал: @Winsor так или ? UIOutfitParams - так называется файл, где описан класс CUIOutfitParams В 15.12.2017 в 15:44, AndreySol сказал: конкретного я не увижу ну куда уж конкретнее.... Движок не делает сдвиг элементов UI , вся разметка описана в конфигах xml. Вы не можете конфиг найти? или каким образом определяется тип итема? Изменено 18 Декабря 2017 пользователем Winsor Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1144362
AndreySol 215 Опубликовано 18 Декабря 2017 Поделиться Опубликовано 18 Декабря 2017 6 часов назад, Winsor сказал: Движок не делает сдвиг элементов UI , вся разметка описана в конфигах xml. Продемонстрируйте мне конкретный конфиг, в котором прописано, что при отображении описания аптечки текст описания должен выводится сразу от верхнего края окна описания, а при отображении описания пистолета - текст должен быть смещен на N кол-во пикселей, для того чтоб выше текста уместились индикаторы параметров ствола. В том самом CUIItemInfo::Init имеем: if(uiXml.NavigateToNode("descr_list",0)) <--- это и есть тот самый конфиг UI-контрола описания предметов, выделенных кликом в инвентаре ? { UIWpnParams = xr_new<CUIWpnParams>(); UIArtefactParams = xr_new<CUIArtefactParams>(); UIWpnParams->InitFromXml (uiXml); UIArtefactParams->InitFromXml (uiXml); UIDesc = xr_new<CUIScrollView>(); AttachChild (UIDesc); UIDesc->SetAutoDelete (true); m_desc_info.bShowDescrText = !!uiXml.ReadAttribInt("descr_list",0,"only_text_info", 1); xml_init.InitScrollView (uiXml, "descr_list", 0, UIDesc); xml_init.InitFont (uiXml, "descr_list:font", 0, m_desc_info.uDescClr, m_desc_info.pDescFont); } в CUIItemInfo::InitItem: if(UIDesc) { UIDesc->Clear(); VERIFY (0==UIDesc->GetSize()); TryAddWpnInfo (pInvItem->object().cNameSect()); TryAddArtefactInfo (pInvItem->object().cNameSect()); if(m_desc_info.bShowDescrText) { CUIStatic* pItem = xr_new<CUIStatic>(); pItem->SetTextColor (m_desc_info.uDescClr); pItem->SetFont (m_desc_info.pDescFont); pItem->SetWidth (UIDesc->GetDesiredChildWidth()); pItem->SetTextComplexMode (true); pItem->SetText (*pInvItem->ItemDescription()); pItem->AdjustHeightToText (); UIDesc->AddWindow (pItem, true); } UIDesc->ScrollToBegin(); } В конфиге "config\ui\inventory_item.xml"(конкретно для инвентаря) смотрим: <descr_list x="12" y="223" width="298" height="140" always_show_scroll="0" left_ident="16"> <font font="letterica16" r="240" g="217" b="182"/> </descr_list> Ну ткните уже меня носом, где в этих строках учитывается, какой предмет мы кликнули и как должно выбираться смещение текста описания, если кликнули оружие или артефакт, с учетом того, что для стволов и артов - разное кол-во индикаторов ? Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1144428
abramcumner 1 229 Опубликовано 18 Декабря 2017 Поделиться Опубликовано 18 Декабря 2017 43 минуты назад, AndreySol сказал: UIDesc = xr_new<CUIScrollView>(); UIDesc - CScrollView - располагает элементы друг под другом. 45 минут назад, AndreySol сказал: TryAddWpnInfo (pInvItem->object().cNameSect()); TryAddArtefactInfo (pInvItem->object().cNameSect()); CUIStatic* pItem = xr_new<CUIStatic>(); UIDesc->AddWindow (pItem, true); Сначала добавляются параметры оружия, если можно, потом параметры артефакта, потом описание. Они все располагаются друг под другом. Учет предмета, на котором кликнули, внутри TryAddWpnInfo и TryAddArtefactInfo. Смещение внутри CUIScrollView. Разное количество индикаторов внутри CUIWpnParams и CUIArtefactParams. Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1144435
AndreySol 215 Опубликовано 18 Декабря 2017 Поделиться Опубликовано 18 Декабря 2017 32 минуты назад, abramcumner сказал: CScrollView - располагает элементы друг под другом. Ага... Добавил у себя(1.0007rc1) индикаторы для брони - сделал по образу и подобию оружейных. Все нормально, за исключением - при клике на бронике, текст описания налагается поверх индикаторов. Что я мог скопипастить из оружейных классов\ui-конфигов не так ? Уже неделю заглядываю в код и никак не соображу, чем добавленный мной код не гож движку... Цитата Смещение внутри CUIScrollView Подскажите, в какой именно ф-ции ? Смотрел там уже ранее, не увидел. Здравой логикой понимаю(или надеюсь ?), что метод смещения должен быть универсален и не зависеть от того, что добавлено - т.е. в коде класса CUIScrollView не должно быть каких-то прямых проверок, что добавлено что-то связанное именно с CUIWpnParams или CUIArtefactParams ? Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1144443
dsh 3 824 Опубликовано 18 Декабря 2017 Поделиться Опубликовано 18 Декабря 2017 (изменено) @AndreySol может ты как-нибудь не так добавляешь? В скроллвью добавляется статик. Это статик является как бы строкой. Все статики, которые будут добавляться в этот скроллвью позже, будут всегда отображаться под ним. Может ты статик с текстом не добавляешь в этот скроллвью, а аттачишь к родителю? Изменено 18 Декабря 2017 пользователем dsh dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1144447
AndreySol 215 Опубликовано 18 Декабря 2017 Поделиться Опубликовано 18 Декабря 2017 20 минут назад, dsh сказал: может ты как-нибудь не так добавляешь? я ж написил, что было все сделано по образу и подобию оружейных индикаторов. Один в один, за исключением естественно названия класса и его наполнения, ну и в ui-конфиге чуток поправил под другое кол-во индикаторов. Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1144455
abramcumner 1 229 Опубликовано 18 Декабря 2017 Поделиться Опубликовано 18 Декабря 2017 (изменено) 2 часа назад, AndreySol сказал: Подскажите, в какой именно ф-ции ? Смотрел там уже ранее, не увидел. Здравой логикой понимаю(или надеюсь ?), что метод смещения должен быть универсален и не зависеть от того, что добавлено - т.е. в коде класса CUIScrollView не должно быть каких-то прямых проверок, что добавлено что-то связанное именно с CUIWpnParams или CUIArtefactParams ? Да, все так и есть - никаких проверок на CUIWpnParams или CUIArtefactParams. Просто перебор всех добавленных элементов и расстановка. Метод void CUIScrollView::RecalcSize() if(GetVertFlip()){ for(WINDOW_LIST::reverse_iterator it = m_pad->GetChildWndList().rbegin(); m_pad->GetChildWndList().rend() != it; ++it) { (*it)->SetWndPos (item_pos); item_pos.y += (*it)->GetWndSize().y; item_pos.y += m_vertInterval; ... } Что-то ты не так скопипастил или в xml не тот размер прописал. Как написал @dsh, надо обязательно вызвать AddWindow для твоего индикатора, только тогда он добавится именно в список и сдвинет остальные элементы. Изменено 18 Декабря 2017 пользователем abramcumner Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1144468
AndreySol 215 Опубликовано 18 Декабря 2017 Поделиться Опубликовано 18 Декабря 2017 1 час назад, abramcumner сказал: или в xml не тот размер прописал Во, оно! Забыл после копи-пасты сам размер окна изменить. Тут кстати еще с толку сбило, что в движке все-же не по-русски сделано - когда грузишь в UI-контрол к примеру текст, который вылазит за вертикальный размер, вместо обрезания по границе контрола текст отобразится полностью.Так бы увидел, что не все индикаторы видны - уже бы давно исправил. 1 Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1144496
AndreySol 215 Опубликовано 19 Декабря 2017 Поделиться Опубликовано 19 Декабря 2017 (изменено) Два вопроса: 1). в xr_src\xrCore\_color.h IC SelfRef lerp(SelfCRef c1, SelfCRef c2, T t) { T invt = 1.f-t; r = c1.r*invt + c2.r*t; g = c1.g*invt + c2.g*t; b = c1.b*invt + c2.b*t; a = c1.a*invt + c2.a*t; return *this; } Пример использования: void CUIProgressBar::UpdateProgressBar() { .......................... if(m_bUseColor) { Fcolor curr; curr.lerp(m_minColor,m_maxColor,fCurrentLength); m_UIProgressItem.GetStaticItem()->SetColor(curr); } } Что делает эта ф-ция? Если я правильно понял - это уменьшение яркости полоски прогресса при приближении к мин. значению ? 2). А что это ? UI()->PushScissor(rect); m_UIBackgroundItem.Draw(); UI()->PopScissor(); В чем смысл ? Изменено 19 Декабря 2017 пользователем AndreySol Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1144595
dsh 3 824 Опубликовано 19 Декабря 2017 Поделиться Опубликовано 19 Декабря 2017 @AndreySol насколько я вижу, не то, что бы уменьшение яркости, в как бы переход первого цвета во второй. Т.е. на примере полоски, постепенный переход из зеленого в красный по мере уменьшении полоски. 1 dsh mod: https://github.com/dsh2dsh/op2ogse Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1144606
Winsor 178 Опубликовано 21 Декабря 2017 Поделиться Опубликовано 21 Декабря 2017 В 18.12.2017 в 23:43, AndreySol сказал: который вылазит за вертикальный размер, вместо обрезания по границе контрола текст отобразится полностью За это отвечает отдельный параметр в конфиге xml - complex_mode для текста в статике (либо выводить в одну строчку либо по ширине контрола переносить строки). Есть еще попытка поддерживать нормальный wordwrap через EElipsisPosition - но в 1.0007 код закомменчен - разработчики не доделали. Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1144796
yurikteam 0 Опубликовано 23 Декабря 2017 Поделиться Опубликовано 23 Декабря 2017 Всем привет, объясните как мне вернуть квадратную форму миникарты в зп? Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1144992
AndreySol 215 Опубликовано 23 Декабря 2017 Поделиться Опубликовано 23 Декабря 2017 Подскажите, кто в курсе для ТЧ 1.0007rc1: для оружия, откуда брать боеприпасы для зарядки\перезарядки - это где-то в базовом классе прописано или раскидано по разным классам. Где конкретно ? Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1145163
НаноБот 753 Опубликовано 24 Декабря 2017 Поделиться Опубликовано 24 Декабря 2017 Столкнулся с одним багом. В классе CExplosive метод UpdateCL вызывается не каждый фрейм, через раз, т.е. работает как метод shedule_Update, в результате свет не гаснет через m_fExplodeDurationMax. Так и не понял почему, метод виртуальный и вызывается из нескольких точек. Вызываться должен вроде из модуля xr_object.cpp ...в конце концов, важен лишь, машинный код. СТАЛКЕР только для ПК! Ссылка на комментарий https://www.amk-team.ru/forum/topic/10339-redaktirovanie-dvizhka-x-ray/page/136/#findComment-1145605
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти