RTS impact adapter over the canonical pooled weapon projectile trajectory runtime. 更多...
#include <RTSSystems.h>
Public 成员函数 | |
| Result< void > | launch (SubjectRef source, ecs::EntityHandle faction, WorldPosition origin, ecs::EntityHandle target, WorldPosition targetPoint, const weapon::WeaponDefinition &weapon, double damageFactor=1.0, ecs::EntityHandle observer={}, float originHeight=0.0f, float targetHeight=0.0f) |
| Launch one already-authorized weapon shot into the canonical trajectory pool. | |
| Result< std::size_t > | step (const SimulationStep &step, combat::DamageRuntime &damage, const ProjectileCollisionQuery &collision={}, const DamageEventSink &damageEvents={}) |
| Advance trajectories, detect swept impacts, and settle damage through DamageRuntime. | |
| Result< weapon::ProjectilePoint > | position (ecs::EntityHandle target) const override |
| Resolve homing targets for the canonical runtime. | |
| std::size_t | activeCount () const noexcept |
| Return live canonical projectile count. | |
| RTSProjectileSystemSnapshot | snapshot () const |
| Capture shared trajectories and stable RTS damage payloads. | |
| Result< void > | restore (const RTSProjectileSystemSnapshot &snapshot, const ProjectileSubjectResolver &resolver) |
| Validate and atomically restore shared trajectories plus RTS payloads. | |
Public 成员函数 继承自 eve::weapon::IProjectileTargetProvider | |
| virtual | ~IProjectileTargetProvider ()=default |
| Releases IProjectileTargetProvider resources. | |
详细描述
RTS impact adapter over the canonical pooled weapon projectile trajectory runtime.
在文件 RTSSystems.h 第 653 行定义.
成员函数说明
◆ activeCount()
|
inlinenoexcept |
Return live canonical projectile count.
在文件 RTSSystems.h 第 668 行定义.
◆ launch()
| Result< void > eve::rts::RTSProjectileSystem::launch | ( | SubjectRef | source, |
| ecs::EntityHandle | faction, | ||
| WorldPosition | origin, | ||
| ecs::EntityHandle | target, | ||
| WorldPosition | targetPoint, | ||
| const weapon::WeaponDefinition & | weapon, | ||
| double | damageFactor = 1.0, |
||
| ecs::EntityHandle | observer = {}, |
||
| float | originHeight = 0.0f, |
||
| float | targetHeight = 0.0f |
||
| ) |
Launch one already-authorized weapon shot into the canonical trajectory pool.
在文件 RTSSystems.cpp 第 3650 行定义.
引用了 eve::Applied, eve::weapon::Ballistic, dx, dy, dz, eve::Diagnostic::error(), eve::Result< T >::failure(), eve::LogicalId::fromParts(), eve::Duration::fromSeconds(), eve::weapon::ProjectileDefinition::gravity, gravity, id, eve::weapon::ProjectileDefinition::id, eve::InvalidArgument, key, lifetime, eve::weapon::ProjectileDefinition::lifetime, eve::weapon::Linear, eve::weapon::ProjectileDefinition::mode, observer, origin, payload, eve::weapon::ProjectileSpawnRequest::position, request, source, spawned, eve::weapon::ProjectileDefinition::speed, eve::Status::success(), eve::Result< T >::success(), target, eve::rts::WorldPosition::x, eve::weapon::ProjectilePoint::x , 以及 eve::rts::WorldPosition::y.
◆ position()
|
overridevirtual |
Resolve homing targets for the canonical runtime.
实现了 eve::weapon::IProjectileTargetProvider.
在文件 RTSSystems.cpp 第 3642 行定义.
引用了 eve::Diagnostic::error(), eve::Result< T >::failure(), eve::StaleHandle, eve::Result< T >::success(), target , 以及 value.
◆ restore()
| Result< void > eve::rts::RTSProjectileSystem::restore | ( | const RTSProjectileSystemSnapshot & | snapshot, |
| const ProjectileSubjectResolver & | resolver | ||
| ) |
Validate and atomically restore shared trajectories plus RTS payloads.
在文件 RTSSystems.cpp 第 3582 行定义.
引用了 eve::Applied, eve::Diagnostic::error(), eve::Result< T >::failure(), eve::InvalidArgument, eve::LogicalId::isValid(), key, eve::NotFound, observer, payload, eve::rts::RTSProjectileSystemSnapshot::payloads, eve::weapon::ProjectileRuntime::restore(), eve::rts::RTSProjectileSystemSnapshot::runtime, state, eve::weapon::ProjectileRuntime::states(), eve::Status::success(), eve::Result< T >::success(), target , 以及 value.
被这些函数引用 eve::rts::RTS::restoreState().
◆ snapshot()
| RTSProjectileSystemSnapshot eve::rts::RTSProjectileSystem::snapshot | ( | ) | const |
Capture shared trajectories and stable RTS damage payloads.
在文件 RTSSystems.cpp 第 3565 行定义.
引用了 payload, eve::rts::RTSProjectileSystemSnapshot::payloads, eve::rts::RTSProjectileSystemSnapshot::runtime , 以及 eve::weapon::ProjectileRuntimeSnapshot::slots.
◆ step()
| Result< std::size_t > eve::rts::RTSProjectileSystem::step | ( | const SimulationStep & | step, |
| combat::DamageRuntime & | damage, | ||
| const ProjectileCollisionQuery & | collision = {}, |
||
| const DamageEventSink & | damageEvents = {} |
||
| ) |
Advance trajectories, detect swept impacts, and settle damage through DamageRuntime.
在文件 RTSSystems.cpp 第 3717 行定义.
引用了 alive, eve::Applied, eve::combat::DamageRuntime::apply(), ax, ay, az, bx, by, bz, current, eve::combat::Death, distance, dx, dy, dz, eve::Diagnostic::error(), eve::Result< T >::failure(), handle, eve::InvalidArgument, key, eve::rts::RTSEffectComponent::multiplier(), eve::NoOp, observer, payload, range, request, eve::rts::EntityLink< Tag >::resolve(), scale, source, eve::combat::DamageRequest::source, state, step, subject, eve::Status::success(), eve::Result< T >::success(), t, tag, unit, units, updated, eve::rts::TagSet::values(), vx, vy, vz, wx, wy, wz, eve::rts::WorldPosition::x , 以及 eve::rts::WorldPosition::y.
该类的文档由以下文件生成:
- src/modules/rts/RTSSystems.h
- src/modules/rts/RTSSystems.cpp
Public 成员函数 继承自