PHP/MySQL | Добавление через время
Вилы_Выкидные, можно ссылку?
![](/views/icon/no_avatar.png)
DELETED
6 января 2017, в 12:33
Delete
http://bymas.ru/downloads/zip_open.php?act=pre&id=73693&index=412
Вилы_Выкидные, че! А что я описал. Чтобы автор знал что каждой дейсвии до 1 минута будет время обновлять! А есть и фича что можно посчитать последный таймер и уменшить и последный операции до нужного =)
![](/views/icon/no_avatar.png)
DELETED
6 января 2017, в 13:52
Delete
262110938 (06.01.2017 в 12:52)
Вилы_Выкидные, че! А что я описал. Чтобы автор знал что каждой дейсвии до 1 минута будет время обновлять! А есть и фича что можно посчитать последный таймер и уменшить и последный операции до нужного =)
Вилы_Выкидные, че! А что я описал. Чтобы автор знал что каждой дейсвии до 1 минута будет время обновлять! А есть и фича что можно посчитать последный таймер и уменшить и последный операции до нужного =)
ну я ему дал ссыль у меня так считает типа берётся количество отсечек времени за прошедший период и их количество умножается на количество возобновляемой маны за одну отсечку пусть колупает если разберётся
Вилы_Выкидные, а крон то тут зачем?
![](/views/icon/no_avatar.png)
DELETED
6 января 2017, в 20:45
Delete
[T]rec80 (06.01.2017 в 16:50)
Вилы_Выкидные, а крон то тут зачем?
Вилы_Выкидные, а крон то тут зачем?
где ты видел в Войнушке Cron?
Вилы_Выкидные, это =т код ты писал
if($set['hp']>=0){
$set['max_hp']=_NumFilter($set['max_hp']);
if($set['hp']<$set['max_hp']){
$hp_up=_NumFilter(time()-$set['hp_up'])/18;
$hp_new=_NumFilter($set['hp']+$hp_up);
if($hp_new<$set['max_hp']){
if($hp_up>=1){
mysql_query('UPDATE `user_set` SET `hp`="'.$hp_new.'", `hp_up`="'.time().'" WHERE `id`="'.$user_id.'"');
}
}else{
mysql_query('UPDATE `user_set` SET `hp`="'.$set['max_hp'].'" WHERE `id`="'.$user_id.'"');
}
}else{
mysql_query('UPDATE `user_set` SET `hp`="'.$set['max_hp'].'" WHERE `id`="'.$user_id.'"');
}
}else{
mysql_query('UPDATE `user_set` SET `hp`="0" WHERE `id`="'.$user_id.'"');
}// Регенерация здоровья
$set['max_hp']=_NumFilter($set['max_hp']);
if($set['hp']<$set['max_hp']){
$hp_up=_NumFilter(time()-$set['hp_up'])/18;
$hp_new=_NumFilter($set['hp']+$hp_up);
if($hp_new<$set['max_hp']){
if($hp_up>=1){
mysql_query('UPDATE `user_set` SET `hp`="'.$hp_new.'", `hp_up`="'.time().'" WHERE `id`="'.$user_id.'"');
}
}else{
mysql_query('UPDATE `user_set` SET `hp`="'.$set['max_hp'].'" WHERE `id`="'.$user_id.'"');
}
}else{
mysql_query('UPDATE `user_set` SET `hp`="'.$set['max_hp'].'" WHERE `id`="'.$user_id.'"');
}
}else{
mysql_query('UPDATE `user_set` SET `hp`="0" WHERE `id`="'.$user_id.'"');
}// Регенерация здоровья
![](/views/icon/no_avatar.png)
DELETED
31 января 2017, в 13:04
Delete
wladua2016 (31.01.2017 в 12:58)
Вилы_Выкидные, это =т код ты писал
if($set['hp']>=0){
$set['max_hp']=_NumFilter($set['max_hp']);
if($set['hp']<$set['max_hp']){
$hp_up=_NumFilter(time()-$set['hp_up'])/18;
$hp_new=_NumFilter($set['hp']+$hp_up);
if($hp_new<$set['max_hp']){
if($hp_up>=1){
mysql_query('UPDATE `user_set` SET `hp`="'.$hp_new.'", `hp_up`="'.time().'" WHERE `id`="'.$user_id.'"');
}
}else{
mysql_query('UPDATE `user_set` SET `hp`="'.$set['max_hp'].'" WHERE `id`="'.$user_id.'"');
}
}else{
mysql_query('UPDATE `user_set` SET `hp`="'.$set['max_hp'].'" WHERE `id`="'.$user_id.'"');
}
}else{
mysql_query('UPDATE `user_set` SET `hp`="0" WHERE `id`="'.$user_id.'"');
}// Регенерация здоровья
Вилы_Выкидные, это =т код ты писал
if($set['hp']>=0){
$set['max_hp']=_NumFilter($set['max_hp']);
if($set['hp']<$set['max_hp']){
$hp_up=_NumFilter(time()-$set['hp_up'])/18;
$hp_new=_NumFilter($set['hp']+$hp_up);
if($hp_new<$set['max_hp']){
if($hp_up>=1){
mysql_query('UPDATE `user_set` SET `hp`="'.$hp_new.'", `hp_up`="'.time().'" WHERE `id`="'.$user_id.'"');
}
}else{
mysql_query('UPDATE `user_set` SET `hp`="'.$set['max_hp'].'" WHERE `id`="'.$user_id.'"');
}
}else{
mysql_query('UPDATE `user_set` SET `hp`="'.$set['max_hp'].'" WHERE `id`="'.$user_id.'"');
}
}else{
mysql_query('UPDATE `user_set` SET `hp`="0" WHERE `id`="'.$user_id.'"');
}// Регенерация здоровья
ага, было дело
![.гы.](https://bym.guru/modules/smiles/smiles/afan17.png)
тут каждые 18 секунд идёт +1 хп и если через какое-то время тоже обновил, то учтено, сколько раз по 18 сек. прошло и добавится правильно хп
Вилы_Выкидные, как под твое с этого переделать
$currentDate = time();
$dateDiff = $currentDate - $arr['fuel_time'];
$newFuel = $arr['energy'];
//1500 сек - время полного восстановления ...
if ($dateDiff < 1500 && $newFuel < $arr['max_energy'])
{
while ($dateDiff > 300)
{
$newFuel++;
if ($newFuel >= $arr['max_energy'])
{
break;
}
$dateDiff = $dateDiff - 300; //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' ");
}
}
$currentDate = time();
$dateDiff = $currentDate - $arr['fuel_time'];
$newFuel = $arr['energy'];
//1500 сек - время полного восстановления ...
if ($dateDiff < 1500 && $newFuel < $arr['max_energy'])
{
while ($dateDiff > 300)
{
$newFuel++;
if ($newFuel >= $arr['max_energy'])
{
break;
}
$dateDiff = $dateDiff - 300; //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' ");
}
}