MARAT_BEST
Да просто лень мудохаться с данными, чтобы и вторую часть нарисовать. Сейчас "карта" выглядит приблизительно так:
Code:
channel: .db 0,65,0
.db 0,64,13
.db 0,63,13
.db 0,62,13
.db 0,61,13
.db 0,60,13
.db 0,59,13
.db 0,58,13
.db 0,57,13
.db 0,56,13
.db 0,55,13
.db 0,54,13
.db 0,53,13
.db 0,52,13
.db 0,51,13
.db 0,50,13
.db 0,47,13
.db 0,45,13
.db 0,41,13
.db 0,40,13
.db 0,39,13
.db 0,38,13
.db 0,36,13
.db 0,35,13
.db 0,30,13
.db 0,29,13
.db 0,27,13
.db 0,26,13
.db 0,24,13
.db 0,20,13
.db 0,16,13
.db 0,10,13
map: .db 0,
.db 1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,0,0,0,1,0,1,0,1,0,1,1,0,1,0,1
.db 0,0,1,0,0,0,0,0,1,0,1,0,0,1,0,0,0,0,1,1,0,1,0,1,0,0,0,0,1,0,0,0
.db 13
Каждый канал, меняет берег влево или вправо, соответственно рисуя воду или берег. Стартовые знчаения - это x,y и тип канала. 13 - это значит канал "валяет дурака". Как только канал добирается до y = 65, ему просчитывается нужное значение x, и его тип определяется из масива map. Типов есть 4.
0 - влево с водой
1 - вправо с берегом
2 - вправо с водой
3 - влево с берегом
13 - конец карты, начинай сначала. По-хорошему, нужно доделать, чтобы, скажем, числа больше 13 - это была "пауза" для канала. Но мне лень.
Я же писал, что движок "быстрый и грязный". Я даже оптимизацией не занимался, не то чтобы форматом карт. Теоретический максимум - 128 каналов. При таком количестве, вполне возможно, с музыкой будут проблемы. Но без музыки, не предвижу никаких лагов. Так же думаю, для карт такая ситуация - абсурда, так как "ровные участки" есть почти всегда. В последней демке 32 канала. Думаю, 64 тоже поедет даже с музыкой.