Authoritative projection of active block/parry Montage windows. 更多...
#include <GuardWindowState.h>
Public 成员函数 | |
| GuardWindowState (GuardSubjectResolver resolver) | |
| Construct with a synchronous subject resolver. | |
| ~GuardWindowState () override | |
| Guard window state. | |
| void | setEnabled (bool enabled) |
| Opt this owner into or out of Action state-window dispatch. | |
| 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. | |
| Result< GuardEvaluation > | evaluate (SubjectRef defender, SubjectRef attacker) const |
| Evaluate whether a defender currently blocks or parries an attacker. | |
| Result< GuardEvaluation > | mitigate (SubjectRef defender, DamageRequest &request) const |
| Mutate a damage request when guard succeeds. | |
| std::vector< GuardMode > | activeModes (SubjectRef subject) const |
| Return active guard modes for a subject in key order. | |
| std::size_t | activeCount () const noexcept |
| 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 projection of active block/parry Montage windows.
Resource strings are block or parry. Overlapping windows compose by key; evaluation prefers Parry over Block when both are active for a defender.
在文件 GuardWindowState.h 第 43 行定义.
构造及析构函数说明
◆ GuardWindowState()
|
explicit |
Construct with a synchronous subject resolver.
在文件 GuardWindowState.cpp 第 19 行定义.
◆ ~GuardWindowState()
|
override |
Guard window state.
在文件 GuardWindowState.cpp 第 21 行定义.
成员函数说明
◆ activeCount()
|
inlinenoexcept |
Number of retained active window keys.
在文件 GuardWindowState.h 第 78 行定义.
◆ activeModes()
| std::vector< GuardMode > eve::combat::GuardWindowState::activeModes | ( | SubjectRef | subject | ) | const |
Return active guard modes for a subject in key order.
在文件 GuardWindowState.cpp 第 123 行定义.
◆ enabled()
| bool eve::combat::GuardWindowState::enabled | ( | ) | const |
Return whether this exact owner is registered.
在文件 GuardWindowState.cpp 第 23 行定义.
引用了 index.
被这些函数引用 setEnabled().
◆ enter()
|
overridevirtual |
Enter one validated window or idempotently observe the same active key.
Enter.
实现了 eve::action::IActionStateWindowSink.
在文件 GuardWindowState.cpp 第 41 行定义.
引用了 eve::Applied, binding, eve::Conflict, context, eve::Diagnostic::error(), eve::Result< T >::failure(), found, handle, eve::InvalidArgument, key, eve::NoOp, eve::NotFound, subject, eve::Status::success(), eve::Result< T >::success(), supports() , 以及 eve::Unsupported.
◆ evaluate()
| Result< GuardEvaluation > eve::combat::GuardWindowState::evaluate | ( | SubjectRef | defender, |
| SubjectRef | attacker | ||
| ) | const |
Evaluate whether a defender currently blocks or parries an attacker.
在文件 GuardWindowState.cpp 第 88 行定义.
引用了 eve::combat::GuardEvaluation::attacker, eve::combat::Block, eve::combat::Blocked, eve::combat::GuardEvaluation::defender, eve::Diagnostic::error(), eve::Result< T >::failure(), eve::InvalidArgument, eve::SubjectRef::isValid(), key, eve::combat::GuardEvaluation::mode, eve::combat::Parried, eve::combat::Parry, eve::combat::GuardEvaluation::result , 以及 eve::Result< T >::success().
被这些函数引用 mitigate().
◆ exit()
|
overridevirtual |
Exit one previously entered window by execution and item identity.
Exit.
实现了 eve::action::IActionStateWindowSink.
在文件 GuardWindowState.cpp 第 74 行定义.
引用了 eve::Applied, binding, eve::Conflict, context, eve::Diagnostic::error(), eve::Result< T >::failure(), found, key, eve::NoOp, eve::Status::success(), eve::Result< T >::success(), supports() , 以及 eve::Unsupported.
◆ mitigate()
| Result< GuardEvaluation > eve::combat::GuardWindowState::mitigate | ( | SubjectRef | defender, |
| DamageRequest & | request | ||
| ) | const |
Mutate a damage request when guard succeeds.
- 备注
- Block zeros health/poise and knockback. Parry zeros damage and tags reaction None.
在文件 GuardWindowState.cpp 第 113 行定义.
引用了 evaluate(), eve::combat::None , 以及 request.
◆ setEnabled()
| void eve::combat::GuardWindowState::setEnabled | ( | bool | enabled | ) |
Opt this owner into or out of Action state-window dispatch.
在文件 GuardWindowState.cpp 第 29 行定义.
◆ supports()
|
overridevirtualnoexcept |
Whether this sink owns the supplied semantic window kind.
Supports.
实现了 eve::action::IActionStateWindowSink.
在文件 GuardWindowState.cpp 第 37 行定义.
引用了 eve::action::Guard , 以及 kind.
该类的文档由以下文件生成:
- src/modules/combat/GuardWindowState.h
- src/modules/combat/GuardWindowState.cpp
Public 成员函数 继承自