载入中...
搜索中...
未找到
eve::IGameplayControlProvider类 参考abstract

Multi-provider gameplay boundary consumed by input, scripts and automation. 更多...

#include <GameplayControl.h>

类 eve::IGameplayControlProvider 继承关系图:
eve::card::CardControl eve::climbing::ClimbingControl eve::dialogue::DialogueControl eve::economy::EconomyControl eve::inventory::InventoryControl eve::rpg::BattleControl eve::rpg::ProductControl eve::rts::RTS eve::tactics::Tactics eve::weapon::WeaponControl

Public 成员函数

virtual ~IGameplayControlProvider ()=default
 Releases IGameplayControlProvider resources.
 
virtual std::string_view gameplayDomain () const noexcept=0
 Stable provider domain used for discovery and routing.
 
virtual Result< GameplayObservation > observeGameplay (const GameplaySession &session, SubjectRef instance) const =0
 Observe one provider-owned gameplay instance without mutation.
 
virtual Result< std::vector< GameplayActionDescriptor > > availableGameplayActions (const GameplaySession &session, SubjectRef instance, SubjectRef subject) const =0
 Discover currently legal player-semantic actions for one subject.
 
virtual Result< GameplayCommandReceipt > submitGameplay (const GameplaySession &session, SubjectRef instance, const GameplayCommand &command)=0
 Validate authority and atomically submit one domain command.
 
virtual Result< GameplayObservation > advanceGameplay (const GameplaySession &session, SubjectRef instance, const SimulationStep &step)=0
 Advance one provider-owned instance using injected deterministic time.
 
virtual Result< std::vector< GameplayEvent > > gameplayEvents (const GameplaySession &session, SubjectRef instance, std::uint64_t afterSequence) const =0
 Return events strictly newer than an instance-local sequence cursor.
 

静态 Public 属性

static constexpr const char * capabilityName = "IGameplayControlProvider"
 

详细描述

Multi-provider gameplay boundary consumed by input, scripts and automation.

Implementations are registered as Capability listeners because several gameplay domains may coexist. Registration and every method are owner-simulation-thread affine. Implementations must not retain argument references or invoke unknown callbacks. Domain objects remain the only mutable authorities; returned Values are owning projections. Missing providers are observable through an empty listener set.

在文件 GameplayControl.h 第 90 行定义.

构造及析构函数说明

◆ ~IGameplayControlProvider()

virtual eve::IGameplayControlProvider::~IGameplayControlProvider ( )
virtualdefault

Releases IGameplayControlProvider resources.

成员函数说明

◆ advanceGameplay()

virtual Result< GameplayObservation > eve::IGameplayControlProvider::advanceGameplay ( const GameplaySession &  session,
SubjectRef  instance,
const SimulationStep &  step 
)
pure virtual

◆ availableGameplayActions()

virtual Result< std::vector< GameplayActionDescriptor > > eve::IGameplayControlProvider::availableGameplayActions ( const GameplaySession &  session,
SubjectRef  instance,
SubjectRef  subject 
) const
pure virtual

◆ gameplayDomain()

virtual std::string_view eve::IGameplayControlProvider::gameplayDomain ( ) const
pure virtualnoexcept

◆ gameplayEvents()

virtual Result< std::vector< GameplayEvent > > eve::IGameplayControlProvider::gameplayEvents ( const GameplaySession &  session,
SubjectRef  instance,
std::uint64_t  afterSequence 
) const
pure virtual

◆ observeGameplay()

virtual Result< GameplayObservation > eve::IGameplayControlProvider::observeGameplay ( const GameplaySession &  session,
SubjectRef  instance 
) const
pure virtual

◆ submitGameplay()

virtual Result< GameplayCommandReceipt > eve::IGameplayControlProvider::submitGameplay ( const GameplaySession &  session,
SubjectRef  instance,
const GameplayCommand &  command 
)
pure virtual

类成员变量说明

◆ capabilityName

constexpr const char* eve::IGameplayControlProvider::capabilityName = "IGameplayControlProvider"
staticconstexpr

在文件 GameplayControl.h 第 92 行定义.


该类的文档由以下文件生成: