8#ifndef RTYPE_ENEMY_SHOOT_SYSTEM_HPP_
9 #define RTYPE_ENEMY_SHOOT_SYSTEM_HPP_
24 #include "Systems/NetworkSyncSystem.hpp"
47 void update(
float dt)
override;
59 bool isBoomerang =
false,
60 uint32_t shooterIndex = 0);
Interface for ECS systems.
Abstract base class for all ECS systems.
Spawns bullets for enemies on the server.
float _bulletSpeed
Speed of the spawned bullets.
ecs::Registry & _registry
Reference to the entity registry.
NetworkSyncSystem & _networkSync
Reference to the NetworkSyncSystem.
RoomSystem & _roomSystem
Reference to the RoomSystem.
void spawnBullet(const ecs::components::Transform &tf, const ecs::components::RoomId &roomId, bool isBoomerang=false, uint32_t shooterIndex=0)
Spawn a bullet entity at the given transform and room.
float _spawnOffsetX
X offset for bullet spawn position.
void update(float dt) override
Update enemy shooting system logic for one frame.
System to handle network-related operations on the server side.
System to handle room-related operations on the server side.
File : GameManager.hpp License: MIT Author : Elias Josué HAJJAR LLAUQUEN elias-josue....
Component representing a network identifier for an entity.