Описание: АРХИВНАЯ ТЕМА 2012 года |
Поиск в теме | Версия для печати |
alex_231 |
Отправлено: 31 Августа, 2016 - 15:18:34
|
Chief-Net
Покинул форум
Сообщений всего: 4688
Дата рег-ции: Окт. 2014
|
alex_231
Для того, чтобы убрать чередование, нужно изменить один байт: x31ACB - h20 -> h00.
С количеством строк пока не знаю, может просто в скрипте их добавлять - я не разбирался, как пожат скрипт и соответственно не знаю, как он выводится (есть ли коды блоков и можно ли задать больше 4-х строк на один поинтер, или там у каждой строки свой поинтер), в общем, если скриптом нельзя добавить дополнительные строки, то объясни, как хранится текст.
----- Делая выбор, отбрось простое решение и выбери правильное...
|
|
|
alex_231 |
Отправлено: 31 Августа, 2016 - 15:21:10
|
Chief-Net
Покинул форум
Сообщений всего: 4688
Дата рег-ции: Окт. 2014
|
alex_231
Макть моя женщина!
Как же этой прогой скрипт редактировать? Жуть страшная.
А нельзя сделать вывод в текстовик со знаками переноса и без лишних пробелов (которые в игре, кстати, не выжимаются из хаффмана), что-то вроде этого:
CODE:{85}
@ 1993 RARE LTD.{A0}
LICENSED TO TRADEWEST, INC.{A3}
BY RARE COIN-IT, INC.{FD}
BATTLETOADS IS A TRADEMARK{A8}
OF RARE LTD.{C7}
DOUBLE DRAGON{A5}
IS A TRADEMARK OF{A1}
TECHNOS JAPAN CORPORATION{FD}
LICENSED BY NINTENDO{FD}
Здесь коды больше h7F и меньше hFD - коды переноса строки с отступом в n пробелов, где n = код - h80, т.е. если код = hA0, то n = h20, а это 32 пробела или одна строка (тут и зарыто чередование строк).
По мне, так такой скрипт проще редактировать, но это - ИМХО.
----- Делая выбор, отбрось простое решение и выбери правильное...
|
|
|
KenshinX |
Отправлено: 31 Августа, 2016 - 15:26:08
|
Забанен
Покинул форум
Сообщений всего: 2277
Дата рег-ции: Окт. 2014
|
KenshinX
Извиняюсь, конечно, но щас не начало века, чтоб выдавать такие отжоги.
Надо банально увеличить количество вводимого текста, добавить нужные символы. Если это невозможно, то к чему вообще проект в таком виде релизить? Большинству достаточно английской версии вместо такой. Могу предложить дать мне скрипт, когда там всё будет нормально с решением ограничений, переведу. Но заниматься такими извращениями - увольте. ) Короче, или никак, или шедевр - других вариантов быть не может.
PS: А почему "Крутая команда" я чё-то так и не сообразил. slow |
|
|
alex_231 |
Отправлено: 31 Августа, 2016 - 15:52:20
|
Chief-Net
Покинул форум
Сообщений всего: 4688
Дата рег-ции: Окт. 2014
|
alex_231
Так ведь он (текст проезжающих названий) там итак отдельно хранится (и даже не пожат). Поинтеры на текст - x37AC3, сам текст по адресу x37AFD записан в ANSI кодах, таблица кодов лежит по адресу x36ED0, коды менее hD0 нужно умножить на 4, коды более или равные hD0 нужно предварительно уменьшить (отнять) на hD0 и тоже умножить на 4, полученный результат будет смещением на данные для символа из 4-х тайлов, начиная с адреса x37C5B, данные идут в таком порядке: 4 байта, сначала первый столбец сверху вниз, затем - второй сверху вниз.
Вот, например:
первый поинтер - hFAED - адрес текста x37AFD ("ONE", первый символ имеет код h4F, в таблице кодов по адресу x36ED0 + h4F = x36F1F находится код hF4, он больше hD0, поэтому (hF4 - hD0) * 4 = h90 - смещение к данным символа. По этому смещению x37C5B + h90 = x37CEB находятся 4 байта h6C h7C h9A hA6. Расположив тайлы соответствующие этим кодам в порядке
6C 9A
7C A6
получаем изображение буквы "O".
Единственная проблема здесь - возможное увеличение общей длины текста, но имея поинтеры можно попробовать перекинуть часть текста в свободное место банка (если оно есть, конечно )
----- Делая выбор, отбрось простое решение и выбери правильное...
|
|
|
|
Поиск в теме | Версия для печати |
Страниц (8): « 1 [2] 3 4 5 6 7 8 » |
Сейчас эту тему просматривают: 7 (гостей: 7, зарегистрированных: 0) |
« Переводы » |
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
|
|
|