Actionscript 3 Flash Actionscript游戏-添加新关键帧后角色不移动
我对actionscript真的是一个新手,我在为学校做的一个项目上遇到了问题。使我的角色移动(右、左、上、下)的代码工作正常,但随后我在项目开始时添加了一个新的关键帧,并创建了一个场景来选择角色。我已经完全按照我的老师给我们展示的那样设置了它,但是现在新的关键帧已经存在,我单击角色,它进入游戏,但是角色无法移动。任何帮助都将不胜感激 以下是第一个关键帧的代码:Actionscript 3 Flash Actionscript游戏-添加新关键帧后角色不移动,actionscript-3,flash,Actionscript 3,Flash,我对actionscript真的是一个新手,我在为学校做的一个项目上遇到了问题。使我的角色移动(右、左、上、下)的代码工作正常,但随后我在项目开始时添加了一个新的关键帧,并创建了一个场景来选择角色。我已经完全按照我的老师给我们展示的那样设置了它,但是现在新的关键帧已经存在,我单击角色,它进入游戏,但是角色无法移动。任何帮助都将不胜感激 以下是第一个关键帧的代码: stop (); mc_fox.visible = false; import flash.events.Event; import
stop ();
mc_fox.visible = false;
import flash.events.Event;
import flash.events.MouseEvent;
btn_fox.addEventListener(MouseEvent.CLICK,btn_foxHandler);
function btn_foxHandler(event:MouseEvent):void
{
gotoAndStop(2);
}
以及第2帧中的代码:
import flash.events.KeyboardEvent;
import flash.ui.Keyboard;
mc_fox.stop ();
var move:uint = 0;
stage.addEventListener (KeyboardEvent.KEY_DOWN, keydownHandler);
stage.addEventListener (KeyboardEvent.KEY_UP, keyupHandler);
function keyupHandler (event:KeyboardEvent) :void {
if (event.keyCode == Keyboard.RIGHT){
move = 0
mc_fox.gotoAndStop (1);
}
else if (event.keyCode == Keyboard.LEFT){
move = 0
mc_fox.gotoAndStop (15);
}
else if (event.keyCode == Keyboard.UP){
move = 0
mc_fox.gotoAndStop (30);
}
else if (event.keyCode == Keyboard.DOWN){
move = 0
mc_fox.gotoAndStop (45);
}
}
function keydownHandler (event:KeyboardEvent) :void {
if(event.keyCode == Keyboard.RIGHT && mc_fox.x < 889) {
if (move ==0){
mc_fox.gotoAndPlay (1);
move = 1
}
else {
mc_fox.x = mc_fox.x + 5;
mc_fox.play ();
}
}
else if(event.keyCode == Keyboard.LEFT && mc_fox.x > 111) {
if (move ==0){
mc_fox.gotoAndPlay (15);
move = 1
}
else {mc_fox.x = mc_fox.x - 5;
mc_fox.play ();
}
}
else if (event.keyCode == Keyboard.UP && mc_fox.y > 270) {
if (move ==0){
mc_fox.gotoAndPlay (30);
move = 1
}
else{mc_fox.y = mc_fox.y - 5;
mc_fox.width = mc_fox.width - .9;
mc_fox.height = mc_fox.height - .9;
mc_fox.play();
}
}
else if (event.keyCode == Keyboard.DOWN) {
if (move ==0){
mc_fox.gotoAndPlay (45);
move = 1
}
else{mc_fox.y = mc_fox.y + 5;
mc_fox.width = mc_fox.width + .9;
mc_fox.height = mc_fox.height + .9;
mc_fox.play();
}
}
}
导入flash.events.KeyboardEvent;
导入flash.ui.Keyboard;
mc_fox.stop();
变量移动:uint=0;
stage.addEventListener(KeyboardEvent.KEY_DOWN,keydownHandler);
stage.addEventListener(KeyboardEvent.KEY\u UP,keyupHandler);
函数keyupHandler(事件:KeyboardEvent):void{
if(event.keyCode==Keyboard.RIGHT){
移动=0
mc_fox.gotoAndStop(1);
}
else if(event.keyCode==Keyboard.LEFT){
移动=0
mc_fox.gotoAndStop(15);
}
else if(event.keyCode==Keyboard.UP){
移动=0
mc_fox.gotoAndStop(30);
}
else if(event.keyCode==Keyboard.DOWN){
移动=0
mc_fox.gotoAndStop(45);
}
}
函数keydownHandler(事件:KeyboardEvent):void{
if(event.keyCode==Keyboard.RIGHT&&mc_-fox.x<889){
如果(移动==0){
mc_fox.gotoAndPlay(1);
移动=1
}
否则{
mc_-fox.x=mc_-fox.x+5;
mc_fox.play();
}
}
else if(event.keyCode==Keyboard.LEFT&&mc_-fox.x>111){
如果(移动==0){
mc_fox.gotoAndPlay(15);
移动=1
}
else{mc_-fox.x=mc_-fox.x-5;
mc_fox.play();
}
}
else if(event.keyCode==Keyboard.UP&&mc_-fox.y>270){
如果(移动==0){
mc_fox.gotoAndPlay(30);
移动=1
}
else{mc_-fox.y=mc_-fox.y-5;
mc_fox.width=mc_fox.width-.9;
mc_fox.height=mc_fox.height-.9;
mc_fox.play();
}
}
else if(event.keyCode==Keyboard.DOWN){
如果(移动==0){
mc_fox.gotoAndPlay(45岁);
移动=1
}
else{mc_-fox.y=mc_-fox.y+5;
mc_fox.width=mc_fox.width+.9;
mc_fox.height=mc_fox.height+.9;
mc_fox.play();
}
}
}
无法移动或根本不可见?你不要错过一只狐狸。可见=真实;第二帧?你好,菲拉蒙,谢谢你的回复。在第2帧上可以看到mc_-fox,它只是不会移动。我看到的另一件事是,当你按下例如,右键时,你正在检查mc_-fox.x是否<889,然后你检查它是否已经移动(它是0),不要移动它,而是执行mc_-fox.gotoAndPlay(1);看起来你需要按住按钮才能移动?