if at load all pbt terrain id are zero reset all to non pbr ids (so on version update they look the same automaticly)

This commit is contained in:
UbitUmarov
2024-06-15 00:31:25 +01:00
parent 58f74dceb3
commit 8e874d97c5
2 changed files with 15 additions and 12 deletions

View File

@@ -263,28 +263,28 @@ namespace OpenSim.Framework
public UUID TerrainPBR1
{
get { return m_TerrainPBR1; }
set { m_TerrainPBR1 = value.IsZero() ? DEFAULT_TERRAIN_PBR_1 : value; }
set { m_TerrainPBR1 = value;}
}
private UUID m_TerrainPBR2 = UUID.Zero;
public UUID TerrainPBR2
{
get { return m_TerrainPBR2; }
set { m_TerrainPBR2 = value.IsZero() ? DEFAULT_TERRAIN_PBR_2 : value; }
set { m_TerrainPBR2 = value; }
}
private UUID m_TerrainPBR3 = UUID.Zero;
public UUID TerrainPBR3
{
get { return m_TerrainPBR3; }
set { m_TerrainPBR3 = value.IsZero() ? DEFAULT_TERRAIN_PBR_3 : value; }
set { m_TerrainPBR3 = value; }
}
private UUID m_TerrainPBR4 = UUID.Zero;
public UUID TerrainPBR4
{
get { return m_TerrainPBR4; }
set { m_TerrainPBR4 = value.IsZero() ? DEFAULT_TERRAIN_PBR_4 : value; }
set { m_TerrainPBR4 = value; }
}

View File

@@ -856,14 +856,17 @@ namespace OpenSim.Region.Framework.Scenes
updatedTerrainTextures = true;
}
if (rs.TerrainPBR1.IsZero())
rs.TerrainPBR1 = RegionSettings.DEFAULT_TERRAIN_PBR_1;
if (rs.TerrainPBR2.IsZero())
rs.TerrainPBR2 = RegionSettings.DEFAULT_TERRAIN_PBR_2;
if (rs.TerrainPBR3.IsZero())
rs.TerrainPBR3 = RegionSettings.DEFAULT_TERRAIN_PBR_3;
if (rs.TerrainPBR4.IsZero())
rs.TerrainPBR4 = RegionSettings.DEFAULT_TERRAIN_PBR_4;
if (rs.TerrainPBR1.IsZero() &&
rs.TerrainPBR2.IsZero() &&
rs.TerrainPBR3.IsZero() &&
rs.TerrainPBR4.IsZero())
{
rs.TerrainPBR1 = rs.TerrainTexture1;
rs.TerrainPBR2 = rs.TerrainTexture2;
rs.TerrainPBR3 = rs.TerrainTexture3;
rs.TerrainPBR4 = rs.TerrainTexture4;
updatedTerrainTextures = true;
}
if (updatedTerrainTextures)
rs.Save();