|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
Цитата:
|
|
|||||
Задаются перемеными в XML, полученного от сервера. После построения поля и инициализцации клеток, измениться не может. Т.е. фикисированные - все GameCell имеют одинаковые размеры:
Последний раз редактировалось Sneg; 18.09.2006 в 19:18. |
|
|||||
Цитата:
2Sneg ну почему код не работает-то? Вот у тебюя массив строк mas= [1, 2, 3, 4, 5]; каждый элемент массива тоже массив, содержащий координаты х например mas[1] = [1, 2, 3, 4, 5]; Нам известна координаты верхней левой точки, и правой нижней (X1, Y1 и X2, Y2 соответсвенно) тебе нужно из каждого массива mas[Y1], mas[Y1+1]...mas[Y2] вырезать елементы принадлежащие интервалу от X1 до X2 . Т.е mas[Y1][X1] mas[Y1][X1+1] ..... mas[Y1][X2] и добавить их в массив Я думал ты сам сможешь всё дописать, ну так и быть приведу более полный вариант mas = ['ряд0', 'ряд1', 'ряд2', 'ряд3', 'ряд4', 'ряд5', 'ряд6', 'ряд7', 'ряд8', 'ряд9']; for(i in mas){ mas[i] = [mas[i]+'_столбец0', mas[i]+'_столбец1', mas[i]+'_столбец2', mas[i]+'_столбец3', mas[i]+'_столбец4', mas[i]+'_столбец5', mas[i]+'_столбец6', mas[i]+'_столбец7', mas[i]+'_столбец8', mas[i]+'_столбец9']; } X1 = 2; Y1=2; X2=3; Y2=4; ar = [] tempY = Y1; while(tempY<=Y2){ ar = ar.concat(mas[tempY].splice(X1, X2)) tempY+=1; } trace(ar) |
|
|||||
Цитата:
К тому же посты с приятными аватарами взор быстрее находит на странице и их внимательнее читают |
|
|||||
2miramax: Откуда ты взял что у меня это двумерный массив? Я где-нибудь писал это? Вот тебе кусочек кода интефейса IGameField:
Игровое поле может только вернуть только клетку на определенной position, а positionесть порядковый номер клетки : от 1 до (длина поля в клетках)*(ширина поля в клетках). |
|
|||||
сори, если не въехал в проблему, а чего по-простому нельзя напихать в массив этих клеток?
function getSelectionCells(rectangle:Rectangle):Array{ var wLength=int(rectangle.width/cellWidth); var hLength=int(rectangle.height/cellHeight); for(var i=0,arr=[];i<wLength;i++) for(var j=0;j<hLength;j++){ arr.push(field.getCellByPosition(rectangle.left+i*cellWidth,rectangle.top+j*cellWidth)); } return arr; } |
|
|||||
Цитата:
|
|
|||||
4AM Games
|
если у каждой клетки есть своя позиция x и y (я говорю не о пикселях, а о их порядковых номерах от верхнего левого углу)
просто на onPress засекаешь xy начальной клетки, и потом на onRelease смотришь xy конечной клетки, у тебя получается твой массив
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^ |
Часовой пояс GMT +4, время: 03:19. |
|
« Предыдущая тема | Следующая тема » |
|
|