![]() |
|
Sprinter SDK Documentation
;8x8-2/16Как же представляются тайлы в файле тайлов? В настоящий момент мы используем тайлы размером 8х8 пикселов и 2 цвета из 16 на один тайл. При размере экрана 320х256 мы имеем возможность выводить тайлы в экран 40х32 знакоместа. Кроме двухцветных тайлов мы имеем возможность выводить фоновую 256-цветную картинку в специальном формате - о том как это делается мы поговорим позже. В файле тайлов тайлы представляются текстовыми строками, составленными из шестнадцатиричных чисел. Пример строки из файла SPR: NAME DB #00,#11,#AA,#55,#00,#00,#00,#00,#F4 ;xВ данном случае мы имеем 8 байт описания строк одного тайла - один бит на пиксел и 1 байт атрибутов (4 старших бита - цвет фона, 4 младших бита - цвет символа). Цвета кодируются следующим образом:
0 - ЧЕРНЫЙ 8 - ТЕМНО-СЕРЫЙ
1 - СИНИЙ 9 - СВЕТЛО-СИНИЙ
2 - ЗЕЛЕНЫЙ A - СВЕТЛО-ЗЕЛЕНЫЙ
3 - БИРЮЗОВЫЙ B - СВЕТЛО-БИРЮЗОВЫЙ
4 - КРАСНЫЙ C - РОЗОВЫЙ
5 - ПУРПУРНЫЙ D - СВЕТЛО-ПУРПУРНЫЙ
6 - КОРИЧНЕВЫЙ E - ЖЕЛТЫЙ
7 - СВЕТЛО-СЕРЫЙ F - БЕЛЫЙ
Также возможно указать после символа ; специальный символ,
который будет идентифицировать этот тайл (пока в SDK
никак не используется).
Итак, разработаем свой тайл, изображающей мордочку: ######## => #FF # # => #81 # # # # => #A5 # # => #81 # # => #81 # ##### => #9F # # => #81 ######## => #FFПредположим, цвет точек будет черным, а фона - красным (в 16-ричном виде это будет выглядеть как #40). Итак, вставим в наш файл hellos.spr описание нашей мордашки: ;8x8-2/16 MYSPR DB #FF,#81,#A5,#81,#81,#9F,#81,#FF,#40 ;@Сохранив файл (F2) открываем нашу программу hello.rw1 и включаем туда имя описателя нашей библиотеки тайлов (в ней пока только один тайл) hellos.rwi
robot "Hello"
author "NedoPC"
+hellos.rwi
main()
{
say "HELLO, WORLD !" // здравствуй мир
}
Чтобы система запомнила это изменение сделаем компиляцию и
запуск (F8 и F9). После успешного запуска и закрытия эмулятора
можно вставить в программу вывод нашей мордочки на экран:
robot "Hello"
author "NedoPC"
+hellos.rwi
main()
{
say "HELLO, WORLD !" // здравствуй мир
select 0 0 // выбор клетки для вывода
set @MYSPR // вывод нашей картинки
}
Команда SELECT указывает координаты клетки, в которую нужно
выложить тайл, затем с помощью команды SET мы указываем
идентификатор тайла, который мы выкладываем (этот
идентификатор соответствует имени, которое мы указали
в hellos.spr).
|