#include "../graphics/Font.h"
#include "../graphics/Frame.h"
#include "../graphics/Texture.h"
+#include "../math/Vector.h"
using app::Input;
using common::Capsule;
using common::Stats;
-using geometry::Vector;
+using math::Vector;
using graphics::Font;
using graphics::Frame;
void CapsuleMenu::OnEnterState(SDL_Surface *) {
-
+ menu.StartAnimation(Ctrl());
}
void CapsuleMenu::OnExitState(SDL_Surface *) {
}
}
-void CapsuleMenu::UpdateWorld(float deltaT) {
+void CapsuleMenu::UpdateWorld(Uint32 deltaT) {
}
12 * font.CharWidth(),
2 * font.CharHeight() - font.CharHeight() / 8);
// TODO: wheel offset: top left, center, or center bottom?
- const Vector<int> wheelOffset;
+ const Vector<int> wheelOffset(
+ 6 * font.CharWidth(),
+ 19 * font.CharHeight() - font.CharHeight() / 8);
const Vector<int> statsOffset(
12 * font.CharWidth(),
15 * font.CharHeight() - font.CharHeight() / 8);
}
void CapsuleMenu::RenderWheel(SDL_Surface *screen, const Vector<int> &offset) const {
- // later
+ Res().capsuleAlignmentWheel->DrawCenter(screen, offset);
+ Res().capsuleAlignmentCursor->DrawCenter(screen, offset + Game().state->GetCapsule().AlignmentOffset());
}
void CapsuleMenu::RenderStats(SDL_Surface *screen, const Vector<int> &offset) const {
font.DrawNumberRight(capsule.NextLevel(), screen, lineHead);
}
-void CapsuleMenu::RenderStatsLine(SDL_Surface *screen, const geometry::Vector<int> &offset, const char *name, int value) const {
+void CapsuleMenu::RenderStatsLine(SDL_Surface *screen, const math::Vector<int> &offset, const char *name, int value) const {
const Font &font(*Res().statusFont);
const Vector<int> numberOffset(4 * font.CharWidth(), 0);
return parent->Height();
}
+Capsule &CapsuleMenu::GetCapsule() {
+ return Game().state->GetCapsule();
+}
+
const Capsule &CapsuleMenu::GetCapsule() const {
- return *Game().state->capsule;
+ return Game().state->GetCapsule();
}
}