码迷,mamicode.com
首页 > 其他好文 > 详细

上班的第四百七十三天

时间:2015-04-28 00:26:27      阅读:168      评论:0      收藏:0      [点我收藏+]

标签:

    今天有点累,可能是最近超负荷加班学习,也有可能是昨晚右手又调皮了,所以今天的效率有点低。

    不过我搞清楚了服务器业务逻辑的三个大类中的两个,分别是资源管理器和通信模块。

    通信模块在服务器启动的时候就初始化,并且将每个通信模块(NPC模块、消耗物品模块等等)对应于客户端的请求的消息处理方法注册到一个全局数组上去。那么以后客户端有消息过来的时候,就根据moduleID和funcID的乘积去调全局数组里面的处理方法。服务器主循环里面会在一定时间后去读消息队列,依次处理那些请求。

    而资源管理器也是在服务器主循环里面工作的,循环到某个资源管理器时,就会调相应的更新方法。比如更新当前场景的人物,每个角色实体对应的场景里面有一条链表,包含了当前界面该出现的人物,如怪、NPC或者其他玩家等等,超出这个界面的人物实体会从这个链表里面删掉,然后更新时就先将所有人物清空,然后看链表里面有什么人物,接着放置(个人觉得这个方法效率比较低)。

    另外还有很多涉及业务逻辑的通信模块和资源管理器,这些要我玩熟了这个游戏后再去看,因为我最讨厌就是看代码猜业务逻辑,好傻。

    第三个实体子系统,说实话,我还没看懂是怎么回事,明天应该就可以懂了。

    另外,锋哥给我布置的那个任务,我还没完成。虽然我把所有可能发生错误的地方都搜出来了,但是我并没有看完。因为我已经问了我隔壁那个前辈,他当时也找了一遍,也是没发现。那么有经验的他都找不到,锋哥也找不到,我怎么可能找得到呢?报着这个心态,我觉得我一辈子都别想找到这个漏洞了,应该自我批评下,然后明天好好找。

    事物之间的联系总是很奇妙的,只要想着一件事情,并且努力去往它靠近,它就会来的,这就是传说中的缘分。

上班的第四百七十三天

标签:

原文地址:http://my.oschina.net/chrisforbt/blog/407027

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!