Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как реализовать систему начисления игровых денег в игровой счёт банка?

М аксим Ученик (90), на голосовании 1 год назад
Есть в базе (MySQL) ячейка ‘bank’ куда пользователь будет переводись деньги с основного баланса. Каждый час к сумме будет прибавляться 0.3%. Я записываю Unix время и считаю сколько прошло часов с пополнения путём вычисления, а дальше множу (bank * 0.033) (так получаю проценты и так их вывожу. Но вот проблема, если игрок захочет перевести ещё денег на баланс банка, сумма автоматически умножится, не дойдя до следующего часа. Как можно реализовать чтобы сумма не умножалась сразу после пополнения?
Голосование за лучший ответ
Сергей Стодольский Мастер (1212) 1 год назад
Нифига не понятен процесс начисления! Какое количество часов ты считаешь, если у тебя начисление идет каждый час? Почему у тебя должна сумма увеличиваться сразу после пополнения, если у тебя проценты начисляются раз в час?
Что-то с логикой начислений у тебя не так...
М аксимУченик (90) 1 год назад
Если баланс в банке был ноль, и игрок решил положить допустим 1000 в банк, я записываю в базу время в Unix с помощью которого буду считать сколько прошло часов (отнимаю настоящее время в секундах от записанного в бд) и делю на 3600 (кол-во секунд в одном часе). В итоге проверяю, если прошло больше часа, умножаю всю сумму в банке на 0.33 (это процент) и умножаю на количество часов, и записываю это в бд. Только проблема в том что если человек положит ещё 1000 в банк, сумма автоматически умножится не дождидаясь следующего часа
Сергей Стодольский Мастер (1212) М аксим, Наводящий вопрос, а почему она автоматически умножается?
Похожие вопросы