载入中...
搜索中...
未找到
eve::dialogue 命名空间参考

类

struct  CommandRequest
 Immutable request emitted by a command node. 更多...
 
struct  CommandResponse
 Structured response to a request emitted by a command node. 更多...
 
struct  ConversationDiagnostic
 Stable diagnostic emitted by dnut compilation, lint, or migration. 更多...
 
class  ConversationDocument
 Mutable, UI-neutral conversation document for custom editor composition. 更多...
 
class  ConversationLocalizationCatalog
 CSV-backed translation and voice recording catalog with default-locale resolution. 更多...
 
struct  ConversationLocalizationEntry
 Runtime translation and voice-production row keyed by stable key and locale. 更多...
 
class  ConversationSaveMigrations
 Explicit save migrations from an old asset version to its current version. 更多...
 
class  ConversationTextRenderer
 Parameter substitution and state-driven character voice modifiers. 更多...
 
class  Dialogue
 Visual-novel style dialogue stage. Script: dlg <- eve.Dialogue(); 更多...
 
struct  DialogueAccountBindings
 Borrowed account bindings used by one DialogueFlow integration. 更多...
 
class  DialogueControl
 Exposes the module's conversation runner through the shared gameplay protocol. 更多...
 
class  DialogueFlow
 Script-facing registry and runner for compiled .dnut conversations. 更多...
 
class  DialoguePaymentAdapter
 Composes Dialogue accounts with StatePatch or Action participants. 更多...
 
class  DialogueStateContext
 Dialogue-owned facade for world reads, unified conditions, and mutations. 更多...
 
class  DialogueStateMutationParticipant
 Transaction participant that delegates an atomic state mutation. 更多...
 
class  DialogueUX
 Presentation state shared by default and custom dialogue UIs. 更多...
 
class  DialogueVoice
 Localized voice assets, duration-based advance, and amplitude lip sync. 更多...
 
struct  DnutDocument
 UI-neutral syntax tree produced by the single dnut parser. 更多...
 
struct  DnutSourceSpan
 Exact source location in a dnut document. 更多...
 
struct  PaymentSpec
 Canonical money/reputation cost attached to a dialogue choice or command. 更多...
 
class  StateEvaluationContext
 Decision EvaluationContext backed by one dialogue subject. 更多...
 

类型定义

using DataValue = eve::Value
 Canonical data value used by dialogue pools, conditions and scripts.
 
using VarValue = eve::Value
 
using CommandRequestHandler = std::function< CommandResponse(const CommandRequest &)>
 Handler implemented by the owning operation or gameplay domain.
 

枚举

enum class  CommandRequestKind : std::uint8_t { Operation , GameplayAction }
 Destination protocol requested by a dialogue command node. 更多...
 

函数

eve::Result< DnutDocument > compileDnutDocument (const std::string &source, const std::string &path, std::vector< ConversationDiagnostic > &diagnostics)
 Compile and lint the complete pools-plus-conversations dnut document.
 
eve::Result< void > lintConversations (const std::vector< eve::dnut::SequenceAsset > &assets, const std::string &path, std::vector< ConversationDiagnostic > &diagnostics)
 Validate references and report unreachable nodes.
 
std::string exportConversationLocalizationCsv (const std::vector< eve::dnut::SequenceAsset > &assets)
 Export stable line IDs and localization keys as RFC4180 CSV.
 
eve::Result< std::vector< eve::dnut::SequenceAsset > > importYarnConversation (const std::string &source, const std::string &path, std::vector< ConversationDiagnostic > &diagnostics)
 Import Yarn Spinner source through the canonical validated conversation schema.
 
eve::Result< std::vector< eve::dnut::SequenceAsset > > importTweeConversation (const std::string &source, const std::string &path, std::vector< ConversationDiagnostic > &diagnostics)
 Import Twee 3 passage source through the canonical validated conversation schema.
 
eve::Result< std::string > conversationStateToJson (const StateValue &state)
 Serialize a dialogue state tree as JSON.
 
eve::Result< StateValue > conversationStateFromJson (const std::string &json)
 Parse a JSON dialogue state tree.
 
eve::Result< void > lintConversationWorkspace (const std::vector< eve::dnut::SequenceAsset > &assets, const std::string &label, std::vector< ConversationDiagnostic > &diagnostics)
 Lint a complete multi-file registry, including cross-asset call targets.
 
eve::Result< void > renameConversationAsset (std::vector< eve::dnut::SequenceAsset > &assets, const std::string &oldId, const std::string &newId)
 Rename an asset and rewrite every cross-asset call target.
 
eve::Result< void > renameConversationNode (std::vector< eve::dnut::SequenceAsset > &assets, const std::string &assetId, const std::string &oldId, const std::string &newId)
 Rename one stable node and rewrite all references inside its asset.
 
 Module_IMPL (Dialogue, new Dialogue())
 
 Module_IMPL (DialogueFlow, new DialogueFlow())
 
