]> git.jsancho.org Git - lugaru.git/blobdiff - Source/Skeleton.cpp
Cleanup sound loading
[lugaru.git] / Source / Skeleton.cpp
index 878bcbe13511cc6ec54d317c146abe447246c94a..9683f5572cd983f5a20fb319a89dbcfd3a6ed9cf 100644 (file)
@@ -23,12 +23,12 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 #include "Game.h"
 #include "Skeleton.h"
 #include "openal_wrapper.h"
+#include "Animation.h"
 
 extern float multiplier;
 extern float gravity;
 extern Skeleton testskeleton;
 extern Terrain terrain;
-extern OPENAL_SAMPLE   *samp[100];
 extern int channels[100];
 extern Objects objects;
 extern int environment;
@@ -1007,17 +1007,24 @@ void Skeleton::FindRotationMuscle(int which, int animation)
        if(!isnormal(muscles[which].rotate3))muscles[which].rotate3=0;
 }
 
-void Animation::Load(char *filename, int aheight, int aattack)
+void Animation::Load(const char *filename, int aheight, int aattack)
 {
        static FILE *tfile;
        static int i,j;
        static XYZ startoffset,endoffset;
        static int howmany;
 
+       static const char *anim_prefix = ":Data:Animations:";
+
+
        LOGFUNC;
 
+       int len = strlen(anim_prefix) + strlen(filename);
+       char *buf = new char[len + 1];
+       snprintf(buf, len + 1, "%s%s", anim_prefix, filename);
        // Changing the filename into something the OS can understand
-       char *fixedFN = ConvertFileName(filename);
+       char *fixedFN = ConvertFileName(buf);
+       delete[] buf;
 
        LOG(std::string("Loading animation...") + fixedFN);