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
impl SandboxMode
Sourcepub fn simple_new(app: &mut App, mode: GameplayMode) -> Box<dyn State<App>>
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
.
Sourcepub fn async_new(
app: &mut App,
mode: GameplayMode,
finalize: Box<dyn FnOnce(&mut EventCtx<'_>, &mut App) -> Vec<Transition<App>>>,
) -> Box<dyn State<App>>
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
.
Sourcepub fn start_from_savestate(app: &App) -> Box<dyn State<App>>
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.
pub fn contextual_actions(&self) -> Actions
Trait Implementations§
Source§impl State<App> for SandboxMode
impl State<App> for SandboxMode
Source§fn event(&mut self, ctx: &mut EventCtx<'_>, app: &mut App) -> Transition<App>
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 on_destroy(&mut self, _: &mut EventCtx<'_>, app: &mut App)
fn on_destroy(&mut self, _: &mut EventCtx<'_>, app: &mut App)
Before this state is popped or replaced, call this.
§fn draw_baselayer(&self) -> DrawBaselayer
fn draw_baselayer(&self) -> DrawBaselayer
Specifies what to draw before draw()
Auto Trait Implementations§
impl Freeze for SandboxMode
impl !RefUnwindSafe for SandboxMode
impl !Send for SandboxMode
impl !Sync for SandboxMode
impl Unpin for SandboxMode
impl !UnwindSafe for SandboxMode
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<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§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
.§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
.§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.§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.