Есть мемхак анрайза: vk.com/wall-79267218_2174 .В нем можно редактировать UI, я сделал интерфейс под карту, как подогнать эту стату хп и маны под окошки (см рис.)?

Принятый ответ

Для редактирования Лейблов хп/мп нужно сделать следующее:
local integer pHPLabel = ReadRealMemory( GetUIPortrait( ) + 0x240 )
local integer pMPLabel = ReadRealMemory( GetUIPortrait( ) + 0x244 )
Далее эти адреса редактировать/двигать и т.д. через LayoutAPI или напрямую через общий FrameAPI, думаю и сам легко разберёшься.
GameUI содержит большую часть, но не весь интерфейс, обратно в оффлайн отчаливаю.
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
32
3 года назад
0
Ну так читаем описание функций ui где работа с фреймами. Он вроде все описал.
0
1
3 года назад
Отредактирован mikroBER
0
quq_CCCP:
Ну так читаем описание функций ui где работа с фреймами. Он вроде все описал.
GetUISimpleConsole() ,в неё входит этот фрэйм, но при изменении меняет и нарисованный интерфейс тоже, двигает его вместе с переменными, я без понятия какой тут нужен оффсет. и коментариев к функциям нету
ReadRealMemory( pGameUI + 0x428 ), это GetUISimpleConsole() ,у всех других UI фрэймов оффсеты также кратны 4, может стоит поискать через перебор?
0
32
3 года назад
0
mikroBER, ну попробуй, сам UI ещё не баловался, но точно помню что анраз все тестировал и оно пахало, но мб какие то особенности есть о которых он не упомянул.
0
32
3 года назад
0
Тут точно всё работает ибо эти фреймы ещё Алексей в рендередже двигал, может там будут подсказки к названию фреймов
3
1
3 года назад
Отредактирован mikroBER
3
Bergi_Bear:
Тут точно всё работает ибо эти фреймы ещё Алексей в рендередже двигал, может там будут подсказки к названию фреймов
Я наткнулся на то, что в GameUI записан не весь интерфейс который можно менять, например что-бы скрыть текстуру над слотами предметов нужно использовать это
call SetUIFramePoint( ReadRealMemory( GetUIInfoBar( ) + 0x14C ), ANCHOR_BOTTOMRIGHT, GetRootFrame(), ANCHOR_TOPLEFT, 1.0, 0.0 )
Где читается память "ReadRealMemory( GetUIInfoBar( ) + 0x14C )" с оффсетом от инфобара (все оффсеты фреймов кратны 4), поэтому я решил с помощью оффсета найти нужный фрэйм, но безуспешно, оффсет 0x6C это GetUISimpleConsole(), которое меняет положение хп и маны, но вместе с нарисованным интерфейсом/
вот что я отыскал
*0x150 -надпись предметы
0x14C -над предметами
0x148 - ? но есть число фрэйма
0x144 - ? но есть число фрэйма
0x140 - ? но есть число фрэйма

0x13C - ? но есть число фрэйма
0x138 - ? но есть число фрэйма
0x134 - ? но есть число фрэйма
0x130 = GetUIInfoBar( )

0x12C = GetUIInfoBar( ) число фрэйма если кто-то выбран, и 0 если никто
0x128 - если никто не выбран =7, если выбран юнит =1, если выбрано здание на этапе постройки =2, если выбрано несколько юнитов =4
0x124 - 1
0x120 - ? но есть число фрэйма

0x11C - ? но есть число фрэйма
0x118 - 0
0x114 - ? но есть отрицательное число фрэйма
0x110 - ? но есть число фрэйма

0x10C - 0
0x108 - ? но есть отрицательное число фрэйма
0x104 - ? но есть число фрэйма
0x100 - 0

0xFC - отрицательное число фрэйма если выбранно строящееся здание,иначе число фрэйма но другое и не отрицательное
0xF8 - равно 0xFC если не выбранно строящееся здани, иначе число фрэйма но другое
0xF4 - 0
0xF0 - ? но есть число фрэйма

0xDC - 0
0xD8 - ? но есть число фрэйма равно 0xD4
0xD4 - ? но есть число фрэйма равно 0xD8
0xD0 - 0

0xCC - 0
0xC8 - 0
0xC4 - 1
0xC0 - 1

0xBC - 1
0xB8 - 1
0xB4 - 0
0xB0 - 0

0xAC - 1
0xA8 - 1
0xA4 - ? но есть число фрэйма фаталит
0xA0 - ? но есть число фрэйма фаталит

0x9C - ? но есть число фрэйма фаталит
0x98 - сначала 0 потом отриц число фрэйма
0x94 - 1
0x90 - 1

0x8C - 0
0x88 - 255
0x84 - 2
0x80 - 0

0x7C - 0
0x78 - 0
0x74 - 0
0x70 - 0

0x6C - ? но есть число фрэйма GetUISimpleConsole()
0x68 - ? но есть число фрэйма
0x64 - 0
0x60 - ? но есть число фрэйма фатал

0x5C - ? но есть число фрэйма фатал
0x58 - ? но есть число фрэйма фатал
0x54 - 0
0x50 - ? но есть число фрэйма фатал
7
20
3 года назад
Отредактирован Unryze
7
Для редактирования Лейблов хп/мп нужно сделать следующее:
local integer pHPLabel = ReadRealMemory( GetUIPortrait( ) + 0x240 )
local integer pMPLabel = ReadRealMemory( GetUIPortrait( ) + 0x244 )
Далее эти адреса редактировать/двигать и т.д. через LayoutAPI или напрямую через общий FrameAPI, думаю и сам легко разберёшься.
GameUI содержит большую часть, но не весь интерфейс, обратно в оффлайн отчаливаю.
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.