pub enum Target {
Fingerer(u8),
AllFingerers,
Click,
PowerupSpawn(PowerupKind),
PowerupReward(PowerupKind),
PowerupDuration(PowerupKind),
Prestige,
GreenCoinStrength,
}Expand description
What the primitive operates on. The full set of game-touchable axes — any effect we want the tree to express has to map to one of these.
Variants§
Fingerer(u8)
A specific fingerer by catalog index. idx is 0..FINGERERS.len().
Stable: idx is the position in the FINGERERS array. The catalog
id at that index is the load-bearing string; idx is just a
compact encoding for the procgen-derived target.
AllFingerers
All fingerers — the effect distributes across every fingerer’s per-tier output.
Click
Manual click power (click_power()).
PowerupSpawn(PowerupKind)
Powerup spawn rate for the given kind (used with Op::SpawnRateMul).
PowerupReward(PowerupKind)
Powerup reward for the given kind (used with Op::EffectMul).
Currently meaningful for Lucky (flat cuques) and Buff (mul factor).
PowerupDuration(PowerupKind)
Powerup buff duration for the given kind (used with Op::EffectMul).
Currently meaningful for Frenzy and Buff.
Prestige
Prestige multiplier (current formula is 1 + 0.01 * prestige_count).
GreenCoinStrength
Green Coin AddPercent strength (the +10% becomes +10% * magnitude).
Implementations§
Source§impl Target
impl Target
Sourcepub fn from_index(idx: usize) -> Self
pub fn from_index(idx: usize) -> Self
Stable index used by the procgen to pick a target uniformly from the available axes. Distinct values are returned for distinct targets.
Sourcepub fn target_count() -> usize
pub fn target_count() -> usize
Total number of distinct targets the procgen can produce, given the
current FINGERERS catalog length. Procgen uses
rng.range_usize(target_count()) to pick.
Trait Implementations§
impl Copy for Target
impl StructuralPartialEq for Target
Auto Trait Implementations§
impl Freeze for Target
impl RefUnwindSafe for Target
impl Send for Target
impl Sync for Target
impl Unpin for Target
impl UnsafeUnpin for Target
impl UnwindSafe for Target
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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