viewer#2648 Fix issues with day offset value

meow-7.2.2
Andrey Kleshchev 2024-09-24 18:31:48 +03:00 committed by Andrey Kleshchev
parent 5eab135892
commit 86446c7b55
2 changed files with 4 additions and 3 deletions

View File

@ -2087,6 +2087,7 @@ void LLEnvironment::coroUpdateEnvironment(S32 parcel_id, S32 track_no, UpdateInf
body[KEY_ENVIRONMENT][KEY_DAYLENGTH] = updates->mDayLength;
}
// server only allows positive values
if (updates->mDayOffset > 0)
{
body[KEY_ENVIRONMENT][KEY_DAYOFFSET] = updates->mDayOffset;

View File

@ -287,7 +287,7 @@ void LLPanelEnvironmentInfo::refresh()
F32Hours daylength(mCurrentEnvironment->mDayLength);
F32Hours dayoffset(mCurrentEnvironment->mDayOffset);
if (dayoffset.value() > 12.0f)
while (dayoffset.value() >= daylength.value())
dayoffset -= daylength;
mSliderDayLength->setValue(daylength.value());
@ -734,8 +734,8 @@ void LLPanelEnvironmentInfo::onSldDayOffsetChanged(F32 value)
{
F32Hours dayoffset(value);
if (dayoffset.value() <= 0.0f)
// if day cycle is 5 hours long, we want -1h offset to result in 4h
// server only allows positive values
while (dayoffset.value() <= 0.0f)
dayoffset += mCurrentEnvironment->mDayLength;
mCurrentEnvironment->mDayOffset = dayoffset;