编程语言
首页 > 编程语言> > javascript-如何成功将AppWarp集成到ActionScript 3代码?

javascript-如何成功将AppWarp集成到ActionScript 3代码?

作者:互联网

我想为Facebook创建Flash多人游戏.我已经完成了游戏代码,只是我不知道如何正确集成AppWarp.

我已经在AppHq上创建了应用程序,并具有Api和密钥,还创建了一个具有房间ID的房间.

在我的主类ActionScript 3.0代码中,当我尝试使用此代码时:

    public class Script extends MovieClip
    {
        public var roomID:String = "my room id";  
        private var apiKey:String = "my api key"  
        private var secretKey:String = "my secret"; 
        private var listener:AppWarpListener;
    }
            public function Script()
        {
            WarpClient.initialize(apiKey, secretKey);      
            WarpClient.getInstance().setConnectionRequestListener(listener);  
            WarpClient.getInstance().setRoomRequestListener(listener);  
            WarpClient.getInstance().setNotificationListener(listener);  
}

我收到了错误(在AppWarpListener.as文件中):

1045: Interface ConnectionRequestListener was not found.
1045: Interface RoomRequestListener was not found.
1045: Interface NotificationListener was not found.

我遵循了这个tutorial,并下载了这个SDK.SDK文件夹中包含swc的许多版本,因此我安装了最新版本:V_1.5.2,这里是文件AppWarpLib.swc,我以两种方式将其导入到Adobe Flash CC:

By clicking Preferences (CTRL + U) > Code Editor > Action Script 3.0 Settings > Library path (I put here path to swc);

And By clicking publish settings SWC > Output file (here I select that swc)

但是同样,我仍然遇到这些错误.

也许是因为我需要将代码文件保存在FTP上?我正在从PC上进行测试.

同样,在“首选项”中设置路径后,我收到了很多类似的警告:

`Line 1, Column 1   Warning: 5002: The frame scripts of the symbol 'Symbol 116' have been ignored because a compiled clip contains a definition for Game__fla.Symbol116_26. To override the Game__fla.Symbol116_26 definition, place a custom class file within your classpath.`

同样在SDK文件夹中,我之前写过的链接是示例文件夹,但仅在.as文件中,并且我不知道如何在没有.fla文件的情况下尝试它.

那你有想法吗?谢谢.

同样在SDK文件夹中,我之前写过的链接是示例文件夹,但仅在.as文件中,并且我不知道如何在没有.fla文件的情况下尝试它.

我尝试创建新的空白.fla文件并将Class设置为SpriteMoveDemo.as,但同样的问题我也遇到了这些错误(在AppWarpListener.as文件中):

1045: Interface ConnectionRequestListener was not found.
1045: Interface RoomRequestListener was not found.
1045: Interface NotificationListener was not found.

那你有想法吗?谢谢.

解决方法:

您必须定义一个侦听器类以侦听响应和通知.但是在Flash CC中,您不能在action内部定义一个类.您需要创建一个外部动作脚本文件,然后在其中定义您的侦听器类.然后转到File-> ActionScript设置.在“源路径”部分下,添加保存新操作脚本文件的位置的路径.

您应该通过单击首选项(CTRL U)>添加appwarp .swc.代码编辑器>动作脚本3.0设置>库路径(我在这里输入了swc的路径).

标签:multiplayer,javascript,facebook,flash,actionscript-3
来源: https://codeday.me/bug/20191013/1907760.html