From ab963293d1bd6a04a902c3bfaefa29e4e9c8bf08 Mon Sep 17 00:00:00 2001 From: sigonasr2 Date: Fri, 9 Aug 2024 01:32:03 -0700 Subject: [PATCH] Add niconiconii user profile to solution include directories. Implement Extreme Rapid Fire enchant. Release Build 10819. --- .../Adventures in Lestoria Tests.vcxproj | 5 +++-- Adventures in Lestoria Tests/EnchantTests.cpp | 19 +++++++++++++++++++ .../Adventures in Lestoria.vcxproj | 9 +++------ Adventures in Lestoria/Player.cpp | 4 ++++ Adventures in Lestoria/Player.h | 1 + Adventures in Lestoria/Ranger.cpp | 1 + Adventures in Lestoria/Version.h | 2 +- 7 files changed, 32 insertions(+), 9 deletions(-) diff --git a/Adventures in Lestoria Tests/Adventures in Lestoria Tests.vcxproj b/Adventures in Lestoria Tests/Adventures in Lestoria Tests.vcxproj index 970dac05..001d61fc 100644 --- a/Adventures in Lestoria Tests/Adventures in Lestoria Tests.vcxproj +++ b/Adventures in Lestoria Tests/Adventures in Lestoria Tests.vcxproj @@ -47,7 +47,8 @@ true - C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria;$(IncludePath) + C:\Users\niconiconii\source\repos\AdventuresInLestoria\Adventures in Lestoria;C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria;$(IncludePath) + ..\x64\Unit Testing true @@ -57,7 +58,7 @@ NotUsing Level3 true - C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\sigon\OneDrive\Documents\include;$(VCInstallDir)UnitTest\include;%(AdditionalIncludeDirectories) + C:\Users\niconiconii\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\niconiconii\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\niconiconii\OneDrive\Documents\include;C:\Users\sigon\OneDrive\Documents\include;$(VCInstallDir)UnitTest\include;%(AdditionalIncludeDirectories) _DEBUG;%(PreprocessorDefinitions) true diff --git a/Adventures in Lestoria Tests/EnchantTests.cpp b/Adventures in Lestoria Tests/EnchantTests.cpp index 2a77579f..d82fda81 100644 --- a/Adventures in Lestoria Tests/EnchantTests.cpp +++ b/Adventures in Lestoria Tests/EnchantTests.cpp @@ -553,5 +553,24 @@ namespace EnchantTests game->OnUserUpdate("Poisonous Arrow"_ENC["POISON ARROW RESET FREQUENCY"]); Assert::AreEqual(true,player->PoisonArrowAutoAttackReady(),L"Poison arrow auto attack should be ready again."); } + TEST_METHOD(ExtremeRapidFireCheck){ + game->ChangePlayerClass(RANGER); + player=game->GetPlayer(); + Assert::AreEqual(0,player->RemainingRapidFireShots(),L"Player starts off with no Rapid Fire shots available."); + testKey->bHeld=true; //Force the key to be held down for testing purposes. + player->CheckAndPerformAbility(player->GetAbility1(),testKeyboardInput); + Assert::AreEqual("Ranger.Ability 1.ArrowCount"_I,player->RemainingRapidFireShots(),L"Player now has normal Rapid Fire shot count."); + for(int i:std::ranges::iota_view(0,"Ranger.Ability 1.ArrowCount"_I)){ + game->SetElapsedTime(1.f); + game->OnUserUpdate(1.f); + } + player->SetState(State::NORMAL); + player->GetAbility1().cooldown=0.f; + std::weak_ptrnullRing{Inventory::AddItem("Null Ring"s)}; + Inventory::EquipItem(nullRing,EquipSlot::RING1); + nullRing.lock()->EnchantItem("Extreme Rapid Fire"); + player->CheckAndPerformAbility(player->GetAbility1(),testKeyboardInput); + Assert::AreEqual("Ranger.Ability 1.ArrowCount"_I+int("Extreme Rapid Fire"_ENC["ARROW COUNT INCREASE"]),player->RemainingRapidFireShots(),L"Player now has even more Rapid Fire shots."); + } }; } \ No newline at end of file diff --git a/Adventures in Lestoria/Adventures in Lestoria.vcxproj b/Adventures in Lestoria/Adventures in Lestoria.vcxproj index 50d48d94..a1283cf7 100644 --- a/Adventures in Lestoria/Adventures in Lestoria.vcxproj +++ b/Adventures in Lestoria/Adventures in Lestoria.vcxproj @@ -218,8 +218,7 @@ _DEBUG;_CONSOLE;%(PreprocessorDefinitions) true stdcpplatest - C:\Users\LabUser\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\LabUser\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\LabUser\Documents\include;C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\sigon\OneDrive\Documents\include;%(AdditionalIncludeDirectories) - /MP20 %(AdditionalOptions) + C:\Users\LabUser\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\LabUser\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\LabUser\Documents\include;C:\Users\niconiconii\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\niconiconii\OneDrive\Documents\include;C:\Users\niconiconii\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\sigon\OneDrive\Documents\include;%(AdditionalIncludeDirectories) 4099;5030;4715;4172;4834 true @@ -244,8 +243,7 @@ _DEBUG;_CONSOLE;%(PreprocessorDefinitions) true stdcpplatest - C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\sigon\OneDrive\Documents\include - /MP20 %(AdditionalOptions) + C:\Users\LabUser\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\LabUser\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\LabUser\Documents\include;C:\Users\niconiconii\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\niconiconii\OneDrive\Documents\include;C:\Users\niconiconii\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\sigon\OneDrive\Documents\include;%(AdditionalIncludeDirectories) 4099;5030;4715;4172;4834 true @@ -275,8 +273,7 @@ NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true stdcpplatest - /MP20 %(AdditionalOptions) - C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\sigon\OneDrive\Documents\include + C:\Users\LabUser\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\LabUser\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\LabUser\Documents\include;C:\Users\niconiconii\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\niconiconii\OneDrive\Documents\include;C:\Users\niconiconii\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\steam;C:\Users\sigon\source\repos\AdventuresInLestoria\Adventures in Lestoria\discord-files;C:\Users\sigon\OneDrive\Documents\include;%(AdditionalIncludeDirectories) true diff --git a/Adventures in Lestoria/Player.cpp b/Adventures in Lestoria/Player.cpp index 39190c71..dec6ea71 100644 --- a/Adventures in Lestoria/Player.cpp +++ b/Adventures in Lestoria/Player.cpp @@ -1985,4 +1985,8 @@ const vf2d Player::GetFacingDirVector()const{ return {}; } } +} + +const int Player::RemainingRapidFireShots()const{ + return remainingRapidFireShots; } \ No newline at end of file diff --git a/Adventures in Lestoria/Player.h b/Adventures in Lestoria/Player.h index f3f9a2a6..300f2513 100644 --- a/Adventures in Lestoria/Player.h +++ b/Adventures in Lestoria/Player.h @@ -307,6 +307,7 @@ public: const float&GetAutoAttackTimer()const; const vf2d GetFacingDirVector()const; //Returns a normalized vector based on the facing direction of the character. Ex. {0,-1} for north and {1,0} for east. const bool PoisonArrowAutoAttackReady()const; //NOTE: Also checks to make sure we have the enchant built-in... + const int RemainingRapidFireShots()const; private: int hp="Warrior.BaseHealth"_I; int mana="Player.BaseMana"_I; diff --git a/Adventures in Lestoria/Ranger.cpp b/Adventures in Lestoria/Ranger.cpp index 9458a8d8..495a4288 100644 --- a/Adventures in Lestoria/Ranger.cpp +++ b/Adventures in Lestoria/Ranger.cpp @@ -113,6 +113,7 @@ void Ranger::InitializeClassAbilities(){ Ranger::ability1.action= [](Player*p,vf2d pos={}){ p->remainingRapidFireShots=p->RAPID_FIRE_SHOOT_AMOUNT; + if(p->HasEnchant("Extreme Rapid Fire"))p->remainingRapidFireShots+="Extreme Rapid Fire"_ENC["ARROW COUNT INCREASE"]; p->rapidFireTimer=p->RAPID_FIRE_SHOOT_DELAY; if("Ranger.Ability 1.IsAnimationLocked"_I){ p->SetState(State::ANIMATION_LOCK); diff --git a/Adventures in Lestoria/Version.h b/Adventures in Lestoria/Version.h index 3cf86ebe..e125cafa 100644 --- a/Adventures in Lestoria/Version.h +++ b/Adventures in Lestoria/Version.h @@ -39,7 +39,7 @@ All rights reserved. #define VERSION_MAJOR 1 #define VERSION_MINOR 2 #define VERSION_PATCH 3 -#define VERSION_BUILD 10813 +#define VERSION_BUILD 10819 #define stringify(a) stringify_(a) #define stringify_(a) #a