pub enum CeBodyTransformationTokenArg {
Creature((ReferenceTo<CreatureToken>, Reference)),
CreatureFlag(CreatureFlagEnum),
ForbiddenCreatureFlag(CreatureFlagEnum),
CreatureCasteFlag(CasteFlagEnum),
ForbiddenCreatureCasteFlag(CasteFlagEnum),
HaveFastEffortlessGaitSpeed(u32),
AllSlowEffortlessGaitSpeed(u32),
}Variants§
Creature((ReferenceTo<CreatureToken>, Reference))
This can be used to specify a specific target creature of a specific caste, to transform
into (for example, [CE:CREATURE:DWARF:FEMALE]). ALL or ANY can be used in place of
a specific caste to randomise the caste for every transformation.
Do note that using ALL or ANY for transformation castes will make the creature transform
over and over again with the interval depending on the START token. This can lead to an
unending transformation loop.
However, there is a way to get around this.
CreatureFlag(CreatureFlagEnum)
Narrows down the selection to creatures which have the specified creature flag. May be used multiple times per transformation effect; creatures which lack any of the indicated flags will never be transformed into.
ForbiddenCreatureFlag(CreatureFlagEnum)
Excludes creatures with the specified creature flag from the random selection pool. May be used multiple times per transformation effect; creatures which possess any of the indicated flags will never be transformed into.
CreatureCasteFlag(CasteFlagEnum)
Narrows down the selection to creatures which have the specified caste flag. May be used multiple times per transformation effect; creatures which lack any of the indicated flags will never be transformed into.
ForbiddenCreatureCasteFlag(CasteFlagEnum)
Excludes any creature with the specified caste flag from the random selection pool. May be used multiple times per transformation effect; creatures which possess any of the indicated flags will never be transformed into.
HaveFastEffortlessGaitSpeed(u32)
Narrows down the selection to creatures which have at least one gait with an <energy expenditure> of
0 and a <max speed> less than or equal to the specified <minimum gait speed> (“less than”
because lower is faster in the scale used for gait speed). This is used in generated
divination curses to prevent the player from being transformed into a creature that is
frustratingly slow to play as.
AllSlowEffortlessGaitSpeed(u32)
Excludes any creatures which have at least one gait with an <energy expenditure> of 0 and
a <max speed> value less than or equal to the specified <maximum gait speed> (note that
larger values are slower in the scale used for gait speed).
Trait Implementations§
Source§impl Clone for CeBodyTransformationTokenArg
impl Clone for CeBodyTransformationTokenArg
Source§fn clone(&self) -> CeBodyTransformationTokenArg
fn clone(&self) -> CeBodyTransformationTokenArg
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CeBodyTransformationTokenArg
impl Debug for CeBodyTransformationTokenArg
Source§impl<'de> Deserialize<'de> for CeBodyTransformationTokenArg
impl<'de> Deserialize<'de> for CeBodyTransformationTokenArg
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl PartialEq for CeBodyTransformationTokenArg
impl PartialEq for CeBodyTransformationTokenArg
Source§fn eq(&self, other: &CeBodyTransformationTokenArg) -> bool
fn eq(&self, other: &CeBodyTransformationTokenArg) -> bool
self and other values to be equal, and is used by ==.Source§impl TokenDeserialize for CeBodyTransformationTokenArg
Deserialize a token with following pattern: [REF:ty]
impl TokenDeserialize for CeBodyTransformationTokenArg
Deserialize a token with following pattern: [REF:ty]
fn deserialize_tokens( cursor: &mut TreeCursor, source: &str, diagnostics: &mut DiagnosticsInfo, ) -> Result<Box<Self>, ()>
fn deserialize_general_token( _cursor: &mut TreeCursor, _source: &str, _diagnostics: &mut DiagnosticsInfo, new_self: Box<Self>, ) -> (LoopControl, Box<Self>)
Source§fn get_vec_loopcontrol() -> LoopControl
fn get_vec_loopcontrol() -> LoopControl
Continue in most cases,
DoNothing in case of String, i32, Tuples and type likes thatfn get_allowed_tokens() -> Option<Vec<String>>
Source§impl TryFromArgumentGroup for CeBodyTransformationTokenArg
impl TryFromArgumentGroup for CeBodyTransformationTokenArg
Source§fn try_from_argument_group(
token: &mut Token,
source: &str,
diagnostics: &mut DiagnosticsInfo,
add_diagnostics_on_err: bool,
) -> Result<Self, ()>
fn try_from_argument_group( token: &mut Token, source: &str, diagnostics: &mut DiagnosticsInfo, add_diagnostics_on_err: bool, ) -> Result<Self, ()>
Self
This will consume the arguments usedfn diagnostics_wrong_enum_type<S>( arg: &Argument, expected_values: Vec<S>, _source: &str, diagnostics: &mut DiagnosticsInfo, add_diagnostics_on_err: bool, )
impl Eq for CeBodyTransformationTokenArg
impl StructuralPartialEq for CeBodyTransformationTokenArg
Auto Trait Implementations§
impl Freeze for CeBodyTransformationTokenArg
impl RefUnwindSafe for CeBodyTransformationTokenArg
impl Send for CeBodyTransformationTokenArg
impl Sync for CeBodyTransformationTokenArg
impl Unpin for CeBodyTransformationTokenArg
impl UnwindSafe for CeBodyTransformationTokenArg
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.Source§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
Source§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the foreground set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red() and
green(), which have the same functionality but are
pithier.
§Example
Set foreground color to white using fg():
use yansi::{Paint, Color};
painted.fg(Color::White);Set foreground color to white using white().
use yansi::Paint;
painted.white();Source§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
Source§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
Source§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
Source§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
Source§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
Source§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
Source§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
Source§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
Source§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self with the background set to
value.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red() and
on_green(), which have the same functionality but
are pithier.
§Example
Set background color to red using fg():
use yansi::{Paint, Color};
painted.bg(Color::Red);Set background color to red using on_red().
use yansi::Paint;
painted.on_red();Source§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
Source§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
Source§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
Source§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
Source§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
Source§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
Source§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
Source§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
Source§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
Source§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
Source§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling Attribute value.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold() and
underline(), which have the same functionality
but are pithier.
§Example
Make text bold using attr():
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);Make text bold using using bold().
use yansi::Paint;
painted.bold();Source§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
Source§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi Quirk value.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask() and
wrap(), which have the same functionality but are
pithier.
§Example
Enable wrapping using .quirk():
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);Enable wrapping using wrap().
use yansi::Paint;
painted.wrap();Source§fn clear(&self) -> Painted<&T>
👎Deprecated since 1.0.1: renamed to resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.
fn clear(&self) -> Painted<&T>
resetting() due to conflicts with Vec::clear().
The clear() method will be removed in a future release.Source§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the Condition value
applies. Replaces any previous condition.
See the crate level docs for more details.
§Example
Enable styling painted only when both stdout and stderr are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);