我有2个动画片段。我希望玩家可以同时控制这两个。我希望如果玩家停止拖动其中一个,另一个仍然可以由玩家控制,而另一个则不然。我怎么能这样做?
这是我的代码:
var _action1:Boolean = false;
var _action2:Booelan = false;
button1.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown);
button1.addEventListener(MouseEvent.MOUSE_UP, mouseUp);
button2.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown);
button2.addEventListener(MouseEvent.MOUSE_UP, mouseUp);
button2.addEventListener(MouseEvent.MOUSE_OUT, mouseOut); // to detect if press is out of range
function mouseDown(e:MouseEvent): void {
if (e.target == button1) {
_action1 = true;
}
if (e.target == button2) {
_action2 = true;
}
function mouseUp(e:MouseEvent): void {
if (e.target == button1) {
_action1 = false;
}
if (e.target == stage) {
_action1 = false;
}
if (e.target == button2) {
_action2 = false;
}
function mouseOut(e:MouseEvent): void {
_action2 = false;
}
我已尝试使用该代码,但效果不佳,我无法控制它们(button1
和button2
)。
+ 我希望我的应用程序适用于android
。我在我的android
上尝试了,我可以使用MouseEvent
方法控制按钮。但我只能在按钮上使用单一控件。因此,如果我想控制另一个按钮,我必须执行MOUSE_UP
,然后对我想要控制的按钮执行MOUSE_DOWN
。
答案 0 :(得分:1)
我想到的一种方法是允许用户根据按键指示要拖动哪些影片剪辑。例如,如果按下A键,则会拖动影片剪辑1,如果按下Z键,则会拖动影片剪辑2。然后,用户可以按住两个键来拖动两个影片剪辑,如果用户释放一个键,则相应的MovieClip将停止拖动。