江西广告网

标题: Flash MX 编程深层次应用-复杂游戏(2) [打印本页]

作者: 引章小姐     时间: 2009-5-25 12:10
标题: 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<




欢迎光临 江西广告网 (http://bbs.jxadw.com/) Powered by Discuz! X3.2