载入中...
搜索中...
未找到
SkillAction.h
浏览该文件的文档.
1#pragma once
2#include "common/Export.h"
3
4
5#include "common/Time.h"
6
12#include "action/Action.h"
13#include "rpg/Skill.h"
14
15#include <optional>
16
17namespace eve::rpg {
18
27public:
33 [[nodiscard]] static eve::Result<action::ActionDefinition> makeDefinition(const SkillDefinition& skill);
34
43 [[nodiscard]] static eve::Result<action::ActionRequest> makeRequest(
44 const SkillDefinition& skill, std::optional<ecs::EntityHandle> source = std::nullopt,
45 std::optional<ecs::EntityHandle> target = std::nullopt,
47
53 [[nodiscard]] static eve::Result<action::ActionExecutionId> submit(
54 action::ActionRuntime& runtime, const SkillDefinition& skill,
55 std::optional<ecs::EntityHandle> source = std::nullopt, std::optional<ecs::EntityHandle> target = std::nullopt,
57};
58
59} // namespace eve::rpg
LogicalId target
Renderer- and ruleset-neutral gameplay action pipeline.
#define EVENGINE_API_PLATFORM
Definition Export.h:107
Common time values and an injectable deterministic simulation clock.
const UnitySourceAsset & source
Move-only operation result carrying either a value or Status.
Definition Result.h:155
Deterministic action lifecycle coordinator.
Definition Action.h:485
static constexpr StrongUint64 zero() noexcept
Returns the zero value for this strong type.
Translates a SkillDefinition into the common gameplay action model.
Definition SkillAction.h:26
RPG 模块的基础实体:把属性 / 状态 / 技能三张表挂到一个 ECS 实体上。
SkillDefinition public API.
Definition Skill.h:28