|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?注册
x
5.2 游戏如何与后台通信
在游戏中记录下玩家的得分,然后将得分排序是经常的事情,这就涉及到Flash游戏与后台之间的通信问题了。Flash能与任何后台语言进行通信,比如ASP,PHP,JSP,Perl,Java等。这里介绍一下Flash与PHP及ASP通信的方法。 5.2.1 在Flash 5中有load外部变量的语句loadVariablesNum与loadVariables具有完成从动画的外部或者后台程序中取得变量值的功能。实际上它先调用一个URL,这个URL如果有输出,就把输出的内容传到Flash中。请看下面PHP语言的例子: _root.now_url = url "dispscore.php?buf=" getTimer(); loadVariablesNum (now_url, 0, "POST"); dispscore.php程序内容: <? $disp_score = "myscore=500"; $disp_name = "name=dongua"; echo "$disp_score$disp_name&score_ret=1"; ?> 这里就返回了一个得分与用户名称,同时也返回了一个score_ret=1。这个变量的作用就是标志所有要返回的内容已经全部返回结束,在Flash中只需检查它就知道数据有没有返回;GetTimer()的作用是为了调试方便,因为IE有缓存,如果不每次再加一个随机内容,就有可能直接从缓存中读取数据了。请再看ASP的如下代码。 _root.now_url = url "./score.asp?buf=" getTimer(); loadVariablesNum (now_url, 0, "POST"); score.asp程序代码如下: <% response.write "name=dongua" response.write "&my_score=400” response.write "&score_ret=1" %> 这仅仅是一种理论上的代码,实际操作过程中还要有循环等待时间,以便程序有足够的时间来与后台交换数据,一般来说15s< |
|