SL-9707 EEP Make behavior more consistent for applying inventory

meow-7.2.2
andreykproductengine 2018-09-19 19:18:55 +03:00
parent 4048e28b91
commit 9353022c5a
2 changed files with 34 additions and 4 deletions

View File

@ -1260,11 +1260,25 @@ void LLFloaterEditExtDayCycle::doApplyEnvironment(const std::string &where, cons
return;
}
LLEnvironment::instance().updateParcel(parcel->getLocalID(), day, -1, -1);
if (mInventoryItem && !isDirty())
{
LLEnvironment::instance().updateParcel(parcel->getLocalID(), mInventoryItem->getAssetUUID(), -1, -1);
}
else
{
LLEnvironment::instance().updateParcel(parcel->getLocalID(), day, -1, -1);
}
}
else if (where == ACTION_APPLY_REGION)
{
LLEnvironment::instance().updateRegion(day, -1, -1);
if (mInventoryItem && !isDirty())
{
LLEnvironment::instance().updateRegion(mInventoryItem->getAssetUUID(), -1, -1);
}
else
{
LLEnvironment::instance().updateRegion(day, -1, -1);
}
}
else
{

View File

@ -430,17 +430,33 @@ void LLFloaterFixedEnvironment::doApplyEnvironment(const std::string &where)
return;
}
if (mSettings->getSettingsType() == "sky")
if (mInventoryItem && !isDirty())
{
LLEnvironment::instance().updateParcel(parcel->getLocalID(), mInventoryItem->getAssetUUID(), -1, -1);
}
else if (mSettings->getSettingsType() == "sky")
{
LLEnvironment::instance().updateParcel(parcel->getLocalID(), std::static_pointer_cast<LLSettingsSky>(mSettings), -1, -1);
}
else if (mSettings->getSettingsType() == "water")
{
LLEnvironment::instance().updateParcel(parcel->getLocalID(), std::static_pointer_cast<LLSettingsWater>(mSettings), -1, -1);
}
}
else if (where == ACTION_APPLY_REGION)
{
if (mSettings->getSettingsType() == "sky")
if (mInventoryItem && !isDirty())
{
LLEnvironment::instance().updateRegion(mInventoryItem->getAssetUUID(), -1, -1);
}
else if (mSettings->getSettingsType() == "sky")
{
LLEnvironment::instance().updateRegion(std::static_pointer_cast<LLSettingsSky>(mSettings), -1, -1);
}
else if (mSettings->getSettingsType() == "water")
{
LLEnvironment::instance().updateRegion(std::static_pointer_cast<LLSettingsWater>(mSettings), -1, -1);
}
}
else
{