diff --git a/source/item.cpp b/source/item.cpp index c97eb1f..e058b6d 100644 --- a/source/item.cpp +++ b/source/item.cpp @@ -42,7 +42,7 @@ Item::~Item() void Item::render() { const int index = (counter / colorChangeSpeed) % color.size(); - sprite->getTexture()->setColor(color[index].r, color[index].g, color[index].b); + sprite->getTexture()->setColor(color.at(index).r, color.at(index).g, color.at(index).b); sprite->render(); sprite->getTexture()->setColor(255, 255, 255); } diff --git a/source/item.h b/source/item.h index 7b7ca0c..e3dd302 100644 --- a/source/item.h +++ b/source/item.h @@ -58,6 +58,9 @@ public: // Recarga la textura void reLoadTexture(); + + // Recarga la paleta + void reLoadPalette(palette_e pal); }; #endif diff --git a/source/player.cpp b/source/player.cpp index 838ff64..9fbe072 100644 --- a/source/player.cpp +++ b/source/player.cpp @@ -691,6 +691,12 @@ void Player::reLoadTexture() texture->reLoad(); } +// Recarga la paleta +void Player::reLoadPalette() +{ + color = stringToColor(options->palette, "white"); +} + // Establece el valor de la variable void Player::setRoom(Room *room) { diff --git a/source/player.h b/source/player.h index df0bb3f..2223d05 100644 --- a/source/player.h +++ b/source/player.h @@ -160,6 +160,9 @@ public: // Recarga la textura void reLoadTexture(); + // Recarga la paleta + void reLoadPalette(); + // Establece el valor de la variable void setRoom(Room *room); diff --git a/source/room.cpp b/source/room.cpp index c6c6a3a..877e22e 100644 --- a/source/room.cpp +++ b/source/room.cpp @@ -123,55 +123,6 @@ bool Room::loadMapFile(std::string file_path) enemies.push_back(new Enemy(enemy)); } - // Si la linea contiene el texto [tilemap] se realiza el proceso de carga del fichero tmx - /*else if (line == "[tilemap]") - { - do - { - std::getline(file, line); - if (line.find(".tmx") != std::string::npos) - { - std::string filename2 = line; - std::ifstream file2(asset->get(filename2)); // Abre el fichero tmx - if (file2.good()) - { - bool data_read = false; - while (std::getline(file2, line)) // Lee el fichero linea a linea - { - if (!data_read) - { // Lee lineas hasta que encuentre donde empiezan los datos del mapa - int pos = 0; - do - { - std::getline(file2, line); - pos = line.find("data encoding"); - } while (pos == std::string::npos); - - do - { // Se introducen los valores separados por comas en un vector - data_read = true; - std::getline(file2, line); - if (line != "") - { - std::stringstream ss(line); - std::string tmp; - while (getline(ss, tmp, ',')) - { // Se resta 1 ya que tiled numera los tiles de 1 a n - tilemap.push_back(std::stoi(tmp) - 1); - } - } - } while (line != ""); - } - } - - // Cierra el fichero - printf("Closing file %s\n\n", filename2.c_str()); - file2.close(); - } - } - } while (line != "[/tilemap]"); - }*/ - // Si la linea contiene el texto [item] se realiza el proceso de carga de un item else if (line == "[item]") { @@ -840,6 +791,13 @@ void Room::reLoadTexture() } } +// Recarga la paleta +void Room::reLoadPalette() +{ + itemColor1 = stringToColor(options->palette, "magenta"); + itemColor2 = stringToColor(options->palette, "yellow"); +} + // Obten el tamaño del tile int Room::getTileSize() { diff --git a/source/room.h b/source/room.h index 695af30..cfe5711 100644 --- a/source/room.h +++ b/source/room.h @@ -174,6 +174,9 @@ public: // Recarga la textura void reLoadTexture(); + // Recarga la paleta + void reLoadPalette(); + // Obten el tamaño del tile int getTileSize();