Actionscript 3 AS3级公共中庭
每当我尝试运行游戏时都会出错。对于每个类,我都会得到错误,表示public属性只能在包内使用,在这一行中,与“private function moveMe”一起使用“private属性只能在类函数上使用”。我验证了as文件是否链接正确。我不确定是什么问题Actionscript 3 AS3级公共中庭,actionscript-3,Actionscript 3,每当我尝试运行游戏时都会出错。对于每个类,我都会得到错误,表示public属性只能在包内使用,在这一行中,与“private function moveMe”一起使用“private属性只能在类函数上使用”。我验证了as文件是否链接正确。我不确定是什么问题 package { import flash.display.MovieClip; import flash.utils.Timer; import flash.events.TimerEve
package {
import flash.display.MovieClip;
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.events.MouseEvent;
import flash.events.Event;
import flash.events.Event;
public class banana_fall extends MovieClip {
public function banana_fall (){
var velX:Number=0;
var velY:Number=0;
var falling:Boolean=false;
var gravity:Number=2;
public function banana() {
var timing:Timer = new Timer(20,0);
timing.addEventListener(TimerEvent.TIMER,moveMe);
timing.start();
}
private function moveMe(event:TimerEvent){
this.x=this.x+velX;
this.y=this.y+velY;
if (falling) {
velY=velY+gravity;
}
}
public function setSpot(atX,atY){
this.x=atX;
this.y=atY;
}
//
public function setSpeed(dx,dy){
velX=dx;
velY=dy;
}
}
}
}
问题是您的公共函数在构造函数中,而构造函数在as3中不起作用。 请尝试以下代码:
package {
import flash.display.MovieClip;
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.events.MouseEvent;
import flash.events.Event;
import flash.events.Event;
public class banana_fall extends MovieClip {
var velX: Number = 0;
var velY: Number = 0;
var falling: Boolean = false;
var gravity: Number = 2;
public function banana_fall() {
var timing: Timer = new Timer(20, 0);
timing.addEventListener(TimerEvent.TIMER, moveMe);
timing.start();
}
private function moveMe(event: TimerEvent) {
this.x = this.x + velX;
this.y = this.y + velY;
if (falling) {
velY = velY + gravity;
}
}
public function setSpot(atX, atY) {
this.x = atX;
this.y = atY;
}
//
public function setSpeed(dx, dy) {
velX = dx;
velY = dy;
}
}
}