载入中...
搜索中...
未找到
eve::rpg::ProductControl类 参考final

Host-neutral adapter joining shop, quest-reward and world-loot transactions. 更多...

#include <ProductControl.h>

类 eve::rpg::ProductControl 继承关系图:
eve::IGameplayControlProvider eve::IGameplayInstanceCatalog

Public 成员函数

 ProductControl (SubjectRef instance, GameState &gameState, Tracker &tracker, inventory::Bag &bag)
 Construct over borrowed product-loop authorities and a stable instance identity.
 
 ~ProductControl () override
 Unpublish the capability without destroying borrowed authorities.
 
 ProductControl (const ProductControl &)=delete
 
ProductControl & operator= (const ProductControl &)=delete
 
std::string_view gameplayDomain () const noexcept override
 Stable provider domain used for discovery and routing.
 
std::vector< SubjectRef > gameplayInstances () const override
 Instances currently served, in publication order.
 
Result< GameplayObservation > observeGameplay (const GameplaySession &session, SubjectRef instance) const override
 Observe one provider-owned gameplay instance without mutation.
 
Result< std::vector< GameplayActionDescriptor > > availableGameplayActions (const GameplaySession &session, SubjectRef instance, SubjectRef subject) const override
 Discover currently legal player-semantic actions for one subject.
 
Result< GameplayCommandReceipt > submitGameplay (const GameplaySession &session, SubjectRef instance, const GameplayCommand &command) override
 Validate authority and atomically submit one domain command.
 
Result< GameplayObservation > advanceGameplay (const GameplaySession &session, SubjectRef instance, const SimulationStep &step) override
 Advance one provider-owned instance using injected deterministic time.
 
Result< std::vector< GameplayEvent > > gameplayEvents (const GameplaySession &session, SubjectRef instance, std::uint64_t afterSequence) const override
 Return events strictly newer than an instance-local sequence cursor.
 
- Public 成员函数 继承自 eve::IGameplayControlProvider
virtual ~IGameplayControlProvider ()=default
 Releases IGameplayControlProvider resources.
 
- Public 成员函数 继承自 eve::IGameplayInstanceCatalog
virtual ~IGameplayInstanceCatalog ()=default
 Releases IGameplayInstanceCatalog resources.
 

额外继承的成员函数

- 静态 Public 属性 继承自 eve::IGameplayControlProvider
static constexpr const char * capabilityName = "IGameplayControlProvider"
 
- 静态 Public 属性 继承自 eve::IGameplayInstanceCatalog
static constexpr const char * capabilityName = "IGameplayInstanceCatalog"
 

详细描述

Host-neutral adapter joining shop, quest-reward and world-loot transactions.

GameState, Tracker and Bag remain independent authoritative owners. This caller-owned adapter retains only borrowed pointers, an optimistic observation fingerprint and owning event projections. Destroy it before any participant.

在文件 ProductControl.h 第 29 行定义.

构造及析构函数说明

◆ ProductControl() [1/2]

eve::rpg::ProductControl::ProductControl ( SubjectRef  instance,
GameState &  gameState,
Tracker &  tracker,
inventory::Bag &  bag 
)

Construct over borrowed product-loop authorities and a stable instance identity.

在文件 ProductControl.cpp 第 80 行定义.

◆ ~ProductControl()

eve::rpg::ProductControl::~ProductControl ( )
override

Unpublish the capability without destroying borrowed authorities.

在文件 ProductControl.cpp 第 87 行定义.

◆ ProductControl() [2/2]

eve::rpg::ProductControl::ProductControl ( const ProductControl &  )
delete

成员函数说明

◆ advanceGameplay()

Result< GameplayObservation > eve::rpg::ProductControl::advanceGameplay ( const GameplaySession &  session,
SubjectRef  instance,
const SimulationStep &  step 
)
overridevirtual

Advance one provider-owned instance using injected deterministic time.

Advance gameplay.

实现了 eve::IGameplayControlProvider.

在文件 ProductControl.cpp 第 313 行定义.

引用了 eve::Conflict, eve::Diagnostic::error(), eve::Result< T >::failure(), observeGameplay(), session , 以及 step.

◆ availableGameplayActions()

Result< std::vector< GameplayActionDescriptor > > eve::rpg::ProductControl::availableGameplayActions ( const GameplaySession &  session,
SubjectRef  instance,
SubjectRef  subject 
) const
overridevirtual

Discover currently legal player-semantic actions for one subject.

Available gameplay actions.

实现了 eve::IGameplayControlProvider.

在文件 ProductControl.cpp 第 170 行定义.

引用了 eve::Diagnostic::error(), observeGameplay(), eve::PreconditionViolation, session , 以及 subject.

◆ gameplayDomain()

std::string_view eve::rpg::ProductControl::gameplayDomain ( ) const
overridevirtualnoexcept

Stable provider domain used for discovery and routing.

Gameplay domain.

实现了 eve::IGameplayControlProvider.

在文件 ProductControl.cpp 第 92 行定义.

◆ gameplayEvents()

Result< std::vector< GameplayEvent > > eve::rpg::ProductControl::gameplayEvents ( const GameplaySession &  session,
SubjectRef  instance,
std::uint64_t  afterSequence 
) const
overridevirtual

Return events strictly newer than an instance-local sequence cursor.

Gameplay events.

实现了 eve::IGameplayControlProvider.

在文件 ProductControl.cpp 第 326 行定义.

引用了 eve::Applied, eve::NoOp, observeGameplay(), eve::GameplayEvent::sequence, session , 以及 eve::Status::success().

◆ gameplayInstances()

std::vector< SubjectRef > eve::rpg::ProductControl::gameplayInstances ( ) const
overridevirtual

Instances currently served, in publication order.

Gameplay instances.

实现了 eve::IGameplayInstanceCatalog.

在文件 ProductControl.cpp 第 94 行定义.

引用了 eve::SubjectRef::isValid().

◆ observeGameplay()

◆ operator=()

ProductControl & eve::rpg::ProductControl::operator= ( const ProductControl &  )
delete

◆ submitGameplay()


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