载入中...
搜索中...
未找到
eve::combat::CombatActionWindowState类 参考final

Authoritative combat projection of active Montage hitbox and invulnerability windows. 更多...

#include <ActionWindowState.h>

类 eve::combat::CombatActionWindowState 继承关系图:
eve::action::IActionStateWindowSink

Public 成员函数

 CombatActionWindowState (ActionWindowSubjectResolver resolver)
 Construct with a synchronous resolver copied into the state owner.
 
 ~CombatActionWindowState () override
 Combat action window state.
 
void setEnabled (bool enabled)
 Opt this owner into or out of Action state-window dispatch.
 
void setMeleeHitRuntime (MeleeHitRuntime &melee) noexcept
 Borrow melee geometry so hitbox windows arm and disarm automatically. @lifetime The melee runtime must outlive this state or be cleared first.
 
void clearMeleeHitRuntime () noexcept
 Clear the borrowed melee geometry owner.
 
bool enabled () const
 Return whether this exact owner is registered.
 
bool supports (action::ActionStateWindowKind kind) const noexcept override
 Whether this sink owns the supplied semantic window kind.
 
Result< void > enter (const action::ActionStateWindowBinding &binding, const action::ActionTimelineEvent &event, const action::ActionNotifyContext &context) override
 Enter one validated window or idempotently observe the same active key.
 
Result< void > exit (const action::ActionStateWindowBinding &binding, const action::ActionTimelineEvent &event, const action::ActionNotifyContext &context) override
 Exit one previously entered window by execution and item identity.
 
bool isInvulnerable (SubjectRef subject) const noexcept
 Return whether at least one active Montage window protects this stable subject.
 
std::vector< std::string > activeHitboxes (SubjectRef subject) const
 Return owning hitbox identifiers active for a stable subject in key order.
 
std::size_t activeCount () const noexcept
 Return the total number of retained active window keys.
 
- Public 成员函数 继承自 eve::action::IActionStateWindowSink
virtual ~IActionStateWindowSink ()=default
 Releases IActionStateWindowSink resources.
 

额外继承的成员函数

- 静态 Public 属性 继承自 eve::action::IActionStateWindowSink
static constexpr const char * capabilityName = "eve.action.state-window-sink"
 

详细描述

Authoritative combat projection of active Montage hitbox and invulnerability windows.

Keys combine ActionExecutionId and timeline item identity, so overlapping windows compose without a lossy boolean. Exit uses the retained owning SubjectRef and is safe when the ECS entity was destroyed after enter. This object is owner-thread-only.

在文件 ActionWindowState.h 第 33 行定义.

构造及析构函数说明

◆ CombatActionWindowState()

eve::combat::CombatActionWindowState::CombatActionWindowState ( ActionWindowSubjectResolver  resolver)
explicit

Construct with a synchronous resolver copied into the state owner.

在文件 ActionWindowState.cpp 第 11 行定义.

◆ ~CombatActionWindowState()

eve::combat::CombatActionWindowState::~CombatActionWindowState ( )
override

Combat action window state.

在文件 ActionWindowState.cpp 第 14 行定义.

成员函数说明

◆ activeCount()

std::size_t eve::combat::CombatActionWindowState::activeCount ( ) const
inlinenoexcept

Return the total number of retained active window keys.

在文件 ActionWindowState.h 第 70 行定义.

◆ activeHitboxes()

std::vector< std::string > eve::combat::CombatActionWindowState::activeHitboxes ( SubjectRef  subject) const

Return owning hitbox identifiers active for a stable subject in key order.

在文件 ActionWindowState.cpp 第 105 行定义.

引用了 eve::action::Hitbox, key , 以及 subject.

◆ clearMeleeHitRuntime()

void eve::combat::CombatActionWindowState::clearMeleeHitRuntime ( )
noexcept

Clear the borrowed melee geometry owner.

在文件 ActionWindowState.cpp 第 32 行定义.

◆ enabled()

bool eve::combat::CombatActionWindowState::enabled ( ) const

Return whether this exact owner is registered.

在文件 ActionWindowState.cpp 第 16 行定义.

引用了 index.

被这些函数引用 setEnabled().

◆ enter()

Result< void > eve::combat::CombatActionWindowState::enter ( const action::ActionStateWindowBinding &  binding,
const action::ActionTimelineEvent &  event,
const action::ActionNotifyContext &  context 
)
overridevirtual

◆ exit()

Result< void > eve::combat::CombatActionWindowState::exit ( const action::ActionStateWindowBinding &  binding,
const action::ActionTimelineEvent &  event,
const action::ActionNotifyContext &  context 
)
overridevirtual

◆ isInvulnerable()

bool eve::combat::CombatActionWindowState::isInvulnerable ( SubjectRef  subject) const
noexcept

Return whether at least one active Montage window protects this stable subject.

在文件 ActionWindowState.cpp 第 96 行定义.

引用了 eve::action::Invulnerability, key , 以及 subject.

被这些函数引用 eve::combat::CombatActionDamageSink::apply().

◆ setEnabled()

void eve::combat::CombatActionWindowState::setEnabled ( bool  enabled)

Opt this owner into or out of Action state-window dispatch.

在文件 ActionWindowState.cpp 第 22 行定义.

引用了 current, enabled() , 以及 value.

◆ setMeleeHitRuntime()

void eve::combat::CombatActionWindowState::setMeleeHitRuntime ( MeleeHitRuntime &  melee)
noexcept

Borrow melee geometry so hitbox windows arm and disarm automatically. @lifetime The melee runtime must outlive this state or be cleared first.

在文件 ActionWindowState.cpp 第 30 行定义.

◆ supports()

bool eve::combat::CombatActionWindowState::supports ( action::ActionStateWindowKind  kind) const
overridevirtualnoexcept

Whether this sink owns the supplied semantic window kind.

Supports.

实现了 eve::action::IActionStateWindowSink.

在文件 ActionWindowState.cpp 第 34 行定义.

引用了 eve::action::Hitbox, eve::action::Invulnerability , 以及 kind.

被这些函数引用 enter() , 以及 exit().


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