背景:#EDF0F5 #FAFBE6 #FFF2E2 #FDE6E0 #F3FFE1 #DAFAF3 #EAEAEF 默认  
阅读内容

FMS多人连机教程:初步认识SharedObject

[日期:2008-05-11] 来源:  作者: [字体: ]
  最近事不多,比较轻快.所以打算写份连载教程.主题嘛...就选用FMS做多人连机的教程吧.
因为以前写过类似的东西.所以FMS连接啊,配置的基础东西我就不写了.直接切入主题.
大家可能记得吧,以前7yue写个一个SharedObject的小球,然后所有人写类似的都是用的小球.
-___-  我这回也是小球.没办法,这东西,不写的话只能转.总不能开篇就转别人的,那多不好 (:
所以呢,会了的就等着第二篇:FMS实现用户注册  不会的就自己看下.
下面是代码:
 var sv_uri:String = "rtmp:/tensharp" 
var my_nc:NetConnection = new NetConnection (); 
my_nc.connect (sv_uri); 
my_nc.onStatus = function (thisObj:Object) 

 /* 
 for (var thisAry in thisObj) 
 { 
  trace (thisAry); 
 } 
 */ 
 //这个是我额外加上去的.如果不知道thisObj都有什么属性的话就把注释符删掉自己trace 
 if (thisObj.code == "NetConnection.Connect.Success") 
 { 
  trace ("服务器连接成功."); 
 } 
 else 
 { 
  ball._visible = false; 
  trace ("服务器连接失败."); 
 } 

var my_rso:SharedObject = SharedObject.getRemote ("cincn.com", my_nc.uri, true); 
//在服务器上新建一个名字叫cincn.com的共享文件. 
//这里可以自己打开站点目录的sharedObjcet目录看. 
my_rso.connect (my_nc); 
//连接 
my_rso.onSync = function () 

 ball._x = this.data.bx; 
 ball._y = this.data.by; 

/*  重点:
 SharedObject.onSync (); 
 
   按书上的话来说就是:在onSync中的操作对所有的请求都有影响.
 
 也就是说呢,你的每一步操作,都会通过onSync进行更新.(小球在onSync方法里读坐标,bx和by每有一次更改onSync都会更新一次.)
 
 就比如
 ball._x = this.data.bx 
 ball._x = my_rso.data.bx; 

 在这里我们是读服务器上存储的X坐标,而不是直接从本地读.本地只是把坐标
 时时传递到服务器.
 */ 
_root.onMouseDown = function () 

 my_rso.data.bx = _xmouse; 
 my_rso.data.by = _ymouse; 

/* 
 本地更新的也是SharedObject.data 
*/
阅读:
录入:admin

推荐 】 【 打印
相关新闻      
本文评论       全部评论
发表评论
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款


点评: 字数
姓名:
内容查询