public static void Postfix(InspirationHandler __instance) { if (!__instance.pawn.IsFreeColonist) { return; } BCBManager.SetColonistBarDirty(); }
public static void Postfix() { if (Event.current.type == EventType.Layout) { return; } if (Event.current.type == EventType.Repaint) { _settings.UISettingsChanged = false; BCBManager.ModColonistBarDirty = false; } try { Rect buttonRect = GetRect(); bool showButton = !_settings.AutoHide; if (!showButton) { bool timetoShowButton = false; if (_firstDraw) { _firstDraw = false; _lastTimeShow = DateTime.UtcNow; } else if (DateTime.UtcNow - _lastTimeShow < _settings.AutoHideButtonTime) { timetoShowButton = true; } else if (MouseIsOver(buttonRect)) { timetoShowButton = true; _lastTimeShow = DateTime.UtcNow; } showButton |= timetoShowButton; } if (showButton) { if (DrawUtility.ButtonInvertImage(buttonRect, BCBTexture.Expand, _color)) { if (Event.current.button == 0) { BCBComponent.Expanded ^= true; BCBManager.LastBarRect = Rect.zero; Find.ColonistBar.MarkColonistsDirty(); return; } } } if (Event.current.type == EventType.KeyUp && Event.current.keyCode == _settings.HotKey && Event.current.control == _settings.CtrlKey) { BCBComponent.Expanded ^= true; BCBManager.LastBarRect = Rect.zero; Find.ColonistBar.MarkColonistsDirty(); return; } if (Event.current.type != EventType.Repaint) { return; } if (BCBManager.UpdateColonistBar()) { Find.ColonistBar.MarkColonistsDirty(); } } catch (Exception e) { Log.Warning(e.ToString()); BetterColonistBarMod.HasException = true; BetterColonistBarMod.ExceptionReport = new ExceptionReport(e); } }