![]() |
|
||||||||||
|
|||||
|
[+1 05.12.06]
|
Здравствуйте.
Вот начал делать тетрис на флеше, но как дошел до самого главного, так чё то затормозил. Подскажите, пожалуйста, как можно сделать массив из ячеек куда фигуры сыплются. заранее спасибо. ![]() |
|
|||||
|
Регистрация: Feb 2007
Сообщений: 29
|
Сложность в том, чтобы определить двумерный массив, или в том как связать его с ячейками "стакана" в который будут падать фигуры?Я , когда писал тетрис во Flash, сделал так: //Сразу оговорюсь - я сам новичок, но тетрис //работает Чтобы не парится с двумерным массивом, я взял одномерный: //------------------------------------------------------- //массив стакан с инициализацией STAKAN_WIDTH = 19; //В стакане в ширину поместятся 19 кирпичей STAKAN_HEIGHT = 25; stage = 0; //Уровень Stakan = Array(475); for (var y = 0; y < 475;y++) Stakan[y] = 0; //---------------------------------------------------------- Потом определил функцию, позволяющую работать с ним как с 2 - мерным: //---------------------------------------------------------- //----------Функция для преобразования адреса [i,j] ячейки стакана // в адрес массива Stakan. // Если с отрицательное число, возвратит содержимое // элемента двумерного массива Stakan[a,b] (который на самом деле одномерный) // если с >= 0 запишет с в Stakan[a,b]? вернёт -1 function stakan(a, b, c) //Традиционо - a строка, b - столбец, а вот с - content { if (c >= 0){ Stakan[(a * STAKAN_WIDTH) + b] = c; return(-10);} else return Stakan[(a * STAKAN_WIDTH) + b]; } //-------------------------------------------------------------- (под content понимаю содержимое ячейки - если 1 значит там уже есть кирпич) Надеюсь помог. если интетесует полный исходник тетриса, пиши на ctpro@pochta.ru или на StrangerA@mail.ru |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Hina, приведите свой код в надлежащий вид, оформив текст тегами code.
|
|
|||||
|
[+1 05.12.06]
|
Спасибо!
|
![]() |
![]() |
Часовой пояс GMT +4, время: 12:46. |
|
|
« Предыдущая тема | Следующая тема » |
|
|