仪器社区

as2.0键盘控制元件

kiss0萌萌 2013-07-17
flash 动画上有个元件,实例名称为a。如何用as2.0脚本实现按住a键元件持续左移,松开a键元件停止移动?
评论
全部评论
陈姸CHEN
两个方法:

1.
在影片剪辑元件中,输入:

onClipEvent(keyDown){ //当影片剪辑侦测到“按键按下”
if(Key.getCode() == 37){ //如果侦测到的按键的代号是37,左箭头
this._x -= 10; //这个影片剪辑的x坐标-10,往左移动
}
}

当然你会发现这个脚本没这么好,因为不够顺畅,所以我建议你用第二种方法。

在主要时间轴加入以下脚本:

var my_mc:String = ""; //用来储存方向

接着在影片剪辑中加入:

//下面的脚本是侦测my_string的属性。比如侦测到my_mc是LEFT,就往左移动
onClipEvent (enterFrame) {
switch (my_mc) {
case "LEFT" :
this._x -= 10;
break;
case "RIGHT":
this._x +=10;
break;
case "UP":
this._y -= 10;
break;
case "DOWN":
this._y += 10;
break;
default:
//no action
break;
}
}
//下面的脚本是侦测键盘,如果是37,左,就把my_mc改成"LEFT" 。
onClipEvent(keyDown){
switch(Key.getCode()){
case 37:
my_mc = "LEFT";
break;
case 38:
my_mc = "UP";
break;
case 39:
my_mc = "RIGHT";
break;
case 40:
my_mc = "DOWN";
break;
default:
my_mc = "";
break;
}
}
onClipEvent(keyUp){
my_mc = "";
}

差不多是这样了。
20 0 2013-07-18 0条评论 回复
您可能感兴趣的社区主题
加载中...
发布 评论