public override void DoCell(Rect rect, Pawn pawn, PawnTable table) { if (pawn.RaceProps.Humanlike) { HostilityResponseModeUtility.DrawResponseButton(rect, pawn, paintable: true); } }
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()); }
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; } } } }
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; } } }