В базе хранится здоровье 3мя полями
LastHP - последнее значение здоровья
LastUpdate - временная метка последнего изменения поля LastHP
RegenSpeed - скорость восстановления здоровья Hp\сек.
Когда игре требуется узнать текущее здоровье - происходит подсчет и перезапись в базу.
NewHP = LastHP + RegenSpeed*(time() - LastUpdate);
в базу перезапиcываешь LastHP на NewHP и LastUpdate на time() (Отредактировано автором: 10 Января, 2010 - 13:05:58)
|