Trabajando en hacer que puedas entrar a la jail

This commit is contained in:
2022-11-05 20:56:09 +01:00
parent 1bcdadb6c0
commit 45fc923be9
10 changed files with 248 additions and 110 deletions

View File

@@ -12,66 +12,66 @@ Demo::Demo(SDL_Renderer *renderer, Screen *screen, Resource *resource, Asset *as
rooms.push_back("60.room");
rooms.push_back("58.room");
//rooms.push_back("01.room");
//rooms.push_back("02.room");
//rooms.push_back("03.room");
//rooms.push_back("04.room");
//rooms.push_back("05.room");
//rooms.push_back("06.room");
//rooms.push_back("07.room");
//rooms.push_back("08.room");
//rooms.push_back("09.room");
//rooms.push_back("10.room");
//rooms.push_back("11.room");
//rooms.push_back("12.room");
//rooms.push_back("13.room");
//rooms.push_back("14.room");
//rooms.push_back("15.room");
//rooms.push_back("16.room");
//rooms.push_back("17.room");
//rooms.push_back("18.room");
//rooms.push_back("19.room");
//rooms.push_back("20.room");
//rooms.push_back("21.room");
//rooms.push_back("22.room");
//rooms.push_back("23.room");
//rooms.push_back("24.room");
//rooms.push_back("25.room");
//rooms.push_back("26.room");
//rooms.push_back("27.room");
//rooms.push_back("28.room");
//rooms.push_back("29.room");
//rooms.push_back("30.room");
//rooms.push_back("31.room");
//rooms.push_back("32.room");
//rooms.push_back("33.room");
//rooms.push_back("34.room");
//rooms.push_back("35.room");
//rooms.push_back("36.room");
//rooms.push_back("37.room");
//rooms.push_back("38.room");
//rooms.push_back("39.room");
//rooms.push_back("40.room");
//rooms.push_back("41.room");
//rooms.push_back("42.room");
//rooms.push_back("43.room");
//rooms.push_back("44.room");
//rooms.push_back("45.room");
//rooms.push_back("46.room");
//rooms.push_back("47.room");
//rooms.push_back("48.room");
//rooms.push_back("49.room");
//rooms.push_back("50.room");
//rooms.push_back("51.room");
//rooms.push_back("52.room");
//rooms.push_back("53.room");
//rooms.push_back("54.room");
//rooms.push_back("55.room");
//rooms.push_back("56.room");
//rooms.push_back("57.room");
//rooms.push_back("58.room");
//rooms.push_back("59.room");
//rooms.push_back("60.room");
// rooms.push_back("01.room");
// rooms.push_back("02.room");
// rooms.push_back("03.room");
// rooms.push_back("04.room");
// rooms.push_back("05.room");
// rooms.push_back("06.room");
// rooms.push_back("07.room");
// rooms.push_back("08.room");
// rooms.push_back("09.room");
// rooms.push_back("10.room");
// rooms.push_back("11.room");
// rooms.push_back("12.room");
// rooms.push_back("13.room");
// rooms.push_back("14.room");
// rooms.push_back("15.room");
// rooms.push_back("16.room");
// rooms.push_back("17.room");
// rooms.push_back("18.room");
// rooms.push_back("19.room");
// rooms.push_back("20.room");
// rooms.push_back("21.room");
// rooms.push_back("22.room");
// rooms.push_back("23.room");
// rooms.push_back("24.room");
// rooms.push_back("25.room");
// rooms.push_back("26.room");
// rooms.push_back("27.room");
// rooms.push_back("28.room");
// rooms.push_back("29.room");
// rooms.push_back("30.room");
// rooms.push_back("31.room");
// rooms.push_back("32.room");
// rooms.push_back("33.room");
// rooms.push_back("34.room");
// rooms.push_back("35.room");
// rooms.push_back("36.room");
// rooms.push_back("37.room");
// rooms.push_back("38.room");
// rooms.push_back("39.room");
// rooms.push_back("40.room");
// rooms.push_back("41.room");
// rooms.push_back("42.room");
// rooms.push_back("43.room");
// rooms.push_back("44.room");
// rooms.push_back("45.room");
// rooms.push_back("46.room");
// rooms.push_back("47.room");
// rooms.push_back("48.room");
// rooms.push_back("49.room");
// rooms.push_back("50.room");
// rooms.push_back("51.room");
// rooms.push_back("52.room");
// rooms.push_back("53.room");
// rooms.push_back("54.room");
// rooms.push_back("55.room");
// rooms.push_back("56.room");
// rooms.push_back("57.room");
// rooms.push_back("58.room");
// rooms.push_back("59.room");
// rooms.push_back("60.room");
roomIndex = 0;
currentRoom = rooms.at(roomIndex);
@@ -100,8 +100,7 @@ Demo::Demo(SDL_Renderer *renderer, Screen *screen, Resource *resource, Asset *as
board.lives = 9;
board.items = 0;
board.rooms = 1;
const color_t c = room->getBorderColor();
board.color = (c.r + c.g + c.b == 0) ? stringToColor(options->palette, "white") : c; // Si el color es negro lo cambia a blanco
setScoreBoardColor();
board.music = !debug->getEnabled();
@@ -271,8 +270,8 @@ void Demo::switchPalette()
room->reLoadPalette();
scoreboard->reLoadPalette();
const color_t c = room->getBorderColor();
board.color = (c.r + c.g + c.b == 0) ? stringToColor(options->palette, "white") : c; // Si el color es negro lo cambia a blanco
// Pone el color del marcador en función del color del borde de la habitación
setScoreBoardColor();
}
// Cambia de habitación
@@ -290,9 +289,8 @@ bool Demo::changeRoom(std::string file)
// Crea un objeto habitación nuevo a partir del fichero
room = new Room(resource->getRoom(file), renderer, screen, asset, options, itemTracker, &board.items, debug);
// Actualiza el marcador
const color_t c = room->getBorderColor(); // Pone el color del marcador
board.color = (c.r + c.g + c.b == 0) ? stringToColor(options->palette, "white") : c; // Si el color es negro lo cambia a blanco
// Pone el color del marcador en función del color del borde de la habitación
setScoreBoardColor();
return true;
}
@@ -318,4 +316,19 @@ void Demo::checkRoomChange()
changeRoom(rooms.at(roomIndex));
}
}
}
// Pone el color del marcador en función del color del borde de la habitación
void Demo::setScoreBoardColor()
{
// Obtiene el color del borde
const color_t c = room->getBorderColor();
// Si el color es negro lo cambia a blanco
const color_t cBlack = stringToColor(options->palette, "black");
board.color = colorAreEqual(c, cBlack) ? stringToColor(options->palette, "white") : c;
// Si el color es negro brillante lo cambia a blanco
const color_t cBrightBlack = stringToColor(options->palette, "bright_black");
board.color = colorAreEqual(c, cBrightBlack) ? stringToColor(options->palette, "white") : c;
}