group2 0.1.0
CSE 125 Group 2
Loading...
Searching...
No Matches
FireSystem.hpp
Go to the documentation of this file.
1
3
4#pragma once
5
9
10#include <glm/vec3.hpp>
11#include <vector>
12
13namespace systems
14{
15
18void spawnFireField(Registry& registry,
19 glm::vec3 position,
20 float radius,
21 float duration,
22 float dps,
23 entt::entity owner,
24 WeaponType weaponType = WeaponType::Molotov);
25
30void runFireField(Registry& registry, float dt, std::vector<NetKillEvent>& killEvents);
31
32} // namespace systems
Structure of kill event broadcasted from server to clients.
Shared ECS registry type alias for the game engine.
entt::registry Registry
Shared ECS registry type alias.
Definition Registry.hpp:11
Weapon state component for armed entities.
WeaponType
Weapon type — determines tracer style, damage, sound, and impact effects.
Definition WeaponState.hpp:12
@ Molotov
Impact-detonate, leaves a fire field (damage over time).
Definition WeaponState.hpp:19
Client-only input sampling system — split into two halves so mouse look can run every iterate() (smoo...
Definition DebugUI.hpp:15
void spawnFireField(Registry &registry, glm::vec3 position, float radius, float duration, float dps, entt::entity owner, WeaponType weaponType)
Spawn a FireField at position that lasts duration seconds and deals dps damage to players inside radi...
Definition FireSystem.cpp:25
void runFireField(Registry &registry, float dt, std::vector< NetKillEvent > &killEvents)
Tick all FireField entities: decrement remaining, apply DoT damage at fixed sub-intervals (4 Hz),...
Definition FireSystem.cpp:44