game::sandbox

Struct SandboxMode

Source
pub struct SandboxMode {
    gameplay: Box<dyn GameplayState>,
    pub gameplay_mode: GameplayMode,
    pub controls: SandboxControls,
    recalc_unzoomed_agent: Option<Time>,
    last_cs: ColorSchemeChoice,
}

Fields§

§gameplay: Box<dyn GameplayState>§gameplay_mode: GameplayMode§controls: SandboxControls§recalc_unzoomed_agent: Option<Time>§last_cs: ColorSchemeChoice

Implementations§

Source§

impl SandboxMode

Source

pub fn simple_new(app: &mut App, mode: GameplayMode) -> Box<dyn State<App>>

If you don’t need to chain any transitions after the SandboxMode that rely on its resources being loaded, use this. Otherwise, see async_new.

Source

pub fn async_new( app: &mut App, mode: GameplayMode, finalize: Box<dyn FnOnce(&mut EventCtx<'_>, &mut App) -> Vec<Transition<App>>>, ) -> Box<dyn State<App>>

This does not immediately initialize anything (like loading the correct map, instantiating the scenario, etc). That means if you’re chaining this call with other transitions, you probably need to defer running them using finalize.

Source

pub fn start_from_savestate(app: &App) -> Box<dyn State<App>>

Assumes that the map and simulation have already been set up, and starts by loading prebaked data.

Source

pub fn contextual_actions(&self) -> Actions

Trait Implementations§

Source§

impl State<App> for SandboxMode

Source§

fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition<App>

Respond to a UI event, such as input or time passing.
Source§

fn draw(&self, g: &mut GfxCtx<'_>, app: &App)

Draw
Source§

fn on_destroy(&mut self, _: &mut EventCtx<'_>, app: &mut App)

Before this state is popped or replaced, call this.
§

fn draw_baselayer(&self) -> DrawBaselayer

Specifies what to draw before draw()
§

fn recreate(&mut self, _: &mut EventCtx<'_>, _: &mut A) -> Box<dyn State<A>>

Respond to Transition::Recreate by assuming state in the app has changed, but preserving the State-specific state appropriately.

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
§

impl<T> Downcast for T
where T: 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.
§

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.
§

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.
§

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

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

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

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

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.

§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
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.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

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
§

fn with_current_subscriber(self) -> WithDispatch<Self>

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

impl<G1, G2> Within<G2> for G1
where G2: Contains<G1>,

§

fn is_within(&self, b: &G2) -> bool