|
|
@ -1,4 +1,5 @@
|
|
|
|
#include "classicscenegraphicsmanager.h"
|
|
|
|
#include "classicscenegraphicsmanager.h"
|
|
|
|
|
|
|
|
#include "game/classicarrownote.h"
|
|
|
|
|
|
|
|
|
|
|
|
ClassicSceneGraphicsManager::ClassicSceneGraphicsManager(const std::shared_ptr<kku::Timeline<ClassicNote>>& timeline,
|
|
|
|
ClassicSceneGraphicsManager::ClassicSceneGraphicsManager(const std::shared_ptr<kku::Timeline<ClassicNote>>& timeline,
|
|
|
|
const std::shared_ptr<ClassicGraphicsFactory>& factory,
|
|
|
|
const std::shared_ptr<ClassicGraphicsFactory>& factory,
|
|
|
@ -32,7 +33,7 @@ void ClassicSceneGraphicsManager::display() const
|
|
|
|
|
|
|
|
|
|
|
|
for (auto it = _first; it != _last; ++it)
|
|
|
|
for (auto it = _first; it != _last; ++it)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
//display((*it)->getElements());
|
|
|
|
(*it)->draw(shared_from_this());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -46,8 +47,9 @@ void ClassicSceneGraphicsManager::update(const kku::microsec& offset, ClassicArr
|
|
|
|
updateVisibleNotes(offset);
|
|
|
|
updateVisibleNotes(offset);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
void ClassicSceneGraphicsManager::display(const std::vector<ArrowElement>& elements) const
|
|
|
|
void ClassicSceneGraphicsManager::draw(const ClassicArrowNote* note) const
|
|
|
|
{
|
|
|
|
{
|
|
|
|
|
|
|
|
auto& elements = note->getElements();
|
|
|
|
for (std::size_t i = 0; i < elements.size(); ++i)
|
|
|
|
for (std::size_t i = 0; i < elements.size(); ++i)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
const auto& sprite = elements[i].sprite;
|
|
|
|
const auto& sprite = elements[i].sprite;
|
|
|
@ -55,10 +57,8 @@ void ClassicSceneGraphicsManager::display(const std::vector<ArrowElement>& eleme
|
|
|
|
if (i >= 1)
|
|
|
|
if (i >= 1)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
//const auto& neighbor_sprite = elements[i - 1].sprite;
|
|
|
|
//const auto& neighbor_sprite = elements[i - 1].sprite;
|
|
|
|
|
|
|
|
|
|
|
|
//const auto c1 = neighbor_sprite->trailPosition();
|
|
|
|
//const auto c1 = neighbor_sprite->trailPosition();
|
|
|
|
//const auto c2 = sprite->trailPosition();
|
|
|
|
//const auto c2 = sprite->trailPosition();
|
|
|
|
|
|
|
|
|
|
|
|
//_render_target->draw(makeLine(c1, c2));
|
|
|
|
//_render_target->draw(makeLine(c1, c2));
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
@ -115,7 +115,7 @@ void ClassicSceneGraphicsManager::fetchFirstNote(const kku::microsec& offset)
|
|
|
|
&& offset <= note->getPerfectOffset())
|
|
|
|
&& offset <= note->getPerfectOffset())
|
|
|
|
{
|
|
|
|
{
|
|
|
|
note->setState(ClassicNote::State::FLYING);
|
|
|
|
note->setState(ClassicNote::State::FLYING);
|
|
|
|
//setGraphics(note, kku::TimeRange{note->getPerfectOffset() - _visibility_offset, note->getPerfectOffset()});
|
|
|
|
note->setGraphics(shared_from_this(), kku::TimeRange{note->getPerfectOffset() - _visibility_offset, note->getPerfectOffset()});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
else
|
|
|
@ -150,7 +150,7 @@ void ClassicSceneGraphicsManager::fetchLastNote(const kku::microsec& offset)
|
|
|
|
&& offset <= note->getPerfectOffset())
|
|
|
|
&& offset <= note->getPerfectOffset())
|
|
|
|
{
|
|
|
|
{
|
|
|
|
note->setState(ClassicNote::State::FLYING);
|
|
|
|
note->setState(ClassicNote::State::FLYING);
|
|
|
|
//note->setGraphics(this, kku::TimeRange{note->getPerfectOffset() - _visibility_offset, note->getPerfectOffset()});
|
|
|
|
note->setGraphics(shared_from_this(), kku::TimeRange{note->getPerfectOffset() - _visibility_offset, note->getPerfectOffset()});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
++note_iterator;
|
|
|
|
++note_iterator;
|
|
|
|