]> Dogcows Code - chaz/yoink/blobdiff - src/GameLayer.cc
fixed some resource management bugs
[chaz/yoink] / src / GameLayer.cc
index 2518bdf7971c339739c018f7e8e87835cc6747b6..54e40687cfdae138a94814abae26251ac5785e7a 100644 (file)
@@ -9,6 +9,8 @@
 *
 **************************************************************************/
 
+#include "config.h"
+
 #include <stdexcept>
 
 #include <moof/log.hh>
 
 #include "GameLayer.hh"
 
-#if HAVE_CONFIG_H
-#include "config.h"
-#endif
-
 
 void GameLayer::loadSceneLoader()
 {
        state_.script.import_standard_libraries();
        moof::log::import(state_.script);
 
-       std::string path("loader");
-       if (!moof::resource::find(path))
+       std::string path = moof::resource::find_file("scenes/loader.lua");
+       if (path.empty())
        {
                throw std::runtime_error("cannot find scene loader script");
        }
@@ -82,15 +80,10 @@ void GameLayer::advanceScene(moof::settings& settings)
 GameLayer::GameLayer()
 {
        moof::log_info("about to load sound resource...");
-       music_ = moof::resource::load("sounds/NightFusionIntro.ogg");
-       if (music_)
-       {
-               music_->loop(true);
-               music_->enqueue("NightFusionLoop");
-       }
-       else moof::log_error("music not loaded");
-
-       //music_->position(moof::vector3(10.0, 5.0, 0.0));
+       music_.sample("sounds/NightFusionIntro.ogg");
+       music_.loop(true);
+       music_.enqueue("sounds/NightFusionLoop.ogg");
+       music_.position(moof::vector3(10.0, 5.0, 0.0));
 
        mThinkTimer.init(boost::bind(&GameLayer::thinkTimer, this),
                        0.1, moof::timer::repeat);
@@ -106,7 +99,7 @@ void GameLayer::did_add_to_view()
 {
        bool isMute = false;
        settings().get("nomusic", isMute);
-       if (!isMute) music_->play();
+       music_.stream();
 
        loadSceneLoader();
        advanceScene(settings());               // load the first scene
@@ -194,7 +187,7 @@ void GameLayer::draw(moof::scalar alpha) const
        state_.camera.upload_to_gl(alpha);
 
        // DRAW THE SCENE
-       moof::texture::reset_binding();
+       moof::image::reset_binding();
 
        glEnableClientState(GL_VERTEX_ARRAY);
        glEnableClientState(GL_TEXTURE_COORD_ARRAY);
@@ -220,12 +213,12 @@ bool GameLayer::handle_event(const moof::event& event)
                        {
                                state_.heroine->animation.startSequence("Flattened");
                                moof::log_info("thump!");
-                               //mPunchSound.play();
+                               punch_sound_.play();
                                return true;
                        }
                        else if (event.key.keysym.sym == SDLK_m)
                        {
-                               music_->toggle();
+                               music_.toggle();
                                return true;
                        }
                        else if (event.key.keysym.sym == SDLK_PAGEUP)
This page took 0.018175 seconds and 4 git commands to generate.