【问题标题】:Creating New Stage in Flash在 Flash 中创建新阶段
【发布时间】:2014-09-30 00:02:00
【问题描述】:

好的,我一直在关注一些关于 Flash 游戏开发的教程。其中一些提到创建一个新阶段而不是默认阶段,但没有详细介绍它们或如何创建它们。

其中一个教程的示例。

“内容层存储 mcGameStage 将在其中进行 Flash 游戏。请注意,我们正在使用这个名为 mcGameStage 的单独电影剪辑来让所有动作发生。在某种程度上,您将在稍后看到好处我们需要滚动内容,或者完全删除游戏元素。这比将所有内容加载到舞台本身效果更好。”

我不确定这里发生了什么,希望能得到一点澄清。

【问题讨论】:

    标签: flash stage


    【解决方案1】:

    本教程建议您将游戏内容添加到您的 mcGameStage 实例中。

    默认情况下,您始终在应用程序中拥有主舞台,然后您将 mcGameStage 添加到主舞台,这将是一个容器,将容纳您游戏的所有显示对象。然后将任何视觉元素添加到 mcGameStage。教程说如果您将它们全部添加到 mcGameStage 容器中,操作它们会容易得多。

    除此之外,您永远无法实际创建除默认设置之外的另一个“舞台”,该舞台是独一无二的,无法以这种方式进行操作。

    如果您要使用主文档类,实际上会发生这种情况。您的主要班级是舞台的孩子。

    一种开始方式,您可以创建一个基本的SpriteMovieClip 对象。 sprite 是一个非常基本的容器,您可以使用它来满足您的基本需求,包括分层和交互。 Sprite 和 MovieClip 的区别在于 Sprite 没有时间轴。

    var gameContainer:Sprite = new Sprite()
    stage.addChild(gameContainer:Sprite)

    然后您可以将任何游戏元素添加到您的游戏容器中。

    但是,我不想让您感到困惑。在学习的这一点上,直接在舞台上工作本身并没有错。当您尝试将此 .swfs 动态加载到您的应用程序中时,就会出现问题。

    另一种方法是使用 Flash 文件的 Document Class。假设您使用的是 Flash IDE,只需在属性面板中创建一个自定义文档类并进行处理。该类会自动添加到舞台上。点击 Class: 字段旁边的铅笔图标,为您的文档类(我们称之为游戏)选择一个名称,然后创建它。

    你最终会得到如下所示的东西:

    package  {
        import flash.display.MovieClip;
        public class Game extends MovieClip {
            public function Game() {
                //Things happen
            }
        }
    }
    

    【讨论】:

    • 好的,感谢您的澄清和回答我的其他问题!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-12
    • 2017-05-20
    • 2012-12-09
    • 2020-01-18
    相关资源
    最近更新 更多