pub enum GameplayMode {
Freeform(MapName),
PlayScenario(MapName, String, Vec<ScenarioModifier>),
FixTrafficSignals,
OptimizeCommute(OrigPersonID, Duration),
Actdev(MapName, String, bool),
Tutorial(TutorialPointer),
}
Variants
Freeform(MapName)
PlayScenario(MapName, String, Vec<ScenarioModifier>)
FixTrafficSignals
OptimizeCommute(OrigPersonID, Duration)
Actdev(MapName, String, bool)
Tutorial(TutorialPointer)
Implementations
sourceimpl GameplayMode
impl GameplayMode
pub fn map_name(&self) -> MapName
pub fn scenario(
&self,
app: &App,
rng: XorShiftRng,
timer: &mut Timer<'_>
) -> LoadScenario
pub fn can_edit_roads(&self) -> bool
pub fn can_edit_stop_signs(&self) -> bool
pub fn can_jump_to_time(&self) -> bool
pub fn allows(&self, edits: &MapEdits) -> bool
sourcepub fn initialize(
&self,
ctx: &mut EventCtx<'_>,
app: &mut App
) -> Box<dyn GameplayState>
pub fn initialize(
&self,
ctx: &mut EventCtx<'_>,
app: &mut App
) -> Box<dyn GameplayState>
Must be called after the scenario has been setup. The caller will call recreate_panels after this, so each constructor doesn’t need to.
Trait Implementations
sourceimpl Clone for GameplayMode
impl Clone for GameplayMode
sourcefn clone(&self) -> GameplayMode
fn clone(&self) -> GameplayMode
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Ord for GameplayMode
impl Ord for GameplayMode
sourceimpl PartialEq<GameplayMode> for GameplayMode
impl PartialEq<GameplayMode> for GameplayMode
sourcefn eq(&self, other: &GameplayMode) -> bool
fn eq(&self, other: &GameplayMode) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &GameplayMode) -> bool
fn ne(&self, other: &GameplayMode) -> bool
This method tests for !=
.
sourceimpl PartialOrd<GameplayMode> for GameplayMode
impl PartialOrd<GameplayMode> for GameplayMode
sourcefn partial_cmp(&self, other: &GameplayMode) -> Option<Ordering>
fn partial_cmp(&self, other: &GameplayMode) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl Eq for GameplayMode
impl StructuralEq for GameplayMode
impl StructuralPartialEq for GameplayMode
Auto Trait Implementations
impl RefUnwindSafe for GameplayMode
impl Send for GameplayMode
impl Sync for GameplayMode
impl Unpin for GameplayMode
impl UnwindSafe for GameplayMode
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn 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 T where
T: Any,
impl<T> Downcast for T where
T: Any,
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
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
. Read more
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
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. Read more
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. Read more
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcefn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
type Output = T
Should always be Self
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more