现在在做一个系统,角色在服用一种丹药后的一个小时内攻击力会加20,一小时过后攻击力就不会增加了.那我在系统程序中每次要使用攻击力这个属性时,是不是都要检测角色是否吃了丹药且有效期是否过了一小时,如果吃了且未过一小时就把攻击力临时加20再去使用. 有人写过类似程序吗,我发现如按上面那样去做,程序性能很差,有人知道较好的解决方法吗,你们一般是如何处理这个问题的

解决方案 »

  1.   

    我有个思路:我这儿是用数据库的方式来实现;比如,有个表power, 其中有个字段,danyao,它的类型是datetime, 当这个角色吃药的时候,这个字段就记录下它吃药的时间;以后在判断攻击力的时候,就用当前时间减去这个存取的时间,如果差小于1小时,那么就是20倍攻击力,否则,攻击力不变。效率还不错吧。  
      

  2.   

    用web搞这个,或许也可以。
    由服务器端的程序来处理这种乱七八遭的吧,客户端操作的时候按正常操作就可以了。
    服务器上有个表专门记录特殊情况,有个专门的程序来处理这些特殊的情况就可以了。
      

  3.   

    用Cookie记录就会快很多,试试吧,例如如果吃了丹药产生一个Cookie,时效为1小时,这样每次去读这个Cookie就知道了
      

  4.   

    PHP做不好写,好像用JAVA好点
    本人不精通JAVA。
    你应该去JAVA内边问。
      

  5.   

    回楼上用铅笔做好一点PHP不太合适我的思路是这样 把这东西 属性都附加时间嘛。然后攻击力是数组基本攻击 20  -1
    丹药      5 300
    中毒     -9  60