Borrowed domain objects an RPG story step runs against. 更多...
#include <RpgDialect.h>
Public 属性 | |
| GameState * | gameState = nullptr |
| Owner of switches, variables and per-story completion facts. | |
| Party * | party = nullptr |
Party used to resolve actor=<memberId> when no custom resolver is set. | |
| eve::inventory::Bag * | bag = nullptr |
Bag used by item and equipment steps, or nullptr when unavailable. | |
| eve::inventory::EquipmentSet * | equipment = nullptr |
Equipment set used by equipment steps, or nullptr when unavailable. | |
| std::function< RPGActor *(const std::string &actorId)> | resolveActor |
Optional actor resolver that overrides party member lookup. | |
| StoryMoveHandler | moveActor |
Optional movement controller for move steps. | |
| StoryAnimationHandler | playAnimation |
Optional animation controller for animation steps. | |
详细描述
Borrowed domain objects an RPG story step runs against.
Every pointer is borrowed: the caller keeps the objects alive for as long as a session may step. A null pointer makes the steps that need it fail with an explicit diagnostic instead of silently doing nothing.
@thread Configured and used on the owning simulation thread.
在文件 RpgDialect.h 第 169 行定义.
类成员变量说明
◆ bag
| eve::inventory::Bag* eve::rpg::RpgStoryBinding::bag = nullptr |
Bag used by item and equipment steps, or nullptr when unavailable.
在文件 RpgDialect.h 第 175 行定义.
◆ equipment
| eve::inventory::EquipmentSet* eve::rpg::RpgStoryBinding::equipment = nullptr |
Equipment set used by equipment steps, or nullptr when unavailable.
在文件 RpgDialect.h 第 177 行定义.
◆ gameState
| GameState* eve::rpg::RpgStoryBinding::gameState = nullptr |
Owner of switches, variables and per-story completion facts.
在文件 RpgDialect.h 第 171 行定义.
被这些函数引用 eve::rpg::RpgStorySession::begin() , 以及 eve::rpg::RpgStorySession::Impl::persistProgress().
◆ moveActor
| StoryMoveHandler eve::rpg::RpgStoryBinding::moveActor |
Optional movement controller for move steps.
When this is empty the move step keeps its host-presented contract: the story suspends, the host reads the payload and calls RpgStorySession::advance(). That is the escape hatch for hosts whose movement cannot be started by one call — for example a host that wants to route the move through its own command queue.
When it is set, the handler is the single place that knows how actors move, which is what keeps the dialect free of any game-mode assumption.
@ownership Borrowed; the session stores a pointer to RpgStoryBinding and never copies the callback.
在文件 RpgDialect.h 第 200 行定义.
◆ party
| Party* eve::rpg::RpgStoryBinding::party = nullptr |
Party used to resolve actor=<memberId> when no custom resolver is set.
在文件 RpgDialect.h 第 173 行定义.
◆ playAnimation
| StoryAnimationHandler eve::rpg::RpgStoryBinding::playAnimation |
Optional animation controller for animation steps.
When this is empty the animation step keeps its host-presented contract: the story suspends, the host reads the payload and calls RpgStorySession::advance(). That is the escape hatch for hosts whose playback cannot be started by one call — for example a host that wants to blend the request into a state machine on its own schedule.
When it is set, the handler is the single place that knows how clips play, which is what keeps the dialect free of any animation-stack assumption.
@ownership Borrowed; the session stores a pointer to RpgStoryBinding and never copies the callback.
在文件 RpgDialect.h 第 216 行定义.
◆ resolveActor
| std::function<RPGActor*(const std::string& actorId)> eve::rpg::RpgStoryBinding::resolveActor |
Optional actor resolver that overrides party member lookup.
Returning nullptr makes the step fail, which keeps a typo in authored content observable instead of silently skipping the effect.
在文件 RpgDialect.h 第 184 行定义.
该结构体的文档由以下文件生成:
- src/modules/rpg/RpgDialect.h