From b32faf1cda864e88064b04a86944a75fb6827bf9 Mon Sep 17 00:00:00 2001 From: sigonasr2 Date: Sun, 25 Aug 2024 08:47:49 -0500 Subject: [PATCH] Add powerup tips fix a billion things. Yes. --- assets/PBData | 2 +- assets/button3.png | Bin 7864 -> 7075 bytes assets/fallometer_outline.png | Bin 2077 -> 7166 bytes assets/highlight_button3.png | Bin 7933 -> 7097 bytes assets/highlight_smallbutton3.png | Bin 0 -> 787 bytes assets/highlight_trackselectbutton.png | Bin 8428 -> 7366 bytes assets/smallbutton3.png | Bin 0 -> 7567 bytes assets/sounds/new_record.wav | Bin 0 -> 60174 bytes assets/trackselectbutton.png | Bin 8219 -> 7342 bytes src/Hamster.cpp | 16 +++ src/Hamster.h | 1 + src/HamsterGame.cpp | 4 + src/HamsterGame.h | 6 +- src/HamsterJet.cpp | 6 + src/Menu.cpp | 156 ++++++++++++++++++++----- src/Powerup.cpp | 10 ++ src/Powerup.h | 1 + 17 files changed, 170 insertions(+), 32 deletions(-) create mode 100644 assets/highlight_smallbutton3.png create mode 100644 assets/smallbutton3.png create mode 100644 assets/sounds/new_record.wav diff --git a/assets/PBData b/assets/PBData index 518bbb6..e375a71 100644 --- a/assets/PBData +++ b/assets/PBData @@ -1 +1 @@ -41481 54006 53138 73057 2147483647 2147483647 2147483647 2147483647 2147483647 2147483647 2147483647 2147483647 2147483647 2147483647 2147483647 2147483647 1 0.6 OneLoneHam Black \ No newline at end of file +38582 54006 53138 73057 2147483647 2147483647 2147483647 2147483647 2147483647 2147483647 2147483647 2147483647 2147483647 2147483647 2147483647 2147483647 1 0.6 OneLoneHam Black \ No newline at end of file diff --git a/assets/button3.png b/assets/button3.png index bb9e6b27ac9074d2b65a7c0f4a30f9dbdc071e90..20bf80b147dc95fe6a903b83f86637d146fa8fd1 100644 GIT binary patch delta 3364 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 B^(X)U diff --git a/assets/highlight_smallbutton3.png b/assets/highlight_smallbutton3.png new file mode 100644 index 0000000000000000000000000000000000000000..e0a94990b96e56165f13c6548e2044281155e5da GIT binary patch literal 787 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 Fe*rtcI#mDw literal 0 HcmV?d00001 diff --git a/assets/sounds/new_record.wav b/assets/sounds/new_record.wav new file mode 100644 index 0000000000000000000000000000000000000000..24afc79be27010ed4ae8ce1bad6da469cba51d7f GIT binary patch literal 60174 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

