Actionscript 3 尝试访问flashpunk中图像的图形属性时出现错误1119?
我创建了一个新实体,并将实体图形定义为来自嵌入图像文件的新图像Actionscript 3 尝试访问flashpunk中图像的图形属性时出现错误1119?,actionscript-3,flash,actionscript,flash-builder,Actionscript 3,Flash,Actionscript,Flash Builder,我创建了一个新实体,并将实体图形定义为来自嵌入图像文件的新图像 graphic = new Image(PLAYER); 播放器是一个嵌入式图像,现在既然图形就是这个图像,我应该可以做像centerOrigin()或angle()这样的事情,但我不能?它在Flash IDE中工作,但现在我已经切换到Flash Builder使用flashpunk,它给我一个错误1119,无法通过静态类型net访问属性centerOrigin()。flashpunk:Graphic 我做错了什么?很多教程都说它
graphic = new Image(PLAYER);
播放器是一个嵌入式图像,现在既然图形就是这个图像,我应该可以做像centerOrigin()或angle()这样的事情,但我不能?它在Flash IDE中工作,但现在我已经切换到Flash Builder使用flashpunk,它给我一个错误1119,无法通过静态类型net访问属性centerOrigin()。flashpunk:Graphic
我做错了什么?很多教程都说它应该可以工作。如果它应该工作,但问题是环境而不是我的程序,那么什么是解决方法
这是我的实际代码:
public class Projectile extends Entity{
public var bearingIN:Number;
public var speedIN:Number;
public function Projectile(bearing,speed,gunX,gunY) {
setHitbox(2,2);
bearingIN = bearing;
speedIN = speed;
graphic = new Image(new BitmapData(8,1,false,0xFFFF32));
type = "projectile";
graphic.centerOrigin();
graphic.angle = (bearing / (Math.PI/180))*-1;
layer = 255
x = gunX + 16;
y = gunY + 16;
addTween(new Alarm(20,removeProj,2), true);
}
private function removeProj(){
FP.world.remove(this);
}
public override function update():void{
x += Math.cos(bearingIN)*speedIN;
y += Math.sin(bearingIN)*speedIN;
if(collide("wall",x,y)){
removeProj();
}
}
}
实体
类的属性属于图形
类型。但是,该类没有名为centerOrigin
的方法,只有Image
有。所以你需要投下它。对带有centerOrigin()
的行执行此操作:
对于
角度
你也必须做同样的事情。首先,发布你的代码。您的错误是针对centerOrigin()
,但您尚未发布该代码。根据错误描述,最有可能的情况是,您错误地试图在类本身上调用该函数(就像它是静态函数一样),而不是在类的实例上调用该函数。
((Image)graphic).centerOrigin();