Struct game::app::PerMap [−][src]
pub struct PerMap {}Show fields
pub map: Map, pub draw_map: DrawMap, pub sim: Sim, pub agents: RefCell<AgentCache>, pub current_selection: Option<ID>, pub current_flags: Flags, pub last_warped_from: Option<(Pt2D, f64)>, pub sim_cb: Option<Box<dyn SimCallback>>, pub dirty_from_edits: bool, pub has_modified_trips: bool, pub unedited_map: RefCell<Option<Map>>, pub layer: Option<Box<dyn Layer>>, pub suspended_sim: Option<Sim>, prebaked: Option<(MapName, String, Analytics)>, pub scenario: Option<Scenario>,
All of the state that’s bound to a specific map.
Fields
map: Map
draw_map: DrawMap
sim: Sim
agents: RefCell<AgentCache>
current_selection: Option<ID>
current_flags: Flags
last_warped_from: Option<(Pt2D, f64)>
sim_cb: Option<Box<dyn SimCallback>>
dirty_from_edits: bool
If we ever left edit mode and resumed without restarting from midnight, this is true.
has_modified_trips: bool
Any ScenarioModifiers in effect?
unedited_map: RefCell<Option<Map>>
Sometimes we need the map before any edits have been applied. Cache it here.
layer: Option<Box<dyn Layer>>
suspended_sim: Option<Sim>
Only filled out in edit mode. Stored here once to avoid lots of clones. Used for preview.
prebaked: Option<(MapName, String, Analytics)>
Only exists in some gameplay modes. Must be carefully reset otherwise. Has the map and scenario name too.
scenario: Option<Scenario>
The most recent Scenario loaded from a file. Don’t depend on it always matching the current gameplay mode; always verify the name matches what’s needed.
Storing this may cost some memory, but otherwise resetting to midnight would require loading it again from a file. This is particularly painful on the web!
Implementations
impl PerMap
[src]
impl PerMap
[src]pub fn map_loaded(
map: Map,
sim: Sim,
flags: Flags,
opts: &Options,
cs: &ColorScheme,
ctx: &mut EventCtx<'_>,
timer: &mut Timer<'_>
) -> PerMap
[src]
map: Map,
sim: Sim,
flags: Flags,
opts: &Options,
cs: &ColorScheme,
ctx: &mut EventCtx<'_>,
timer: &mut Timer<'_>
) -> PerMap
pub fn init_camera_for_loaded_map(
&mut self,
ctx: &mut EventCtx<'_>,
splash: bool
)
[src]
&mut self,
ctx: &mut EventCtx<'_>,
splash: bool
)
pub fn clear_sim(&mut self) -> Sim
[src]
Returns whatever was there
pub fn canonical_point(&self, id: ID) -> Option<Pt2D>
[src]
Auto Trait Implementations
impl !RefUnwindSafe for PerMap
impl !Send for PerMap
impl !Sync for PerMap
impl Unpin for PerMap
impl !UnwindSafe for PerMap
Blanket Implementations
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
impl<T> Instrument for T
[src]
impl<T> Instrument for T
[src]pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,