Добрый вечер всем
Уже давно замечаю странную плавающую проблему в OregonCore
Периодически заходя в PVP статистику персов замечаю непонятные данные в столбце todayHonorPoints - цифры туда заносятся вообще непонятно откуда
Вот например есть перс которым я не заходил уже где-то 2-3 дня, сегодня зашёл и увидел такое:
Цифра 420 появилась просто из воздуха
У другого моего перса обнаружилась цифра 840 - при том что я так же не заходил им несколько дней
Цифра всегда кратна 210
Вот код начисления хонора (хотя может надо не сюда смотреть)
Code
void Player::UpdateHonorFields()
{
// called when rewarding honor and at each save
uint64 now = time(NULL);
uint64 today = uint64(time(NULL) / DAY) * DAY;
if (m_lastHonorUpdateTime < today)
{
uint64 yesterday = today - DAY;
uint16 kills_today = PAIR32_LOPART(GetUInt32Value(PLAYER_FIELD_KILLS));
// update yesterday's contribution
if (m_lastHonorUpdateTime >= yesterday)
{
SetUInt32Value(PLAYER_FIELD_YESTERDAY_CONTRIBUTION, GetUInt32Value(PLAYER_FIELD_TODAY_CONTRIBUTION));
// this is the first update today, reset today's contribution
SetUInt32Value(PLAYER_FIELD_TODAY_CONTRIBUTION, 0);
SetUInt32Value(PLAYER_FIELD_KILLS, MAKE_PAIR32(0,kills_today));
}
else
{
// no honor/kills yesterday or today, reset
SetUInt32Value(PLAYER_FIELD_YESTERDAY_CONTRIBUTION, 0);
SetUInt32Value(PLAYER_FIELD_KILLS, 0);
}
}
m_lastHonorUpdateTime = now;
}
Подскажите плиз откуда берётся это непонятное значение?Добавлено (05.10.2012, 13:05)
---------------------------------------------
Ну неужели никто не сталкивался?
Добавлено (06.10.2012, 20:39)
---------------------------------------------
И тишинааа.....