TazGraph Project v0.1.0
Loading...
Searching...
No Matches
BoxComponent.h
1#pragma once
2
3#include "../../../Components.h"
4
5class BoxComponent : public Component
6{
7public:
8 Color color = { 255, 255, 255, 255 };
9
10 SDL_Rect destRect;
11 TransformComponent* transform = nullptr;
12
13 float temp_rotation = 0.0f;
14
16 {
17
18 }
19
20
22
23 }
24
25 void init() override {
26 transform = &entity->GetComponent<TransformComponent>();
27
28 destRect.w = transform->size.x * transform->scale;
29 destRect.h = transform->size.y * transform->scale;
30 }
31
32 void update(float deltaTime) override {
33 destRect.x = static_cast<int>(transform->getPosition().x); //make player move with the camera, being stable in centre, except on edges
34 destRect.y = static_cast<int>(transform->getPosition().y);
35 destRect.w = transform->size.x * transform->scale;
36 destRect.h = transform->size.y * transform->scale;
37
38 temp_rotation += 0.1f;
39 }
40
41 void draw(size_t v_index, PlaneColorRenderer& batch, TazGraphEngine::Window& window ) {
42 batch.drawBox(v_index, transform->size, transform->bodyCenter, transform->rotation,color);
43 }
44
45 void draw(size_t v_index, LightRenderer& batch, TazGraphEngine::Window& window) {
46 batch.drawBox(v_index, transform->size, transform->bodyCenter, transform->rotation, color);
47 }
48
49 std::string GetComponentName() override {
50 return "BoxComponent";
51 }
52};
Definition BoxComponent.h:6
Definition GECS.h:123
Definition LightRenderer.h:20
Definition PlaneColorRenderer.h:19
Definition Window.h:18
Definition TransformComponent.h:6
Definition Vertex.h:47