|
|
|||||
Регистрация: Dec 2010
Сообщений: 7
|
мультитач
Добрые люди, столкнулся с такой проблемой, есть джойстик который управляет объектом и отдельно кнопка (стрелять например). Джойстик работает норм как ток нажимаю стрельнуть отменяется действие джойстика и кнопка стрельнуть не выполняет событие.
долез вроде Multitouch.inputMode = MultitouchInputMode.GESTURE; че делать с ним не пойму. уже вникаю вникаю. |
|
|||||
Регистрация: Dec 2010
Сообщений: 7
|
да слушаю touchevent щас нашел пример через TOUCH_POINT по тихоньку получается но хочу более опытных людей так сказать направить меня в правильное плаванье
Добавлено через 24 минуты мне надо чтоб во время работы джойстика нажималась кнопка не врублюсь че дальше делать. |
|
|||||
Lorem ipsum
|
Тебе поможет touchPointID (пример там глянь).
__________________
Поймай яблоко 2! |
|
|||||
Регистрация: Dec 2010
Сообщений: 7
|
вобщем получилось че хотел ток это так пробник надо как то уйти от имен. Подскажите что подкорректировать или более правильный способ реализации этой задачи.
djostik.kontroler.x = djostik.kontrol_zone.width/2-djostik.kontroler.width/2; djostik.kontroler.y = djostik.kontrol_zone.height/2-djostik.kontroler.height/2; var massArray:Array; massArray = []; Multitouch.inputMode = MultitouchInputMode.TOUCH_POINT; this.stage.addEventListener(TouchEvent.TOUCH_BEGIN, eventTouchBegin); this.stage.addEventListener(TouchEvent.TOUCH_END, eventTouchEnd); function eventTouchBegin(e:TouchEvent): void { if(e.type == "touchBegin"){ if(e.target.name == "kontroler"){ startPosition = e.stageX-startPositionCenterKontrolerX; this.stage.addEventListener(TouchEvent.TOUCH_MOVE, eventMove); massArray[e.touchPointID] = "kontroler"; } else if(e.target.name == "attack"){ eventAttack(); } } else{ } } function eventTouchEnd(e:TouchEvent): void { n += 1; ata.text = n +" : "+massArray[e.touchPointID]; if(massArray[e.touchPointID] == "kontroler"){ this.stage.removeEventListener(TouchEvent.TOUCH_MOVE, eventMove); djostik.kontroler.x = startPositionCenterKontrolerX-djostik.kontroler.width; delete massArray[e.touchPointID]; timer.stop(); } } function eventAttack(): void { } var centerJostika:Number = djostik.kontroler.x; var moveActions:String = "center"; var timer:Timer = new Timer(10); timer.addEventListener(TimerEvent.TIMER, eventTimer); var rightEndPosition:Number = djostik.x+djostik.width; var startPosition:Number; var startPositionCenterKontrolerX:Number = djostik.x+djostik.kontroler.x+djostik.kontroler.width/2; var n:Number = 0; function eventMove(e:TouchEvent): void { //function eventMove(e:MouseEvent): void { if((e.stageX-startPosition > djostik.x) && (e.stageX-startPosition < rightEndPosition)){ djostik.kontroler.x = e.stageX-startPosition-djostik.kontroler.width; if(djostik.kontroler.x < centerJostika/2){ moveActions = "left"; } else if(djostik.kontroler.x > centerJostika+centerJostika/2){ moveActions = "right"; } else{ moveActions = "center"; } timer.start(); } } function eventTimer(e:TimerEvent):void{ switch(moveActions){ case "right": telo.x +=5; break; case "left": telo.x -=5; break; case "center": timer.stop(); break; } } Спасиб уже получилось завтра доковыряю до норм вида. |
|
|||||
буду краток
модератор форума
Регистрация: Sep 2003
Адрес: Ближайшее Замкадье
Сообщений: 3,110
Записей в блоге: 28
|
Сразу хочется стукнуть чем нибудь тяжёлым.
Уж опеределитесь jostik,djostik или всё таки joystick
__________________
Отряд Котовскага |
Часовой пояс GMT +4, время: 03:55. |
|
« Предыдущая тема | Следующая тема » |
|
|