无法在flash中单击某个类,无法在类.as文件中单击EventListener:C

时间:2014-11-13 00:40:11

标签: actionscript-3 flash flash-cs6

好吧所以我整天都努力让敌人出现在我的flash游戏中,这个游戏会在一定数量的点击后消失,但是我知道我无法点击主文件中的EnemyShip,所以我必须将click侦听器添加到.as包文件中。当我尝试这样做时,我收到错误5006:一个Actionscript文件不能有多个外部可见的定义:clickCount,EnemyShip。

研究表明这是某种花括号格式错误,但老实说,我不知道该怎么做。 :c请帮忙!请使用简单的单词,我是Actionscript 3; 0;

的菜鸟
package{

import flash.display.MovieClip;
import flash.events.Event;
import flash.events.MouseEvent
var clickCount:int = 0;
public class EnemyShip extends MovieClip{


    public function EnemyShip(){

        this.x = 900;
        this.y = 214;

        addEventListener("enterFrame", enterFrame);
        addEventListener(MouseEvent.CLICK, addClick);

    }

function addClick(event:MouseEvent):void {
  clickCount++;
  trace ("clickage");
}
    function enterFrame(e:Event):void{


        if(this.x < -100){
            removeEventListener("enterFrame", enterFrame);
            stage.removeChild(this);
        }

    }

}

}

2 个答案:

答案 0 :(得分:0)

你的问题可能就在这一行:

var clickCount:int = 0;

它不包含在您的类中,并且与导入一起使用。所有代码都需要包装在类声明中。

如果您移动该行以使其在您的班级中,则该错误应该消失。

package{

import flash.display.MovieClip;
import flash.events.Event;
import flash.events.MouseEvent

public class EnemyShip extends MovieClip {
    private var clickCount:int = 0;

....rest of code

答案 1 :(得分:0)

没关系,我弄明白发生了什么。命中剪辑不在主舞台上,它包含在影片剪辑中。我将动作脚本和命中剪辑移动到主舞台上并收到了一条曲目。