commit 492b2753
Added some labels
Changed files
| M | source/code/HelpGamepadState.cpp before |
| M | source/code/HelpGamepadState.hpp before |
| M | source/code/sago/SagoTextField.cpp before |
| M | source/code/sago/SagoTextField.hpp before |
diff --git a/source/code/HelpGamepadState.cpp b/source/code/HelpGamepadState.cpp
index caca5f5..25597cb 100644
--- a/source/code/HelpGamepadState.cpp
+++ b/source/code/HelpGamepadState.cpp
@@ -27,6 +27,14 @@ https://blockattack.net
#include "MenuSystem.h"
HelpGamepadState::HelpGamepadState() {
+ moveLabel.SetHolder(&globalData.spriteHolder->GetDataHolder());
+ moveLabel.SetFontSize(30);
+ moveLabel.SetOutline(1, {128,128,128,255});
+ moveLabel.SetText(_("Move cursor"));
+ pushLabel.SetHolder(&globalData.spriteHolder->GetDataHolder());
+ pushLabel.SetFontSize(30);
+ pushLabel.SetOutline(1, {128,128,128,255});
+ pushLabel.SetText(_("Push line"));
}
@@ -50,6 +58,15 @@ void HelpGamepadState::Draw(SDL_Renderer* target) {
DrawBackground(target);
const sago::SagoSprite& gamepad = globalData.spriteHolder->GetSprite("help_controller");
gamepad.Draw(target, SDL_GetTicks(), globalData.xsize/2-480/2, 100);
+ SDL_RenderDrawLine(target, 100, 210, globalData.xsize/2-480/2+130, 210);
+ SDL_RenderDrawLine(target, 100, 298, globalData.xsize/2-480/2+158, 298);
+ SDL_RenderDrawLine(target, 100, 210, 100, 400);
+ moveLabel.Draw(target, 100, 404, sago::SagoTextField::Alignment::center);
+ SDL_RenderDrawLine(target, globalData.xsize/2-480/2+140, 90, globalData.xsize/2-480/2+140, 105);
+ SDL_RenderDrawLine(target, globalData.xsize/2+480/2-140, 90, globalData.xsize/2+480/2-140, 105);
+ SDL_RenderDrawLine(target, globalData.xsize/2-480/2+140, 90, globalData.xsize/2+480/2-140, 90);
+ SDL_RenderDrawLine(target, globalData.xsize/2, 80, globalData.xsize/2, 90);
+ pushLabel.Draw(target, globalData.xsize/2, 80, sago::SagoTextField::Alignment::center, sago::SagoTextField::VerticalAlignment::bottom);
}
void HelpGamepadState::Update() {
diff --git a/source/code/HelpGamepadState.hpp b/source/code/HelpGamepadState.hpp
index 9545f7b..e39f558 100644
--- a/source/code/HelpGamepadState.hpp
+++ b/source/code/HelpGamepadState.hpp
@@ -41,6 +41,8 @@ public:
private:
bool isActive = true;
+ sago::SagoTextField moveLabel;
+ sago::SagoTextField pushLabel;
private:
};
diff --git a/source/code/sago/SagoTextField.cpp b/source/code/sago/SagoTextField.cpp
index 6518899..2bb40f9 100644
--- a/source/code/sago/SagoTextField.cpp
+++ b/source/code/sago/SagoTextField.cpp
@@ -214,6 +214,9 @@ void SagoTextField::Draw(SDL_Renderer* target, int x, int y, Alignment alignment
if (verticalAlignment == VerticalAlignment::center) {
y -= texH/2;
}
+ if (verticalAlignment == VerticalAlignment::bottom) {
+ y -= texH;
+ }
SDL_Rect dstrect = { x, y, texW, texH };
if (data->outlineTexture) {
int outlineTexW = 0;
diff --git a/source/code/sago/SagoTextField.hpp b/source/code/sago/SagoTextField.hpp
index f3af800..902ee16 100644
--- a/source/code/sago/SagoTextField.hpp
+++ b/source/code/sago/SagoTextField.hpp
@@ -97,7 +97,7 @@ public:
*/
void GetRenderedSize(const char* text, int* w = nullptr, int* h = nullptr);
enum class Alignment { left = 0, right=1, center = 2 };
- enum class VerticalAlignment { top = 0, center = 1};
+ enum class VerticalAlignment { top = 0, center = 1, bottom = 2};
void Draw(SDL_Renderer* target, int x, int y, Alignment alignment = Alignment::left, VerticalAlignment verticalAlignment = VerticalAlignment::top);
/**
* Updates the cache.