2011-03-20 110 views
1

我已经看到了在线升级的PHP MMO和Facebook游戏,当你升级某些东西时有一个计时器。就像说我有一级农场,我升级到二级农场。它从14分钟倒数。然后在14分钟后升级过程完成。php计时器facebook游戏

他们如何以编程方式进行此操作?

回答

1

做某些动作时,将当前时间+ 14分钟作为目标并将其保存在某处。在达到此时间之前,您不会解锁新功能。您可以使用简单的target time - current time显示剩余时间,您可以使用Javascript在客户端上动态更新。

+0

假设您将服务器上的时间任务存储在等待事项表中。那么您是否必须对整个等待事件表进行扫描,以查看每秒完成的事情?这听起来很激烈。 – David19801 2011-03-20 13:06:20

+0

这将是激烈的,但没有必要。你只需要从db中加载所有'等待的东西'(比如说针对特定用户),然后使用客户端代码来知道时间到了。如果新事物需要等待,您可以将它们添加到服务器端,以便在需要时可以重新获取它们。如果你想要特别小心,当等待的事情是*客户端时,你可以在确定服务器是否真正启动之前再次检查服务器。 – 2011-03-20 13:11:16

0

这不能用PHP(和其他服务器端语言)完成。唯一的解决方案是使用客户端脚本语言,如JavaScript甚至Flash。我通常使用边JavaScript的jQuery,这是相当容易学习。