|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
25.01.2010, 20:34 | #11 |
Инженер ИС
Старожил
Регистрация: 13.12.2006
Сообщений: 2,671
|
Тип Byte - это значения от 0 до 255, вы можете записать в один байт одну из 256 разновидности текстур. Достаточно выполнить Ord('t') и у вас в руках ее код 116, нужно обратно? ...пишем Chr(116), в руках символ 't', ищем текстуру в каталоге t.bmp или что там у вас. А можно текстуры так и оставить в коде 116.bmp, и ничего делать больше не потребуется.
Вот у вас один блок данных - это поверхность на весь массив, вы знаете, что на одну текстуру приходится по 1-му байту, ...делаем в процедуре считывания цикл второго порядка, по-X и по-Y, начало отсчета пусть 1, конец MaxX и MaxY, их вы получили из заголовка. Цикл прошелся по файлу и операцией Read записал все байты в массив типа Byte вот так Read(f, Mas[x,y]), или в Char вот так Read(f, b); Mas[x,y] := Chr(b). Если текстур более 256, то выполните деление по классам. Пусть на текстуру будет выделено 2 байта, первый - тип текстуры (здания, деревья, камни и пр), второй - вид текстуры (здания: дом, таверна, замок), ...и того в цикле появляется два оператора Read подряд, первый записывает вид, второй тип, ...будет 256 каталогов, в которых по 256 видов каждого типа текстур - 65535 штук, нормально? )) Заметьте, если хранить файлы с именем числовым, то у нас больше вариантов, т.к. ОС не принимает некоторые символы, кроме которых есть и откровенные "иероглифы". Создайте таблицу и пронумеруйте все типы и виды текстур, файлы будите хранить под кодом.
Руководитель проекта MMO 2D RPG: Настоящее имя Денис Стрижак (10.05.1981-6.02.2019) Мир духу его
Последний раз редактировалось Beermonza; 25.01.2010 в 20:42. |
31.01.2010, 19:34 | #12 |
Форумчанин
Регистрация: 26.01.2010
Сообщений: 215
|
Итак тема урока "как сохранить в файл двухмерный динамический массив"
Смотрим листинг старался сделать как можно больше коментариев. Код:
Могу лишь пнуть в нужном направлении (ну или как получится)
|
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
НЕТИПИЗИРОВАННЫЕ Файлы | Doholyan | Паскаль, Turbo Pascal, PascalABC.NET | 6 | 01.08.2009 23:26 |
типизированные и нетипизированные файлы | andrey4623 | Общие вопросы Delphi | 1 | 28.12.2007 19:09 |
ПОМОГИТЕ!! Типизированные и нетипизированные файлы. | Zebo | Помощь студентам | 1 | 08.06.2007 09:35 |