From 34d83139fd79aec0839404eb11a44861bb1281e5 Mon Sep 17 00:00:00 2001 From: jalowe13 Date: Thu, 30 Mar 2023 15:40:43 -0400 Subject: [PATCH] 0.18 - Added asset swapping Asset swaping for key presses --- TheOneSDL/Application.cpp | 6 +-- TheOneSDL/Physics.cpp | 2 +- TheOneSDL/Player.cpp | 43 ++++++++++++++++-- TheOneSDL/Player.h | 10 +++- TheOneSDL/TheOne.exe | Bin 143420 -> 144253 bytes .../textures/VGB/idle/vgb_idle-Sheet.png | Bin 0 -> 856 bytes .../VGB/idle/{vgb_idle.png => vgb_idle2.png} | Bin TheOneSDL/vgb_idle2.png | Bin 0 -> 306 bytes 8 files changed, 50 insertions(+), 11 deletions(-) create mode 100644 TheOneSDL/textures/VGB/idle/vgb_idle-Sheet.png rename TheOneSDL/textures/VGB/idle/{vgb_idle.png => vgb_idle2.png} (100%) create mode 100644 TheOneSDL/vgb_idle2.png diff --git a/TheOneSDL/Application.cpp b/TheOneSDL/Application.cpp index 34f1643..7c62671 100644 --- a/TheOneSDL/Application.cpp +++ b/TheOneSDL/Application.cpp @@ -55,8 +55,8 @@ bool Application::init() SDL_Texture* temp_tex = NULL; //Create Player - temp_tex = IMG_LoadTexture(renderer, "VGB_Idle.png"); - player = new Player(temp_tex); + // renderer is passed in to load the texture + player = new Player(renderer); if (!player) { @@ -176,7 +176,7 @@ void Application::update() player->updateTexture(phys_eng, terrain_gen); //player->handleMovement(phys_eng, terrain_gen); terrain_gen->fillScreen(); - // system("pause"); // Frame by frame + //system("pause"); // Frame by frame } void Application::render() diff --git a/TheOneSDL/Physics.cpp b/TheOneSDL/Physics.cpp index 698b3fb..0ff0f57 100644 --- a/TheOneSDL/Physics.cpp +++ b/TheOneSDL/Physics.cpp @@ -22,7 +22,7 @@ void Physics::resetTime(){ } float Physics::getTime(){ - std::cout << "Time:" << time << std::endl; + // std::cout << "Time:" << time << std::endl; return time; } diff --git a/TheOneSDL/Player.cpp b/TheOneSDL/Player.cpp index 6014a54..96d5c53 100644 --- a/TheOneSDL/Player.cpp +++ b/TheOneSDL/Player.cpp @@ -1,7 +1,7 @@ #include "Player.h" #include -Player::Player(SDL_Texture* default_texture) +Player::Player(SDL_Renderer* renderer) { playerR.h = 32; playerR.w = 32; @@ -9,13 +9,36 @@ Player::Player(SDL_Texture* default_texture) tilemap_y = 16; playerR.x = tilemap_x*32; playerR.y = tilemap_y*32; - textureWidth = 1920; - textureHeight = 32; + // Defaults zero no texture loaded yet + textureWidth = 0; + textureHeight = 0; frameWidth = textureWidth / 60; frameHeight = textureHeight; frame_time = 0; + + // Check default file existance and load default texture + std::string idle_file = "textures\\VGB\\idle\\vgb_idle-Sheet.png"; + const char* filename = idle_file.c_str(); + SDL_Texture* default_texture = IMG_LoadTexture(renderer, filename); + SDL_QueryTexture(default_texture, NULL, NULL, &textureWidth, &textureHeight); + + // Load check + if ( textureWidth == 0 || textureHeight == 0) + { + std::cout << "Error Player.cpp: Texture not loaded " << filename << "with dims " << + textureWidth << " and " << textureHeight << std::endl; + exit(-1); + } + + texture = default_texture; // The current texture is the default texture + + // Test 2 + filename = idle_file2.c_str(); + texture2 = IMG_LoadTexture(renderer, filename); + SDL_QueryTexture(default_texture, NULL, NULL, &textureWidth, &textureHeight); + editMS(2); - setTexture(default_texture); + setTexture(texture); std::cout << "Player Created!\n"; } @@ -57,7 +80,7 @@ SDL_Texture* Player::getTexture() void Player::updateTexture(Physics* phys_eng, Terrain* terrain_eng) { - //std::cout << "[Type,F,TEX_X,X,Y]" << texture_name << "," << frame_time << "," << getTexX() + std::cout << "[Type,F,TEX_X,X,Y]" << idle_file << "," << frame_time << "," << getTexX() << std::endl; // << "," << getX() << "," << getY() << std::endl; xTexEdit(getTexX() + frameWidth); @@ -74,6 +97,8 @@ void Player::updateTexture(Physics* phys_eng, Terrain* terrain_eng) handleMovement(phys_eng,terrain_eng, 1); frame_time++; } + + } int Player::getY() @@ -109,11 +134,13 @@ void Player::yPathEdit(MovementDirection path) void Player::xEdit(int x) { playerR.x = x; + setTexture(texture2); } void Player::yEdit(int y) { playerR.y = y; + } void Player::wEdit(int w) @@ -129,6 +156,7 @@ void Player::hEdit(int h) void Player::xTexEdit(int x) { textureR.x = x; + } void Player::yTexEdit(int y) @@ -194,6 +222,7 @@ void Player::handleMovement(Physics* phys_eng, Terrain* terrain_eng, bool animat { case Up: { + setTexture(texture2); yEdit(getY() - getSpeed()); terrain_eng->background_tilemap[tilemap_y][tilemap_x] = '~'; tilemap_x = round(getX()/32); @@ -201,6 +230,10 @@ 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 2e04df7..00ea8a5 100644 --- a/TheOneSDL/Player.h +++ b/TheOneSDL/Player.h @@ -19,7 +19,7 @@ enum MovementDirection { class Player { public: - Player(SDL_Texture* default_texture); + Player(SDL_Renderer* default_texture); ~Player(); void updateTexture(Physics* phys_eng, Terrain* terrain_eng); @@ -80,7 +80,13 @@ class Player int textureWidth, textureHeight, frameWidth, frameHeight; - std::string texture_name = "VGB_Idle"; + //std::string texture_name = "VGB_Idle"; + std::string idle_file = "textures\\VGB\\idle\\vgb_idle-Sheet.png"; + std::string idle_file2 = "VGB_Idle.png"; + + //Textures stored + SDL_Texture* texture = NULL; + SDL_Texture* texture2 = NULL; int frame_time; diff --git a/TheOneSDL/TheOne.exe b/TheOneSDL/TheOne.exe index 9f9079dcdabf1311bf7e0d3aa3e0e137e2fdadad..01b547674a0892e3d5d2253851e561db246b5059 100644 GIT binary patch delta 28823 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 F{67W(eQE#z delta 27637 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 S8+TvE{ZqFe>Mwub{eJ-G9F_C{ diff --git a/TheOneSDL/textures/VGB/idle/vgb_idle-Sheet.png b/TheOneSDL/textures/VGB/idle/vgb_idle-Sheet.png new file mode 100644 index 0000000000000000000000000000000000000000..cda42d08ee3b2bd732b92fde2665e46100b4c19a GIT binary patch literal 856 zcmeAS@N?(olHy`uVBq!ia0y~yU~d4j6*$;{49TX((mkZvfH>+5LxK z>b70{g#vbd3zub>zJn1(@ab2OzQTJ9K<_GeKR=!MZrYOO^jc)_SLnB4_gow1tb@kL z_F=HazugzpVS#wFp+|y&8Nv)X#2^7-Ef8Wm0AxLRwcfZdX#V~s>ybfxihUYG%vH7* zuaUs>oB6ZX<gCaY)kf@&B*>4rG2X%M4Z5eXy=$(jZ+RFx3DQXbU{9-!4RU z2ax?g`oh`V%U|zLygF|sij@7r`8(I4h^*iLU+qe8xWl{{I#t3u3T^cg$xtHTb^w3QCGV=gb795ZvHFXbt0* WCo68xWa$0_QswFD=d#Wzp$Py(P`Ez; literal 0 HcmV?d00001 diff --git a/TheOneSDL/textures/VGB/idle/vgb_idle.png b/TheOneSDL/textures/VGB/idle/vgb_idle2.png similarity index 100% rename from TheOneSDL/textures/VGB/idle/vgb_idle.png rename to TheOneSDL/textures/VGB/idle/vgb_idle2.png diff --git a/TheOneSDL/vgb_idle2.png b/TheOneSDL/vgb_idle2.png new file mode 100644 index 0000000000000000000000000000000000000000..2e0aeaf33a8a04c8f1ed630e13f823d8974fd137 GIT binary patch literal 306 zcmV-20nPr2P)Px#>`6pHRA_ zk`Nrnah(6o6&~1HUBJ&GK zu*o%;F{YaSH6xHy;09<1pbcWc+8Q&}07C!_sH