我遇到了一个问题。我正在创建一个基于网络的游戏。它更像是基于实时网络的应用程序。我的玩家可以建造建筑物。每个建筑物都有唯一的哈希ID。具有所有参数的已建建筑物均存储在SQL中。我要做的就是使引擎能够自动收集资源(黄金)。我不想使用cron。我要确保当我按下“引擎启动”按钮时,它将开始收集黄金:
if( $sql['engine'] == 1 ){
//do the job..
}
我尝试过这种方法,但是没有运气(collect.php):
if( $sql['engine'] == 1 ){
mysql_query("UPDATE `info` SET `gold` = `gold` + 10 WHERE `building`='{$building}'");
}
和index.php:
function enginestat() {
$("#EngineStatus").load("../job/collect.php?building=<?php echo $building; ?>", function () {
setTimeout( function () {
enginestat();
}, 1000);
});
}
$( function () {
enginestat();
});
我相信我做错了什么,但是有人可以告诉我我做错了吗?我需要一个答案,我需要详细的信息。谢谢你。
您正在做的事情可以分解为一系列较小的步骤。例如,如果您每小时收取X黄金,那么当该人下一次加载该页面时,您需要做的所有事情就是计算他们积累的黄金差额。
每次检查时,将轮询时间记录在数据库中。他们下次检查时,会计算出微分秒数,并插值支付的金额。以每小时100的速度计算,每秒可以达到100/3600。您显然可以四舍五入以避免显示增量值。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句