| mihael_p |
22.08.2012 17:12 |
Выбор оружия 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" в массиве и как только нашла, отправить индекс в спец функцию которая двигает индикатор выбранного оружия. Мой код работает криво, бывает индикатор дернулся и вернулся обратно. Подскажите, как быть?
|