#include "lang.h" #include #include // Constructor Lang::Lang(Asset *mAsset) { this->mAsset = mAsset; } // Destructor Lang::~Lang() { } // Inicializa los textos del juego en el idioma seleccionado bool Lang::setLang(Uint8 lang) { std::string file; switch (lang) { case es_ES: file = mAsset->get("es_ES.txt"); break; case en_UK: file = mAsset->get("en_UK.txt"); break; case ba_BA: file = mAsset->get("ba_BA.txt"); break; default: file = mAsset->get("en_UK.txt"); break; } for (int i = 0; i < MAX_TEXT_STRINGS; i++) mTextStrings[i] = ""; bool success = false; std::ifstream rfile(file); if (rfile.is_open() && rfile.good()) { success = true; std::string buffer; // lee el resto de datos del fichero int index = 0; int line_read = 0; while (std::getline(rfile, buffer)) { // Almacena solo las lineas impares if (line_read % 2 == 1) mTextStrings[index++] = buffer; // Limpia el buffer buffer.clear(); line_read++; }; } return success; } // Obtiene la cadena de texto del indice std::string Lang::getText(int index) { return mTextStrings[index]; }