带 Loader 的外部游戏在 Flash、Action Script 3 中不起作用

Posted

技术标签:

【中文标题】带 Loader 的外部游戏在 Flash、Action Script 3 中不起作用【英文标题】:External game with Loader doesn't work in Flash, Action Script 3 【发布时间】:2012-10-21 12:38:56 【问题描述】:

我想将一个 3rd 方游戏加载到我自己的 swf 中,以便为它拍照。我在加载部分使用标准的flash.display.Loader 类。

第 3 方游戏示例:http://andkon.com/arcade/adventureaction/megaminer/megaminer.swf

Embedding 在 html 文档中似乎可以正常工作,但不适用于 Loader

所以它显然在一种情况下有效,必须有一种方法来使用 ActionScript 加载它,就像简单的 html <embed> 一样。

没有错误消息,Event.COMPLETE 触发,但游戏卡在加载屏幕。

(旁注:我有一个可以完美加载一些游戏的工作脚本,但有些像这样的游戏无法正确加载。我还在 php 中设置了一个代理来解决跨域权限错误)

【问题讨论】:

很想知道实际发生了什么:您是否收到错误,加载程序是否说它加载了内容,等等。 可能他们不希望你这样做并且有适当的代码来阻止你这样做,但他们可能已经做了一些事情,比如使用 Singletons 或引用了根,这会导致它不加载您的瑞士法郎。或者它只是 Actionscript 的不同版本,可能不兼容。 @SunilD。我看不到任何错误消息,并且 Event.COMPLETE 为加载程序触发。但是游戏没有启动它只是停留在加载屏幕上。基本上看起来和在浏览器中访问 URL 时一样。 【参考方案1】:

在我看来,它加载得很好(当您直接链接到游戏时,它仍然停留在加载屏幕上,这表明这是正确的行为)。

所以问题不在于加载,而在于您将其加载到的包装器。当您在托管的任何网站上查看它时,您很可能正在查看将游戏加载到其中的包装 swf - 根据托管它的网站的指南,包装 swf 将调用 start 函数或类似的东西来启动它。您需要查看需要在 swf 上调用什么来启动它。

您也许可以查看托管它的网站,看看他们是否公开发布了针对游戏开发者的指导方针,但我环顾四周,看起来不像。

或者你可以反编译包装器 swf 并查看它正在调用什么函数......虽然我不保证他们会同意你这样做。


所以没有 wrapper swf... 也许游戏在开始之前会检查它的宽度和高度是否与预定义的大小匹配?

【讨论】:

以上是关于带 Loader 的外部游戏在 Flash、Action Script 3 中不起作用的主要内容,如果未能解决你的问题,请参考以下文章

flash.display.Loader 间歇性地导致加载的 swf 的子级松散类型

flash as3 图片展示将鼠标移到图片上就显示文字,然后再点击文字后移除并且显示下一张图片

在安装stm32 Flash Loader Demo烧录软件出现的错误!!!

在 Activity 中初始化 Loader

加载外部 SWF 会导致“找不到资源包消息”错误

flash builder 您的二进制文件未针对 iPhone 5 进行优化,Application Loader,错误