Skip to main content

CutsceneScript

Struct CutsceneScript 

Source
pub struct CutsceneScript { /* private fields */ }
Expand description

Fluent builder for Timeline. Maintains an implicit cursor time.

§Usage

let tl = CutsceneScript::new("my_scene")
    .fade_in(1.0)
    .wait(0.5)
    .say("Hero", "Time to fight!")
    .camera_shake(0.3, 0.6, 20.0)
    .wait(1.0)
    .fade_out(1.0)
    .build();

Implementations§

Source§

impl CutsceneScript

Source

pub fn new(name: impl Into<String>) -> Self

Source

pub fn at(self, time: f32) -> Self

Place cursor at an absolute time.

Source

pub fn wait(self, dt: f32) -> Self

Advance cursor by dt seconds (explicit wait).

Source

pub fn label(self, name: impl Into<String>) -> Self

Add a label at the current cursor position without advancing.

Source

pub fn fade_in(self, duration: f32) -> Self

Source

pub fn fade_out(self, duration: f32) -> Self

Source

pub fn fade_to(self, color: [f32; 4], duration: f32) -> Self

Source

pub fn flash(self, color: [f32; 4], duration: f32, intensity: f32) -> Self

Source

pub fn bloom(self, enabled: bool, intensity: f32, duration: f32) -> Self

Source

pub fn chromatic_aberration(self, amount: f32, duration: f32) -> Self

Source

pub fn film_grain(self, amount: f32) -> Self

Source

pub fn vignette(self, radius: f32, softness: f32, intensity: f32) -> Self

Source

pub fn camera_move(self, target: Vec3, duration: f32) -> Self

Source

pub fn camera_look_at(self, target: Vec3, duration: f32) -> Self

Source

pub fn camera_shake(self, intensity: f32, duration: f32, frequency: f32) -> Self

Source

pub fn camera_zoom(self, zoom: f32, duration: f32) -> Self

Source

pub fn spawn(self, blueprint: impl Into<String>, position: Vec3) -> Self

Source

pub fn spawn_tagged( self, blueprint: impl Into<String>, position: Vec3, tag: impl Into<String>, ) -> Self

Source

pub fn despawn_tag(self, tag: impl Into<String>) -> Self

Source

pub fn play_sfx(self, name: impl Into<String>, volume: f32) -> Self

Source

pub fn play_sfx_at( self, name: impl Into<String>, volume: f32, position: Vec3, ) -> Self

Source

pub fn music_vibe(self, vibe: impl Into<String>) -> Self

Source

pub fn master_volume(self, volume: f32, duration: f32) -> Self

Source

pub fn say( self, speaker: impl Into<String>, text: impl Into<String>, duration: f32, ) -> Self

Say a line of dialogue and advance cursor by duration.

Source

pub fn say_async( self, speaker: impl Into<String>, text: impl Into<String>, ) -> Self

Say a line without advancing cursor (fire-and-forget).

Source

pub fn title_card( self, text: impl Into<String>, subtitle: impl Into<String>, duration: f32, ) -> Self

Source

pub fn notify(self, text: impl Into<String>, duration: f32) -> Self

Source

pub fn hide_dialogue(self) -> Self

Source

pub fn set_flag(self, name: impl Into<String>, value: bool) -> Self

Source

pub fn callback(self, name: impl Into<String>) -> Self

Source

pub fn callback_with_args( self, name: impl Into<String>, args: HashMap<String, String>, ) -> Self

Source

pub fn parallel(self, actions: Vec<TimelineAction>) -> Self

Run multiple actions at the same cursor time.

Source

pub fn set_looping(self) -> Self

Source

pub fn set_speed(self, s: f32) -> Self

Source

pub fn build(self) -> Timeline

Finalize and build the Timeline.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> Downcast for T
where T: Any,

Source§

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>

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)

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)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
Source§

impl<T> DowncastSync for T
where T: Any + Send + Sync,

Source§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

Convert Arc<Trait> (where Trait: Downcast) to Arc<Any>. Arc<Any> can then be further downcast into Arc<ConcreteType> where ConcreteType implements Trait.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<S> FromSample<S> for S

Source§

fn from_sample_(s: S) -> S

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> ToSample<U> for T
where U: FromSample<T>,

Source§

fn to_sample_(self) -> U

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<S, T> Duplex<S> for T
where T: FromSample<S> + ToSample<S>,