Je comprend pourquoi tu stock deux fois la quantité.
Dans ta bdd tu as besoin :
id_joueur product timestamp
(tu peux mettre autre chose si tu veux)
Tu recupere product et timestamp qui correspondent à ton joueur (ça tu sais faire)
Ensuite :
$time_dif = now()-$timestamp;
if($time_dif>$periode)
{
$nb_i = $time_dif%$periode;
for(i = 0; i<$nb_i;i++)
{
$product = $product+$gain;
}
$timestamp=now();
la tu fait une requete mysql pour updater ta table
}
else
{
echo 'Revenez plus tard vos ressources ne sont pas encore arrivé :p'
}
Voila c'est un algo tout simple que tu peux evidement amélioré
Edit : tu peux avoir une derive, si par exemple ton joueur update à 1min10s et que ta periode est de 1min il va perdre 10 secondes, donc fait plutot $timestamp=$timestamp+$nb_i*$periode; à la place de $timestamp=now(); comme ça les joeurs ne vont pas se décaller les uns par rapports aux autres.
Dans ta bdd tu as besoin :
id_joueur product timestamp
(tu peux mettre autre chose si tu veux)
Tu recupere product et timestamp qui correspondent à ton joueur (ça tu sais faire)
Ensuite :
$time_dif = now()-$timestamp;
if($time_dif>$periode)
{
$nb_i = $time_dif%$periode;
for(i = 0; i<$nb_i;i++)
{
$product = $product+$gain;
}
$timestamp=now();
la tu fait une requete mysql pour updater ta table
}
else
{
echo 'Revenez plus tard vos ressources ne sont pas encore arrivé :p'
}
Voila c'est un algo tout simple que tu peux evidement amélioré
Edit : tu peux avoir une derive, si par exemple ton joueur update à 1min10s et que ta periode est de 1min il va perdre 10 secondes, donc fait plutot $timestamp=$timestamp+$nb_i*$periode; à la place de $timestamp=now(); comme ça les joeurs ne vont pas se décaller les uns par rapports aux autres.