diff --git a/data/enemies/batman_fire.ani b/data/enemies/batman_fire.ani new file mode 100644 index 0000000..838fad8 --- /dev/null +++ b/data/enemies/batman_fire.ani @@ -0,0 +1,9 @@ +frameWidth=16 +frameHeight=16 + +[animation] +name=default +speed=4 +loop=0 +frames=0,1,2,3 +[/animation] \ No newline at end of file diff --git a/data/enemies/batman_fire.png b/data/enemies/batman_fire.png new file mode 100644 index 0000000..c5fcc44 Binary files /dev/null and b/data/enemies/batman_fire.png differ diff --git a/data/room/45.room b/data/room/45.room index b64ad8c..616fa37 100644 --- a/data/room/45.room +++ b/data/room/45.room @@ -1,5 +1,5 @@ -name=FEEL THE HEAT -bgColor=red +name=FEEL THE PRESSURE +bgColor=bright_black border=black tileMapFile=45.tmx tileSetFile=standard.png diff --git a/data/room/45.tmx b/data/room/45.tmx index 8eb492c..8027e55 100644 --- a/data/room/45.tmx +++ b/data/room/45.tmx @@ -3,22 +3,22 @@ +30,30,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +30,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +30,0,0,0,0,0,0,0,0,0,0,323,323,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +30,0,0,0,0,0,0,0,323,323,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +30,0,0,0,0,323,323,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +30,0,323,323,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,323,323,0,323,323,323,323,323,0,323,323,323,323,323,0,323,323,323,323,0,395,0,0,0,395,395,395,399,395,395, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,399,0,0,0,0,0,0,0,0,0, +30,30,30,0,0,0,395,395,395,0,0,0,395,399,395,0,0,0,395,395,395,0,0,0,0,0,0,0,0,0,0,0, +30,30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -30,0,0,0,0,0,0,0,0,0,0,0,323,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -30,0,0,0,0,0,0,0,0,323,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -30,0,0,0,0,0,323,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -30,0,0,323,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -30,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,323,323,323,323,323,323,323,323,323,323,323,323,323,323,323,323,323,323,0,275,0,0,0,275,275,275,275,275,275, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,275,0,0,0,0,0,0,0,0,0, -30,30,30,0,0,0,275,275,275,0,0,0,275,275,275,0,0,0,275,275,275,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, -554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554,554 +556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556,556 diff --git a/data/room/46.room b/data/room/46.room index b772fa4..167e029 100644 --- a/data/room/46.room +++ b/data/room/46.room @@ -1,33 +1,53 @@ -name=no 46 -bgColor=black -border=red +name=FEEL THE HEAT +bgColor=bright_black +border=bright_yellow tileMapFile=46.tmx tileSetFile=standard.png roomUp=0 roomDown=0 roomLeft=45.room roomRight=0 +itemColor1=red +itemColor2=magenta +autoSurface=left + [enemy] -tileSetFile=diskette.png -animation=diskette.ani +tileSetFile=dimallas_v.png +animation=dimallas_v.ani width=16 height=16 -x=2 +x=11 +y=7 +vx=0 +vy=0.5 +x1=11 +y1=1 +x2=11 +y2=12 +color=green +[/enemy] + +[enemy] +tileSetFile=dimallas_v.png +animation=dimallas_v.ani +width=16 +height=16 +x=18 y=2 vx=0 -vy=0 -x1=2 -y1=2 -x2=2 -y2=2 -color=magenta +vy=0.8 +x1=18 +y1=1 +x2=18 +y2=12 +color=green [/enemy] [item] tileSetFile=items.png -tile=1 -x=1 -y=1 +tile=28 +x=28 +y=6 counter=1 [/item] \ No newline at end of file diff --git a/data/room/46.tmx b/data/room/46.tmx index 69e8506..17cc130 100644 --- a/data/room/46.tmx +++ b/data/room/46.tmx @@ -3,22 +3,22 @@ -26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26, -0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,26, -26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26 +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,30, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,30, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,30, +395,395,399,0,0,0,0,473,473,473,0,0,0,0,473,473,473,0,0,0,0,473,473,473,473,0,0,395,395,399,30,30, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,30, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,30, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,135, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,135, +0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,135, +481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,135 diff --git a/data/tilesets/standard.png b/data/tilesets/standard.png index 3a0627a..b2add6b 100644 Binary files a/data/tilesets/standard.png and b/data/tilesets/standard.png differ diff --git a/data/tilesets/standard_zxarne.png b/data/tilesets/standard_zxarne.png index c37d65d..b3f573b 100644 Binary files a/data/tilesets/standard_zxarne.png and b/data/tilesets/standard_zxarne.png differ diff --git a/source/credits.cpp b/source/credits.cpp index 5504f52..c0dee3d 100644 --- a/source/credits.cpp +++ b/source/credits.cpp @@ -138,17 +138,6 @@ void Credits::fillTexture() texts.push_back({"", stringToColor(options->palette, "white")}); texts.push_back({"", stringToColor(options->palette, "white")}); - //texts.push_back({"KEYS:", stringToColor(options->palette, "yellow")}); - //texts.push_back({"", stringToColor(options->palette, "white")}); - //texts.push_back({"USE 'CURSORS' TO MOVE AND JUMP", stringToColor(options->palette, "white")}); - //texts.push_back({"'F1-F4' TO CHANGE WINDOWS SIZE", stringToColor(options->palette, "white")}); - //texts.push_back({"'F' TO SWITCH TO FULLSCREEN", stringToColor(options->palette, "white")}); - //texts.push_back({"'B' TO SWITCH THE BORDER SCREEN", stringToColor(options->palette, "white")}); - //texts.push_back({"'M' TO TURN ON/OFF THE MUSIC", stringToColor(options->palette, "white")}); - //texts.push_back({"'ESC' TO LEAVE THE GAME", stringToColor(options->palette, "white")}); - //texts.push_back({"", stringToColor(options->palette, "white")}); - //texts.push_back({"", stringToColor(options->palette, "white")}); - texts.push_back({"KEYS:", stringToColor(options->palette, "yellow")}); texts.push_back({"", stringToColor(options->palette, "white")}); texts.push_back({"CURSORS: MOVE AND JUMP", stringToColor(options->palette, "white")}); diff --git a/source/director.cpp b/source/director.cpp index 5ad2007..7d106e5 100644 --- a/source/director.cpp +++ b/source/director.cpp @@ -265,6 +265,7 @@ void Director::loadResources(section_t section) textureList.push_back("arounders_machine.png"); textureList.push_back("bat.png"); textureList.push_back("batman_bell.png"); + textureList.push_back("batman_fire.png"); textureList.push_back("batman.png"); textureList.push_back("bell.png"); textureList.push_back("bin.png"); @@ -326,6 +327,7 @@ void Director::loadResources(section_t section) animationList.push_back("arounders_machine.ani"); animationList.push_back("bat.ani"); animationList.push_back("batman_bell.ani"); + animationList.push_back("batman_fire.ani"); animationList.push_back("batman.ani"); animationList.push_back("bell.ani"); animationList.push_back("bin.ani"); @@ -837,10 +839,10 @@ bool Director::setFileList() asset->add("/data/tilesets/standard_zxarne.png", t_bitmap); // Enemigos - asset->add("/data/enemies/abad.ani", t_data); - asset->add("/data/enemies/abad.png", t_bitmap); asset->add("/data/enemies/abad_bell.ani", t_data); asset->add("/data/enemies/abad_bell.png", t_bitmap); + asset->add("/data/enemies/abad.ani", t_data); + asset->add("/data/enemies/abad.png", t_bitmap); asset->add("/data/enemies/amstrad_character_set.ani", t_data); asset->add("/data/enemies/amstrad_character_set.png", t_bitmap); asset->add("/data/enemies/arounder_fly.ani", t_data); @@ -857,6 +859,8 @@ bool Director::setFileList() asset->add("/data/enemies/bat.png", t_bitmap); asset->add("/data/enemies/batman_bell.ani", t_data); asset->add("/data/enemies/batman_bell.png", t_bitmap); + asset->add("/data/enemies/batman_fire.ani", t_data); + asset->add("/data/enemies/batman_fire.png", t_bitmap); asset->add("/data/enemies/batman.ani", t_data); asset->add("/data/enemies/batman.png", t_bitmap); asset->add("/data/enemies/bell.ani", t_data); diff --git a/source/game.cpp b/source/game.cpp index b836d4b..36c8790 100644 --- a/source/game.cpp +++ b/source/game.cpp @@ -20,9 +20,9 @@ Game::Game(SDL_Renderer *renderer, Screen *screen, Resource *resource, Asset *as // **** // this->debug->setEnabled(true); - currentRoom = "25.room"; - const int x = 30; - const int y = 7; + currentRoom = "46.room"; + const int x = 0; + const int y = 6; spawnPoint = {x * 8, y * 8, 0, 0, 0, s_standing, SDL_FLIP_HORIZONTAL}; // **** diff --git a/source/player.cpp b/source/player.cpp index 3dd2bb3..22f64e2 100644 --- a/source/player.cpp +++ b/source/player.cpp @@ -375,7 +375,7 @@ void Player::move() } // Si está bajando la rampa, recoloca al jugador - if (isOnDownSlope()) + if (isOnDownSlope() && state != s_jumping) { y += 1; } @@ -418,7 +418,7 @@ void Player::move() } // Si está bajando la rampa, recoloca al jugador - if (isOnDownSlope()) + if (isOnDownSlope() && state != s_jumping) { y += 1; } diff --git a/source/room.cpp b/source/room.cpp index 04ae5f0..24ec4b6 100644 --- a/source/room.cpp +++ b/source/room.cpp @@ -816,13 +816,12 @@ void Room::reLoadPalette() screen->setBorderColor(stringToColor(options->palette, borderColor)); // Cambia la textura - if (options->palette == p_zxspectrum) + texture = (options->palette == p_zxspectrum) ? textureA : textureB; + + // Pone la nueva textura a los tiles animados + for (auto tile : aTile) { - texture = textureA; - } - else - { - texture = textureB; + tile.sprite->setTexture(texture); } // Recarga las texturas