From 6363457d0f25d988b3c194ef1a58b7657a23e22c Mon Sep 17 00:00:00 2001 From: "Zed A. Shaw" Date: Sun, 28 Apr 2024 19:43:59 -0400 Subject: [PATCH] Add a little click sound to test out sounds. --- sfmldemo/click.mp3 | Bin 0 -> 4440 bytes sfmldemo/main.cpp | 17 +++++++++++++++-- 2 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 sfmldemo/click.mp3 diff --git a/sfmldemo/click.mp3 b/sfmldemo/click.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..903f0365499cff6eccf7968b337c47c6ee4be59a GIT binary patch literal 4440 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 R0cMYHC1`XY?EpY+@IMm!aEkx{ literal 0 HcmV?d00001 diff --git a/sfmldemo/main.cpp b/sfmldemo/main.cpp index da90068..1136506 100644 --- a/sfmldemo/main.cpp +++ b/sfmldemo/main.cpp @@ -8,6 +8,7 @@ #include #include #include +#include #include void ImGui_setup(sf::RenderWindow &window) { @@ -72,7 +73,7 @@ struct BoxTest Box2d_setup(b2World &world) { } -void Handle_events(sf::RenderWindow &window, BoxTest &box) { +void Handle_events(sf::RenderWindow &window, BoxTest &box, sf::Sound &click) { sf::Event event; // is this a main event loop @@ -90,10 +91,12 @@ void Handle_events(sf::RenderWindow &window, BoxTest &box) { b2Vec2 force(-200, 1000); box.body->ApplyForceToCenter(force, true); box.body->ApplyTorque(100.0f, true); + click.play(); } else if(sf::Keyboard::isKeyPressed(sf::Keyboard::Right)) { b2Vec2 force(200, 1000); box.body->ApplyForceToCenter(force, true); box.body->ApplyTorque(-100.0f, true); + click.play(); } break; case sf::Event::MouseButtonPressed: @@ -101,10 +104,12 @@ void Handle_events(sf::RenderWindow &window, BoxTest &box) { b2Vec2 force(-200, 1000); box.body->ApplyForceToCenter(force, true); box.body->ApplyTorque(100.0f, true); + click.play(); } else if (sf::Mouse::isButtonPressed(sf::Mouse::Right)) { b2Vec2 force(200, 1000); box.body->ApplyForceToCenter(force, true); box.body->ApplyTorque(-100.0f, true); + click.play(); } break; } @@ -152,11 +157,19 @@ int main() { fmt::print("Setting up a window for you...\n"); sf::ContextSettings settings; settings.antialiasingLevel = 8; + sf::RenderWindow window(sf::VideoMode(1920, 1080), "Simple Game Demo", sf::Style::Default, settings); window.setFramerateLimit(60); window.setVerticalSyncEnabled(true); ImGui_setup(window); + sf::SoundBuffer buffer; + if(!buffer.loadFromFile("click.mp3")) { + fmt::print("Failed to load click.ogg!\n"); + } + sf::Sound click; + click.setBuffer(buffer); + sf::Clock deltaClock; sf::Clock clock; sf::Time tick = clock.getElapsedTime(); @@ -170,7 +183,7 @@ int main() { BoxTest box = Box2d_setup(world); while (window.isOpen()) { - Handle_events(window, box); + Handle_events(window, box, click); // preparing for refactoring this into a class or struct for everything tick = Update_entities(window, world, clock, deltaClock, tick, box, player); }