Skip to main content

DialogueEvent

Enum DialogueEvent 

Source
pub enum DialogueEvent {
    Say {
        speaker: Option<String>,
        text: String,
        tags: Vec<Tag>,
    },
    Command {
        name: String,
        args: Vec<Value>,
        awaited: bool,
    },
    Choices {
        choices: Vec<Choice>,
    },
    Finished,
}
Expand description

What the VM asks the host to do before the dialogue can go on.

Returned by DialogueVm::start and DialogueVm::resume. Every variant but Finished leaves the VM suspended, waiting for the matching ResumeEvent.

Variants§

§

Say

A line of dialogue to show. Resume with ResumeEvent::Advance once the player is done reading it.

Fields

§speaker: Option<String>

Who is talking, or None for a line written without a speaker.

§text: String
§tags: Vec<Tag>

The #tags of the line, in the order they are written.

§

Command

A command for the host to interpret, such as >> add_scene(Alice). Meaning and arguments are entirely up to the host. Resume with ResumeEvent::Advance, immediately or once the command is over.

Fields

§name: String
§args: Vec<Value>
§awaited: bool
§

Choices

A choice to offer to the player. Resume with ResumeEvent::Select carrying the index of the chosen entry.

Fields

§choices: Vec<Choice>

The choices, in the order they were written.

§

Finished

The dialogue reached its end. The VM is no longer suspended, so DialogueVm::resume now fails and only DialogueVm::start can be called again.

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> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

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

fn try_from(value: U) -> Result<T, !>

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.