我正在制作我的第一个ActionScript
游戏,我想把它上传到Kongregate
。
在实现Kongregate
API时(使用Flixel Power Tools中的FlxKongregate),我试图找到调用函数的最佳位置以断开与Kongregate服务器的连接。
我不能这样做是游戏的任何一个状态,因为玩家可以在其中几个状态之间移动,所以每当其中一个状态关闭时断开连接没有任何意义。
因此,我认为实现Kongregate
API的最佳位置是在游戏的中央注册表中(只有静态方法),因为它在游戏后台始终处于活动状态。
我想要的是一种判断玩家何时关闭游戏的方法, 并在那里断开连接。 如果我只写一个处置函数,它会 自动调用? 如果没有,我还能做什么?
一项简短的研究表明,您将无法编写在用户关闭浏览器时调用的函数。因此,您有几种可能的方法:
- 连接,上传分数,断开连接 - 所有这些都在一个操作集中,在游戏的任何重大事件中,因此不会因太多的连接/断开连接请求而使浏览器过载。
- 连接,然后只上传分数,永远不要断开连接。也许虽然Kongregate API会使您的会话超时,因此您必须实现错误捕获行为并重新连接。如果用户出于任何原因重新加载页面,IIRC解决方案不会干扰会话,因此即使未断开连接,您的游戏也可以连接。 在游戏开始时连接(游戏会话开始,
- 又名玩家按"新游戏",游戏中开始发生某些事情,然后您连接),在两者之间上传分数,并在任何类型的游戏离开时断开连接,可能是在保存和退出、游戏结束、在战役中获胜等。