private void ApparelChanged()
 {
     LongEventHandler.ExecuteWhenFinished(delegate
     {
         this.pawn.Drawer.renderer.graphics.ResolveApparelGraphics();
         PortraitsCache.SetDirty(this.pawn);
     });
 }
示例#2
0
        public void RenderOverBody(Vector3 drawLoc, Mesh bodyMesh, Quaternion quat, bool forPortrait)
        {
            int           num     = 0;
            List <Hediff> hediffs = pawn.health.hediffSet.hediffs;

            for (int i = 0; i < hediffs.Count; i++)
            {
                if (hediffs[i].def.displayWound)
                {
                    Hediff_Injury hediff_Injury = hediffs[i] as Hediff_Injury;
                    if (hediff_Injury == null || !hediff_Injury.IsPermanent())
                    {
                        num++;
                    }
                }
            }
            int num2 = Mathf.CeilToInt((float)num / 2f);

            if (num2 > MaxDisplayWounds)
            {
                num2 = MaxDisplayWounds;
            }
            while (wounds.Count < num2)
            {
                wounds.Add(new Wound(pawn));
                PortraitsCache.SetDirty(pawn);
            }
            while (wounds.Count > num2)
            {
                wounds.Remove(wounds.RandomElement());
                PortraitsCache.SetDirty(pawn);
            }
            for (int j = 0; j < wounds.Count; j++)
            {
                wounds[j].DrawWound(drawLoc, quat, pawn.Rotation, forPortrait);
            }
        }
 private void <ApparelChanged> m__1()
 {
     this.pawn.Drawer.renderer.graphics.ResolveApparelGraphics();
     PortraitsCache.SetDirty(this.pawn);
 }