Product transaction boundary for post-battle rewards and encounter lifecycle. 更多...
#include <BattleVictory.h>
静态 Public 成员函数 | |
| static eve::Result< BattleVictoryReceipt > | settle (RPGActor &actor, GameState &gameState, Tracker &tracker, const BattleVictoryRequest &request) |
| Atomically settle XP, derived class skills, attributes, quest progress, and encounter consumption. | |
详细描述
Product transaction boundary for post-battle rewards and encounter lifecycle.
在文件 BattleVictory.h 第 45 行定义.
成员函数说明
◆ settle()
|
static |
Atomically settle XP, derived class skills, attributes, quest progress, and encounter consumption.
- 返回
- Receipt after complete commit, or a structured failure with actor/state/tracker unchanged.
- 备注
- The required quest must be active and the encounter unconsumed. Level-up events are queued only after all non-actor owners have committed, and are poll-only. @ownership All participants are borrowed and remain caller-owned. @thread Call on the participants' owning simulation thread; concurrent mutation is unsupported. @reentrancy No callbacks are invoked.
在文件 BattleVictory.cpp 第 45 行定义.
引用了 eve::rpg::GameState::addVariable(), eve::Applied, eve::rpg::ClassSystem::checkLevelSkills(), eve::rpg::LevelSystem::commitGainXp(), eve::Conflict, consumed, eve::rpg::WorldState::consumeObject(), eve::rpg::Tracker::entries, eve::Result< T >::failure(), eve::rpg::Tracker::getState(), eve::InvalidArgument, eve::InvariantViolation, eve::rpg::WorldState::isObjectConsumed(), eve::rpg::BattleVictoryReceipt::levelsGained, eve::rpg::PreparedProgressionGain::levelsGained(), eve::rpg::Tracker::notify(), eve::Result< void >::ok(), eve::rpg::Tracker::order, eve::rpg::Tracker::pending, eve::rpg::Tracker::polled, eve::PreconditionViolation, eve::rpg::LevelSystem::prepareGainXp(), request, eve::rpg::GameState::restoreSnapshotJson(), eve::rpg::BattleVictoryReceipt::skillsLearned, eve::rpg::GameState::snapshotJson(), eve::Status::success(), eve::Result< T >::success() , 以及 world.
被这些函数引用 eve::rpg::RPG::settleBattleVictory() , 以及 eve::rpg::RPG::settleEncounterVictory().
该类的文档由以下文件生成:
- src/modules/rpg/BattleVictory.h
- src/modules/rpg/BattleVictory.cpp