Итак, возможно мой вопрос покажется достаточно неординарным, но возможно-ли как-то заменить иконку зеленого квадрата на собственную?
Т.е... Вот к примеру я подгрузил кастомную иконку в карту: BTNBoner.blp
И логично, что чтобы не было зеленого квадрата на ее месте при входе в режим "Меню", мне нужно будет сделать затемнённую версию этой иконки (своеобразную заплатку) и импортировать её в свою карту по следующему пути:
ReplaceableTextures\CommandButtonsDisabled\DISBTNBoner.blp
Но если я не импортирую DISBTNBoner.blp корректно, то будет выведен зеленый квадрат. И как-то глупо получается, что если мне нужно вставить в карту 100 иконок, то мне надо импортировать в карту 200 файлов, из которых 100 будет DISBTN заплатками.
В идеале, конечно хочется, чтобы вместо DISBTN подгружалась обычная BTN (т.е. при входе в режим "меню", иконки попросту не затемнялись бы). Но а так, хотя-бы на какую-нибудь более приглядную универсальную иконку заменю... Или хотя-бы если эта иконка задается кодом зеленого цвета, то где я мог бы изменить этот код на черный (0,0,0) ?

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

Андреич взаправду предложил очень интересный способ, до которого я не додумался ранее... Но rsfghd прав: это не то что мне нужно. И, я таки лично решил проблему (перекрасил зеленую иконку в черный цвет), предположив наобум, что зеленая иконка задается не текстурой но шестнадцатеричным значением цвета 00 ff 00 (где первые 00 является нулевым значением красного оттенка, ff - является максимальным значением зеленого оттенка, и вторые 00 являются значением синего цвета) в библиотеке Game.dll.
Затем, Ev3nt подсказал мне, что после 00 ff 00 обязательно должно следовать ff, означающее степень прозрачности (при максимальном значении иконка не прозрачная).
И вот, я стал через Hex Editor поочередно, методом перебора искать значение 00 ff 00 ff (всего таких значений оказалось 36 штук в файле Game.dll от war3 ROC/TFT 1.26a) и заменять его на 00 00 00 ff. По итогу нужное мне значение оказалось пятым (от начала файла). Прикрепляю скрины... Вопрос закрыт.

На данном скрине представлен Палыч с некорректной иконкой (т.е. вместо нее по идее должен был быть зеленый цвет, но с моим исправлением теперь черный). И та же иконка в режиме "меню".
Загруженные файлы
`
ОЖИДАНИЕ РЕКЛАМЫ...
Этот комментарий удален
0
10
2 года назад
0
Задавался таким вопросом когда-то, кажется решения ситуации на текущий момент нет
0
31
2 года назад
Отредактирован Алексей Андреич
0
Блин давным давно была статья по корректному импорту иконок. Ищите.
Можно сделать одну пустую черную иконку DISBTN и использовать ее для всех кастомных иконок в карте.
Этой "пустышке" прописываете путь типа:
ReplaceableTextures\CommandButtonsDisabled\DISBTNIcon.blp
а всем кастомным иконкам даете имена по типу:
Icon001\BTNIcon.blp
Icon002\BTNIcon.blp
Icon003\BTNIcon.blp
и т.д.


Таким же макаром можно использовать для кастомных иконок "затененные" варианты стандартных...
я обычно использовал
ReplaceableTextures\CommandButtonsDisabled\DISBTNSelectHeroOn.blp

Вот, нашел статью
0
27
2 года назад
0
Андреич, это не оно, ему надо именно зелёный квадрат для всего заменить, например сделать не зелёным, а полностью прозрачным (при условии что оно сверху на иконку накладывается, а не заменяет её)
1
28
2 года назад
Отредактирован PT153
1
Скорее всего никак. Лучше импортировать иконки по разным путям, но с одинаковым именем, тогда для всех них нужна только одна иконка с DIS.
5
3
2 года назад
Отредактирован borissuworov
5
Андреич взаправду предложил очень интересный способ, до которого я не додумался ранее... Но rsfghd прав: это не то что мне нужно. И, я таки лично решил проблему (перекрасил зеленую иконку в черный цвет), предположив наобум, что зеленая иконка задается не текстурой но шестнадцатеричным значением цвета 00 ff 00 (где первые 00 является нулевым значением красного оттенка, ff - является максимальным значением зеленого оттенка, и вторые 00 являются значением синего цвета) в библиотеке Game.dll.
Затем, Ev3nt подсказал мне, что после 00 ff 00 обязательно должно следовать ff, означающее степень прозрачности (при максимальном значении иконка не прозрачная).
И вот, я стал через Hex Editor поочередно, методом перебора искать значение 00 ff 00 ff (всего таких значений оказалось 36 штук в файле Game.dll от war3 ROC/TFT 1.26a) и заменять его на 00 00 00 ff. По итогу нужное мне значение оказалось пятым (от начала файла). Прикрепляю скрины... Вопрос закрыт.

На данном скрине представлен Палыч с некорректной иконкой (т.е. вместо нее по идее должен был быть зеленый цвет, но с моим исправлением теперь черный). И та же иконка в режиме "меню".
Загруженные файлы
Принятый ответ
0
31
2 года назад
0
Если ты патчил game,dll значит, что этот черный квадрат будет отображаться только на твоей версии игры?
И все остальные, кто скачает карту все также будут видеть зеленый квадрат?
0
28
2 года назад
0
Чтобы оставить комментарий, пожалуйста, войдите на сайт.