private bool onDecalTilingChanged(CustomizerModelEvents.DecalTilingChangedEvent evt)
 {
     if (evt.DecalLayer.Decal != null && evt.DecalLayer.OriginalRenderer != null)
     {
         if (evt.IsTiled)
         {
             EquipmentShaderUtils.ApplyDecalTexture(evt.DecalLayer.ShaderChannel, evt.DecalLayer.Decal, currentEquipmentRenderers);
         }
         else
         {
             EquipmentShaderUtils.ApplyDecalTexture(evt.DecalLayer.ShaderChannel, null, currentEquipmentRenderers);
             EquipmentShaderUtils.ApplyDecalTexture(evt.DecalLayer.ShaderChannel, evt.DecalLayer.Decal, evt.DecalLayer.OriginalRenderer);
         }
     }
     EquipmentShaderUtils.ApplyDecalRepeat(evt.DecalLayer.ShaderChannel, evt.IsTiled, currentEquipmentRenderers);
     return(false);
 }
 private bool onDecalChanged(CustomizerModelEvents.DecalChangedEvent evt)
 {
     if (evt.DecalLayer.Type == DecalType.DECAL && evt.ChosenRenderer != null && !evt.DecalLayer.IsTiled)
     {
         EquipmentShaderUtils.ApplyDecalTexture(evt.DecalLayer.ShaderChannel, null, currentEquipmentRenderers);
         EquipmentShaderUtils.ApplyDecalTexture(evt.DecalLayer.ShaderChannel, evt.NewDecal, evt.ChosenRenderer);
     }
     else
     {
         EquipmentShaderUtils.ApplyDecalTexture(evt.DecalLayer.ShaderChannel, evt.NewDecal, currentEquipmentRenderers);
     }
     if (evt.DecalLayer.Type == DecalType.FABRIC)
     {
         EquipmentShaderUtils.ApplyDecalRepeat(evt.DecalLayer.ShaderChannel, repeat: true, currentEquipmentRenderers);
     }
     return(false);
 }
 private void setDefaultEquipmentValues(DecalMaterialProperties[] defaultDecalMaterials)
 {
     itemModel.SetChannelFabric(itemModel.RedChannel, null, Vector2.zero);
     itemModel.SetChannelFabric(itemModel.GreenChannel, null, Vector2.zero);
     itemModel.SetChannelFabric(itemModel.BlueChannel, null, Vector2.zero);
     if (defaultDecalMaterials != null)
     {
         for (int i = 0; i < defaultDecalMaterials.Length; i++)
         {
             DecalMaterialProperties decalMaterialProperties = defaultDecalMaterials[i];
             DecalColorChannel       decalColorChannel       = (DecalColorChannel)i;
             EquipmentShaderUtils.ApplyDecalScale(decalColorChannel, decalMaterialProperties.Scale, currentEquipmentRenderers);
             EquipmentShaderUtils.ApplyDecalRotation(decalColorChannel, decalMaterialProperties.RotationRads, currentEquipmentRenderers);
         }
     }
     else
     {
         Log.LogErrorFormatted(this, "Default Decal Materals were null and not applied.");
     }
 }
 private bool onDecalMoved(CustomizerModelEvents.DecalMovedEvent evt)
 {
     EquipmentShaderUtils.ApplyDecalOffset(evt.DecalLayer.ShaderChannel, evt.UVOffset, currentEquipmentRenderers);
     return(false);
 }
 private bool onDecalRotated(CustomizerModelEvents.DecalRotatedEvent evt)
 {
     EquipmentShaderUtils.ApplyDecalRotation(evt.DecalLayer.ShaderChannel, evt.TotalRotation, currentEquipmentRenderers);
     return(false);
 }
 private bool onDecalColorChanged(CustomizerModelEvents.DecalTintChangedEvent evt)
 {
     EquipmentShaderUtils.ApplyDecalColor(evt.DecalLayer.ShaderChannel, evt.NewColor, currentEquipmentRenderers);
     return(false);
 }