Actionscript 3 移动实体的问题
我目前正在尝试适应FlashDevelop,但在移动实体时遇到了困难,尽管我非常仔细地学习了教程Actionscript 3 移动实体的问题,actionscript-3,Actionscript 3,我目前正在尝试适应FlashDevelop,但在移动实体时遇到了困难,尽管我非常仔细地学习了教程 public class Main extends Engine { private var gameWorld:MyWorld; public function Main() { super(800, 600, 60, false); gameWorld = new MyWorld; } override public
public class Main extends Engine
{
private var gameWorld:MyWorld;
public function Main()
{
super(800, 600, 60, false);
gameWorld = new MyWorld;
}
override public function init():void
{
FP.world = gameWorld;
trace("FlashPunk has started successfully!");
}
}
public class MyWorld extends World
{
private var gameEntity:MyEntity;
public function MyWorld()
{
gameEntity = new MyEntity();
add(gameEntity);
}
override public function update():void
{
//trace("MyEntity updates");
}
}
public class MyEntity extends Entity
{
[Embed(source = "dragon.png")] private const PLAYER:Class;
public function MyEntity()
{
name = "player";
graphic = new Image(PLAYER);
}
override public function update():void
{
x += 10;
y += 5;
//if (Input.check(Key.LEFT)) { x -= 5; }
//if (Input.check(Key.RIGHT)) { x += 5; }
//if (Input.check(Key.UP)) { y -= 5; }
//if (Input.check(Key.DOWN)) { y += 5; }
}
override public function added():void
{
trace("Entity added");
}
}
它应该在屏幕上移动,但由于某种原因不能移动。有什么想法吗?在您提供的代码中,没有调用您的实体
update()
谢谢,我该怎么做?抱歉,完全是新手。这取决于您希望更新功能如何运行。如果你想让它运行每一帧,那么它应该绑定到一个事件。输入帧,就像在addEventListener(Event.ENTER\u frame,runUpdates)
中那样,然后你创建一个函数runUpdates(e:Event)
,在它里面调用gameEntity.update()
。我假设,因为您使用的是flash朋克,所以可能会有一些调用更新函数的自动过程,我个人不知道,因为我没有使用该引擎。我将super.update()添加到我的MyWorld类中,它可以工作。谢谢你的帮助。