pub struct GitTrigger {
pub geometry: Vec<UttGeometryPoint>,
pub common: GitTriggerCommon,
pub template_resref: ResRef,
}Expand description
A trigger instance placed in the area (struct type 1).
Triggers carry geometry (vertex polygon) and optional area-transition
fields (LinkedToModule, LinkedTo, LinkedToFlags,
TransitionDestination).
§Tag is dead here, and deliberately unmodelled
Every trigger placement that carries a Tag carries a real value, and the
engine does not read it at this path: a templated trigger takes its tag
from the .utt blueprint, with no overlay from the placement. Same
situation as GitDoor, and the same trap. Setting it on
a placement looks like renaming that trigger and changes nothing.
Fields§
§geometry: Vec<UttGeometryPoint>The trigger’s boundary (Geometry).
common: GitTriggerCommonThe block both forms carry, which the list declares as its element.
No #[gff]: the arm contributes its parts to the split, and the
element is this block, so declaring it here too would make one label
two declarations. The arm’s own codec reads and writes it.
template_resref: ResRefTemplate resref (TemplateResRef).
Implementations§
Source§impl GitTrigger
impl GitTrigger
Sourcepub const PARTS: &'static [&'static [Field]]
pub const PARTS: &'static [&'static [Field]]
This type’s schema in parts, which is what a container holding it references.
Own fields first, then one part per flattened child in the order they are declared.
Sourcepub fn read_declared(root: &GffStruct) -> Self
pub fn read_declared(root: &GffStruct) -> Self
Reads every declared field off root.
Absent fields take the entry’s own answer, so a fallback is derived from the declaration rather than restated beside it.
A field declaring a hand-written read is left at that answer for the view to overwrite.
Sourcepub fn write_declared(&self, root: &mut GffStruct)
pub fn write_declared(&self, root: &mut GffStruct)
Writes every declared field onto root, leaving out the ones
their entry says the engine’s own writer leaves out.
A field declaring a hand-written write is not touched here.
Source§impl GitTrigger
impl GitTrigger
Sourcepub fn read_element(structure: &GffStruct) -> Self
pub fn read_element(structure: &GffStruct) -> Self
Reads one element, with the block the list declares as its element.
Sourcepub fn write_element(&self, structure: &mut GffStruct)
pub fn write_element(&self, structure: &mut GffStruct)
Writes one element, the common block included.
Trait Implementations§
Source§impl Clone for GitTrigger
impl Clone for GitTrigger
Source§fn clone(&self) -> GitTrigger
fn clone(&self) -> GitTrigger
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 GitTrigger
impl Debug for GitTrigger
Source§impl Default for GitTrigger
impl Default for GitTrigger
Source§impl GitElement for GitTrigger
impl GitElement for GitTrigger
Source§impl HasSchema for GitTrigger
impl HasSchema for GitTrigger
Source§impl PartialEq for GitTrigger
impl PartialEq for GitTrigger
Source§fn eq(&self, other: &GitTrigger) -> bool
fn eq(&self, other: &GitTrigger) -> bool
self and other values to be equal, and is used by ==.