![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Sep 2010
Адрес: Moscow
Сообщений: 473
|
В персонаже при нажатие кнопки идет анимации ходьбы,во время нее жму кнопку стрельбы ,персонаж стреляет, но перестает идти,как исправить? кто сталкивался с такой проблемой?
|
|
|||||
|
Регистрация: Sep 2010
Адрес: Moscow
Сообщений: 473
|
у меня такая структура мувиков
Игрок : { Персонаж : { Бежит, Стоит }, Оружие : { Стреляет, Не стреляет } } |
|
|||||
|
Видимо проблема в том, что вы слушаете нажатие одной кнопки и исходя из кода в предыдущем вопросе : у вас выполняется одно действие.
__________________
Gamedev != Gaming (http://twitter.com/#!/GenzoDev). Don't forget to [+] if it works. |
|
|||||
|
Регистрация: Sep 2010
Адрес: Moscow
Сообщений: 473
|
а как по другому сделать?
|
|
|||||
|
Вешать слушатели на нажатие и подъем кнопки и на нажатие начинать действие, при отпускании кнопки окончить
__________________
Gamedev != Gaming (http://twitter.com/#!/GenzoDev). Don't forget to [+] if it works. |
|
|||||
|
Регистрация: Sep 2010
Адрес: Moscow
Сообщений: 473
|
ну у меня и так там есть эти события
|
|
|||||
|
Цитата:
И где там это обрабатывается? Там проверяется нажатие клавиши как я понял..
__________________
Gamedev != Gaming (http://twitter.com/#!/GenzoDev). Don't forget to [+] if it works. |
|
|||||
|
Регистрация: Sep 2010
Адрес: Moscow
Сообщений: 473
|
package Maps { import flash.display.MovieClip; import flash.geom.Rectangle; import flash.events.*; import flash.ui.Keyboard; import MainPers.MainPers; /** * ... * @author Zephyr */ public class Basic_map extends MovieClip { private var _locations:int; private var _shag:Boolean = false; private var _speed:int = 10; private var rect:Rectangle; private var keyCode1:int = 0; private var keyCode2:int = 0; private var _shot:Boolean; private var _load:int = 1; private var flag:Boolean = false; private var dvigl:Boolean = false; private var dvigr:Boolean = false; private var shoo:Boolean = false; public function Basic_map() { this.scrollRect = new Rectangle(0, 0, this.width, 420); rect = this.scrollRect; trace(this.scrollRect); this.cacheAsBitmap = true; Game.gameLink.stage.addEventListener(KeyboardEvent.KEY_DOWN, onGo); Game.gameLink.stage.addEventListener(KeyboardEvent.KEY_UP, onStop); } public function Update():void { if (_shag == true) // Код - ходьба перса { if (shoo ) { Game.gameLink.currLevel.mp.shoot(); } if (dvigr) { Game.gameLink.currLevel.mp.Per_cont.gotoAndStop(2); Game.gameLink.currLevel.mp.scaleX = 1; rect.x += _speed; this.scrollRect = rect; } if (dvigl) { Game.gameLink.currLevel.mp.Per_cont.gotoAndStop(2); Game.gameLink.currLevel.mp.scaleX = -1; rect.x -= _speed; this.scrollRect = rect; } } } public function set setLoc(value:int) { this.x = value; } public function onGo(e:KeyboardEvent):void { trace(e.keyCode); _shag = true; if (e.keyCode == 37 ) dvigl = true; if (e.keyCode == 39 ) dvigr = true; if (e.keyCode == 81) shoo = true; } public function onStop(e:KeyboardEvent):void { keyCode1 = 2; keyCode2 = 2; dvigl = false; shoo = false; dvigr = false; _shag = false; Game.gameLink.currLevel.mp.Per_cont.gotoAndStop(1); Game.gameLink.currLevel.mp.reload(); } } } |
|
|||||
|
У вас на нажатие клавиши проверяется какое действие начать, а при отпускании отменяются все действия
__________________
Gamedev != Gaming (http://twitter.com/#!/GenzoDev). Don't forget to [+] if it works. |
![]() |
![]() |
Часовой пояс GMT +4, время: 12:30. |
|
|
« Предыдущая тема | Следующая тема » |
|
|