pub enum SpecialAbility {
Show 18 variants
MirrorCopy {
depth: usize,
},
Erase(EraseTarget),
Summon {
count: u32,
hp_each: f32,
},
AoeBlast {
radius: f32,
damage: f32,
element: Element,
},
SelfHeal {
amount: f32,
},
LockAbility,
QuantumCollapse,
ReverseSemantic,
CounterPredict,
MarkovPredict,
RuleRandomize,
ConsumeArena {
columns: u32,
},
FactorialStrike {
sequence_index: u32,
},
ArithmeticPuzzle {
target_factors: Vec<u32>,
},
FibonacciSplit,
CommitteeVote,
Entangle,
None,
}Expand description
A special ability usable during a boss phase.
Variants§
MirrorCopy
Copy the player’s last N abilities.
Erase(EraseTarget)
Erase a specific game element.
Summon
Summon helper entities.
AoeBlast
Area-of-effect blast.
SelfHeal
Self-heal.
LockAbility
Lock one of the player’s abilities.
QuantumCollapse
Quantum collapse into a specific form.
ReverseSemantic
Reverse damage/heal semantics.
CounterPredict
Counter the player’s most-used action.
MarkovPredict
Markov-chain based prediction of next player action.
RuleRandomize
Randomize game rules.
ConsumeArena
Consume arena tiles.
FactorialStrike
Factorial damage sequence.
ArithmeticPuzzle
Arithmetic puzzle: player must deal specific damage.
FibonacciSplit
Split into fibonacci sub-entities.
CommitteeVote
Vote-based action selection.
Entangle
Entangle with a copy.
None
No special ability.
Trait Implementations§
Source§impl Clone for SpecialAbility
impl Clone for SpecialAbility
Source§impl Debug for SpecialAbility
impl Debug for SpecialAbility
Source§impl PartialEq for SpecialAbility
impl PartialEq for SpecialAbility
impl StructuralPartialEq for SpecialAbility
Auto Trait Implementations§
impl Freeze for SpecialAbility
impl RefUnwindSafe for SpecialAbility
impl Send for SpecialAbility
impl Sync for SpecialAbility
impl Unpin for SpecialAbility
impl UnsafeUnpin for SpecialAbility
impl UnwindSafe for SpecialAbility
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.