引章小姐 发表于 2009-5-25 12:10:53

Flash MX 编程深层次应用-复杂游戏(2)

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程序内容:&lt;?    $disp_score = "myscore=500";    $disp_name = "name=dongua";    echo "$disp_score$disp_name&amp;score_ret=1";?&gt;这里就返回了一个得分与用户名称,同时也返回了一个score_ret=1。这个变量的作用就是标志所有要返回的内容已经全部返回结束,在Flash中只需检查它就知道数据有没有返回;GetTimer()的作用是为了调试方便,因为IE有缓存,如果不每次再加一个随机内容,就有可能直接从缓存中读取数据了。请再看ASP的如下代码。_root.now_url = url "./score.asp?buf=" getTimer();loadVariablesNum (now_url, 0, "POST");score.asp程序代码如下:&lt;%   response.write "name=dongua"      response.write "&amp;my_score=400”      response.write "&amp;score_ret=1"%&gt;这仅仅是一种理论上的代码,实际操作过程中还要有循环等待时间,以便程序有足够的时间来与后台交换数据,一般来说15s<
页: [1]
查看完整版本: Flash MX 编程深层次应用-复杂游戏(2)