pub struct CastPlacement {
pub at: CastPlace,
pub doing: Option<String>,
pub dialogue: Option<CastDialogue>,
pub requires_flags: Vec<FlagId>,
pub forbids_flags: Vec<FlagId>,
pub requires_state: Vec<StateCompare>,
}Expand description
One declared scene for one NPC in one quest.
Fields§
§at: CastPlaceWhere the NPC is: an anchor, or "offstage" / "dead".
doing: Option<String>What the character is doing — free prose, never machine-checked.
This field is the forcing function, which is the whole reason it is
required (DW0463) despite being unverifiable: you cannot fill it in
without deciding the character’s business in this beat, and stage 6
receives it as the context the NPC’s lines are written against.
dialogue: Option<CastDialogue>What right-click offers during this quest. Required for an on-stage
placement (DW0463) — including the explicit "none".
requires_flags: Vec<FlagId>Branch gate (per-branch casts): this placement describes the world only
once every listed flag is set. Mirrors an option’s requires_flags.
forbids_flags: Vec<FlagId>Negative branch gate: this placement describes the world only while no
listed flag is set. Mirrors an option’s forbids_flags.
requires_state: Vec<StateCompare>Numeric gate terms (DSL v0.10, spec-0031): every listed comparison must hold for this gate to be open. The third field of the one gate, carried by every gate consumer — never by the verb that first wanted it. Default empty, so a pre-0.10 campaign is byte-identical.
Implementations§
Trait Implementations§
Source§impl Clone for CastPlacement
impl Clone for CastPlacement
Source§impl Debug for CastPlacement
impl Debug for CastPlacement
Source§impl<'de> Deserialize<'de> for CastPlacement
impl<'de> Deserialize<'de> for CastPlacement
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for CastPlacement
impl JsonSchema for CastPlacement
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read more