Счетчик энергии
1.
ArTeMs007 (09.01.2013 / 04:12)
Сделал я счетчик энергии для игры, записует данные, но при обновлении страницы, а нужно всегда что бы обновлялся(круглосуточно)
Вот код:
$game=mysql_fetch_array(mysql_query("SELECT * FROM `game` WHERE `id_user` = '$user[id]'"));
$gtime=time()+120;
if($game[energy_time]<time()){
mysql_query("UPDATE `game` SET `energy` = `energy` + 1, `energy_time`='$gtime' WHERE `energy` <= 100");
}
2.
alert (09.01.2013 / 14:28)
Крон тебе в помощь.
3.
ArTeMs007 (09.01.2013 / 16:03)
2.
alert, поподробнее
4.
Андрей (09.01.2013 / 16:15)
ArTeMs007 (9 Января 2013 / 16:03)
2. alert, поподробнее
* * * * *
или
*/1 * * * *
5.
alert (09.01.2013 / 16:28)
Проще сравнивать время последнего посещения с текущим временем и исходя из этого проводить расчеты энергии.
К примеру, энергия = 0.
Пользователь зашел через сутки. Проверяем и обновляем энергию до 100.
6.
Илья (09.01.2013 / 16:55)
У меня в игре через крон, каждые * минут +15 единиц
7.
ArTeMs007 (09.01.2013 / 17:01)
6.
Балбес, как через крон?
8.
alert (09.01.2013 / 17:20)
Про гугл не слышал?
9.
ArTeMs007 (09.01.2013 / 17:48)
8.
alert, смотрел ятам, непонятно как-то
10.
Илья (09.01.2013 / 18:31)
7.
ArTeMs007, Завтра - послезавтра приеду домой, скину код
11.
ArTeMs007 (09.01.2013 / 19:01)
10.
Балбес, хорошо
12.
Apeccc (09.01.2013 / 19:08)
Когда будет более 100000 игроков - замучаетесь с нагрузками от крона.
13.
Вячеслав (09.01.2013 / 19:39)
<?
$game=mysql_fetch_array(mysql_query("SELECT * FROM `game` WHERE `id_user` = '$user[id]'"));
if($game[energy_time]<time() && $game[energy]<100){
$energy=round((time()-$game[energy_time])/120);
$game[energy]=$game[energy]+$energy;
if($game[energy]>100){$game[energy]=100;}
mysql_query("UPDATE `game` SET `energy` = '".$game[energy]."', `energy_time`='".(time()+120)."' WHERE `energy` <= 100");
}
?>
14.
Вячеслав (09.01.2013 / 19:51)
кстати... mysql_query("UPDATE `game` SET `energy` = '".$game[energy]."', `energy_time`='".(time()+120)."' WHERE `id_user` = '$user[id]'");
мб не будешь писать игры?!
15.
ArTeMs007 (09.01.2013 / 19:53)
13.
Trionix, код будет работать когда пользователь в оффлайне?
Добавлено через 01:15 сек.
Trionix (9 Января 2013 / 19:51)
кстати... mysql_query("UPDATE `game` SET `energy` = '".$game[energy]."', `energy_time`='".(time()+120)."' WHERE `id_user` = '$user[id]'");
мб не будешь писать игры?!
всмысле?
16.
Вячеслав (09.01.2013 / 19:56)
15.
ArTeMs007, лучше такой код продублировать для тех ситуаций, когда кто-либо смотрит профайл игрока.
Добавлено через 00:33 сек.
ArTeMs007 (9 Января 2013 / 19:53)
13. Trionix, код будет работать когда пользователь в оффлайне?
Добавлено через 01:15 сек.
всмысле?
смысли не твое оно
17.
ArTeMs007 (09.01.2013 / 19:59)
16.
Trionix, ну напремер в игре небыло игроков, пользователь зашел энергию потратил вышел через сутки зашел, а энергии не прибавилось
URL:
https://visavi.net/topics/36136