From 873e25f927f14e35a7d2d86b546763fe9abea9c7 Mon Sep 17 00:00:00 2001 From: NicoNicoNii Date: Wed, 17 Jul 2024 22:45:19 -0500 Subject: [PATCH] Add deadly dash attack sound effects and basic behavior --- .idea/AdventuresInLestoria.iml | 2 ++ Adventures in Lestoria/Checkbox.h | 1 - Adventures in Lestoria/Player.cpp | 13 +++++++++++++ Adventures in Lestoria/Player.h | 3 +++ Adventures in Lestoria/Thief.cpp | 8 ++++++++ .../assets/config/audio/events.txt | 12 ++++++++++++ .../assets/config/classes/Thief.txt | 2 +- .../assets/sounds/chargeup.ogg | Bin 0 -> 8583 bytes .../assets/sounds/deadlydash.ogg | Bin 0 -> 19522 bytes 9 files changed, 39 insertions(+), 2 deletions(-) create mode 100644 .idea/AdventuresInLestoria.iml create mode 100644 Adventures in Lestoria/assets/sounds/chargeup.ogg create mode 100644 Adventures in Lestoria/assets/sounds/deadlydash.ogg diff --git a/.idea/AdventuresInLestoria.iml b/.idea/AdventuresInLestoria.iml new file mode 100644 index 00000000..f08604bb --- /dev/null +++ b/.idea/AdventuresInLestoria.iml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/Adventures in Lestoria/Checkbox.h b/Adventures in Lestoria/Checkbox.h index ec436a03..f971f8e7 100644 --- a/Adventures in Lestoria/Checkbox.h +++ b/Adventures in Lestoria/Checkbox.h @@ -81,7 +81,6 @@ public: if(checked){ const vf2d scale{GetSize()/GFX["checkmark.png"].Sprite()->Size()}; - LOG(std::format("{} / {} / {}",GFX["checkmark.png"].Sprite()->Size().str(),GetSize().str(),scale.str())); window.DrawDecal(rect.pos,GFX["checkmark.png"].Decal(),scale); } } diff --git a/Adventures in Lestoria/Player.cpp b/Adventures in Lestoria/Player.cpp index 2fc02d60..30ef48ef 100644 --- a/Adventures in Lestoria/Player.cpp +++ b/Adventures in Lestoria/Player.cpp @@ -488,6 +488,19 @@ void Player::Update(float fElapsedTime){ SetState(State::NORMAL); } }break; + case State::DEADLYDASH:{ + deadlyDashWaitTimer-=fElapsedTime; + deadlyDashAfterDashTimer-=fElapsedTime; + if(deadlyDashWaitTimer<=0.f){ + deadlyDashWaitTimer=INFINITY; + } + if(deadlyDashAfterDashTimer<=0.f){ + deadlyDashAfterDashTimer=INFINITY; + SoundEffect::PlaySFX("Deadly Dash",GetPos()); + SetPos(deadlyDashEndingPos); + SetState(State::NORMAL); + } + }break; default:{ spin_angle=0.f; ySquishFactor=1.f; diff --git a/Adventures in Lestoria/Player.h b/Adventures in Lestoria/Player.h index be33e1ea..843c1b7d 100644 --- a/Adventures in Lestoria/Player.h +++ b/Adventures in Lestoria/Player.h @@ -354,6 +354,9 @@ private: float rangerShootAnimationTimer=0.f; Renderable minimapImg; //An image of the character represented on a minimap. Should be 12x12 and generally be a circle. void CheckAndPerformAbility(Ability&ability,InputGroup key); + float deadlyDashWaitTimer{}; + float deadlyDashAfterDashTimer{}; + vf2d deadlyDashEndingPos{}; protected: const float ATTACK_COOLDOWN="Warrior.Auto Attack.Cooldown"_F; const float MAGIC_ATTACK_COOLDOWN="Wizard.Auto Attack.Cooldown"_F; diff --git a/Adventures in Lestoria/Thief.cpp b/Adventures in Lestoria/Thief.cpp index 9ab2c250..4d160eb9 100644 --- a/Adventures in Lestoria/Thief.cpp +++ b/Adventures in Lestoria/Thief.cpp @@ -143,7 +143,15 @@ void Thief::InitializeClassAbilities(){ p->ApplyIframes("Thief.Ability 2.Initial Wait"_F+"Thief.Ability 2.Ending Wait"_F); geom2d::line mouseDir{p->GetPos(),p->GetWorldAimingLocation()}; p->SetAnimationBasedOnTargetingDirection("DEADLYDASH",mouseDir.vector().polar().y); + SoundEffect::PlaySFX("Charge Up",p->GetPos()); + + vf2d clampedMousePolarDir{util::pointTo(p->GetPos(),p->GetWorldAimingLocation()).polar()}; + clampedMousePolarDir.x=std::max(24.f,mouseDir.length()); + + p->deadlyDashEndingPos=p->GetPos()+clampedMousePolarDir.cart(); p->SetState(State::DEADLYDASH); + p->deadlyDashWaitTimer="Thief.Ability 2.Initial Wait"_F; + p->deadlyDashAfterDashTimer=p->deadlyDashWaitTimer+"Thief.Ability 2.Ending Wait"_F; return true; }; #pragma endregion diff --git a/Adventures in Lestoria/assets/config/audio/events.txt b/Adventures in Lestoria/assets/config/audio/events.txt index 7899e219..0e6dd45d 100644 --- a/Adventures in Lestoria/assets/config/audio/events.txt +++ b/Adventures in Lestoria/assets/config/audio/events.txt @@ -29,6 +29,12 @@ Events # Specify file names, followed by volume %. Optional min and max pitch adjustment (Defaults are 90%,110%) File[0] = changevolume.ogg, 50%, 60%, 60% } + Charge Up + { + CombatSound = True + # Specify file names, followed by volume %. Optional min and max pitch adjustment (Defaults are 90%,110%) + File[0] = chargeup.ogg, 70% + } Consume Potion { # Specify file names, followed by volume %. Optional min and max pitch adjustment (Defaults are 90%,110%) @@ -49,6 +55,12 @@ Events # Specify file names, followed by volume %. Optional min and max pitch adjustment (Defaults are 90%,110%) File[0] = craft_equip.ogg, 70% } + Deadly Dash + { + CombatSound = True + # Specify file names, followed by volume %. Optional min and max pitch adjustment (Defaults are 90%,110%) + File[0] = deadlydash.ogg, 60%, 70%, 80% + } Dig { CombatSound = True diff --git a/Adventures in Lestoria/assets/config/classes/Thief.txt b/Adventures in Lestoria/assets/config/classes/Thief.txt index 4ce325a7..72fc9239 100644 --- a/Adventures in Lestoria/assets/config/classes/Thief.txt +++ b/Adventures in Lestoria/assets/config/classes/Thief.txt @@ -23,7 +23,7 @@ Thief SwordAnimationSwingTime = 0.2s SwordSlashLingerTime = 0.125s #Sweep angle of the sword slash (in both directions) - SwordSlashSweepAngle = 45° + SwordSlashSweepAngle = 45� } Right Click Ability diff --git a/Adventures in Lestoria/assets/sounds/chargeup.ogg b/Adventures in Lestoria/assets/sounds/chargeup.ogg new file mode 100644 index 0000000000000000000000000000000000000000..cf5897a091895568ad575724680d146c3f1dccea GIT binary patch literal 8583 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 literal 0 HcmV?d00001 diff --git a/Adventures in Lestoria/assets/sounds/deadlydash.ogg b/Adventures in Lestoria/assets/sounds/deadlydash.ogg new file mode 100644 index 0000000000000000000000000000000000000000..a2038f2344b165d524ad9009d1a330688a375433 GIT binary patch literal 19522 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