summaryrefslogtreecommitdiffhomepage
path: root/WaveGenerator.h
blob: c3d52f584173d31b280a13a766d09128ee780500 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#pragma once

#include <memory>

#include <raylib.h>

#include "ConstantVelocity.h"
#include "Generator.h"


class WaveGenerator : public Generator
{
public:
    friend class EnemyFactory;
    WaveGenerator(std::shared_ptr<Vector2> position, ConstantVelocityBullet::Vector& bullets);
    void update(float dt) override;
private:
    std::shared_ptr<Vector2> m_position;
    ConstantVelocityBullet::Vector& m_bullets;
    float m_delay;
    float m_interval;
    int m_speed;
    int m_shift;
    int m_segments;
    Color m_color;
};