public override bool Draw(HudComponent component, Rect rect) { HudTimings.Update(component)?.Start(); var result = DoDraw(rect); HudTimings.Update(component)?.Finish(rect); return(result); }
public void Draw(Rect rect, PawnModel model) { HudTimings.Update(this)?.Start(); try { if (model == null) { return; } if (model.Base != _lastPawn || _lastRefresh == default || (DateTime.Now - _lastRefresh).TotalMilliseconds > Theme.RefreshRate.Value * 100) { Prepare(model); _lastPawn = model.Base; _lastRefresh = DateTime.Now; } Draw(rect); } catch (Exception exception) { Mod.HandleError(exception); } HudTimings.Update(this)?.Finish(rect, true); }