[ Новые сообщения · Участники · Правила форума · Поиск · RSS ] |
Фан Форум для LF'айтеров Игрострой Модострой LF2 Помогите... |
Помогите... |
ita4i3665, ResHacker, кажись, решит твою проблему
Наша жизнь — одна бродячая тень;
жалкий актер, который кичится какой-нибудь час на сцене, а там пропадает без вести; сказка, рассказанная безумцем, полная звуков и ярости и не имеющая никакого смысла. Уильям Шекспир Жизнь — это добрая сказка со счастливым концом. Другое дело, что я в ней — отрицательный персонаж. Автор неизвестен |
даже если ты вправишь цвет с синего на черный, это не решит проблему, потому что прозрачность работает только на изображения с некоторых рисунков и спрайтов подгружаемых из data.txt списка. Если цвет установлен в hex, он не станет прозрачным.
з.ы. возможно в списке буквеных символов тоже считывается фон, можно попробовать его изменить на желаемый, создав видимость отсуствия фона
Coding in Assembly requires a mix of:
80% of brain, passion, intuition, creativity 10% of programming skills 10% of tan levels in your blood. |
Для прорисовки теста в лф используется GDI-функции SetBkColor, SetTextColor, TextOutA, функция по адресу 00401290 делает эту прорисовку.
Вот кусок кода где прорисовываются цифры от 0 до 7. 0042B8A8 push 0FFFFFF ; 7) Color for enabled text 0042B8AD jmp short lf2.0042B8BD 0042B8AF push 11E ; 6) Y 0042B8B4 lea ecx, dword ptr ds:[esi+6] 0042B8B7 push ecx ; 5) X 0042B8B8 push 0C06850 ; 4) Color for desabled text 0042B8BD mov eax, dword ptr ds:[455608] 0042B8C2 push 9F472F ; 3) Background Color 0042B8C7 lea edx, dword ptr ss:[esp+824] 0042B8CE push edx ; 2) Text 0042B8CF push eax ; 1) HDC 0042B8D0 call lf2.00401290 ; DrawText(HDC,Text.....) Для того чтобы сделать задний фон прозрачный, надо дать инструкцию ничего не рисовать на фоне, для этого в GDI используется функция: SetBkMode Вот её описание: http://www.pinvoke.net/default.aspx/gdi32.setbkmode Или на русском: http://w32api.narod.ru/functions/SetBkMode.html |
ita4i3665, почему вы решили что вы там должны увидеть что-то вразиумительное темболее на языке С++?
И что вы за редактор C++ используете. lf2.exe это запускаемый двоичный скомпилированный файл. Вот немного о формате EXE: http://www.wasm.ru/article.php?article=1002001 Чтобы решить эту проблему, нужно хорошо разбираться в этой штуке: http://ru.wikipedia.org/wiki/Обратная_разработка Лучше не парся. [ Маленький Фриз говорит: это сообщение было отредактировано!] |
Satanael, я использую Notepad++)
Code Для прорисовки теста в лф используется GDI-функции SetBkColor, SetTextColor, TextOutA, функция по адресу 00401290 делает эту прорисовку. Вот кусок кода где прорисовываются цифры от 0 до 7. 0042B8A8 push 0FFFFFF ; 7) Color for enabled text 0042B8AD jmp short lf2.0042B8BD 0042B8AF push 11E ; 6) Y 0042B8B4 lea ecx, dword ptr ds:[esi+6] 0042B8B7 push ecx ; 5) X 0042B8B8 push 0C06850 ; 4) Color for desabled text 0042B8BD mov eax, dword ptr ds:[455608] 0042B8C2 push 9F472F ; 3) Background Color 0042B8C7 lea edx, dword ptr ss:[esp+824] 0042B8CE push edx ; 2) Text 0042B8CF push eax ; 1) HDC 0042B8D0 call lf2.00401290 ; DrawText(HDC,Text.....) Для того чтобы сделать задний фон прозрачный, надо дать инструкцию ничего не рисовать на фоне, для этого в GDI используется функция: SetBkMode Вот её описание: http://www.pinvoke.net/default.aspx/gdi32.setbkmode Или на русском: http://w32api.narod.ru/functions/SetBkMode.html А где мне тогда изменять это? |
Произвести иньекцию кода, я помню непосредственно в отладчике Olly делал. Можно скомпилировать свою dll и её уже подключать и т.д...
[ Маленький Фриз говорит: это сообщение было отредактировано!] |
| |||