载入中...
搜索中...
未找到
WeaponTypes.h 文件参考
#include "common/Export.h"
#include "attributes/AttributeProjection.h"
#include "common/ECS.h"
#include "common/definitions/DefinitionRuntime.h"
#include <cstdint>
#include <memory>
#include <string>
#include <vector>

浏览源代码.

类

struct  eve::weapon::AttackResource
 触发资源模板(武器模板的一部分,用于运行时扣费 / 回复)。 更多...
 
struct  eve::weapon::AttackStageSpec
 阶段时长(秒);各形态按需配置。 更多...
 
struct  eve::weapon::ProjectileSpec
 投射物参数(武器模板的一部分,供游戏侧投射物服务使用)。 更多...
 
struct  eve::weapon::WeaponDefinition
 武器模板(registerWeaponsFromJson 注册,进程级注册表)。 更多...
 
struct  eve::weapon::AttackRequest
 一次攻击请求(C++ 系统 / 脚本发起)。角度均为度。 旧名 FireRequest 保留为别名,向后兼容。 更多...
 
struct  eve::weapon::WeaponEvent
 武器事件(帧缓存,脚本轮询,与 building/rpg 风格一致)。 更多...
 
struct  eve::weapon::Resource
 运行时触发资源(实体组件)。 更多...
 
class  eve::weapon::WeaponEntity
 武器实体:数据全部在组件里,行为在 WeaponSystem。 更多...
 
struct  eve::weapon::WeaponEntity::Identity
 稳定实例 id / 模板 id / 游戏侧拥有者。 更多...
 
struct  eve::weapon::WeaponEntity::Definition
 Typed definition projection used by legacy WeaponSystem code. @ownership Borrowed through def when owned is empty. When owned is present, this component owns the immutable projection and def points into it. @lifetime The borrowed pointer remains valid until this component is replaced or its owner is destroyed. Callers must not retain it across a definition projection swap. 更多...
 
struct  eve::weapon::WeaponEntity::DefinitionBinding
 Canonical definition identity and reload policy projected to ECS. @ownership The common DefinitionRegistry owns definition data; this component only stores identity and policy. @lifetime The identity is valid with this entity and becomes stale when the registry generation is replaced or removed. 更多...
 
struct  eve::weapon::WeaponEntity::State
 触发资源 / 冷却 / 装填 / 阶段机运行时状态。 更多...
 
struct  eve::weapon::WeaponEntity::Attributes
 Canonical optional mana/stamina state for non-ammo weapons. 更多...
 
struct  eve::weapon::WeaponEntity::Aim
 炮口朝向(度)。turnSpeed 0 = 立即到位。 更多...
 
class  eve::weapon::WeaponMountEntity
 武器挂点实体:可持有武器并限制旋转(炮塔 / 机枪座 / 固定挂架)。 更多...
 
struct  eve::weapon::WeaponMountEntity::Identity
 挂点 id / 场景节点路径 / 类型("turret" | "pintle" | "fixed")。 更多...
 
struct  eve::weapon::WeaponMountEntity::Limits
 旋转限位与射界(度)。 更多...
 
struct  eve::weapon::WeaponMountEntity::State
 当前朝向(度)与挂载的武器(不拥有,模块负责两者生命周期)。 更多...
 
class  eve::weapon::WeaponRigEntity
 手持位实体:面向 ARPG/RPG 角色手持武器(剑/法杖/步枪),无炮塔限位。 更多...
 
struct  eve::weapon::WeaponRigEntity::Identity
 手持位 id / 场景节点路径 / 握持类型。 更多...
 
struct  eve::weapon::WeaponRigEntity::Held
 持有位姿偏移(挂到角色手持节点的相对位置/旋转)。 更多...
 
struct  eve::weapon::WeaponRigEntity::State
 当前持有的武器(不拥有,模块负责生命周期)。 更多...
 
class  eve::weapon::AmmoPoolEntity
 共享弹药池实体:多把武器共用的备用弹药,装填时从池中取。 更多...
 
struct  eve::weapon::AmmoPoolEntity::Identity
 弹药池 id / 弹药类型("pistol" | "rifle" | "shell"…)。 更多...
 
struct  eve::weapon::AmmoPoolEntity::State
 当前存量 / 上限(<0 = 无限)。 更多...
 

命名空间

namespace  eve
 Build metadata (engine git commit, build time, third-party version).
 
namespace  eve::weapon
 载具模块入口(eve.Vehicle):定义注册 / 实体工厂 / RTS 命令 / 帧调度。 设计文档:docs/dev/通用载具系统设计.md
 

类型定义

using eve::weapon::FireRequest = AttackRequest
 兼容别名:IProjectileService 等旧接口继续用 FireRequest 名。
 

枚举

enum class  eve::weapon::WeaponKind : uint8_t {
  eve::weapon::Melee , eve::weapon::Ranged , eve::weapon::Magic , eve::weapon::Missile ,
  eve::weapon::Custom
}
 武器形态。 更多...
 
enum class  eve::weapon::ResourceKind : uint8_t {
  eve::weapon::None , eve::weapon::Ammo , eve::weapon::Mana , eve::weapon::Charges ,
  eve::weapon::Stamina
}
 触发资源的类型。 更多...
 
enum class  eve::weapon::AttackStage : uint8_t { eve::weapon::Idle , eve::weapon::Windup , eve::weapon::Active , eve::weapon::Recover }
 攻击阶段。 更多...
 
enum class  eve::weapon::FireMode : uint8_t { eve::weapon::Single , eve::weapon::Burst , eve::weapon::Auto }
 开火模式(热武器保留字段)。 更多...
 
enum class  eve::weapon::WeaponEventType : uint8_t {
  eve::weapon::Fire , eve::weapon::ReloadStart , eve::weapon::ReloadEnd , eve::weapon::Empty ,
  eve::weapon::WindupStart , eve::weapon::AttackEnd , eve::weapon::AimIn , eve::weapon::AimOut
}
 武器事件类型。 更多...
 

函数

const char * eve::weapon::weaponKindName (WeaponKind kind)
 武器形态的字符串名("melee" | "ranged" | "magic" | "missile" | "custom")。
 
WeaponKind eve::weapon::weaponKindFromName (const std::string &name)
 从字符串解析武器形态;未知名字回退 Ranged。
 
const char * eve::weapon::attackStageName (AttackStage stage)
 攻击阶段的字符串名("idle" | "windup" | "active" | "recover")。
 
const char * eve::weapon::fireModeName (FireMode mode)
 开火模式的字符串名("single" | "burst" | "auto")。
 
FireMode eve::weapon::fireModeFromName (const std::string &name)
 从字符串解析开火模式;未知名字回退 Single。
 
const char * eve::weapon::weaponEventTypeName (WeaponEventType type)
 事件类型的字符串名。