protected void OffsetTexture(ISceneChildEntity part, double u, double v, int face)
{
Primitive.TextureEntry tex = part.Shape.Textures;
int ns = GetNumberOfSides(part);
if (face >= 0 && face < ns)
{
Primitive.TextureEntryFace texface = tex.CreateFace((uint)face);
texface.OffsetU = (float)u;
texface.OffsetV = (float)v;
tex.FaceTextures[face] = texface;
part.UpdateTexture(tex, false);
return;
}
if (face == ScriptBaseClass.ALL_SIDES)
{
for (int i = 0; i < ns; i++)
{
if (tex.FaceTextures[i] != null)
{
tex.FaceTextures[i].OffsetU = (float)u;
tex.FaceTextures[i].OffsetV = (float)v;
}
}
tex.DefaultTexture.OffsetU = (float)u;
tex.DefaultTexture.OffsetV = (float)v;
part.UpdateTexture(tex, false);
}
}