载入中...
搜索中...
未找到
eve::rpg::RpgStoryBinding结构体 参考

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 行定义.


该结构体的文档由以下文件生成: