Есть 4 текущих цвета из возможных 32768 (с кодами 0000-7FFF) и двух кодов прозрачности (8000 — не менять цвет точки в слое или 8001 — сделать точку слоя прозрачной). Цвет 8001 - это и есть ластик. При рисовании им соответствующая точка в слое стирается. Nesser посоветовал изменить код прозрачности для лучшей упаковки спрайтов. Тогда код прозрачности в спрайте и слое можно сделать FFFF. Код ластика тогда пусть будет 8000.
Для упрощения рисования и стирания спрайтов можно сделать несколько наборов по 4 цвета. Например, для рисования травы подобрать 4 соответствующий цвета, для рисования камней - другие 4 цвета и т.д. Один из наборов можно сделать для стирания. Все 4 цвета установить кодом ластика. Тогда при рисовании спрайта с этим набором цвета он будет очищать слой до прозрачного состояния.
Тогда в начале игры загружаем используемые цвета в несколько наборов, а перед рисованием спрайта выбираем номер набора. А если надо нарисовать несколько спрайтов разными цветами выбирать разные наборы цветов. Это пригодилось бы для игры типа "FUTURE TANK", где у танков разные цвета корпусов.
Надо подумать, как лучше назвать эти наборы цветов по 4 цвета и сколько их надо сделать.





Ответить с цитированием