Показать сообщение отдельно
Старый 16.07.2016, 17:02
Alexey25 вне форума Посмотреть профиль Отправить личное сообщение для Alexey25 Найти все сообщения от Alexey25
  № 1  
Ответить с цитированием
Alexey25

Регистрация: Mar 2016
Сообщений: 34
По умолчанию Видимость тайлов строки, столбца

Помогите решить одну проблему. Я создаю поле как показано на рисунке.
Название: test.jpg
Просмотров: 383

Размер: 6.6 Кб
Делаю видимость поля с помощью alpha 20 %. При щелчке на любом тайле поля если этот тайл в массиве равен единицы. То видимость становится 100 %. Единица превращается в двойку. Как сделать так, чтобы по горизонтале если все тайлы определенной строки (там где раньше была единица стала двойка в массиве) alpha равны 100 %. То все тайлы этой строки автоматически становились alpha 100 %. Пример:
Название: test2.jpg
Просмотров: 376

Размер: 6.3 Кб
То же самон и со столбцами если все тайлы столбца где в массиве двойка, alpha равны 100 %. То все тайлы столбца становились alpha 100 %.
Название: test3.jpg
Просмотров: 388

Размер: 6.4 Кб
Функция test_full у меня уже есть где бы происходили проверки на заполненность тайлов. Но как её написать не знаю. Внизу представлен весь код.

Код AS1/AS2:
var level = [[0,1,0,0,0,1,0], 
			 [0,1,0,0,1,1,1], 
			 [0,1,0,0,1,1,1], 
			 [1,1,1,0,1,1,1],
			 [1,1,1,1,1,1,1], 
			 [1,1,1,1,1,1,1], 
			 [1,1,1,1,1,1,1],
			 [1,1,1,0,1,1,1],
			 [0,1,1,0,1,1,1],
			 [0,0,0,0,1,1,1],
			 [0,0,0,0,1,1,1],
			 [0,0,0,0,1,1,1],
			 [0,0,0,0,0,1,0]];
 
function pole()
{
	for (var i= 0; i < level.length; ++i)
	{
		for (var j = 0; j < level[i].length; ++j)
		{
			_root.attachMovie("tile","t"+i+"_"+j,_root.getNextHighestDepth());
			_root["t"+i+"_"+j]._alpha = 20;
			_root["t"+i+"_"+j].idi = i;
			_root["t"+i+"_"+j].idj = j;
			_root["t"+i+"_"+j].onPress = onP;
			_root["t"+i+"_"+j]._x = 200+20*i;
			_root["t"+i+"_"+j]._y = 200+20*j;
		}
	}
}
 
function onP()
{
	if(level[this.idi][this.idj] == 1)
	{
		level[this.idi][this.idj] = 2;
		this._alpha = 100;
	}
 
	test_full(this.idi,this.idj);
 
}
 
function test_full(idi, idj)
{
 
}
pole();