v!~0)-zN0n%Aw@tP%Ps{kU_|`QHA4S*P#q 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 qN^yfo)5fqWvF>Jb{J) literal 0 HcmV?d00001 diff --git a/assets/trackselectbutton.png b/assets/trackselectbutton.png index 858c2a949493e3ead89eea4dc6eee2e6778836f7..c182edd07c26a0abbd641bfb7e13d7419b4197b5 100644 GIT binary patch delta 3658 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 diff --git a/src/Hamster.cpp b/src/Hamster.cpp index 05e96f6..4102af7 100644 --- a/src/Hamster.cpp +++ b/src/Hamster.cpp @@ -320,6 +320,7 @@ void Hamster::MoveHamstersToSpawn(const geom2d::rectstartingLoc){ for(HamsterPersistentData&data:persistentData){ Hamster&newHamster{HAMSTER_LIST.emplace_back(vf2d{},data.colorFilename,data.IsPlayerControlled)}; newHamster.points=data.points; + newHamster.aiLevel=data.aiLevel; } for(Hamster&hamster:HAMSTER_LIST){ @@ -418,6 +419,13 @@ void Hamster::DrawOverlay(){ } HamsterGame::Game().DrawShadowStringDecal(HamsterGame::SCREEN_FRAME.pos+vf2d{3*16.f+8.f,HamsterGame::SCREEN_FRAME.size.y-12.f},"\"R\" - BOOST",YELLOW,fmod(HamsterGame::Game().GetRuntime(),2.f)<1.f?RED:BLACK); } + + if(HamsterGame::Game().collectedPowerupTimer>0.f){ + vf2d powerupInfoStrSize{HamsterGame::Game().GetTextSizeProp(HamsterGame::Game().powerupHelpDisplay)}; + uint8_t alpha{255U}; + if(HamsterGame::Game().collectedPowerupTimer<1.f)alpha=uint8_t(util::lerp(0,255,HamsterGame::Game().collectedPowerupTimer)); + HamsterGame::Game().DrawShadowRotatedStringPropDecal(HamsterGame::SCREEN_FRAME.middle()+vf2d{0.f,-HamsterGame::SCREEN_FRAME.size.y/2+powerupInfoStrSize.y+4.f},HamsterGame::Game().powerupHelpDisplay,0.f,powerupInfoStrSize/2,{255,255,255,alpha},{0,0,0,alpha}); + } } const Animate2D::Frame&Hamster::GetCurrentAnimation()const{ @@ -542,6 +550,10 @@ void Hamster::HandleCollision(){ if(powerup.GetType()==Powerup::JET)HamsterGame::PlaySFX(pos,"obtain_jet.wav"); else HamsterGame::PlaySFX(pos,"collect_powerup.wav"); powerup.OnPowerupObtain(*this); + if(IsPlayerControlled){ + HamsterGame::Game().collectedPowerupTimer=5.f; + HamsterGame::Game().powerupHelpDisplay=Powerup::powerupInfo[powerup.GetType()]; + } } } for(Checkpoint&checkpoint:Checkpoint::GetCheckpoints()){ @@ -1050,4 +1062,8 @@ const int Hamster::GetFinishedTime()const{ const std::string&Hamster::GetHamsterImage()const{ return colorFilename; +} + +void Hamster::ClearHamsters(){ + HAMSTER_LIST.clear(); } \ No newline at end of file diff --git a/src/Hamster.h b/src/Hamster.h index 11bded4..69c96fc 100644 --- a/src/Hamster.h +++ b/src/Hamster.h @@ -194,4 +194,5 @@ public: PlayerControlled IsPlayerControlled; const int GetFinishedTime()const; const std::string&GetHamsterImage()const; + static void ClearHamsters(); }; \ No newline at end of file diff --git a/src/HamsterGame.cpp b/src/HamsterGame.cpp index f698cf5..78d0771 100644 --- a/src/HamsterGame.cpp +++ b/src/HamsterGame.cpp @@ -165,6 +165,8 @@ void HamsterGame::LoadGraphics(){ _LoadImage("smallhighlight_button.png"); _LoadImage("trackselectbutton.png"); _LoadImage("highlight_trackselectbutton.png"); + _LoadImage("smallbutton3.png"); + _LoadImage("highlight_smallbutton3.png"); } void HamsterGame::LoadAnimations(){ @@ -254,6 +256,7 @@ void HamsterGame::UpdateGame(const float fElapsedTime){ } vEye.z+=(Hamster::GetPlayer().GetZ()+zoom-vEye.z)*fLazyFollowRate*fElapsedTime; speedometerDisplayAmt+=(Hamster::GetPlayer().GetSpeed()-speedometerDisplayAmt)*fLazyFollowRate*fElapsedTime; + collectedPowerupTimer-=fElapsedTime; if(GetMouseWheel()>0){ radarScale=std::clamp(radarScale/2.f,9.f,144.f); @@ -652,6 +655,7 @@ void HamsterGame::SavePB(const std::string&mapName,int ms){ file<obtainedNewPB=true; } } diff --git a/src/HamsterGame.h b/src/HamsterGame.h index aa0dc23..b29b8f0 100644 --- a/src/HamsterGame.h +++ b/src/HamsterGame.h @@ -130,6 +130,8 @@ public: static void PlaySFX(const std::string&filename); static void PlaySFX(vf2d pos,const std::string&filename); const float GetPlayerDifferentialTime()const; + float collectedPowerupTimer{}; + std::string powerupHelpDisplay; private: void UpdateGame(const float fElapsedTime); void DrawGame(); @@ -169,10 +171,12 @@ private: GameMode mode{GameMode::SINGLE_RACE}; HamsterNet net; float countdownTimer{}; + bool obtainedNewPB{false}; using Points=int; using HamsterInd=size_t; using FinishTime=int; - std::vector>grandPrixPoints; + std::unordered_mapgrandPrixPoints; + std::vector>pointsList; std::vector>racerList; #ifndef __EMSCRIPTEN__ #ifndef __DEBUG__ diff --git a/src/HamsterJet.cpp b/src/HamsterJet.cpp index 708c40e..836be49 100644 --- a/src/HamsterJet.cpp +++ b/src/HamsterJet.cpp @@ -223,6 +223,12 @@ void HamsterJet::DrawOverlay()const{ float meterHeight{meterEndY-meterStartY}; HamsterGame::Game().DrawPartialDecal(HamsterGame::SCREEN_FRAME.pos+vf2d{0,222}-vf2d{0,(fallSpd/5.f)*meterHeight},HamsterGame::GetGFX("fallometer.png").Decal(),vf2d{0,223}-vf2d{0,(fallSpd/5.f)*meterHeight},vf2d{float(HamsterGame::GetGFX("fallometer.png").Sprite()->width),(fallSpd/5.f)*meterHeight}); } + if(state==HAMSTER_CONTROL){ + const vf2d jetDisplayOffset{HamsterGame::SCREEN_FRAME.pos+vf2d{HamsterGame::SCREEN_FRAME.size.x,0.f}}; + const std::string launchText{"(SPACE)x2\nto Land!"}; + const vi2d launchTextSize{HamsterGame::Game().GetTextSize(launchText)}; + HamsterGame::Game().DrawShadowRotatedStringDecal(jetDisplayOffset+vf2d{48.f,224.f},launchText,0.f,launchTextSize/2,WHITE,BLACK); + } } void HamsterJet::SetPos(const vf2d pos){ diff --git a/src/Menu.cpp b/src/Menu.cpp index 2e635fd..b72cd76 100644 --- a/src/Menu.cpp +++ b/src/Menu.cpp @@ -135,59 +135,123 @@ std::vectorMenu::GetMenuButtons(const MenuType type){ buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,64.f},"Quit","button.png","highlight_button.png",Pixel{165,208,96},Pixel{37,134,139},[this](Button&self){Transition(SHIFT_DOWN,QUIT,0.5f);}); }break; case GRAND_PRIX:{ - buttons.emplace_back(HamsterGame::SCREEN_FRAME.pos+vf2d{60.f,HamsterGame::SCREEN_FRAME.size.y/2-36.f},"Grand Prix I - ","longbutton2.png","longhighlight_button2.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ + buttons.emplace_back(HamsterGame::SCREEN_FRAME.pos+vf2d{60.f,HamsterGame::SCREEN_FRAME.size.y/2-36.f},"Grand Prix I (4 courses)","button3.png","highlight_button3.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ selectedMap="StageI.tmx"; + HamsterGame::Game().mode=HamsterGame::GameMode::GRAND_PRIX_1; + std::queuemapList; + mapList.emplace("StageII.tmx"); + mapList.emplace("StageIII.tmx"); + mapList.emplace("StageIV.tmx"); + HamsterGame::Game().SetMapSetList(mapList); + HamsterGame::Game().grandPrixPoints.clear(); + Hamster::ClearHamsters(); Transition(FADE_OUT,LOADING,0.5f); }); - buttons.emplace_back(vf2d{54.f,HamsterGame::SCREEN_FRAME.size.y-24.f},"< Back","button3.png","highlight_button3.png",Pixel{145,199,255},Pixel{145,199,255},[this](Button&self){Transition(SHIFT_RIGHT,MAIN_MENU,0.5f);}); + buttons.emplace_back(HamsterGame::SCREEN_FRAME.pos+vf2d{60.f,HamsterGame::SCREEN_FRAME.size.y/2.f},"Grand Prix II (4 courses)","button3.png","highlight_button3.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ + selectedMap="StageV.tmx"; + HamsterGame::Game().mode=HamsterGame::GameMode::GRAND_PRIX_2; + std::queuemapList; + mapList.emplace("StageVI.tmx"); + mapList.emplace("StageVII.tmx"); + mapList.emplace("StageVIII.tmx"); + HamsterGame::Game().SetMapSetList(mapList); + HamsterGame::Game().grandPrixPoints.clear(); + Hamster::ClearHamsters(); + Transition(FADE_OUT,LOADING,0.5f); + }); + buttons.emplace_back(HamsterGame::SCREEN_FRAME.pos+vf2d{60.f,HamsterGame::SCREEN_FRAME.size.y/2+36.f},"Grand Prix III (4 courses)","button3.png","highlight_button3.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ + selectedMap="StageIX.tmx"; + HamsterGame::Game().mode=HamsterGame::GameMode::GRAND_PRIX_3; + std::queuemapList; + mapList.emplace("StageX.tmx"); + mapList.emplace("StageXI.tmx"); + mapList.emplace("StageXII.tmx"); + HamsterGame::Game().SetMapSetList(mapList); + HamsterGame::Game().grandPrixPoints.clear(); + Hamster::ClearHamsters(); + Transition(FADE_OUT,LOADING,0.5f); + }); + buttons.emplace_back(HamsterGame::SCREEN_FRAME.pos+vf2d{60.f,HamsterGame::SCREEN_FRAME.size.y/2+72.f},"Marathon (12 courses)","button3.png","highlight_button3.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ + selectedMap="StageI.tmx"; + HamsterGame::Game().mode=HamsterGame::GameMode::MARATHON; + std::queuemapList; + mapList.emplace("StageII.tmx"); + mapList.emplace("StageIII.tmx"); + mapList.emplace("StageIV.tmx"); + mapList.emplace("StageV.tmx"); + mapList.emplace("StageVI.tmx"); + mapList.emplace("StageVII.tmx"); + mapList.emplace("StageVIII.tmx"); + mapList.emplace("StageIX.tmx"); + mapList.emplace("StageX.tmx"); + mapList.emplace("StageXI.tmx"); + mapList.emplace("StageXII.tmx"); + HamsterGame::Game().SetMapSetList(mapList); + HamsterGame::Game().grandPrixPoints.clear(); + Hamster::ClearHamsters(); + Transition(FADE_OUT,LOADING,0.5f); + }); + buttons.emplace_back(vf2d{54.f,HamsterGame::SCREEN_FRAME.size.y-24.f},"< Back","smallbutton3.png","highlight_smallbutton3.png",Pixel{145,199,255},Pixel{145,199,255},[this](Button&self){Transition(SHIFT_RIGHT,MAIN_MENU,0.5f);}); }break; case SINGLE_RACE:{ buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,-132.f},"I - Welcome to Hamster Planet!","longbutton2.png","longhighlight_button2.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ selectedMap="StageI.tmx"; + Hamster::ClearHamsters(); Transition(FADE_OUT,LOADING,0.5f); }); buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,-132.f+22.f*1},"II - Splitting Hairs","longbutton2.png","longhighlight_button2.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ selectedMap="StageII.tmx"; + Hamster::ClearHamsters(); Transition(FADE_OUT,LOADING,0.5f); }); buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,-132.f+22.f*2},"III - The Stranger Lands","longbutton2.png","longhighlight_button2.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ selectedMap="StageIII.tmx"; + Hamster::ClearHamsters(); Transition(FADE_OUT,LOADING,0.5f); }); buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,-132.f+22.f*3},"IV - Jet Jet Go!","longbutton2.png","longhighlight_button2.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ selectedMap="StageIV.tmx"; + Hamster::ClearHamsters(); Transition(FADE_OUT,LOADING,0.5f); }); buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,-132.f+22.f*4},"V - Run Run Run!","longbutton2.png","longhighlight_button2.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ selectedMap="StageV.tmx"; + Hamster::ClearHamsters(); Transition(FADE_OUT,LOADING,0.5f); }); buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,-132.f+22.f*5},"VI - A Twisty Maze","longbutton2.png","longhighlight_button2.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ selectedMap="StageVI.tmx"; + Hamster::ClearHamsters(); Transition(FADE_OUT,LOADING,0.5f); }); buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,-132.f+22.f*6},"VII - Dunescape","longbutton2.png","longhighlight_button2.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ selectedMap="StageVII.tmx"; + Hamster::ClearHamsters(); Transition(FADE_OUT,LOADING,0.5f); }); buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,-132.f+22.f*7},"VIII - Swamps of Travesty","longbutton2.png","longhighlight_button2.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ selectedMap="StageVIII.tmx"; + Hamster::ClearHamsters(); Transition(FADE_OUT,LOADING,0.5f); }); buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,-132.f+22.f*8},"IX - Wide Chasm","longbutton2.png","longhighlight_button2.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ selectedMap="StageIX.tmx"; + Hamster::ClearHamsters(); Transition(FADE_OUT,LOADING,0.5f); }); buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,-132.f+22.f*9},"X - Hamster Island","longbutton2.png","longhighlight_button2.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ selectedMap="StageX.tmx"; + Hamster::ClearHamsters(); Transition(FADE_OUT,LOADING,0.5f); }); buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,-132.f+22.f*10},"XI - Lava Panic!","longbutton2.png","longhighlight_button2.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ selectedMap="StageXI.tmx"; + Hamster::ClearHamsters(); Transition(FADE_OUT,LOADING,0.5f); }); buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,-132.f+22.f*11},"XII - The Great Plunge","longbutton2.png","longhighlight_button2.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){ selectedMap="StageXII.tmx"; + Hamster::ClearHamsters(); Transition(FADE_OUT,LOADING,0.5f); }); buttons.emplace_back(vf2d{54.f,HamsterGame::SCREEN_FRAME.size.y-12.f},"< Back","button4.png","highlight_button4.png",Pixel{220,185,155},Pixel{180,140,152},[this](Button&self){Transition(SHIFT_DOWN,MAIN_MENU,0.5f);}); @@ -254,34 +318,38 @@ std::vectorMenu::GetMenuButtons(const MenuType type){ buttons.emplace_back(vf2d{54.f,HamsterGame::SCREEN_FRAME.size.y-24.f},"< Back","button2.png","highlight_button2.png",Pixel{114,109,163},Pixel{79,81,128},[this](Button&self){Transition(SHIFT_LEFT,MAIN_MENU,0.5f);}); }break; case GAMEPLAY_RESULTS:{ - switch(HamsterGame::Game().GetGameMode()){ - case HamsterGame::GameMode::SINGLE_RACE:{ - int MAX_SIMULATION_COUNT{10000}; - HamsterGame::Game().playerDifferentialTime=0.f; - while(MAX_SIMULATION_COUNT>0){ - bool allHamstersFinished{true}; - for(Hamster&hamster:Hamster::GetHamsters()){ - if(!hamster.CollectedAllCheckpoints())allHamstersFinished=false; - } - if(allHamstersFinished)break; - HamsterGame::Game().SetElapsedTime(1/30.f); - HamsterGame::Game().UpdateGame(1/30.f); - HamsterGame::Game().playerDifferentialTime+=33; - MAX_SIMULATION_COUNT--; - } - HamsterGame::Game().racerList.clear(); - for(size_t ind{0};Hamster&hamster:Hamster::GetHamsters()){ - HamsterGame::Game().racerList.emplace_back(std::pair{hamster.GetFinishedTime(),ind}); - ind++; - } - std::sort(HamsterGame::Game().racerList.begin(),HamsterGame::Game().racerList.end(),[](const std::pair&hamster1,const std::pair&hamster2){return hamster1.first0){ + bool allHamstersFinished{true}; + for(Hamster&hamster:Hamster::GetHamsters()){ + if(!hamster.CollectedAllCheckpoints())allHamstersFinished=false; } + if(allHamstersFinished)break; + HamsterGame::Game().SetElapsedTime(1/30.f); + HamsterGame::Game().UpdateGame(1/30.f); + HamsterGame::Game().playerDifferentialTime+=33; + MAX_SIMULATION_COUNT--; + } + HamsterGame::Game().racerList.clear(); + for(size_t ind{0};Hamster&hamster:Hamster::GetHamsters()){ + HamsterGame::Game().racerList.emplace_back(std::pair{hamster.GetFinishedTime(),ind}); + ind++; + } + std::sort(HamsterGame::Game().racerList.begin(),HamsterGame::Game().racerList.end(),[](const std::pair&hamster1,const std::pair&hamster2){return hamster1.first0){ + buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,HamsterGame::SCREEN_FRAME.size.y/2-24.f},"Continue","trackselectbutton.png","highlight_trackselectbutton.png",Pixel{165,208,96},Pixel{37,134,139},[this](Button&self){ + selectedMap=HamsterGame::Game().mapSetList.front(); + HamsterGame::Game().mapSetList.pop(); + Transition(FADE_OUT,LOADING,1.f); + }); + }else + if(HamsterGame::Game().GetGameMode()==HamsterGame::GameMode::SINGLE_RACE){ + buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,HamsterGame::SCREEN_FRAME.size.y/2-40.f},"Track Select","trackselectbutton.png","highlight_trackselectbutton.png",Pixel{165,208,96},Pixel{37,134,139},[this](Button&self){Transition(FADE_OUT,SINGLE_RACE,1.f);}); + buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,HamsterGame::SCREEN_FRAME.size.y/2-16.f},"Retry","button.png","highlight_button.png",Pixel{165,208,96},Pixel{37,134,139},[this](Button&self){Transition(FADE_OUT,LOADING,1.f);}); + }else{ + buttons.emplace_back(HamsterGame::SCREEN_FRAME.size/2+vf2d{0.f,HamsterGame::SCREEN_FRAME.size.y/2-40.f},"Grand Prix Select","trackselectbutton.png","highlight_trackselectbutton.png",Pixel{165,208,96},Pixel{37,134,139},[this](Button&self){Transition(FADE_OUT,GRAND_PRIX,1.f);}); } }break; } @@ -294,10 +362,23 @@ void Menu::OnMenuTransition(){ menuButtons=GetMenuButtons(currentMenu); if(currentMenu!=GAMEPLAY&¤tMenu!=GAMEPLAY_RESULTS&¤tMenu!=AFTER_RACE_MENU)HamsterGame::Game().audio.Play(HamsterGame::Game().bgm["Trevor Lentz - Guinea Pig Hero.ogg"]); switch(currentMenu){ + case GAMEPLAY_RESULTS:{ + const std::vectorpointTable{10,7,5,3,2,1}; + for(size_t ind{0};const auto&[finishTime,hamsterInd]:HamsterGame::Game().racerList){ + HamsterGame::Game().grandPrixPoints[hamsterInd]+=pointTable[ind]; + ind++; + } + HamsterGame::Game().pointsList.clear(); + for(const auto&[hamsterInd,points]:HamsterGame::Game().grandPrixPoints){ + HamsterGame::Game().pointsList.emplace_back(std::pair{points,hamsterInd}); + } + std::sort(HamsterGame::Game().pointsList.begin(),HamsterGame::Game().pointsList.end(),[](const std::pair&ham1,const std::pair&ham2){return ham1.first>ham2.first;}); + }break; case LOADING:{ colorNumb=util::random()%8+1; loading=true; loadingPct=0.f; + HamsterGame::Game().operationsProgress=0; HamsterGame::Game().LoadRace(selectedMap); }break; case QUIT:{ @@ -429,15 +510,30 @@ void Menu::Draw(HamsterGame&game,const MenuType menu,const vi2d pos){ } }break; case GAMEPLAY_RESULTS:{ + const std::vectorpointTable{10,7,5,3,2,1}; for(size_t ind{0};const auto&[finishTime,hamsterInd]:HamsterGame::Game().racerList){ const Hamster&hamster{Hamster::GetHamsters()[hamsterInd]}; + if(hamster.IsPlayerControlled)game.FillRectDecal(vf2d{game.SCREEN_FRAME.pos.x+game.SCREEN_FRAME.size.x/2-64.f,game.SCREEN_FRAME.pos.y+game.SCREEN_FRAME.size.y/2-100.f+ind*16}-2.f,{164.f,12.f},{DARK_YELLOW.r,DARK_YELLOW.g,DARK_YELLOW.b,160}); game.DrawShadowStringDecal(vf2d{game.SCREEN_FRAME.pos.x+game.SCREEN_FRAME.size.x/2-64.f,game.SCREEN_FRAME.pos.y+game.SCREEN_FRAME.size.y/2-100.f+ind*16},std::format("{}.",ind+1)); game.DrawPartialRotatedDecal(vf2d{game.SCREEN_FRAME.pos.x+game.SCREEN_FRAME.size.x/2-64.f+24.f,game.SCREEN_FRAME.pos.y+game.SCREEN_FRAME.size.y/2-100.f+ind*16+6.f},game.GetGFX(hamster.GetHamsterImage()).Decal(),0.f,{8.f,6.f},{64.f,64.f},{16.f,12.f}); std::string timeStr{util::timerStr(finishTime)}; vf2d timeStrSize{game.GetTextSize(timeStr)}; game.DrawShadowStringDecal(vf2d{game.SCREEN_FRAME.pos.x+game.SCREEN_FRAME.size.x/2+64.f-timeStrSize.x,game.SCREEN_FRAME.pos.y+game.SCREEN_FRAME.size.y/2-100.f+ind*16},timeStr); + game.DrawShadowStringDecal(vf2d{game.SCREEN_FRAME.pos.x+game.SCREEN_FRAME.size.x/2+72.f,game.SCREEN_FRAME.pos.y+game.SCREEN_FRAME.size.y/2-100.f+ind*16},std::format("+{}",pointTable[ind]),YELLOW); ind++; } + if(HamsterGame::Game().GetGameMode()!=HamsterGame::GameMode::SINGLE_RACE){ + for(size_t ind{0};const auto&[points,hamsterInd]:HamsterGame::Game().pointsList){ + const Hamster&hamster{Hamster::GetHamsters()[hamsterInd]}; + if(hamster.IsPlayerControlled)game.FillRectDecal(vf2d{game.SCREEN_FRAME.pos.x+game.SCREEN_FRAME.size.x/2-64.f,game.SCREEN_FRAME.pos.y+game.SCREEN_FRAME.size.y/2+12.f+ind*16}-2.f,{132.f,12.f},{DARK_YELLOW.r,DARK_YELLOW.g,DARK_YELLOW.b,160}); + game.DrawShadowStringDecal(vf2d{game.SCREEN_FRAME.pos.x+game.SCREEN_FRAME.size.x/2-64.f,game.SCREEN_FRAME.pos.y+game.SCREEN_FRAME.size.y/2+12.f+ind*16},std::format("{}.",ind+1)); + game.DrawPartialRotatedDecal(vf2d{game.SCREEN_FRAME.pos.x+game.SCREEN_FRAME.size.x/2-64.f+24.f,game.SCREEN_FRAME.pos.y+game.SCREEN_FRAME.size.y/2+12.f+ind*16+6.f},game.GetGFX(hamster.GetHamsterImage()).Decal(),0.f,{8.f,6.f},{64.f,64.f},{16.f,12.f}); + std::string pointsStr{std::to_string(points)}; + vf2d pointsStrSize{game.GetTextSize(pointsStr)}; + game.DrawShadowStringDecal(vf2d{game.SCREEN_FRAME.pos.x+game.SCREEN_FRAME.size.x/2+64.f-pointsStrSize.x,game.SCREEN_FRAME.pos.y+game.SCREEN_FRAME.size.y/2+12.f+ind*16},pointsStr,CYAN); + ind++; + } + } DrawButtons(pos); }break; case AFTER_RACE_MENU:{ @@ -466,7 +562,7 @@ void Menu::Draw(HamsterGame&game,const MenuType menu,const vi2d pos){ void Menu::OnLevelLoaded(){ loading=false; - + HamsterGame::Game().obtainedNewPB=false; HamsterGame::Game().mapImage.Decal()->Update(); Powerup::Initialize(HamsterGame::Game().mapPowerupsTemp); diff --git a/src/Powerup.cpp b/src/Powerup.cpp index 4f7b779..b6bb4e5 100644 --- a/src/Powerup.cpp +++ b/src/Powerup.cpp @@ -43,6 +43,16 @@ All rights reserved. std::vectorPowerup::powerupList; std::unordered_map>Powerup::powerupIds; const vf2d Powerup::POWERUP_TILESET_STARTING_POS{144.f,816.f}; +std::unordered_mapPowerup::powerupInfo{ + {WHEEL,"Vroom Vroom! Use R to boost!"}, + {GRASS,"Speed up through Grass"}, + {SAND,"Speed up through Sand"}, + {SWAMP,"Cross Swamps without drowning!"}, + {LAVA,"Walking on fire!"}, + {FOREST,"Speed through trees"}, + {ICE,"Less slippery, more speedy"}, + {JET," Take off! Use x2. \n Watch your fuel! \nArrow Keys to control landing speed."}, +}; std::unordered_mapPowerup::powerupNames{ {WHEEL,"WHEEL"}, {GRASS,"GRASS"}, diff --git a/src/Powerup.h b/src/Powerup.h index 4f00c0c..87bb23e 100644 --- a/src/Powerup.h +++ b/src/Powerup.h @@ -84,4 +84,5 @@ public: static void DrawPowerups(TransformedView&tv); static const geom2d::rectGetPowerupSubimageRect(const PowerupType powerupType); void OnPowerupObtain(Hamster&pickupHamster); + static std::unordered_mappowerupInfo; }; \ No newline at end of file