pub struct DrawOutput {
pub biscuit_rect: Rect,
pub golden_rect: Rect,
pub green_coin_rect: Rect,
pub play_area: Rect,
pub upgrade_rows: Vec<(usize, Rect)>,
pub fingerer_rows: Vec<(usize, Rect)>,
pub help_hits: Vec<(HelpAction, Rect)>,
pub prestige_reset_rect: Rect,
}Fields§
§biscuit_rect: Rect§golden_rect: Rect§green_coin_rect: RectOn-screen Green Coin marker rect, or zero-rect when no coin is
visible. Hit-tested by the click router exactly like golden_rect
— clicking either one routes through Action::CatchGolden, which
the sim resolves by trying both catch paths.
play_area: RectThe whole left column where the biscuit + hands + particles live — i.e. “the box that displays the ass.” Used by the input router so the scroll-wheel zoom fires anywhere in this region (including the vast empty space around a small biscuit at low zoom), and only the right-hand sidebar opts out of zoom.
upgrade_rows: Vec<(usize, Rect)>(upgrade_idx, screen_row_rect) pairs for the Upgrades panel —
populated only when the active mode renders that panel; empty
otherwise. The click router hit-tests these for BuyUpgrade.
First element of each tuple is also the digit-shortcut target,
kept aligned with visible_upgrades.
fingerer_rows: Vec<(usize, Rect)>(fingerer_idx, screen_row_rect) for the Game-mode sidebar.
help_hits: Vec<(HelpAction, Rect)>(action, rect) for every clickable help-bar hint at the bottom of
the play column. Mouse-first players use these to switch panels,
catch goldens, prestige-reset, and quit — all of which used to be
keyboard-only. Empty rects when the hint is non-actionable
(e.g. [Space/Click] finger is informational, not a click target).
prestige_reset_rect: RectClick rect for the Press [r] to reset and claim confirm line in
the Prestige panel. Default rect when not in Prestige mode or no
prestige is available.
Auto Trait Implementations§
impl Freeze for DrawOutput
impl RefUnwindSafe for DrawOutput
impl Send for DrawOutput
impl Sync for DrawOutput
impl Unpin for DrawOutput
impl UnsafeUnpin for DrawOutput
impl UnwindSafe for DrawOutput
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more