ОБСУЖДЕНИЕ

Восстановление энергии

9 сообщений1 просмотровОткрыта
#1
Всем привет,пользуюсь вот таким алгоритмом для восстановления энергии

PHP
$currentDate = time();
$dateDiff = $currentDate - $arr['fuel_time'];
$newFuel = $arr['energy'];

//1500 сек - время полного восстановления ...
if ($dateDiff < 300 && $newFuel < $arr['max_energy'])
{
    while ($dateDiff > 60)
    {
        $newFuel++;
        if ($newFuel >= $arr['max_energy'])
        {
            break;
        }
        $dateDiff = $dateDiff - 60; //300 сек == 5 мин
    }
}
else
{
    $newFuel = $arr['max_energy'];
}

if ($newFuel != $arr['energy'])
{

    $sql->query("UPDATE `users` SET `energy`='$newFuel', `fuel_time`= '$currentDate' WHERE `id`='$id_user' ");
}


Но есть в нем ошибки,когда набрал максимальное количество энергии,тратишь одну,она снимается,и когда обновляешь страницу,и +1 одна энергия добавляется,и дальше до 0 все нормально
#2
wladua2016, Ну так и должно быть. Ты же в коде всё так записал.
#3
Тема была поднята автором по истечению 24 часов после последнего поста
#4
PowerHelper, немного не понял
#5
PowerHelper, не понятно что от куда взялось
#6
wladua2016, Что ты не понял?
Это пример нормальной регенерации, все остальное под себя делай.
Плати и сделаю нормально тебе модуль под твой скрипт.
#7
PowerHelper, сколько хочешь?
#8
wladua2016, Опиши полностью суть выполнения скрипта. О цене договоримся. Пиши в лс.
#9
PowerHelper, ok