作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是AS3的新手,但仍然想尽办法。
我正在尝试编写一个非常简单的平台游戏。目前,我正在尝试通过移动他背后的背景来使玩家看起来正在移动。因此,我制作了一个单独的.as文件,以包含进行后台移动的简单逻辑。它的标题是BG.as,以前我可以导入具有相同名称的文件,而在这方面没有任何问题,但是现在它对我来说很气质。我进入了AS3 Pref的Flash,并设置了根文件夹,包含根文件夹的文件夹甚至是保存文档本身的文件夹的文件路径。 .as文件和.fla文件都在同一文件夹中,但是仍然出现错误5001,它声明BG的名称不反射(reflect)该位置的文件。我已经尝试过将文件路径写为包的名称,依此类推。如果有人对问题可能有什么想法,我将不胜感激。
这是我的代码。
import movingBackground.BG.*;
package BG
{
import flash.events.EventDispatcher;
import flash.events.Event;
public class BG
{
public function loop(event:Event):void
{
if(leftPressed)
{
BG.x += xScrollSpeed;
}
else if(rightPressed)
{
BG.x -= xScrollSpeed;
}
else if(upPressed)
{
BG.y += yScrollSpeed;
}
else if(downPressed)
{
BG.y -= yScrollSpeed;
}
}
stage.addEventListener(Event.ENTER_FRAME, loop);
}
}
Scene 1, Layer 'Code', Frame 1, Line 6 1180: Call to a possibly undefined method bg.
Scene 1, Layer 'Code', Frame 1, Line 6 1046: Type was not found or was not a compile-time constant: bg.
Scene 1, Layer 'Code', Frame 1, Line 4 1172: Definition thebackground:bg could not be found.
Scene 1, Layer 'Code', Frame 1, Line 4 1172: Definition thebackground:bg could not be found.
import flash.events.EventDispatcher;
import flash.events.Event;
import flash.events.KeyboardEvent;
import thebackground.bg;
var testbg:bg = new bg;
var leftPressed:Boolean = false;
var rightPressed:Boolean = false;
var upPressed:Boolean = false;
var downPressed:Boolean = false;
testbg.moveBackGround();
package thebackground
{
import flash.events.EventDispatcher;
import flash.events.Event;
import flash.display.MovieClip;
public class bg extends MovieClip
{
var xScrollSpeed:int = 10;
var yScrollSpeed:int = 10;
public function moveBackGround(event:Event):void
{
if(leftPressed)
{
BG.x += xScrollSpeed;
}
else if(rightPressed)
{
BG.x -= xScrollSpeed;
}
else if(upPressed)
{
BG.y += yScrollSpeed;
}
else if(downPressed)
{
BG.y -= yScrollSpeed;
}
}
}
}
最佳答案
您在类(class)中的包裹无法反射(reflect)您的导入。
您的类文件定义中的软件包应为movingBackground.BG
,否则您将收到一条错误消息,说它不匹配。
如果为了避免混淆,别无选择,则将包的名称与类的名称相同也不是一个好主意。
我也看到,您也没有BG类的构造函数。
绝对要看一看对此答案的第一条评论,因为它有助于利用标准命名约定。跟随他们很有值(value)。
关于actionscript-3 - AS3尝试导入另一个.as文件时出现错误5001,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20079418/
我是一名优秀的程序员,十分优秀!