std::string sequencePayloadString (const eve::dnut::SequenceNode &node, std::string_view key)
 Read an optional string from a node payload; missing or ill-typed values yield empty.
 
std::string sequenceRoutePayloadString (const eve::dnut::SequenceRoute &route, std::string_view key)
 Read an optional string from a route payload; missing or ill-typed values yield empty.
 
eve::Result< PaymentSpec > decodeSequencePayment (const eve::Value &payload)
 Decode an optional dialogue payment from one canonical payload object.
 
eve::Result< std::vector< eve::StateMutation > > decodeSequenceStateMutations (const eve::Value &payload)
 Decode dialogue state mutations from one canonical payload object.
 
eve::Value encodeSequenceStateMutations (std::span< const eve::StateMutation > mutations)
 Encode dialogue state mutations as the canonical payload array.
 
eve::Result< void > registerDialogueSequenceSteps (eve::dnut::StepKindRegistry &registry)
 Register dialogue's line, choice, and command contracts and validators.
 
eve::Result< void > validateDialogueSequenceAsset (const eve::dnut::SequenceAsset &asset, const eve::dnut::StepKindRegistry &registry)
 Validate every dialogue-owned payload without taking control-flow ownership.
 
eve::Result< CommandRequest > decodeDialogueCommandRequest (const eve::dnut::SequenceCommandRequest &request)
 Adapt an L1 command request to dialogue's transaction-bearing request.
 
eve::Value toCanonicalValue (const eve::StateValue &value)
 Convert the legacy reload value into the canonical common value.
 
eve::StateValue toDialogueStateValue (const eve::Value &value)
 Convert a canonical value to the legacy reload representation.
 
 Module_IMPL (DialogueUX, new DialogueUX())
 
 Module_IMPL (DialogueVoice, new DialogueVoice())
 
eve::Result< DnutDocument > parseDnutDocument (const std::string &source, const std::string &path, std::vector< ConversationDiagnostic > &diagnostics)
 Parse pools and conversations from one versioned dnut token stream.
 

类型定义说明

◆ CommandRequestHandler

Handler implemented by the owning operation or gameplay domain.

在文件 DialogueState.h 第 63 行定义.

◆ DataValue

Canonical data value used by dialogue pools, conditions and scripts.

These aliases intentionally do not add another storage tree. The factory names and scalar helpers are retained by eve::Value for source-compatible dialogue scripts and tests, while all new cross-module data uses the common deterministic value protocol.

在文件 Dialogue.h 第 36 行定义.

◆ VarValue

在文件 Dialogue.h 第 37 行定义.

枚举类型说明

◆ CommandRequestKind

enum class eve::dialogue::CommandRequestKind : std::uint8_t
strong

Destination protocol requested by a dialogue command node.

枚举值
Operation 
GameplayAction 

在文件 DialogueState.h 第 25 行定义.

函数说明

◆ compileDnutDocument()

EVENGINE_API_ORCHESTRATION eve::Result< DnutDocument > eve::dialogue::compileDnutDocument ( const std::string &  source,
const std::string &  path,
std::vector< ConversationDiagnostic > &  diagnostics 
)

Compile and lint the complete pools-plus-conversations dnut document.

在文件 ConversationCompiler.cpp 第 26 行定义.

引用了 eve::dialogue::DnutDocument::conversations, eve::Result< T >::failure(), lintConversations(), parseDnutDocument(), path, source , 以及 eve::Result< T >::success().

◆ conversationStateFromJson()

EVENGINE_API_ORCHESTRATION eve::Result< StateValue > eve::dialogue::conversationStateFromJson ( const std::string &  json)

◆ conversationStateToJson()

EVENGINE_API_ORCHESTRATION eve::Result< std::string > eve::dialogue::conversationStateToJson ( const StateValue &  state)

◆ decodeDialogueCommandRequest()

◆ decodeSequencePayment()

EVENGINE_API_ORCHESTRATION eve::Result< PaymentSpec > eve::dialogue::decodeSequencePayment ( const eve::Value &  payload)

◆ decodeSequenceStateMutations()

EVENGINE_API_ORCHESTRATION eve::Result< std::vector< eve::StateMutation > > eve::dialogue::decodeSequenceStateMutations ( const eve::Value &  payload)

Decode dialogue state mutations from one canonical payload object.

在文件 DialogueSequence.cpp 第 126 行定义.

引用了 eve::Diagnostic::error(), eve::Value::find(), index, eve::InvalidArgument, payload , 以及 values.

被这些函数引用 decodeDialogueCommandRequest() , 以及 eve::dialogue::DialogueFlow::select().

◆ encodeSequenceStateMutations()

EVENGINE_API_ORCHESTRATION eve::Value eve::dialogue::encodeSequenceStateMutations ( std::span< const eve::StateMutation >  mutations)

