载入中...
搜索中...
未找到
ActionGameplayEventBlock.h
浏览该文件的文档.
1#pragma once
2#include "common/Export.h"
3
4
8
9#include <optional>
10#include <string>
11
12namespace eve::action {
13
17 std::string tag;
19 std::optional<std::size_t> targetIndex;
22
24 [[nodiscard]] static Result<ActionGameplayEventBinding> fromPayload(const Value::Object& payload);
25};
26
34public:
35 static constexpr const char* capabilityName = "eve.action.gameplay-event-sink";
37 virtual ~IActionGameplayEventSink() = default;
38
41 const ActionNotifyContext& context) = 0;
42};
43
44} // namespace eve::action
Extensible notify descriptors, validation and runtime routing.
Value::Object payload
#define EVENGINE_API_PLATFORM
Definition Export.h:107
eve::action::ActionVfxBinding binding
const VegetationPresetContext & context
Move-only operation result carrying either a value or Status.
Definition Result.h:155
The canonical owning dynamic value used by data-facing protocols.
Definition Value.h:31
std::map< std::string, Value > Object
Definition Value.h:34
Optional target-domain adapter for instantaneous timeline gameplay events.
virtual ~IActionGameplayEventSink()=default
Releases IActionGameplayEventSink resources.
virtual Result< void > emit(const ActionGameplayEventBinding &binding, const ActionNotifyContext &context)=0
Emit one validated event or return a structured domain failure.
static constexpr const char * capabilityName
Owning validated event request authored on an action timeline.
std::optional< std::size_t > targetIndex
Optional target index; absence routes the event to the source subject.
std::string tag
Canonical gameplay-tag event topic.
Context linking a routed event to its action execution.