Files
dae16-VerhulstBram-GameProject/Game/Gui/GuiMeter.cpp
2024-05-09 00:46:05 +02:00

19 lines
684 B
C++

#include "pch.h"
#include "GuiMeter.h"
#include "TextureManager.h"
#include "utils.h"
GuiMeter::GuiMeter(const std::string& filePath, Vector2f pos, Vector2f frameSize, int frameCount, TextureManager* manager): m_Position(pos), m_FrameCount(frameCount) {
m_Animation = new Animation(manager->GetTexture(filePath),frameCount, 0.0f, Rectf{0, 0, frameSize.x, frameSize.y}, false);
}
GuiMeter::~GuiMeter() {
delete m_Animation;
}
void GuiMeter::Draw() const {
m_Animation->Draw(m_Position);
}
void GuiMeter::Update(float elapsedSec) {
const int frame = static_cast<int>(utils::map(m_Value, 0.0f, m_MaxValue, 0, (float)m_Animation->GetFrameCount()));
m_Animation->SetFrame(frame);
}