◆ exportConversationLocalizationCsv()

EVENGINE_API_ORCHESTRATION std::string eve::dialogue::exportConversationLocalizationCsv ( const std::vector< eve::dnut::SequenceAsset > &  assets)

Export stable line IDs and localization keys as RFC4180 CSV.

在文件 ConversationCompiler.cpp 第 124 行定义.

引用了 exportConversationLocalizationCsv(), node, output , 以及 sequencePayloadString().

被这些函数引用 exportConversationLocalizationCsv() , 以及 eve::dialogue::DialogueFlow::exportLocalizationCsv().

◆ importTweeConversation()

EVENGINE_API_ORCHESTRATION eve::Result< std::vector< eve::dnut::SequenceAsset > > eve::dialogue::importTweeConversation ( const std::string &  source,
const std::string &  path,
std::vector< ConversationDiagnostic > &  diagnostics 
)

Import Twee 3 passage source through the canonical validated conversation schema.

在文件 ConversationImporter.cpp 第 273 行定义.

引用了 current, eve::Diagnostic::error(), message, number, eve::ParseError, path, source , 以及 text.

被这些函数引用 eve::dialogue::DialogueFlow::importTweeChecked().

◆ importYarnConversation()

EVENGINE_API_ORCHESTRATION eve::Result< std::vector< eve::dnut::SequenceAsset > > eve::dialogue::importYarnConversation ( const std::string &  source,
const std::string &  path,
std::vector< ConversationDiagnostic > &  diagnostics 
)

Import Yarn Spinner source through the canonical validated conversation schema.

在文件 ConversationImporter.cpp 第 262 行定义.

引用了 eve::Diagnostic::error(), message, eve::ParseError, path , 以及 source.

被这些函数引用 eve::dialogue::DialogueFlow::importYarnChecked().

◆ lintConversations()

EVENGINE_API_ORCHESTRATION eve::Result< void > eve::dialogue::lintConversations ( const std::vector< eve::dnut::SequenceAsset > &  assets,
const std::string &  path,
std::vector< ConversationDiagnostic > &  diagnostics 
)

◆ lintConversationWorkspace()

◆ Module_IMPL() [1/4]

eve::dialogue::Module_IMPL ( Dialogue  ,
new   Dialogue() 
)

◆ Module_IMPL() [2/4]

eve::dialogue::Module_IMPL ( DialogueFlow  ,
new   DialogueFlow() 
)

◆ Module_IMPL() [3/4]

eve::dialogue::Module_IMPL ( DialogueUX  ,
new   DialogueUX() 
)

◆ Module_IMPL() [4/4]

eve::dialogue::Module_IMPL ( DialogueVoice  ,
new   DialogueVoice() 
)

◆ parseDnutDocument()

◆ registerDialogueSequenceSteps()

EVENGINE_API_ORCHESTRATION eve::Result< void > eve::dialogue::registerDialogueSequenceSteps ( eve::dnut::StepKindRegistry &  registry)

Register dialogue's line, choice, and command contracts and validators.

在文件 DialogueSequence.cpp 第 161 行定义.

引用了 line, eve::dnut::StepKindRegistry::registerStep(), eve::Result< T >::success() , 以及 validateCommand.

被这些函数引用 eve::dialogue::DialogueFlow::DialogueFlow(), lintConversations() , 以及 parseDnutDocument().

◆ renameConversationAsset()

EVENGINE_API_ORCHESTRATION eve::Result< void > eve::dialogue::renameConversationAsset ( std::vector< eve::dnut::SequenceAsset > &  assets,
const std::string &  oldId,
const std::string &  newId 
)

◆ renameConversationNode()

EVENGINE_API_ORCHESTRATION eve::Result< void > eve::dialogue::renameConversationNode ( std::vector< eve::dnut::SequenceAsset > &  assets,
const std::string &  assetId,
const std::string &  oldId,
const std::string &  newId 
)

◆ sequencePayloadString()

◆ sequenceRoutePayloadString()

EVENGINE_API_ORCHESTRATION std::string eve::dialogue::sequenceRoutePayloadString ( const eve::dnut::SequenceRoute &  route,
std::string_view  key 
)

Read an optional string from a route payload; missing or ill-typed values yield empty.

在文件 DialogueSequence.cpp 第 113 行定义.

引用了 eve::Value::find(), eve::Value::isString(), key, eve::dnut::SequenceRoute::payload , 以及 value.

被这些函数引用 eve::dialogue::DialogueFlow::getRouteText() , 以及 eve::dialogue::DialogueFlow::lintAllChecked().

◆ toCanonicalValue()

◆ toDialogueStateValue()

◆ validateDialogueSequenceAsset()

EVENGINE_API_ORCHESTRATION eve::Result< void > eve::dialogue::validateDialogueSequenceAsset ( const eve::dnut::SequenceAsset &  asset,
const eve::dnut::StepKindRegistry &  registry 
)