在Haxe中没有库资源时无法加载

时间:2015-08-22 08:45:13

标签: haxe

我正在使用我自己制作的图书馆制作游戏。在文件中有这一行:

   $(function () {
              $("#tabs").tabs();

              $("#tabs").tabs({
                active: '@TempData["TabId"]'
               });
       });

  function btn_Save_Module() {
        $(".container").on("click", "#btn-Save-Module", function () {

            $.ajax(
                           {
                               url: '@Url.Action("CreateEditModule")',
                               dataType: 'json',
                               data: $("#Form-Module").serialize(),
                               type: 'POST',
                               success: function (result) {

                                   if (result)
                                       alert("Successfully Saved");
                                   else
                                       alert("Save Failed");


                                   location.reload();   //*see this line*


                               },
                               error: function (xhr) {
                                   alert(xhr.statusText);
                               }
                           });

        });

我使用此常量来加载图像。程序说图像为空。因此,我唯一的解决方案是将图片 public static inline var LOGO_NAME:String = "assets/images/logo.svg"; 从图书馆的logo.svg复制到游戏项目assets/images/。有没有其他方法,我不必每次制作游戏时复制图像?

1 个答案:

答案 0 :(得分:1)

从您过去的问题我很确定您使用Lime和OpenFL(这与资产的嵌入方式有关)。也可以通过"库"来猜测你的意思是haxelib。

在常规项目中,有一个project.xml文件告诉Lime要通过<assets>节点包含哪些资产。 haxelib可以定义include.xml,其行为方式非常相似,您也可以从中包含资产。它应该看起来像这样并且位于haxelib的根目录中以适用于您的用例:

<?xml version="1.0" encoding="utf-8"?>
<project>
    <assets path="assets" />
</project>

当然,您可以使用include.xml文件做更多事情(请参阅Flixel's include.xml - 它设置了一个图标,定义了一些haxedef,包括OpenFL等...)。

您可以在xml项目格式here上找到OpenFL的官方文档。