【问题标题】:What is the equivalent of the Adobe Flash symbol library for Haxe?什么是 Haxe 的 Adob​​e Flash 符号库的等价物?
【发布时间】:2017-10-13 22:44:35
【问题描述】:

在得知 Flash 的消亡后,我正试图跨界使用 HaxeFlixel,但我不完全确定如何在两者之间架起桥梁。我目前在 Mac 上使用 Visual Studio Code。

在 Flash(现在的 Animate CC)中,您有一个充满符号的库:

您可以右键单击并编辑这些符号,例如设置基类:

我的项目文件夹中有所有 .as 基类,每个基类都控制符号。当我在 VSC 中时,我可以创建 .hx 文件,并且我有一个专用于图像的文件夹,其中包含我所有的游戏位图。从那里,我不知道如何重新创建我的游戏。在 Haxe 中编码时,我可以为其分配基类的符号库是什么?

【问题讨论】:

    标签: actionscript-3 flash haxe haxeflixel


    【解决方案1】:

    您可以将在 Animate 中创建的资源与 Haxe 库 OpenFL 结合使用。以下是如何做到这一点的概述:http://blog.peteshand.net/load-swfswc-assets-into-haxe-flash-or-html5-targets/

    【讨论】:

    • 您也可以使用 swflib,它提供了从 swf 文件加载资源的功能
    【解决方案2】:

    【讨论】:

      【解决方案3】:

      在 OpenFL 中没有您所知道的 Flash 库。如果您寻找“原生”OpenFL 资产处理,请查看 openfl.Assets 类。它提供了加载和解析多种资产文件格式的功能。

      如果您的 HaxeFlixel 项目需要一个允许您扩展精灵基本功能的类,您可以扩展 FlxSprite 并在构造函数中加载图形/精灵表:

      class Block extends FlxSprite{
        public function new(){
          super();
          loadGraphic("assets/images/block.png", false, 64, 64);
        }
      }
      

      您不想扩展而只是将位图/精灵表加载到 FlxSprite 中?差别不大:

      var block = new FlxSprite();
      block.loadGraphic("assets/images/block.png");
      add(block);
      

      另见:

      【讨论】:

      • 是的,尝试像在 Flash ide 中那样做可能不是最好的方法。我宁愿尝试按照 Haxe 中的预期方式进行操作。我要先做教程游戏,但既然你不能有以基类为目标的库对象,那么为敌人制作单独的类还有意义吗?在我的 Flash 游戏中事情变得相当复杂,所以我希望我可以在 Haxe 中重新创建它而不会遇到太多麻烦。我不知道为什么人们认为 Flash 用户会喜欢迁移到 Haxe..
      • 很难判断在不了解您的项目的情况下创建单独的类是否有意义。如果您只使用类名来实例化精灵,则第二个 HaxeFlixel 选项将起作用。从您的 Flash 代码创建 Haxe 项目需要一些时间,但通常是可行的。尽管需要一些学习努力,OpenFL 不是 Flash,尽管 API 有很多相似之处,但您在切换平台/语言时会发现差异。
      • 难道没有意义吗?如果您的游戏中有 50 个不同的敌人,您将从扩展 GameObject 的 Enemy 类文件开始,然后您可以进一步分解它。游戏对象 >> 敌人 >> FlyingEnemy。从那里,您可以将任何飞行的敌人的 Linkage 名称设置为 FlyingEnemy,该类将控制它们。如果您希望他们做其他事情,请进一步分解。对于复杂的 Boss 敌人,我有整个类文件专门用于他们。游戏对象 >> 敌人 >> DragonBoss。这行得通,很容易编辑,直到现在我才意识到它对人们来说听起来多么陌生
      • 你仍然可以这样做,只是不像实体组件系统那样灵活:en.wikipedia.org/wiki/Entity–component–system。真的取决于您的要求和偏好。
      猜你喜欢
      • 2016-06-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-06
      • 2012-05-17
      相关资源
      最近更新 更多