Показать сообщение отдельно
Старый 26.05.2011, 16:45
vivado вне форума Посмотреть профиль Отправить личное сообщение для vivado Найти все сообщения от vivado
  № 9  
Ответить с цитированием
vivado

Регистрация: Aug 2010
Сообщений: 282
По умолчанию Это снова я...

Спасибо за исходник, но зачем все так усложнять+ еще и ЯвуСкрипт подключать, ведь наверняка можно обойтись одним AS. Вернее я знаю, что можно, но пока не догнал как ))) Помогайте братцы...
Посмотрите код плиз...
Код AS1/AS2:
stop(); //Остановка кадра
 
function toStart(NameP){ //Функция переноса предмета
	startDrag(NameP); //Включаем перенос предмета
  	for (var i=1; i<6; i++){
	//Проверяем находится ли предмет над ячейкой
	if (this["box"+i].hitTest(_root._xmouse,_root._ymouse,false)){ 
		if (Empty[i]=="1"){ Empty[i]="0"; } //Присваиваем ячейке статус "свободна" (Empty[i]=0)(если предмет забираем из нее)
	} 
	} 
}
 
function toStop(NameP2){ //Отпускаем переносимый предмет
	for ( var a=1; a<6; a++){
	//Проверка находится ли предмет над одной из ячеек
	if (this["box"+a].hitTest(_root._xmouse,_root._ymouse,false)){
		//если находится то переходим к функции добавления предмета в ячейку
		if (Empty[a]=="0"){ Empty[a]="1"; AddToBox(NameP2,["box"+a])}	
		//иначе обращаемся к функции возвращающей предмет на его начальное положение
		else if (Empty[a]=="1"){ GoToStart(NameP2,["box"+a])}
	}
/*-------------------------------------------------------------------------------*/
//Вот тут не могу догнать как сделать, мне нужно чтобы предмет при отпускании вне ячейки 
//обращался к функции, это условие полюбас выполняется (наверное из-за того что находится в цикле
//если предмет не над ячейкой то переносим его в начальное положение
	else { GoToStart(NameP2,["box"+a])}
/*-------------------------------------------------------------------------------*/
	}
}
 
function AddToBox (NameP3,NameBox){ //Перенос предмета в нужную ячейку
	//Координаты предметов в ячейках
	if (NameBox=="box1"){ var ItemInBoxX:Number=259; ItemInBoxY=180; } //Координаты предмета в 1 ячейке
	...
	else if (NameBox=="box6"){ ItemInBoxX=405; ItemInBoxY=253; } //Координаты предмета в 6 ячейке
 
/*-------------------------------------------------------------------------------*/
//Почемуто величины ItemInBoxX и ItemInBoxX не задаются или задаются как то неправильно, 
//пробовал выводить их через Number(ItemInBoxX) и задавать в виде 
//var ItemInBoxX:Number=259 один фиг не работает :(
//Помещаем предмет в ячейку
NameP3._x=ItemInBoxX; 
NameP3._y=ItemInBoxY;
/*-------------------------------------------------------------------------------*/
 
info="портфель "+NameP3+" добавлен в:"+NameBox+" Х="+ItemInBoxX+" Y="+ItemInBoxY; trace (info);
stopDrag();
}
 
function GoToStart(NameP4,NameBox2){
//Начальные координаты предметов - задам потом
NameP4._x=0; 
NameP4._y=0; 
 
	if (NameP4=="Portfel1"){ ItemX=0; ItemY=0; } //Начальные координаты 1 предмета
	...
	else if (NameP4=="Portfel6"){ ItemX=0; ItemY=0; } //Начальные координаты 6 предмета
 
//Помещаем предмет в его начальные координаты
NameP4._x=ItemX; 
NameP4._y=ItemY; 
 
info2="Ячейка "+NameBox2+" занятa"+" Возвращаем "+NameP4+" в Х="+ItemX+" Y="+ItemY; trace (info2);
stopDrag();
}
Вложения
Тип файла: rar aaa.rar (35.3 Кб, 856 просмотров)


Последний раз редактировалось vivado; 26.05.2011 в 17:00.