F.E.I.S/src/widgets/playfield.hpp

52 lines
1.2 KiB
C++
Raw Normal View History

#pragma once
#include <SFML/Graphics.hpp>
#include <imgui-SFML.h>
2020-05-22 11:02:47 +02:00
#include <string>
2021-12-31 14:59:39 +01:00
#include "../ln_marker.hpp"
#include "../marker.hpp"
#include "../note.hpp"
class Playfield {
public:
Playfield(std::filesystem::path assets_folder);
sf::Texture base_texture;
sf::Sprite button;
sf::Sprite button_pressed;
sf::Sprite note_selected;
sf::Sprite note_collision;
sf::RenderTexture markerLayer;
sf::Sprite markerSprite;
LNMarker longNoteMarker;
sf::RenderTexture longNoteLayer;
sf::Sprite LNSquareBackgroud;
sf::Sprite LNSquareOutline;
sf::Sprite LNSquareHighlight;
sf::Sprite LNTail;
sf::Sprite LNTriangle;
void resize(unsigned int width);
void drawLongNote(
const Note& note,
const sf::Time& playbackPosition,
const float& ticksAtPlaybackPosition,
const float& BPM,
2021-12-31 14:59:39 +01:00
const int& resolution);
void drawLongNote(
const Note& note,
const sf::Time& playbackPosition,
const float& ticksAtPlaybackPosition,
const float& BPM,
const int& resolution,
Marker& marker,
2021-12-31 14:59:39 +01:00
MarkerEndingState& markerEndingState);
private:
const std::filesystem::path texture_path;
};