载入中...
搜索中...
未找到
RTSArchetype.h
浏览该文件的文档.
1#pragma once
2
6#include "rts/RTSTypes.h"
7
8#include <functional>
9
10namespace eve::weapon {
11class WeaponEntity;
12}
13
14namespace eve::rts {
15
18 std::function<Result<weapon::WeaponEntity*>(std::string_view definitionId, PersistentId instanceId)>;
19
28public:
30 [[nodiscard]] static Result<void> apply(definitions::DefinitionRegistry& registry, Unit& unit,
31 const ArchetypeWeaponFactory& weaponFactory = {});
33 [[nodiscard]] static Result<void> apply(definitions::DefinitionRegistry& registry, Building& building,
34 const ArchetypeWeaponFactory& weaponFactory = {});
35};
36
37} // namespace eve::rts
RTS domain roots and composition-only components.
TacticalUnit * unit
Move-only operation result carrying either a value or Status.
Definition Result.h:155
Deterministic registry of topic-neutral, versioned JSON definitions.
Definition Definitions.h:58
Id128 public API.
Definition Identity.h:112
RTS building domain root with placement and production composition.
Definition RTSTypes.h:840
Materializes canonical unit/building definitions into RTS composition components.
static Result< void > apply(definitions::DefinitionRegistry &registry, Unit &unit, const ArchetypeWeaponFactory &weaponFactory={})
Apply the Unit root's logical definition atomically.
RTS unit domain root.
Definition RTSTypes.h:495
武器实体:数据全部在组件里,行为在 WeaponSystem。
std::function< Result< weapon::WeaponEntity * >(std::string_view definitionId, PersistentId instanceId)> ArchetypeWeaponFactory
Factory that creates one canonical weapon instance from a registry definition.
载具模块入口(eve.Vehicle):定义注册 / 实体工厂 / RTS 命令 / 帧调度。 设计文档:docs/dev/通用载具系统设计.md