git repos / blockattack-game

commit b344a21b

sago007 · 2018-05-10 10:22
b344a21b1e37acf24c497eb59944e56033ffe283 patch · browse files
parent 3347e1e2e1ed7f1bd134b512ca180993973cfcd9

Start adding data to "About"

Changed files

M source/code/HelpAboutState.cpp before
M source/code/HelpAboutState.hpp before
diff --git a/source/code/HelpAboutState.cpp b/source/code/HelpAboutState.cpp index 5cb8c70..210492c 100644 --- a/source/code/HelpAboutState.cpp +++ b/source/code/HelpAboutState.cpp
@@ -25,13 +25,48 @@ https://blockattack.net
#include "global.hpp"
#include "common.h"
#include "MenuSystem.h"
+#include "sstream"
+#include "version.h"
const int xsize = 1024;
const int ysize = 768;
const int buttonOffset = 160;
extern sago::SagoSprite bExit;
+
+
+static void setHelpGamepadFont(const sago::SagoDataHolder* holder, sago::SagoTextField& field, const char* text){
+ field.SetHolder(holder);
+ field.SetFont("freeserif");
+ field.SetColor({255,255,255,255});
+ field.SetFontSize(30);
+ field.SetOutline(1, {128,128,128,255});
+ field.SetText(text);
+}
+
+static void setHelpGamepadFont(const sago::SagoDataHolder* holder, sago::SagoTextBox& field, const char* text){
+ field.SetHolder(holder);
+ field.SetFont("freeserif");
+ field.SetColor({255,255,255,255});
+ field.SetFontSize(30);
+ field.SetOutline(1, {32,32,32,255});
+ field.SetText(text);
+}
+
+static SDL_RendererInfo renderInfo;
+
HelpAboutState::HelpAboutState() {
+ SDL_GetRendererInfo(globalData.screen, &renderInfo);
+ std::stringstream infoStream;
+ infoStream << _("Name: ") << _("Block Attack - Rise of the Blocks") << "\n";
+ infoStream << _("Original name: ") << "Block Attack - Rise of the Blocks" << "\n";
+ infoStream << _("Version: ") << VERSION_NUMBER << "\n";
+ infoStream << _("Homepage: ") << "https://blockattack.net\n";
+ infoStream << _("SDL render: ") << renderInfo.name << "\n";
+ infoStream << _("Save folder: ") << PHYSFS_getWriteDir() << "\n";
+ infoStream << _("Locale: ") << setlocale( LC_CTYPE, nullptr ) << "\n";
+ setHelpGamepadFont(&globalData.spriteHolder->GetDataHolder(), titleField, _("About"));
+ setHelpGamepadFont(&globalData.spriteHolder->GetDataHolder(), infoBox, infoStream.str().c_str());
}
HelpAboutState::~HelpAboutState() {
@@ -53,6 +88,8 @@ void HelpAboutState::ProcessInput(const SDL_Event& event, bool& processed) {
void HelpAboutState::Draw(SDL_Renderer* target) {
DrawBackground(target);
+ titleField.Draw(target, 50, 50);
+ infoBox.Draw(target, 50, 100);
bExit.Draw(globalData.screen, SDL_GetTicks(), xsize-buttonOffset, ysize-buttonOffset);
#if DEBUG
static sago::SagoTextField mousePos;
diff --git a/source/code/HelpAboutState.hpp b/source/code/HelpAboutState.hpp index edf7375..5b3725c 100644 --- a/source/code/HelpAboutState.hpp +++ b/source/code/HelpAboutState.hpp
@@ -25,6 +25,8 @@ https://blockattack.net
#define HELPABOUT_HPP
#include "sago/GameStateInterface.hpp"
+#include "sago/SagoTextBox.hpp"
+#include "sago/SagoTextField.hpp"
class HelpAboutState : public sago::GameStateInterface {
public:
@@ -40,6 +42,8 @@ public:
private:
bool isActive = true;
bool bMouseUp = true;
+ sago::SagoTextField titleField;
+ sago::SagoTextBox infoBox;
};
#endif /* HELPABOUT_HPP */