pub struct ObjectState {Show 24 fields
pub used: bool,
pub backend: ObjectBackend,
pub file_name: Option<String>,
pub string_value: Option<String>,
pub object_type: i64,
pub rect_param: ObjectRectParam,
pub number_value: i64,
pub string_param: ObjectStringParam,
pub number_param: ObjectNumberParam,
pub weather_param: ObjectWeatherParam,
pub weather_work: ObjectWeatherWorkState,
pub thumb_save_no: i64,
pub movie: ObjectMovieState,
pub emote: ObjectEmoteParam,
pub gan_file: Option<String>,
pub gan: GanState,
pub frame_action: ObjectFrameActionState,
pub frame_action_ch: Vec<ObjectFrameActionState>,
pub base: ObjectBaseState,
pub button: ObjectButtonState,
pub runtime: ObjectRuntimeState,
pub mesh_animation_state: MeshAnimationState,
pub backend_runtime_slot: Option<usize>,
pub nested_runtime_slot: Option<usize>,
}Fields§
§used: boolPort-internal runtime-content marker.
This is NOT C++ C_elm_object::m_op_def.use_flag. The original
use_flag is immutable for the lifetime of an object-list slot and is
stored by this port in StageFormState::object_slot_use for top-level
STAGE objects. Do not use this field to emulate C_elm_object::is_use().
backend: ObjectBackend§file_name: Option<String>§string_value: Option<String>§object_type: i64TNM_OBJECT_TYPE_* (0=none, 1=rect, 2=pct, 3=string, 4=weather, 5=number, …).
rect_param: ObjectRectParamFor RECT objects.
number_value: i64For NUMBER objects, stores the current number value.
string_param: ObjectStringParamFor STRING objects.
number_param: ObjectNumberParamFor NUMBER objects.
weather_param: ObjectWeatherParamFor WEATHER objects (type A/B).
weather_work: ObjectWeatherWorkState§thumb_save_no: i64For SAVE_THUMB / THUMB objects.
movie: ObjectMovieStateFor MOVIE objects.
emote: ObjectEmoteParamFor E-mote objects.
gan_file: Option<String>Last loaded GAN file.
gan: GanStateGAN runtime state.
frame_action: ObjectFrameActionStateOBJECT.FRAME_ACTION state.
frame_action_ch: Vec<ObjectFrameActionState>OBJECT.FRAME_ACTION_CH state.
base: ObjectBaseState§runtime: ObjectRuntimeState§mesh_animation_state: MeshAnimationState§backend_runtime_slot: Option<usize>Optional backend-only slot override for top-level objects whose logical list ownership is not represented by GfxRuntime (currently EXCALL). This is deliberately separate from nested_runtime_slot: many VM/render paths use nested_runtime_slot as the semantic marker for CHILD/MWND tree objects.
nested_runtime_slot: Option<usize>Implementations§
Source§impl ObjectState
impl ObjectState
Sourcepub fn clone_emote_players_for_object_tree(&mut self)
pub fn clone_emote_players_for_object_tree(&mut self)
Mirrors C_elm_object::copy for the type-specific Emote resources across the complete CHILD tree. Each copied Emote object receives a cloned player and a fresh render-target identity before renderer backends are rebuilt for the destination tree.
pub fn contains_emote_in_object_tree(&self) -> bool
Sourcepub fn init_type_like(&mut self)
pub fn init_type_like(&mut self)
Reset type-specific parameters (mirrors C_elm_object::init_type(true)).
Important: this does NOT clear button/groups/events (those are part of init_param/reinit in the original implementation).
pub fn weather_sprite_count(&self) -> usize
pub fn restruct_weather_work(&mut self, screen_w: i64, screen_h: i64)
pub fn init_param_like(&mut self)
pub fn clear_runtime_only(&mut self)
pub fn set_int_prop(&mut self, ids: &RuntimeConstants, op: i32, value: i64)
pub fn set_int_prop_from_event_frame( &mut self, ids: &RuntimeConstants, op: i32, value: i64, )
pub fn has_int_prop(&self, op: i32) -> bool
pub fn remove_int_prop(&mut self, op: i32)
pub fn set_str_prop(&mut self, ids: &RuntimeConstants, op: i32, value: String)
pub fn lookup_str_prop(&self, ids: &RuntimeConstants, op: i32) -> Option<String>
pub fn has_str_prop(&self, op: i32) -> bool
pub fn remove_str_prop(&mut self, ids: &RuntimeConstants, op: i32)
pub fn lookup_int_prop(&self, ids: &RuntimeConstants, op: i32) -> Option<i64>
pub fn get_int_prop(&self, ids: &RuntimeConstants, op: i32) -> i64
pub fn runtime_slot_or(&self, fallback: usize) -> usize
pub fn ensure_runtime_slot(&mut self, next_slot: &mut usize) -> usize
pub fn int_list_by_op<'a>( &'a self, ids: &RuntimeConstants, op: i32, ) -> Option<&'a Vec<i64>>
pub fn int_list_by_op_mut<'a>( &'a mut self, ids: &RuntimeConstants, op: i32, ) -> Option<&'a mut Vec<i64>>
pub fn rep_int_event_list_by_rep_op<'a>( &'a self, ids: &RuntimeConstants, op: i32, ) -> Option<&'a Vec<IntEvent>>
pub fn rep_int_event_list_by_rep_op_mut<'a>( &'a mut self, ids: &RuntimeConstants, op: i32, ) -> Option<&'a mut Vec<IntEvent>>
pub fn int_event_by_op<'a>( &'a self, ids: &RuntimeConstants, op: i32, ) -> Option<&'a IntEvent>
pub fn int_event_by_op_mut<'a>( &'a mut self, ids: &RuntimeConstants, op: i32, ) -> Option<&'a mut IntEvent>
pub fn int_event_list_by_op<'a>( &'a self, ids: &RuntimeConstants, op: i32, ) -> Option<&'a Vec<IntEvent>>
pub fn int_event_list_by_op_mut<'a>( &'a mut self, ids: &RuntimeConstants, op: i32, ) -> Option<&'a mut Vec<IntEvent>>
pub fn set_mesh_animation_state(&mut self, next: MeshAnimationState)
pub fn sync_mesh_animation_state_from_props(&mut self, ids: &RuntimeConstants)
pub fn uses_mesh_animation_bridge_op(ids: &RuntimeConstants, op: i32) -> bool
pub fn tick(&mut self, past_game_time: i32, past_real_time: i32)
pub fn update_weather_time( &mut self, past_game_time: i32, past_real_time: i32, screen_w: i64, screen_h: i64, )
pub fn any_event_active(&self) -> bool
pub fn end_all_events(&mut self)
pub fn event_target(&self, ids: &RuntimeConstants, op: i32) -> ObjectEventTarget
Trait Implementations§
Source§impl Clone for ObjectState
impl Clone for ObjectState
Source§fn clone(&self) -> ObjectState
fn clone(&self) -> ObjectState
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ObjectState
impl Debug for ObjectState
Source§impl Default for ObjectState
impl Default for ObjectState
Source§fn default() -> ObjectState
fn default() -> ObjectState
Auto Trait Implementations§
impl Freeze for ObjectState
impl RefUnwindSafe for ObjectState
impl Send for ObjectState
impl Sync for ObjectState
impl Unpin for ObjectState
impl UnsafeUnpin for ObjectState
impl UnwindSafe for ObjectState
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§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>
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>
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)
&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)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.