public override void DoCell(Rect rect, Pawn pawn, PawnTable table)
 {
     if (pawn.RaceProps.Humanlike)
     {
         HostilityResponseModeUtility.DrawResponseButton(rect, pawn, paintable: true);
     }
 }
Пример #2
0
 public override void DoCell(Rect rect, Pawn pawn, PawnTable table)
 {
     if (pawn.RaceProps.Humanlike)
     {
         Vector2 pos = new Vector2(rect.x, (float)(rect.y + 3.0));
         HostilityResponseModeUtility.DrawResponseButton(pos, pawn);
     }
 }
        public override void DoCell(Rect rect, Pawn pawn, PawnTable table)
        {
            if (!pawn.RaceProps.Humanlike)
            {
                return;
            }
            Vector2 pos = new Vector2(rect.x, rect.y + 3f);

            HostilityResponseModeUtility.DrawResponseButton(pos, pawn);
        }
        public static void DrawResponseButton(Vector2 pos, Pawn pawn)
        {
            Texture2D icon = pawn.playerSettings.hostilityResponse.GetIcon();
            Rect      rect = new Rect(pos.x, pos.y, 24f, 24f);

            if (Widgets.ButtonImage(rect, icon))
            {
                pawn.playerSettings.hostilityResponse = HostilityResponseModeUtility.GetNextResponse(pawn);
                SoundDefOf.TickHigh.PlayOneShotOnCamera(null);
                PlayerKnowledgeDatabase.KnowledgeDemonstrated(ConceptDefOf.HostilityResponse, KnowledgeAmount.SpecificInteraction);
            }
            UIHighlighter.HighlightOpportunity(rect, "HostilityResponse");
            TooltipHandler.TipRegion(rect, "HostilityReponseTip".Translate() + "\n\n" + "HostilityResponseCurrentMode".Translate() + ": " + pawn.playerSettings.hostilityResponse.GetLabel());
        }
Пример #5
0
 public void DoInspectPaneButtons(Rect rect, ref float lineEndWidth)
 {
     if (this.NumSelected == 1)
     {
         Thing singleSelectedThing = Find.Selector.SingleSelectedThing;
         if (singleSelectedThing != null)
         {
             Widgets.InfoCardButton((float)(rect.width - 48.0), 0f, Find.Selector.SingleSelectedThing);
             lineEndWidth += 24f;
             Pawn pawn = singleSelectedThing as Pawn;
             if (pawn != null && pawn.playerSettings != null && pawn.playerSettings.UsesConfigurableHostilityResponse)
             {
                 HostilityResponseModeUtility.DrawResponseButton(new Vector2((float)(rect.width - 72.0), 0f), pawn);
                 lineEndWidth += 24f;
             }
         }
     }
 }
Пример #6
0
        public void DoInspectPaneButtons(Rect rect, ref float lineEndWidth)
        {
            if (NumSelected != 1)
            {
                return;
            }
            Thing singleSelectedThing = Find.Selector.SingleSelectedThing;

            if (singleSelectedThing != null)
            {
                Widgets.InfoCardButton(rect.width - 48f, 0f, Find.Selector.SingleSelectedThing);
                lineEndWidth += 24f;
                Pawn pawn = singleSelectedThing as Pawn;
                if (pawn != null && pawn.playerSettings != null && pawn.playerSettings.UsesConfigurableHostilityResponse)
                {
                    HostilityResponseModeUtility.DrawResponseButton(new Rect(rect.width - 72f, 0f, 24f, 24f), pawn, paintable: false);
                    lineEndWidth += 24f;
                }
            }
        }