Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 18.09.2006, 19:06
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 11  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,784
Цитата:
Сообщение от Sneg
Ага :-) Посоветуй что-нибудь, под конец дня голова уже трещит - а как нужно алгортим не работает.
Ширина и высота клетки фиксированы или нет?

Старый 18.09.2006, 19:12
Sneg вне форума Посмотреть профиль Отправить личное сообщение для Sneg Найти все сообщения от Sneg
  № 12  
Ответить с цитированием
Sneg
 
Аватар для Sneg

Регистрация: Oct 2005
Адрес: Russia, Moscow
Сообщений: 316
Отправить сообщение для Sneg с помощью ICQ
Задаются перемеными в XML, полученного от сервера. После построения поля и инициализцации клеток, измениться не может. Т.е. фикисированные - все GameCell имеют одинаковые размеры:
Код:
gameСell.getWidth():Number;
gameСell.getHeight():Number;


Последний раз редактировалось Sneg; 18.09.2006 в 19:18.
Старый 18.09.2006, 19:27
miramax вне форума Посмотреть профиль Отправить личное сообщение для miramax Посетить домашнюю страницу miramax Найти все сообщения от miramax
  № 13  
Ответить с цитированием
miramax
 
Аватар для miramax

Регистрация: Oct 2005
Адрес: Борисоглебск
Сообщений: 1,702
Отправить сообщение для miramax с помощью ICQ Отправить сообщение для miramax с помощью AIM Отправить сообщение для miramax с помощью MSN Отправить сообщение для miramax с помощью Yahoo Отправить сообщение для miramax с помощью Skype™
Цитата:
Сообщение от __etc
Ширина и высота клетки фиксированы или нет?
Он уже ответил что ему известны координаты клеток. Т.е. два противоположных угла прямоугольника.
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)
__________________
AS3 | www.FLAPS.ru | Русские флэшеры самые умные флэшеры в мире. ©

Старый 18.09.2006, 19:30
miramax вне форума Посмотреть профиль Отправить личное сообщение для miramax Посетить домашнюю страницу miramax Найти все сообщения от miramax
  № 14  
Ответить с цитированием
miramax
 
Аватар для miramax

Регистрация: Oct 2005
Адрес: Борисоглебск
Сообщений: 1,702
Отправить сообщение для miramax с помощью ICQ Отправить сообщение для miramax с помощью AIM Отправить сообщение для miramax с помощью MSN Отправить сообщение для miramax с помощью Yahoo Отправить сообщение для miramax с помощью Skype™
Цитата:
Сообщение от __etc
Вот к чему приводят женские аватары =)
Это подчёркивает мой эстетический вкус
К тому же посты с приятными аватарами взор быстрее находит на странице и их внимательнее читают
__________________
AS3 | www.FLAPS.ru | Русские флэшеры самые умные флэшеры в мире. ©

Старый 18.09.2006, 19:37
Sneg вне форума Посмотреть профиль Отправить личное сообщение для Sneg Найти все сообщения от Sneg
  № 15  
Ответить с цитированием
Sneg
 
Аватар для Sneg

Регистрация: Oct 2005
Адрес: Russia, Moscow
Сообщений: 316
Отправить сообщение для Sneg с помощью ICQ
2miramax: Откуда ты взял что у меня это двумерный массив? Я где-нибудь писал это? Вот тебе кусочек кода интефейса IGameField:
Код:
interface com.gubaev.game.IGameField extends IEventDispatcher{
  // some code
  function getCells():Array;
  function getCellByMouseCoordinate(x:Number,y:Number):IGameCell;
  function getCellByPosition(position:Number):IGameCell;
 // some code 
};
Игровое поле может только вернуть только клетку на определенной position, а positionесть порядковый номер клетки : от 1 до (длина поля в клетках)*(ширина поля в клетках).

Старый 18.09.2006, 20:13
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 16  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
сори, если не въехал в проблему, а чего по-простому нельзя напихать в массив этих клеток?
Код:
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;
}

Старый 18.09.2006, 20:15
miramax вне форума Посмотреть профиль Отправить личное сообщение для miramax Посетить домашнюю страницу miramax Найти все сообщения от miramax
  № 17  
Ответить с цитированием
miramax
 
Аватар для miramax

Регистрация: Oct 2005
Адрес: Борисоглебск
Сообщений: 1,702
Отправить сообщение для miramax с помощью ICQ Отправить сообщение для miramax с помощью AIM Отправить сообщение для miramax с помощью MSN Отправить сообщение для miramax с помощью Yahoo Отправить сообщение для miramax с помощью Skype™
Цитата:
Сообщение от Sneg
2miramax: Откуда ты взял что у меня это двумерный массив? Я где-нибудь писал это? Вот тебе кусочек кода интефейса IGameField:
Игровое поле может только вернуть только клетку на определенной position, а positionесть порядковый номер клетки : от 1 до (длина поля в клетках)*(ширина поля в клетках).
Здесь я вообще не вижу проблемы. Сработает обыкновенная арифметика вместе с методом массива push(); Лень пример приводить...
__________________
AS3 | www.FLAPS.ru | Русские флэшеры самые умные флэшеры в мире. ©

Старый 18.09.2006, 22:09
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 18  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
если у каждой клетки есть своя позиция x и y (я говорю не о пикселях, а о их порядковых номерах от верхнего левого углу)
просто на onPress засекаешь xy начальной клетки, и потом на onRelease смотришь xy конечной клетки, у тебя получается твой массив
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

Старый 18.09.2006, 22:13
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 19  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
не получается, в него попадут клетки за гранцей области..

Старый 18.09.2006, 22:15
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 20  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,879
Записей в блоге: 7
То ли я не понимаю о чем речь, то ли вы мудрите. Можно еще раз описать проблему, но без затрагивания классов (они тут вроде бы не причем), то есть саму суть?
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Создать новую тему Ответ Часовой пояс GMT +4, время: 03:19.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 03:19.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.