载入中...
搜索中...
未找到
TileLayerTargetModule.h
浏览该文件的文档.
1#pragma once
2
3#include "common/Module.h"
4
5#include <memory>
6#include <string>
7
8namespace eve::editor {
9class EditorSession;
10}
11namespace eve::map {
12class TileLayer;
13}
14namespace eve::map_editing {
15class TileLayerTarget;
16}
17
18namespace eve::tilelayer_target {
19
21class TileLayerTargetModule final : public Module {
22public:
24
32 [[nodiscard]] std::unique_ptr<map_editing::TileLayerTarget> newTarget(std::string id, map::TileLayer* layer) const;
40};
41
42} // namespace eve::tilelayer_target
LogicalId target
TileLayer * layer
std::optional< InteractionSession > session
Definition Tactics.cpp:39
EVENGINE_API_FOUNDATION public API.
Definition Module.h:46
Hosts interchangeable editor tools and routes their lifecycle/input.
ECS tile layer entity. Script mutates tile GIDs / tileset / draw; TileRenderSystem batch-draws atlas ...
Definition TileLayer.h:32
Non-owning editable adapter for a live map tile layer.
Script-facing composition module for live tile-layer editing targets.
std::unique_ptr< map_editing::TileLayerTarget > newTarget(std::string id, map::TileLayer *layer) const
Create an adapter over a borrowed live tile layer.
void bind(editor::EditorSession *session, map_editing::TileLayerTarget *target) const
Bind a target to an editor session.
放置世界:格子占用(多通道)+ 地形语义 + 已放置建筑实例。 行为由 PlacementSystem 提供;本类暴露便于脚本绑定的薄封装方法。 坐标换算统一走 eve::grid(支持 rectang...