From 2a821cb70aad23dd45f007ca1bf5f1310461a61c Mon Sep 17 00:00:00 2001 From: sigonasr2 Date: Mon, 19 Aug 2024 01:56:12 -0500 Subject: [PATCH] Fix collision bugs, added sky covers. Implemented basic hamster jet animations. --- assets/HamsterGame.tiled-session | 8 +-- assets/Terrain.tsx | 7 ++- assets/TestLevel.tmx | 2 +- assets/clouds.png | Bin 0 -> 131643 bytes assets/dot.png | Bin 0 -> 546 bytes assets/hamster_jet.png | Bin 2328 -> 2369 bytes border.png | Bin 21098 -> 0 bytes src/Hamster.cpp | 66 ++++++++++++++--------- src/Hamster.h | 6 +++ src/HamsterGame.cpp | 44 ++++++++++++--- src/HamsterGame.h | 6 +++ src/HamsterJet.cpp | 89 +++++++++++++++++++++++++++++++ src/HamsterJet.h | 68 +++++++++++++++++++++++ src/SpecialRenderable.cpp | 18 ++++++- src/SpecialRenderable.h | 3 ++ src/TSXParser.h | 1 + src/util.cpp | 4 ++ src/util.h | 1 + 18 files changed, 285 insertions(+), 38 deletions(-) create mode 100644 assets/clouds.png create mode 100644 assets/dot.png delete mode 100644 border.png create mode 100644 src/HamsterJet.cpp create mode 100644 src/HamsterJet.h diff --git a/assets/HamsterGame.tiled-session b/assets/HamsterGame.tiled-session index b8ab79a..4a2f122 100644 --- a/assets/HamsterGame.tiled-session +++ b/assets/HamsterGame.tiled-session @@ -8,11 +8,11 @@ ], "fileStates": { "TestLevel.tmx": { - "scale": 3, - "selectedLayer": 0, + "scale": 4, + "selectedLayer": 2, "viewCenter": { - "x": 761.1666666666666, - "y": 278.8333333333333 + "x": 222.625, + "y": 144.625 } }, "TreeTemplates.tmx": { diff --git a/assets/Terrain.tsx b/assets/Terrain.tsx index ae09db0..d222210 100644 --- a/assets/Terrain.tsx +++ b/assets/Terrain.tsx @@ -597,7 +597,12 @@ - + + + + + + diff --git a/assets/TestLevel.tmx b/assets/TestLevel.tmx index b0f9c56..8e9c29b 100644 --- a/assets/TestLevel.tmx +++ b/assets/TestLevel.tmx @@ -613,7 +613,7 @@ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 - + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, diff --git a/assets/clouds.png b/assets/clouds.png new file mode 100644 index 0000000000000000000000000000000000000000..948eaf2e3b2cebcff0684031f0a194e39cf39fd5 GIT binary patch literal 131643 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

n!9% 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 Xf-(5{*Dt2300000NkvXXu0mjfQ1yuS diff --git a/border.png b/border.png deleted file mode 100644 index 62c57949e62de724b45239ad27b2f19434bcc771..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21098 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.DEFAULT_DROWN_TIME&&h.state!=DROWNING&&h.state!=WAIT){ - h.state=DROWNING; - } - if(h.burnTimer>=h.DEFAULT_BURN_TIME&&h.state!=BURNING&&h.state!=WAIT){ - h.state=BURNING; + if(h.state!=FLYING){ + if((h.GetTerrainStandingOn()==Terrain::OCEAN||!h.HasPowerup(Powerup::SWAMP)&&h.GetTerrainStandingOn()==Terrain::SWAMP)&&h.state!=DROWNING&&h.state!=WAIT)h.drownTimer+=fElapsedTime; + else if((!h.HasPowerup(Powerup::LAVA)&&h.GetTerrainStandingOn()==Terrain::LAVA)&&h.state!=BURNING&&h.state!=WAIT)h.burnTimer+=fElapsedTime; + else if(h.lastSafeLocationTimer<=0.f&&h.state==NORMAL&&!h.StandingOnLethalTerrain()){ + h.lastSafeLocationTimer=0.5f; + h.drownTimer=0.f; + h.burnTimer=0.f; + h.lastSafeLocation=h.GetPos(); + } + if(h.drownTimer>=h.DEFAULT_DROWN_TIME&&h.state!=DROWNING&&h.state!=WAIT){ + h.state=DROWNING; + } + if(h.burnTimer>=h.DEFAULT_BURN_TIME&&h.state!=BURNING&&h.state!=WAIT){ + h.state=BURNING; + } } h.TurnTowardsTargetDirection(); h.MoveHamster(); @@ -143,6 +148,7 @@ void Hamster::DrawHamsters(TransformedView&tv){ const Animate2D::Frame&img{h.animations.GetState(h.internalAnimState)==HamsterGame::DEFAULT?anim.GetFrame(h.distanceTravelled/100.f):h.GetCurrentAnimation()}; const Animate2D::Frame&wheelTopImg{wheelTopAnim.GetFrame(h.distanceTravelled/80.f)}; const Animate2D::Frame&wheelBottomImg{wheelBottomAnim.GetFrame(h.distanceTravelled/80.f)}; + if(h.state==FLYING)h.hamsterJet.value().Draw(); HamsterGame::Game().SetZ(h.z); if(h.HasPowerup(Powerup::WHEEL))tv.DrawPartialRotatedDecal(h.pos,wheelBottomImg.GetSourceImage()->Decal(),h.rot,wheelBottomImg.GetSourceRect().size/2,wheelBottomImg.GetSourceRect().pos,wheelBottomImg.GetSourceRect().size,vf2d{1.f,1.f}*h.imgScale,PixelLerp(h.shrinkEffectColor,WHITE,h.imgScale)); tv.DrawPartialRotatedDecal(h.pos,img.GetSourceImage()->Decal(),h.rot,img.GetSourceRect().size/2,img.GetSourceRect().pos,img.GetSourceRect().size,vf2d{1.f,1.f}*h.imgScale,PixelLerp(h.shrinkEffectColor,WHITE,h.imgScale)); @@ -165,6 +171,7 @@ const vf2d&Hamster::GetPos()const{ } void Hamster::HandlePlayerControls(){ + lastTappedSpace+=HamsterGame::Game().GetElapsedTime(); vf2d aimingDir{}; if(HamsterGame::Game().GetKey(W).bHeld){ aimingDir+=vf2d{0,-1}; @@ -178,12 +185,6 @@ void Hamster::HandlePlayerControls(){ if(HamsterGame::Game().GetKey(A).bHeld){ aimingDir+=vf2d{-1,0}; } - if(HamsterGame::Game().GetKey(PGUP).bHeld){ - z+=0.25f*HamsterGame::Game().GetElapsedTime(); - } - if(HamsterGame::Game().GetKey(PGDN).bHeld){ - z=std::max(0.f,z-0.25f*HamsterGame::Game().GetElapsedTime()); - } if(aimingDir!=vf2d{}){ targetRot=aimingDir.norm().polar().y; const vf2d currentVel{vel}; @@ -191,6 +192,13 @@ void Hamster::HandlePlayerControls(){ vel=vf2d{std::min(GetMaxSpeed(),vel.polar().x),vel.polar().y}.cart(); frictionEnabled=false; } + if(HamsterGame::Game().GetKey(SPACE).bPressed){ + if(lastTappedSpace<=0.6f&&HasPowerup(Powerup::JET)){ + state=FLYING; + hamsterJet.emplace(*this); + } + lastTappedSpace=0.f; + } } void Hamster::TurnTowardsTargetDirection(){ @@ -213,7 +221,7 @@ void Hamster::MoveHamster(){ void Hamster::HandleCollision(){ for(Hamster&h:HAMSTER_LIST){ if(this==&h)continue; - if(geom2d::overlaps(geom2d::circle(GetPos(),GetRadius()),geom2d::circle(h.GetPos(),h.GetRadius()))){ + if(abs(z-h.z)<=0.1f&&geom2d::overlaps(geom2d::circle(GetPos(),GetRadius()),geom2d::circle(h.GetPos(),h.GetRadius()))){ if(geom2d::line(GetPos(),h.GetPos()).length()==0.f){ //Push these two in random directions, they are on top of each other! float randDir{util::random(2*geom2d::pi)}; vf2d collisionResolve1{GetPos()+vf2d{GetRadius(),randDir}.cart()}; @@ -340,9 +348,19 @@ const float&Hamster::GetZ()const{ } void Hamster::SetPos(const vf2d pos){ - if(state!=FLYING){ - if(!HamsterGame::Game().IsTerrainSolid(vf2d{this->pos.x,pos.y}))this->pos=vf2d{this->pos.x,pos.y}; - if(!HamsterGame::Game().IsTerrainSolid(vf2d{pos.x,this->pos.y}))this->pos=vf2d{pos.x,this->pos.y}; - if(!HamsterGame::Game().IsTerrainSolid(vf2d{this->pos.x,pos.y}))this->pos=vf2d{this->pos.x,pos.y}; + bool movedY{false}; + if(state==FLYING||!HamsterGame::Game().IsTerrainSolid(vf2d{this->pos.x,pos.y})){ + this->pos=vf2d{this->pos.x,pos.y}; + movedY=true; } + if(state==FLYING||!HamsterGame::Game().IsTerrainSolid(vf2d{pos.x,this->pos.y}))this->pos=vf2d{pos.x,this->pos.y}; + if (!movedY&&(state==FLYING||!HamsterGame::Game().IsTerrainSolid(vf2d{this->pos.x,pos.y})))this->pos=vf2d{this->pos.x,pos.y}; +} + +void Hamster::SetZ(const float z){ + this->z=z; +} + +void Hamster::OnUserDestroy(){ + HAMSTER_LIST.clear(); } \ No newline at end of file diff --git a/src/Hamster.h b/src/Hamster.h index e23dc18..198c207 100644 --- a/src/Hamster.h +++ b/src/Hamster.h @@ -42,6 +42,8 @@ All rights reserved. #include "olcUTIL_Animate2D.h" #include "Terrain.h" #include +#include "HamsterJet.h" +#include "HamsterGame.h" class Hamster{ enum PlayerControlled{ @@ -97,6 +99,8 @@ class Hamster{ static std::optionalplayerHamster; HamsterState state{NORMAL}; std::unordered_setpowerups; + std::optionalhamsterJet; + float lastTappedSpace{0.f}; public: Hamster(const vf2d spawnPos,const std::string_view img,const PlayerControlled IsPlayerControlled=NPC); static const Hamster&GetPlayer(); @@ -127,4 +131,6 @@ public: const float GetDrownRatio()const; const float GetBurnRatio()const; void SetPos(const vf2d pos); + void SetZ(const float z); + static void OnUserDestroy(); }; \ No newline at end of file diff --git a/src/HamsterGame.cpp b/src/HamsterGame.cpp index 258de6f..bd6713b 100644 --- a/src/HamsterGame.cpp +++ b/src/HamsterGame.cpp @@ -34,7 +34,7 @@ bool HamsterGame::OnUserCreate(){ void HamsterGame::_LoadImage(const std::string_view img){ GFX.insert({ASSETS_DIR+std::string(img),Renderable{}}); - rcode result{GFX[ASSETS_DIR+std::string(img)].Load(ASSETS_DIR+std::string(img))}; + rcode result{GFX[ASSETS_DIR+std::string(img)].Load(ASSETS_DIR+std::string(img),nullptr,false,false)}; if(result!=OK)throw std::runtime_error{std::format("Failed to Load Image {}. OLC Rcode: {}",img,int(result))}; } @@ -45,6 +45,8 @@ void HamsterGame::LoadGraphics(){ _LoadImage("drownmeter.png"); _LoadImage("burnmeter.png"); _LoadImage("hamster_jet.png"); + _LoadImage("dot.png"); + _LoadImage("clouds.png"); UpdateMatrixTexture(); } @@ -76,7 +78,7 @@ void HamsterGame::LoadAnimations(){ for(vf2d&sourcePos:std::vector{{192+16*0,800},{192+16*1,800},{192+16*2,800},{192+16*3,800},{192+16*4,800},{192+16*5,800},{192+16*6,800},{192+16*7,800},{192+16*8,800}}){ lavaAnimFrames.AddFrame(Animate2D::Frame{&GetGFX("gametiles.png"),{sourcePos,{16,16}}}); } - LoadAnimation(JET_LIGHTS,"hamster_jet.png",{{0,48},{48,48}},0.3f); + LoadAnimation(JET_LIGHTS,"hamster_jet.png",{{0,48},{48,48}},0.3f,Animate2D::Style::Repeat,{48,48}); animatedWaterTile.Create(16,16,false,false); @@ -87,6 +89,10 @@ void HamsterGame::LoadLevel(const std::string_view mapName){ const vf2d levelSpawnLoc{50,50}; //TEMPORARY currentMap=TMXParser{ASSETS_DIR+std::string(mapName)}; + cloudSpd.x=util::random_range(-12.f,12.f); + cloudSpd.y=util::random_range(-0.3f,0.3f); + cloudOffset.x=util::random(); + cloudOffset.y=util::random(); Hamster::LoadHamsters(levelSpawnLoc); camera.SetTarget(Hamster::GetPlayer().GetPos()); @@ -126,6 +132,7 @@ void HamsterGame::LoadLevel(const std::string_view mapName){ void HamsterGame::UpdateGame(const float fElapsedTime){ UpdateMatrixTexture(); UpdateWaterTexture(); + cloudOffset+=cloudSpd*fElapsedTime; camera.SetViewSize(tv.GetWorldVisibleArea()); camera.Update(fElapsedTime); tv.SetWorldOffset(tv.ScaleToWorld(-SCREEN_FRAME.pos)+camera.GetViewPosition()); @@ -135,10 +142,19 @@ void HamsterGame::UpdateGame(const float fElapsedTime){ } void HamsterGame::DrawGame(){ - tv.DrawPartialDecal({-3200,-3200},currentMap.value().GetData().GetMapData().MapSize*16+vf2d{6400,6400},animatedWaterTile.Decal(),{0,0},currentMap.value().GetData().GetMapData().MapSize*16+vf2d{3200,3200}); + tv.DrawPartialDecal({-3200,-3200},currentMap.value().GetData().GetMapData().MapSize*16+vf2d{6400,6400},animatedWaterTile.Decal(),{0,0},currentMap.value().GetData().GetMapData().MapSize*16+vf2d{6400,6400}); DrawLevelTiles(); Powerup::DrawPowerups(tv); Hamster::DrawHamsters(tv); + SetZ(3.f); + tv.DrawPartialDecal({-3200,-3200},currentMap.value().GetData().GetMapData().MapSize*16+vf2d{6400,6400},GetGFX("dot.png").Decal(),{0,0},currentMap.value().GetData().GetMapData().MapSize*16+vf2d{6400,6400},{226,228,255,32}); + SetZ(7.f); + tv.DrawPartialDecal({-3200,-3200},currentMap.value().GetData().GetMapData().MapSize*16+vf2d{6400,6400},GetGFX("dot.png").Decal(),{0,0},currentMap.value().GetData().GetMapData().MapSize*16+vf2d{6400,6400},{178,242,255,64}); + SetZ(2.f); + tv.DrawPartialDecal({-3200,-3200},currentMap.value().GetData().GetMapData().MapSize*16+vf2d{6400,6400},GetGFX("clouds.png").Decal(),cloudOffset,currentMap.value().GetData().GetMapData().MapSize*16/2.f,{255,255,255,64}); + SetZ(6.f); + tv.DrawPartialDecal({-3200,-3200},currentMap.value().GetData().GetMapData().MapSize*16+vf2d{6400,6400},GetGFX("clouds.png").Decal(),cloudOffset*2,currentMap.value().GetData().GetMapData().MapSize*16/2.f,{255,255,255,72}); + SetZ(0.f); border.Draw(); #pragma region Powerup Display @@ -186,7 +202,9 @@ const Terrain::TerrainType HamsterGame::GetTerrainTypeAtPos(const vf2d pos)const } const bool HamsterGame::IsTerrainSolid(const vf2d pos)const{ - if(pos.x<=0.f||pos.y<=0.f||pos.x>=currentMap.value().GetData().GetMapData().width*16||pos.y>=currentMap.value().GetData().GetMapData().height*16)return true; + if(pos.x<=0.f||pos.y<=0.f||pos.x>=currentMap.value().GetData().GetMapData().width*16||pos.y>=currentMap.value().GetData().GetMapData().height*16){ + return true; + } bool tileIsBlank{true}; for(const LayerTag&layer:currentMap.value().GetData().GetLayers()){ int tileX{int(floor(pos.x)/16)}; @@ -223,7 +241,7 @@ void HamsterGame::DrawLevelTiles(){ bool HamsterGame::OnUserUpdate(float fElapsedTime){ runTime+=fElapsedTime; - vEye.z+=(Hamster::GetPlayer().GetZ()+1.f-vEye.z)*fLazyFollowRate*fElapsedTime; + vEye.z+=(Hamster::GetPlayer().GetZ()+zoom-vEye.z)*fLazyFollowRate*fElapsedTime; UpdateGame(fElapsedTime); DrawGame(); @@ -240,6 +258,7 @@ const Animate2D::Animation&HamsterGame::GetAnimatio } bool HamsterGame::OnUserDestroy(){ + Hamster::OnUserDestroy(); ANIMATIONS.clear(); GFX.clear(); return true; @@ -258,6 +277,7 @@ void HamsterGame::UpdateMatrixTexture(){ Renderable&texture{(*result.first).second}; if(result.second){ texture.Create(64,64,false,false); + texture.Sprite()->SetSampleMode(Sprite::PERIODIC); } const std::arraymatrixLetters{'0','1','2','3','4','5','6','7','8','9'}; @@ -367,6 +387,17 @@ void HamsterGame::Apply3DTransform(std::vector&decals){ std::copy(foregroundDecals.begin(),foregroundDecals.end(),std::back_inserter(decals)); } +const Animate2D::FrameSequence&HamsterGame::GetAnimation(const std::string_view img,const AnimationState state){ + return GetAnimations(img).GetFrames(state); +} + +void HamsterGame::SetZoom(const float zoom){ + this->zoom=zoom; +} +const float HamsterGame::GetZoom()const{ + return zoom; +} + int main() { HamsterGame game; @@ -374,5 +405,4 @@ int main() game.Start(); return 0; -} - +} \ No newline at end of file diff --git a/src/HamsterGame.h b/src/HamsterGame.h index 0cdffc1..cbca8ff 100644 --- a/src/HamsterGame.h +++ b/src/HamsterGame.h @@ -75,11 +75,14 @@ public: static const Renderable&GetGFX(const std::string_view img); static const Animate2D::Animation&GetAnimations(const std::string_view img); + static const Animate2D::FrameSequence&GetAnimation(const std::string_view img,const AnimationState state); static HamsterGame&Game(); static std::unordered_mapANIMATED_TILE_IDS; const double GetRuntime()const; const Terrain::TerrainType GetTerrainTypeAtPos(const vf2d pos)const; const bool IsTerrainSolid(const vf2d pos)const; + void SetZoom(const float zoom); + const float GetZoom()const; private: void UpdateGame(const float fElapsedTime); void DrawGame(); @@ -105,9 +108,12 @@ private: void UpdateWaterTexture(); GFX3D::PipeLine renderer; virtual void Apply3DTransform(std::vector&decals)override final; + float zoom{1.f}; //Increase to zoom out, decrease to zoom in (this is the overhead distance from the player). GFX3D::vec3d vUp{0,-1,0}; GFX3D::vec3d vEye{0.f,0,1}; GFX3D::vec3d vLookDir{0,0,-1}; const float fLazyFollowRate{4.0f}; + vf2d cloudSpd{}; + vf2d cloudOffset{}; }; \ No newline at end of file diff --git a/src/HamsterJet.cpp b/src/HamsterJet.cpp new file mode 100644 index 0000000..4ba8bd5 --- /dev/null +++ b/src/HamsterJet.cpp @@ -0,0 +1,89 @@ +#pragma region License +/* +License (OLC-3) +~~~~~~~~~~~~~~~ + +Copyright 2024 Joshua Sigona + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +1. Redistributions or derivations of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +2. Redistributions or derivative works in binary form must reproduce the above +copyright notice. This list of conditions and the following disclaimer must be +reproduced in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors may +be used to endorse or promote products derived from this software without specific +prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT +SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +Portions of this software are copyright © 2024 The FreeType +Project (www.freetype.org). Please see LICENSE_FT.txt for more information. +All rights reserved. +*/ +#pragma endregion + +#include "HamsterJet.h" +#include "Hamster.h" +#include "util.h" + +HamsterJet::HamsterJet(Hamster&hamster) + :hamster(hamster),hamsterOriginalPos(hamster.GetPos()),pos({hamster.GetPos().x-128.f,hamster.GetPos().y+32.f}),z(3.f),state(SWOOP_DOWN),timer(3.f){ + jet.Initialize("hamster_jet.png",{78,223,208},{79,81,128}); + lights.Initialize("hamster_jet.png",{245,233,130},{245,233,130}); +} +void HamsterJet::Update(const float fElapsedTime){ + jet.Update(fElapsedTime); + lights.Update(fElapsedTime); + timer=std::max(0.f,timer-fElapsedTime); + switch(state){ + case SWOOP_DOWN:{ + HamsterGame::Game().SetZoom(1.5f); + z=util::lerp(0.f,3.f,std::pow(timer/3.f,2)); + vf2d originalPos{hamster.GetPos().x-128.f,hamster.GetPos().y+32.f}; + pos=hamster.GetPos().lerp(originalPos,std::pow(timer/3.f,4)); + if(timer<=0.4f){ + hamster.SetPos(hamsterOriginalPos-vf2d{0.f,sin(float(geom2d::pi)*timer/0.4f)*8.f}); + } + if(timer<=0.f){ + state=RISE_UP; + hamster.SetPos(pos); + this->originalPos=pos; + targetPos=pos+vf2d{128.f,32}; + targetZ=8.f; + timer=3.f; + } + }break; + case RISE_UP:{ + pos=targetPos.lerp(originalPos,std::sqrt(timer/3.f)); + z=util::lerp(targetZ,0.f,timer/3.f); + hamster.SetPos(pos); + hamster.SetZ(z+0.01f); + if(timer<=0.f){ + state=PLAYER_CONTROL; + HamsterGame::Game().SetZoom(1.f); + } + }break; + } +} +void HamsterJet::Draw(){ + HamsterGame::Game().SetZ(z); + HamsterGame::Game().tv.DrawPartialRotatedDecal(pos,jet.Decal(),0.f,{24,24},{},{48,48}); + const Animate2D::FrameSequence&lightAnim{HamsterGame::Game().GetAnimation("hamster_jet.png",HamsterGame::AnimationState::JET_LIGHTS)}; + const Animate2D::Frame&lightFrame{lightAnim.GetFrame(HamsterGame::Game().GetRuntime())}; + HamsterGame::Game().tv.DrawPartialRotatedDecal(pos,lights.Decal(),0.f,lightFrame.GetSourceRect().size/2.f,lightFrame.GetSourceRect().pos,lightFrame.GetSourceRect().size); + HamsterGame::Game().SetZ(0.f); +} \ No newline at end of file diff --git a/src/HamsterJet.h b/src/HamsterJet.h new file mode 100644 index 0000000..e9c6c02 --- /dev/null +++ b/src/HamsterJet.h @@ -0,0 +1,68 @@ +#pragma region License +/* +License (OLC-3) +~~~~~~~~~~~~~~~ + +Copyright 2024 Joshua Sigona + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + +1. Redistributions or derivations of source code must retain the above copyright +notice, this list of conditions and the following disclaimer. + +2. Redistributions or derivative works in binary form must reproduce the above +copyright notice. This list of conditions and the following disclaimer must be +reproduced in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors may +be used to endorse or promote products derived from this software without specific +prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT +SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED +TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN +CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN +ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +Portions of this software are copyright © 2024 The FreeType +Project (www.freetype.org). Please see LICENSE_FT.txt for more information. +All rights reserved. +*/ +#pragma endregion +#pragma once + +#include "olcUTIL_Geometry2D.h" +#include "SpecialRenderable.h" + +class Hamster; + +class HamsterJet{ + enum State{ + SWOOP_DOWN, + RISE_UP, + PLAYER_CONTROL, + LANDING, + COMPLETE_LANDING, + }; + Hamster&hamster; + vf2d pos; + vf2d hamsterOriginalPos; + vf2d originalPos; + vf2d targetPos; + float z; + float targetZ{}; + State state; + SpecialRenderable jet; + SpecialRenderable lights; + float timer{}; +public: + HamsterJet(Hamster&hamster); + void Update(const float fElapsedTime); + void Draw(); +}; \ No newline at end of file diff --git a/src/SpecialRenderable.cpp b/src/SpecialRenderable.cpp index 145be08..b82258c 100644 --- a/src/SpecialRenderable.cpp +++ b/src/SpecialRenderable.cpp @@ -63,19 +63,35 @@ void SpecialRenderable::Initialize(std::string_view imgName,const Pixel override void SpecialRenderable::Update(const float fElapsedTime){ if(!IsInitialized)throw std::runtime_error{std::format("SpecialRenderable for {} is not properly initialized!",originalImgName)}; lastPixelsUpdateTimer-=fElapsedTime; + HamsterGame::Game().SetDrawTarget(modifiedImg.Sprite()); + HamsterGame::Game().SetPixelMode(Pixel::ALPHA); + HamsterGame::Game().SetPixelBlend(0.5f); if(lastPixelsUpdateTimer<=0.f){ lastPixelsUpdateTimer+=0.1f; for(int y:std::ranges::iota_view(0,modifiedImg.Sprite()->height)){ for(int x:std::ranges::iota_view(0,modifiedImg.Sprite()->width)){ if(HamsterGame::GetGFX(originalImgName).Sprite()->GetPixel(x,y)==overrideCol){ - modifiedImg.Sprite()->SetPixel(x,y,PixelLerp(matrixCol,HamsterGame::GetGFX("MATRIX_TEXTURE").Sprite()->GetPixel(x,y),0.5f)); + modifiedImg.Sprite()->SetPixel(x,y,HamsterGame::GetGFX("MATRIX_TEXTURE").Sprite()->GetPixel(x,y)); + HamsterGame::Game().Draw({x,y},matrixCol); } } } } + HamsterGame::Game().SetDrawTarget(nullptr); + HamsterGame::Game().SetPixelMode(Pixel::MASK); + HamsterGame::Game().SetPixelBlend(1.f); modifiedImg.Decal()->Update(); } const Renderable&SpecialRenderable::Get()const{ if(!IsInitialized)throw std::runtime_error{std::format("SpecialRenderable for {} is not properly initialized!",originalImgName)}; return modifiedImg; +} +void SpecialRenderable::ChangeMatrixColor(const Pixel newMatrixCol){ + matrixCol=newMatrixCol; +} +Decal*SpecialRenderable::Decal()const{ + return modifiedImg.Decal(); +} +Sprite*SpecialRenderable::Sprite()const{ + return modifiedImg.Sprite(); } \ No newline at end of file diff --git a/src/SpecialRenderable.h b/src/SpecialRenderable.h index 9c95b3f..9f1b5b1 100644 --- a/src/SpecialRenderable.h +++ b/src/SpecialRenderable.h @@ -51,4 +51,7 @@ public: void Initialize(std::string_view imgName,const Pixel overrideCol,const Pixel matrixCol); void Update(const float fElapsedTime); const Renderable&Get()const; + Decal*Decal()const; + Sprite*Sprite()const; + void ChangeMatrixColor(const Pixel newMatrixCol); }; \ No newline at end of file diff --git a/src/TSXParser.h b/src/TSXParser.h index f9642ef..f6e0444 100644 --- a/src/TSXParser.h +++ b/src/TSXParser.h @@ -147,6 +147,7 @@ class TSXParser{ } else if (newTag.tag=="tile"){ previousTag.emplace_back(newTag.tag); + previousTagID.clear(); previousTagID.emplace_back(newTag.GetInteger("id")); } else if(newTag.tag=="frame"){ diff --git a/src/util.cpp b/src/util.cpp index c432db3..eced7c2 100644 --- a/src/util.cpp +++ b/src/util.cpp @@ -47,3 +47,7 @@ void olc::util::turn_towards_direction(float&angle,float target,float rate) if(diff>0&&newAngleDiff<0|| diff<0&&newAngleDiff>0)angle=fmod(target,2*geom2d::pi); //We have crossed the angle difference threshold and can safely say we reached it. } + +float olc::util::lerp(float n1,float n2,double t){ + return float(n1*(1-t)+n2*t); +} \ No newline at end of file diff --git a/src/util.h b/src/util.h index 1bdf060..08c2079 100644 --- a/src/util.h +++ b/src/util.h @@ -47,4 +47,5 @@ namespace olc::util{ int random(); float angle_difference(float angle_1, float angle_2); void turn_towards_direction(float&angle,float target,float rate); + float lerp(float n1,float n2,double t); }; \ No newline at end of file