group2 0.1.0
CSE 125 Group 2
Loading...
Searching...
No Matches
WeaponState.hpp
Go to the documentation of this file.
1
3
4#pragma once
5
6#include <cstdint>
7
9enum class WeaponType : uint8_t
10{
11 Rifle,
12 Rocket,
13 RailGun,
14 EnergyGun,
15};
16
17enum class WeaponSlot : uint8_t
18{
19 PRIMARY,
23};
24
27{
29 int totalAmmo = 0;
31 float fireCooldown = 0.f;
32 float chargeTime = 0.f;
33};
34
WeaponSlot
Definition WeaponState.hpp:18
WeaponType
Weapon type — determines tracer style, damage, sound, and impact effects.
Definition WeaponState.hpp:10
@ EnergyGun
Fast hitscan energy burst.
@ Rocket
Slow arcing projectile (ribbon trail)
@ RailGun
Hitscan energy weapon (beam + lightning arcs)
@ Rifle
Fast hitscan/projectile (R301-style capsule tracer)
Struct that defines this weapon's type, cooldown, and ammo.
Definition WeaponState.hpp:27
WeaponType type
Definition WeaponState.hpp:28
float fireCooldown
Definition WeaponState.hpp:31
float chargeTime
Accumulated charge time (charge weapons only).
Definition WeaponState.hpp:32
int currentMagAmmo
Definition WeaponState.hpp:30
int totalAmmo
Definition WeaponState.hpp:29
Component attached to armed entities (players).
Definition WeaponState.hpp:37
GunInstance quaternary
Definition WeaponState.hpp:41
WeaponSlot current
Currently equipped weapon slot.
Definition WeaponState.hpp:42
GunInstance secondary
Definition WeaponState.hpp:39
GunInstance primary
Definition WeaponState.hpp:38
GunInstance tertiary
Definition WeaponState.hpp:40