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

Регистрация: Jul 2011
Сообщений: 249
Отправить сообщение для mihael_p с помощью Skype™
По умолчанию Выбор оружия MOUSE_WHEEL.

Пытаюсь сделать выбор оружия по колесу мышки, додумался до такого кода:

Код AS3:
private var nw:int;
private var weapons:Array = [1,0,0,0,1,0];
stage.addEventListener(MouseEvent.MOUSE_WHEEL, whelled);
private function whelled(e:MouseEvent):void 
{
 
	nw += int(e.delta / 2);
 
	if (nw < 0)
	{
	    nw = 5;
	}
	if (nw > 5)
	{
	    nw = 0;
	}
 
	if (weapons[nw] != 0)
	{
		changeWeapon(nw);
	}else{
		for (var i:int = 0; i < weapons.length; i++)
		{
			if (weapons[i] != 0)
			{
				changeWeapon(i);
 
			}
		}
	}
}
 
public function changeWeapon(num:int):void 
{
	var mm:MovieClip = mc.wpgroup.getChildByName("wp" + num);
	weaponMC = mm;
	TweenLite.to(mc.colored, 0.5, { x:weaponMC.x + mc.wpgroup.x, y:weaponMC.y + mc.wpgroup.y } );
}
Суть в том, что должно работать примерно так: повернул колесо мышки на один "щелчок" функция должна выбирать купленное, индикатор которого - это "1" в массиве "weapons",оружие .
Если функция наткнулась на 0 в массиве "weapons", то функция должна искать "1" в массиве и как только нашла, отправить индекс в спец функцию которая двигает индикатор выбранного оружия. Мой код работает криво, бывает индикатор дернулся и вернулся обратно. Подскажите, как быть?
__________________
Не стыдно спросить, стыдно не знать !