From 0abe1d1731ca4eddba12a5bdbf612323d825d8fb Mon Sep 17 00:00:00 2001 From: jalowe13 Date: Thu, 30 Mar 2023 16:54:29 -0400 Subject: [PATCH] 0.18.1 run left running left and animation canceling added --- TheOneSDL/Application.h | 2 +- TheOneSDL/Player.cpp | 30 +++++++++++++----- TheOneSDL/Player.h | 4 +++ TheOneSDL/TheOne.exe | Bin 144253 -> 144575 bytes TheOneSDL/textures/VGB/run/vgb_run.aseprite | Bin 1537 -> 8361 bytes .../textures/VGB/run/vgb_run_left-Sheet.png | Bin 0 -> 1360 bytes 6 files changed, 27 insertions(+), 9 deletions(-) create mode 100644 TheOneSDL/textures/VGB/run/vgb_run_left-Sheet.png diff --git a/TheOneSDL/Application.h b/TheOneSDL/Application.h index f69056e..2869f08 100644 --- a/TheOneSDL/Application.h +++ b/TheOneSDL/Application.h @@ -86,7 +86,7 @@ class Application //Constants for reference - const char* windowTitle = "C23 Engine: The One SDL v.0.17 FPS:"; + const char* windowTitle = "C23 Engine: The One SDL v.0.18.1 FPS:"; int textureWidth = 1920; int textureHeight = 32; diff --git a/TheOneSDL/Player.cpp b/TheOneSDL/Player.cpp index 96d5c53..fb67510 100644 --- a/TheOneSDL/Player.cpp +++ b/TheOneSDL/Player.cpp @@ -35,7 +35,12 @@ Player::Player(SDL_Renderer* renderer) // Test 2 filename = idle_file2.c_str(); texture2 = IMG_LoadTexture(renderer, filename); - SDL_QueryTexture(default_texture, NULL, NULL, &textureWidth, &textureHeight); + SDL_QueryTexture(texture2, NULL, NULL, &textureWidth, &textureHeight); + + // Load Run Left + filename = run_left_file.c_str(); + run_left = IMG_LoadTexture(renderer, filename); + SDL_QueryTexture(run_left, NULL, NULL, &textureWidth, &textureHeight); editMS(2); setTexture(texture); @@ -80,7 +85,7 @@ SDL_Texture* Player::getTexture() void Player::updateTexture(Physics* phys_eng, Terrain* terrain_eng) { - std::cout << "[Type,F,TEX_X,X,Y]" << idle_file << "," << frame_time << "," << getTexX() << std::endl; + std::cout << "[Frame]" << frame_time << std::endl; // << "," << getX() << "," << getY() << std::endl; xTexEdit(getTexX() + frameWidth); @@ -134,7 +139,6 @@ void Player::yPathEdit(MovementDirection path) void Player::xEdit(int x) { playerR.x = x; - setTexture(texture2); } void Player::yEdit(int y) @@ -201,6 +205,12 @@ void Player::handleMovement(Physics* phys_eng, Terrain* terrain_eng, bool animat { case Left: { + std::cout << "Left\n"; + if (!inAnimation) + { + setTexture(run_left); + inAnimation = true; + } xEdit(getX() - getSpeed()); terrain_eng->background_tilemap[tilemap_y][tilemap_x] = '~'; tilemap_x = round(getX()/32); @@ -210,6 +220,8 @@ void Player::handleMovement(Physics* phys_eng, Terrain* terrain_eng, bool animat } case Right: { + std::cout << "Right\n"; + setTexture(texture); xEdit(getX() + getSpeed()); terrain_eng->background_tilemap[tilemap_y][tilemap_x] = '~'; tilemap_x = round(getX()/32); @@ -217,12 +229,17 @@ void Player::handleMovement(Physics* phys_eng, Terrain* terrain_eng, bool animat terrain_eng->background_tilemap[tilemap_y][tilemap_x] = '1'; break; } + default: + { + setTexture(texture); + inAnimation = false; + } } switch (yPath()) { case Up: { - setTexture(texture2); + std::cout << "Up\n"; yEdit(getY() - getSpeed()); terrain_eng->background_tilemap[tilemap_y][tilemap_x] = '~'; tilemap_x = round(getX()/32); @@ -230,10 +247,7 @@ void Player::handleMovement(Physics* phys_eng, Terrain* terrain_eng, bool animat terrain_eng->background_tilemap[tilemap_y][tilemap_x] = '1'; break; } - case None: - { - setTexture(texture); - } + // Case Down will be needed in future not currently // If Case down is needed implement collision check // case Down: diff --git a/TheOneSDL/Player.h b/TheOneSDL/Player.h index 00ea8a5..254eaec 100644 --- a/TheOneSDL/Player.h +++ b/TheOneSDL/Player.h @@ -84,11 +84,15 @@ class Player std::string idle_file = "textures\\VGB\\idle\\vgb_idle-Sheet.png"; std::string idle_file2 = "VGB_Idle.png"; + std::string run_left_file = "textures\\VGB\\run\\vgb_run_left-Sheet.png"; + //Textures stored SDL_Texture* texture = NULL; SDL_Texture* texture2 = NULL; + SDL_Texture* run_left = NULL; int frame_time; + bool inAnimation = false; // toggle to lock animation canceling }; diff --git a/TheOneSDL/TheOne.exe b/TheOneSDL/TheOne.exe index 01b547674a0892e3d5d2253851e561db246b5059..43484abe6d6fba053b292a4b2d6859441a78905c 100644 GIT binary patch delta 27160 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 r6~Xop0FI