没做过,ajax估计做不了
ajax是单项通信,连续请求量很大,看过用http长连接的至于其他,你还是按面向对象思想来设计吧对象 事件 属性 方法

解决方案 »

  1.   

    ajax只需要用到一点点的。
    而且我说了。功能上的实现不用担心。这么说吧,所有功能都已经实现了。包括ajax的模拟即时交互和效率问题。所以其他的不用考虑。
    只需要考虑最高层的模式就行了。
      

  2.   

    说实话,我没看明白你的内容
    和我对WEBGAME的想法不一样还有,为什么一定要用设计模式呢?
    我只引用一句话, 当您手中拿着一把锤子时,所有事物看上去都像钉子 
      

  3.   

    没做过,只是想了一下1、最高层模式是什么模式或者选什么模式比较合理?
    2、目前我自己认为的模式是否比较合理或者有更好的优化办法?————————————————————————————按你理解,模式是一种抽象设计,关键是web能否顺利实现3、Task如何加入?
      任务可以分事件和状态,任务可由多少人执行,状态是改变的,任 务可以分单人和多人
      任务单例类,后台单例4、ajax与Trigger与定时器如何结合更好?(因为ajax属于纯功能了,但是Trigger又会用到。最关键的是一个是js,一个是php...)
       定时器既是web的,可用js,后台也同时设,存数据库
    5、UI包(可能会有多套UI)、语言包(可能需要多语种)、对话包等,如何合理的加入到游戏里?(数据库?填表?ini?)
       对话包可以js设计,执行动作时发送,如果事件不用js触发,则要后后台发事件代码或包——————————————关于设计或开发模式,可参考一下 uml模式,会将你的逻辑分的很清楚
      

  4.   

    fxs_2008,
    谢谢!
    你所讲的“任务单例类,后台单例”。我收了。
    Task貌似跟系统本身关联不大。跟像是一个玩家。只不过这个玩家如何操作都固定好了。模式问题上,我想问的只是在抽象层上,算不算基本合理。不考虑实现。定时器是服务端的,Trigger起的是计时器的作用。暂时的写法与fxs_2008讲的类似。但总觉得还有更优的方案。包的问题,主要是如何与现有类结合起来。
    对话用js是肯定的,对话包需要某种方式存在某个地方也是肯定的;问题是对话包如何加载到Action里,是新建个类,还是把对话作为Action里的一个属性,还是接口?(貌似做接口是好办法...)willko,
    谢谢!
    我想我肯定理解模式,但是不够熟悉。
    这也不是死抠,而是东西繁琐了,的确需要用到。
      

  5.   

    个人觉得对话包作为action里比较好,作为atcion的属性或方法
    action作为一个动作,触发时就给出或输出相关对话信息,这是系统级
    用户级的直接输出就行了
      

  6.   

    那么在action里增加一个方法。对话。
    读取对话包的工作交给里面具体的类解决。Trigger上,我有新的想法,就是先做一个js函数。参数为 (时间量,正在进行文字,结束文字),功能为倒计时,时间到时通过ajax获得新参数。同时专门做一个Action_Time表保存时间等参数。id begintime,endtime,needtime,actionid(或actionname),state.这样,当通过Trigger调用某个action的begin()时,action返回aciton的name或id,needtime,正在进行文字。存入Action_Time表。同时执行begin()内的数据操作。前台的js根据Action_Time表以及begin()返回的文字,就可以显示倒计时了。前台的js在到计时到了后,会先通过ajax获得Action_Time表里的时间来验证是否真的到时间了,确定到了后,再执行end(),并调用end()的返回价值。
    同时,定时器不断的检查Action_Time表的情况,当时间到了。状态未改变时,说明前台js没有运行,则后台,根据表的状态,执行end(),返回结束文字(不管前台有没有显示。)。同时执行end()内的数据操作。fxs_2008觉得这样可行不?
      

  7.   

    服务端只需要保存各种对象状态即可.
    其它的,就是JS架构的事.
    别把MVC框架的那一套用过来. webgame 最重要的是执行效率,而不是开发效率....
      

  8.   

    另外,这跟MVC一点关系都没有。
      

  9.   

    MVC 只是我举的个例子.对于webgame JS 就当是内存了.
    PHP就当是硬盘了.AJAX就当是数据存储操作了.继续讨论 设计模式. 
      

  10.   

    挺有意思的,我认为mvc不管多少层,无非是解耦是程序有更好的延展性,关于模式,我自己的理解,把模块划分好,按功能划分,后台采用心跳机制,定期更新数据库缓存,把数据分成重要的和不重要的,减小服务器负担,前端数据要处理好效率,不管哪种模式,最重要的能解决解耦,和分工开发好维护就可以了,模块划分之后,进行类库和接口的设计,每次数据更新要验证数据的合法性,应该牵扯到模块的通信吧,每个模块可留好写接口的位置,进行通信把,前端UI最好要自己写一套,因为根据游戏不通,需要的UI功能也不同,最好自己写一套,具体UI怎么写,根据功能而定吧,各UI如何处理,如何封装,需要探讨,呵呵,本人菜鸟,希望没有误导你,嘿嘿