Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flash 玩家精灵不出现_Flash_Actionscript 3_Actionscript - Fatal编程技术网

Flash 玩家精灵不出现

Flash 玩家精灵不出现,flash,actionscript-3,actionscript,Flash,Actionscript 3,Actionscript,首先让我说我对flash开发是完全陌生的,但不是OOP。我的任务是以面向对象的方式创建一个实时(即使用游戏循环)Flash游戏。我一直在网上阅读指南,我想我已经掌握了基本知识,但是我的玩家精灵没有出现 我将一个图像导入到Flash中,然后将其转换为一个名为Player的符号,现在它是一个电影剪辑。我将其导出为ActionScript,并调用类com.Player 此外,我还将文档的类设置为com.Engine(我计划在这里进行游戏循环并调用其他类的方法) 然后,我在与我的.fla相同的目录中创建

首先让我说我对flash开发是完全陌生的,但不是OOP。我的任务是以面向对象的方式创建一个实时(即使用游戏循环)Flash游戏。我一直在网上阅读指南,我想我已经掌握了基本知识,但是我的玩家精灵没有出现

我将一个图像导入到Flash中,然后将其转换为一个名为
Player
的符号,现在它是一个电影剪辑。我将其导出为ActionScript,并调用类
com.Player

此外,我还将文档的类设置为
com.Engine
(我计划在这里进行游戏循环并调用其他类的方法)

然后,我在与我的
.fla
相同的目录中创建了一个名为
com
的目录。在该目录中,我创建了
引擎.as
播放器.as
,下面是它们的代码:

package com {
    import flash.display.MovieClip;
    import flash.display.Stage;

    public class Engine extends MovieClip {
        public function Engine() {
            // Create a player instance
            var player:Player = new Player();
            stage.addChild(player);
            player.x = stage.stageWidth / 2;
            player.y = stage.stageHeight / 2;

        }
    }
}
--

据我所知,当我运行播放器时,它应该会出现在屏幕中央,但事实并非如此。我已经验证了正在使用
跟踪(“hello world”)
调用
引擎
类和构造函数,并得到了该输出。我还知道
Player
类的构造函数正在使用相同的方法调用。我只是不明白为什么播放器没有出现在屏幕上

如果我将
播放器
符号(正确的术语?)从我的库拖到舞台上,播放器精灵就会出现。。。所以我知道有一张图片附在上面


有人知道会出什么问题吗?提前谢谢:)

你的玩家精灵中有什么东西吗?如果您在.fla文件或其他文件中制作了精灵,则应扩展该名称,以便:

公共级别球员在你的佛罗里达州扩展了球员的职业道德

或者,您应该尝试在您的玩家类中绘制一些图形,以检查您的类是否实际显示:

public class Player extends MovieClip()
{
    this.graphics.beginFill(0x00FF00);
    this.graphics.drawRect(0,0,100,100);
    this.graphics.endFill();
} 

还要确保添加了所有正确的导入:)

如果右键单击库中的播放器符号,然后转到“属性…”,是否选中了“为ActionScript导出”,并且在“类”字段中,是否看到“com.Player”?是和是:)尽管它没有基类,这有关系吗?基类应该是
flash.display.MovieClip
。我不确定是否可以从它自己的类中将它添加到stage中?尝试从实际拥有舞台的主程序添加到舞台。(我根本不确定这是否是问题,但值得一试)它不允许我将其更改为
flash.display.MovieClip
,当我输入该选项并选择OK,然后重新打开属性窗口时,该字段再次为空。如果我验证基类定义,它会说
指定的基类是本机类,将在运行时在播放器中定义。它无法编辑。
public class Player extends MovieClip()
{
    this.graphics.beginFill(0x00FF00);
    this.graphics.drawRect(0,0,100,100);
    this.graphics.endFill();
}