예제 #1
0
 /// <summary>
 /// Used for rendering of CE custom apparel layers.
 /// </summary>
 /// <param name="layer"></param>
 /// <returns></returns>
 private static bool IsVisibleLayer_Internal(ApparelLayerDef layer)
 {
     /*
      * Belt is not actually a pre-shell layer, but we want to treat it as such in this patch,
      * to avoid rendering bugs with utility items (e.g: broadshield pack)
      */
     return(true &&
            layer.drawOrder >= ApparelLayerDefOf.Shell.drawOrder &&
            layer != ApparelLayerDefOf.Belt &&
            !(layer.GetModExtension <ApparelLayerExtension>()?.IsHeadwear ?? false));
 }
예제 #2
0
 private static bool IsHeadwear(ApparelLayerDef layer)
 {
     return(layer.GetModExtension <ApparelLayerExtension>()?.IsHeadwear ?? false);
 }
 private static bool IsPreShellLayer(ApparelLayerDef layer)
 {
     return(layer.drawOrder < ApparelLayerDefOf.Shell.drawOrder ||
            (layer.GetModExtension <ApparelLayerExtension>()?.IsHeadwear ?? false));
 }
예제 #4
0
 private static bool IsPreShellLayer(ApparelLayerDef layer)
 {
     return(layer.drawOrder < ApparelLayerDefOf.Shell.drawOrder ||
            (layer.GetModExtension <ApparelLayerExtension>()?.IsHeadwear ?? false) ||
            layer == ApparelLayerDefOf.Belt);    //Belt is not actually a pre-shell layer, but we want to treat it as such in this patch, to avoid rendering bugs with utility items (e.g: broadshield pack)
 }
 private static bool RenderSpecial(ApparelLayerDef layer)
 {
     return((layer.GetModExtension <ApparelLayerExtension>()?.IsHeadwear ?? false) ||
            layer.drawOrder > ApparelLayerDefOf.Shell.drawOrder);
 }