X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2FGameInitDispose.cpp;h=02b0c93cf1124638a1cfb341bcb612991cb039ca;hb=617a36f729718c59c2f886fd4a1d145388e7c8bc;hp=402c76113e8f21bb07c1814ba84994378d17986a;hpb=cd46cab54acd39ff8c02b204844f1ce53fd2edbc;p=lugaru.git diff --git a/Source/GameInitDispose.cpp b/Source/GameInitDispose.cpp index 402c761..02b0c93 100644 --- a/Source/GameInitDispose.cpp +++ b/Source/GameInitDispose.cpp @@ -21,6 +21,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. #include "Game.h" #include "openal_wrapper.h" +#include "Animation.h" extern float screenwidth,screenheight; extern float viewdistance; @@ -31,13 +32,11 @@ extern float fadestart; extern float texscale; extern float gravity; extern Light light; -extern Animation animation[animation_count]; extern Skeleton testskeleton; extern int numsounds; -extern OPENAL_SAMPLE *samp[100]; extern int channels[100]; extern Terrain terrain; -extern Sprites sprites; +//extern Sprites sprites; extern int kTextureSize; extern float texdetail; extern float realtexdetail; @@ -165,7 +164,6 @@ void Game::Dispose() } -//void Game::LoadSounds(); void Game::LoadSounds() { LOGFUNC; @@ -176,189 +174,8 @@ void Game::LoadSounds() OPENAL_SetSFXMasterVolume((int)(volume*255)); - samp[footstepsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:footstepsnow1.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[footstepsound], 4.0f, 1000.0f); - - samp[footstepsound2] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:footstepsnow2.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[footstepsound2], 4.0f, 1000.0f); - - samp[footstepsound3] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:footstepstone1.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[footstepsound3], 4.0f, 1000.0f); - - samp[footstepsound4] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:footstepstone2.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[footstepsound4], 4.0f, 1000.0f); - - samp[landsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:land.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[landsound], 4.0f, 1000.0f); - - samp[jumpsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:jump.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[jumpsound], 4.0f, 1000.0f); - - samp[hawksound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:hawk.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[hawksound], 40.0f, 10000.0f); - - samp[whooshsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:whoosh.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[whooshsound], 4.0f, 1000.0f); - OPENAL_Sample_SetMode(samp[whooshsound], OPENAL_LOOP_NORMAL); - - samp[landsound1] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:land1.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[landsound1], 4.0f, 1000.0f); - - - - samp[landsound2] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:land2.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[landsound2], 4.0f, 1000.0f); - - samp[breaksound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:broken.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[breaksound], 8.0f, 2000.0f); - - samp[lowwhooshsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:Lowwhoosh.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[lowwhooshsound], 8.0f, 2000.0f); - - samp[midwhooshsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:midwhoosh.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[midwhooshsound], 8.0f, 2000.0f); - - samp[highwhooshsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:highwhoosh.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[highwhooshsound], 8.0f, 2000.0f); - - samp[movewhooshsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:movewhoosh.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[movewhooshsound], 8.0f, 2000.0f); - - samp[heavyimpactsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:heavyimpact.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[heavyimpactsound], 8.0f, 2000.0f); - - samp[whooshhitsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:Whooshhit.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[whooshhitsound], 8.0f, 2000.0f); - - samp[thudsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:thud.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[thudsound], 8.0f, 2000.0f); - - samp[alarmsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:alarm.ogg"), OPENAL_2D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[alarmsound], 8.0f, 2000.0f); - - samp[breaksound2] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:break.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[breaksound2], 8.0f, 2000.0f); - - samp[knifedrawsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:knifedraw.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[knifedrawsound], 8.0f, 2000.0f); - - samp[knifesheathesound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:knifesheathe.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[knifesheathesound], 8.0f, 2000.0f); - - samp[fleshstabsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:Fleshstab.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[fleshstabsound], 8.0f, 2000.0f); - - samp[fleshstabremovesound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:Fleshstabremove.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[fleshstabremovesound], 8.0f, 2000.0f); - - samp[knifeswishsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:knifeswish.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[knifeswishsound], 8.0f, 2000.0f); - - samp[knifeslicesound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:knifeslice.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[knifeslicesound], 8.0f, 2000.0f); - - samp[swordslicesound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:swordslice.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[swordslicesound], 8.0f, 2000.0f); - - samp[skidsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:skid.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[skidsound], 8.0f, 2000.0f); - - samp[snowskidsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:snowskid.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[snowskidsound], 8.0f, 2000.0f); - - samp[bushrustle] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:bushrustle.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[bushrustle], 4.0f, 1000.0f); - - samp[clank1sound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:clank1.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[clank1sound], 8.0f, 2000.0f); - - samp[clank2sound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:clank2.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[clank2sound], 8.0f, 2000.0f); - - samp[clank3sound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:clank3.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[clank3sound], 8.0f, 2000.0f); - - samp[clank4sound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:clank4.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[clank4sound], 8.0f, 2000.0f); - - samp[consolesuccesssound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:consolesuccess.ogg"), OPENAL_2D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[consolesuccesssound], 4.0f, 1000.0f); - - samp[consolefailsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:consolefail.ogg"), OPENAL_2D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[consolefailsound], 4.0f, 1000.0f); - - samp[metalhitsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:MetalHit.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[metalhitsound], 8.0f, 2000.0f); - - samp[clawslicesound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:clawslice.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[clawslicesound], 8.0f, 2000.0f); - - samp[splattersound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:splatter.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[splattersound], 8.0f, 2000.0f); - - samp[growlsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:Growl.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[growlsound], 1000.0f, 2000.0f); - - samp[growl2sound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:Growl2.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[growl2sound], 1000.0f, 2000.0f); - - samp[barksound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:bark.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[barksound], 1000.0f, 2000.0f); - - samp[bark2sound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:bark2.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[bark2sound], 1000.0f, 2000.0f); - - samp[bark3sound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:bark3.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[bark3sound], 1000.0f, 2000.0f); - - samp[snarlsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:snarl.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[snarlsound], 1000.0f, 2000.0f); - - - samp[snarl2sound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:snarl2.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[snarl2sound], 1000.0f, 2000.0f); - - samp[barkgrowlsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:barkgrowl.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[barkgrowlsound], 1000.0f, 2000.0f); - - samp[rabbitattacksound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:rabbitattack.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[rabbitattacksound], 1000.0f, 2000.0f); - - samp[rabbitattack2sound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:rabbitattack2.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[rabbitattack2sound], 1000.0f, 2000.0f); - - samp[rabbitattack3sound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:rabbitattack3.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[rabbitattack3sound], 1000.0f, 2000.0f); - - samp[rabbitattack4sound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:rabbitattack4.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[rabbitattack4sound], 1000.0f, 2000.0f); - - samp[rabbitpainsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:rabbitpain.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[rabbitpainsound], 1000.0f, 2000.0f); - - samp[rabbitpain1sound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:rabbitpain2.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[rabbitpain1sound], 1000.0f, 2000.0f); - - /*samp[rabbitpain2sound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:rabbitpain2.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[rabbitpain2sound], 1000.0f, 2000.0f); - */ - samp[rabbitchitter] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:rabbitchitter.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[rabbitchitter], 1000.0f, 2000.0f); - - samp[rabbitchitter2] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:rabbitchitter2.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[rabbitchitter2], 1000.0f, 2000.0f); - - samp[swordstaffsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:swordstaff.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[swordstaffsound], 8.0f, 2000.0f); - - samp[staffbodysound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:staffbody.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[staffbodysound], 8.0f, 2000.0f); - - samp[staffheadsound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:staffhead.ogg"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[staffheadsound], 8.0f, 2000.0f); - - samp[staffbreaksound] = OPENAL_Sample_LoadEx(OPENAL_FREE, ConvertFileName(":Data:Sounds:staffbreak.wav"), OPENAL_HW3D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[staffbreaksound], 8.0f, 2000.0f); + if(visibleloading){LoadingScreen(); loadscreencolor=5;} + loadAllSounds(); } void Game::LoadTexture(const char *fileName, GLuint *textureid,int mipmap, bool hasalpha) @@ -393,7 +210,8 @@ void Game::LoadTexture(const char *fileName, GLuint *textureid,int mipmap, bool glPixelStorei( GL_UNPACK_ALIGNMENT, 1 ); - if(!*textureid)glGenTextures( 1, textureid ); + if(!*textureid) + glGenTextures( 1, textureid ); glTexEnvi( GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE ); glBindTexture( GL_TEXTURE_2D, *textureid); @@ -401,20 +219,9 @@ void Game::LoadTexture(const char *fileName, GLuint *textureid,int mipmap, bool if(trilinear)if(mipmap)glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR ); if(!trilinear)if(mipmap)glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST ); if(!mipmap)glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR ); - - //glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, texture.sizeX, texture.sizeY, 0, - // GL_BGRA_EXT, GL_UNSIGNED_INT_8_8_8_8_REV, texture.data); - - //gluBuild2DMipmaps( GL_TEXTURE_2D, type, texture.sizeX, texture.sizeY, GL_BGRA_EXT, GL_UNSIGNED_INT_8_8_8_8_REV, texture.data ); - + gluBuild2DMipmaps( GL_TEXTURE_2D, type, texture.sizeX, texture.sizeY, type, GL_UNSIGNED_BYTE, texture.data ); - -// textures.insert(std::make_pair(fname, *textureid)); } -// else -// { -// *textureid = it->second; -// } } void Game::LoadTextureSave(const char *fileName, GLuint *textureid,int mipmap,GLubyte *array, int *skinsize) @@ -1050,11 +857,7 @@ void Game::InitGame() //terraindetail=2; } - for (int it = 0; it < 100; ++it) - { - channels[it] = -1; - samp[it] = NULL; - } + memset(channels, 0xff, sizeof(channels)); for (int it = 0; it < 20; ++it) { strm[it] = NULL; @@ -1126,18 +929,12 @@ void Game::InitGame() FadeLoadingScreen(40); - samp[firestartsound] = OPENAL_Sample_Load(OPENAL_FREE, ConvertFileName(":Data:Sounds:firestart.ogg"), OPENAL_2D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[firestartsound], 8.0f, 2000.0f); - strm[stream_firesound] = OPENAL_Stream_Open(ConvertFileName(":Data:Sounds:fire.ogg"), OPENAL_2D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} // OPENAL_Sample_SetMinMaxDistance(strm[stream_firesound], 8.0f, 2000.0f); OPENAL_Stream_SetMode(strm[stream_firesound], OPENAL_LOOP_NORMAL); FadeLoadingScreen(50); - samp[fireendsound] = OPENAL_Sample_Load(OPENAL_FREE, ConvertFileName(":Data:Sounds:fireend.ogg"), OPENAL_2D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=5;} - OPENAL_Sample_SetMinMaxDistance(samp[fireendsound], 8.0f, 2000.0f); - //if(musictoggle){ strm[stream_music1grass] = OPENAL_Stream_Open(ConvertFileName(":Data:Sounds:music1grass.mp3"), OPENAL_2D, 0, 0); if(visibleloading){LoadingScreen(); loadscreencolor=1;} // OPENAL_Sample_SetMinMaxDistance(strm[stream_music1grass], 4.0f, 1000.0f); @@ -1338,19 +1135,19 @@ void Game::LoadStuff() LoadTexture(":Data:Textures:bodyprint.png",&terrain.bodyprinttexture,0,1); - /*LoadTexture(":Data:Textures:cloud.png",&sprites.cloudtexture,1); + /*LoadTexture(":Data:Textures:cloud.png",&Sprite::cloudtexture,1); - LoadTexture(":Data:Textures:cloudimpact.png",&sprites.cloudimpacttexture,1); + LoadTexture(":Data:Textures:cloudimpact.png",&Sprite::cloudimpacttexture,1); - LoadTexture(":Data:Textures:bloodparticle.png",&sprites.bloodtexture,1); + LoadTexture(":Data:Textures:bloodparticle.png",&Sprite::bloodtexture,1); - LoadTexture(":Data:Textures:snowflake.png",&sprites.snowflaketexture,1); + LoadTexture(":Data:Textures:snowflake.png",&Sprite::snowflaketexture,1); - LoadTexture(":Data:Textures:flame.png",&sprites.flametexture,1); + LoadTexture(":Data:Textures:flame.png",&Sprite::flametexture,1); - LoadTexture(":Data:Textures:smoke.png",&sprites.smoketexture,1); + LoadTexture(":Data:Textures:smoke.png",&Sprite::smoketexture,1); //texdetail=temptexdetail; - LoadTexture(":Data:Textures:shine.png",&sprites.shinetexture,1);*/ + LoadTexture(":Data:Textures:shine.png",&Sprite::shinetexture,1);*/ @@ -1362,17 +1159,17 @@ void Game::LoadStuff() //LoadTexture(":Data:Textures:box.jpg",&objects.boxtextureptr,1,0); - LoadTexture(":Data:Textures:cloud.png",&sprites.cloudtexture,1,1); - LoadTexture(":Data:Textures:cloudimpact.png",&sprites.cloudimpacttexture,1,1); - LoadTexture(":Data:Textures:bloodparticle.png",&sprites.bloodtexture,1,1); - LoadTexture(":Data:Textures:snowflake.png",&sprites.snowflaketexture,1,1); - LoadTexture(":Data:Textures:flame.png",&sprites.flametexture,1,1); - LoadTexture(":Data:Textures:bloodflame.png",&sprites.bloodflametexture,1,1); - LoadTexture(":Data:Textures:smoke.png",&sprites.smoketexture,1,1); - LoadTexture(":Data:Textures:shine.png",&sprites.shinetexture,1,0); - LoadTexture(":Data:Textures:splinter.png",&sprites.splintertexture,1,1); - LoadTexture(":Data:Textures:leaf.png",&sprites.leaftexture,1,1); - LoadTexture(":Data:Textures:tooth.png",&sprites.toothtexture,1,1); + LoadTexture(":Data:Textures:cloud.png",&Sprite::cloudtexture,1,1); + LoadTexture(":Data:Textures:cloudimpact.png",&Sprite::cloudimpacttexture,1,1); + LoadTexture(":Data:Textures:bloodparticle.png",&Sprite::bloodtexture,1,1); + LoadTexture(":Data:Textures:snowflake.png",&Sprite::snowflaketexture,1,1); + LoadTexture(":Data:Textures:flame.png",&Sprite::flametexture,1,1); + LoadTexture(":Data:Textures:bloodflame.png",&Sprite::bloodflametexture,1,1); + LoadTexture(":Data:Textures:smoke.png",&Sprite::smoketexture,1,1); + LoadTexture(":Data:Textures:shine.png",&Sprite::shinetexture,1,0); + LoadTexture(":Data:Textures:splinter.png",&Sprite::splintertexture,1,1); + LoadTexture(":Data:Textures:leaf.png",&Sprite::leaftexture,1,1); + LoadTexture(":Data:Textures:tooth.png",&Sprite::toothtexture,1,1); rotation=0; rotation2=0; @@ -1454,126 +1251,7 @@ void Game::LoadStuff() rabbitcoords=player[0].coords; rabbitcoords.y=terrain.getHeight(rabbitcoords.x,rabbitcoords.z); - animation[runanim].Load((char *)":Data:Animations:Run",middleheight,neutral); - - animation[bounceidleanim].Load((char *)":Data:Animations:Idle",middleheight,neutral); - animation[stopanim].Load((char *)":Data:Animations:Stop",middleheight,neutral); - - animation[jumpupanim].Load((char *)":Data:Animations:JumpUp",highheight,neutral); - animation[jumpdownanim].Load((char *)":Data:Animations:JumpDown",highheight,neutral); - - animation[landanim].Load((char *)":Data:Animations:Landing",lowheight,neutral); - animation[landhardanim].Load((char *)":Data:Animations:Landhard",lowheight,neutral); - animation[climbanim].Load((char *)":Data:Animations:Climb",lowheight,neutral); - animation[hanganim].Load((char *)":Data:Animations:Hangon",lowheight,neutral); - animation[spinkickanim].Load((char *)":Data:Animations:SpinKick",middleheight,normalattack); - - animation[getupfromfrontanim].Load((char *)":Data:Animations:GetUpFromFront",lowheight,neutral); - animation[getupfrombackanim].Load((char *)":Data:Animations:GetUpFromBack",lowheight,neutral); - animation[crouchanim].Load((char *)":Data:Animations:Crouch",lowheight,neutral); - animation[sneakanim].Load((char *)":Data:Animations:Sneak",lowheight,neutral); - animation[rollanim].Load((char *)":Data:Animations:Roll",lowheight,neutral); - animation[flipanim].Load((char *)":Data:Animations:Flip",highheight,neutral); - animation[frontflipanim].Load((char *)":Data:Animations:Flip",highheight,neutral); - animation[spinkickreversedanim].Load((char *)":Data:Animations:SpinKickCaught",middleheight,reversed); - - animation[spinkickreversalanim].Load((char *)":Data:Animations:SpinKickCatch",middleheight,reversal); - animation[lowkickanim].Load((char *)":Data:Animations:lowkick",middleheight,normalattack); - animation[sweepanim].Load((char *)":Data:Animations:sweep",lowheight,normalattack); - animation[sweepreversedanim].Load((char *)":Data:Animations:SweepCaught",lowheight,reversed); - animation[sweepreversalanim].Load((char *)":Data:Animations:SweepCatch",middleheight,reversal); - animation[rabbitkickanim].Load((char *)":Data:Animations:RabbitKick",middleheight,normalattack); - animation[rabbitkickreversedanim].Load((char *)":Data:Animations:RabbitKickCaught",middleheight,reversed); - animation[rabbitkickreversalanim].Load((char *)":Data:Animations:RabbitKickCatch",lowheight,reversal); - animation[upunchanim].Load((char *)":Data:Animations:Upunch",middleheight,normalattack); - animation[staggerbackhighanim].Load((char *)":Data:Animations:Staggerbackhigh",middleheight,neutral); - animation[upunchreversedanim].Load((char *)":Data:Animations:UpunchCaught",middleheight,reversed); - - animation[upunchreversalanim].Load((char *)":Data:Animations:UpunchCatch",middleheight,reversal); - animation[hurtidleanim].Load((char *)":Data:Animations:Hurtidle",middleheight,neutral); - animation[backhandspringanim].Load((char *)":Data:Animations:Backhandspring",middleheight,neutral); - animation[fightidleanim].Load((char *)":Data:Animations:Fightidle",middleheight,neutral); - animation[walkanim].Load((char *)":Data:Animations:Walk",middleheight,neutral); - - animation[fightsidestep].Load((char *)":Data:Animations:Fightsidestep",middleheight,neutral); - animation[killanim].Load((char *)":Data:Animations:Kill",middleheight,normalattack); - animation[sneakattackanim].Load((char *)":Data:Animations:Sneakattack",middleheight,reversal); - animation[sneakattackedanim].Load((char *)":Data:Animations:Sneakattacked",middleheight,reversed); - animation[drawrightanim].Load((char *)":Data:Animations:drawright",middleheight,neutral); - animation[knifeslashstartanim].Load((char *)":Data:Animations:slashstart",middleheight,normalattack); - animation[crouchdrawrightanim].Load((char *)":Data:Animations:crouchdrawright",lowheight,neutral); - animation[crouchstabanim].Load((char *)":Data:Animations:crouchstab",lowheight,normalattack); - - animation[knifefollowanim].Load((char *)":Data:Animations:slashfollow",middleheight,reversal); - animation[knifefollowedanim].Load((char *)":Data:Animations:slashfollowed",middleheight,reversed); - animation[knifethrowanim].Load((char *)":Data:Animations:knifethrow",middleheight,normalattack); - animation[removeknifeanim].Load((char *)":Data:Animations:removeknife",middleheight,neutral); - animation[crouchremoveknifeanim].Load((char *)":Data:Animations:crouchremoveknife",lowheight,neutral); - animation[jumpreversedanim].Load((char *)":Data:Animations:JumpCaught",middleheight,reversed); - animation[jumpreversalanim].Load((char *)":Data:Animations:JumpCatch",middleheight,reversal); - animation[staggerbackhardanim].Load((char *)":Data:Animations:Staggerbackhard",middleheight,neutral); - - animation[dropkickanim].Load((char *)":Data:Animations:Dropkick",middleheight,normalattack); - animation[winduppunchanim].Load((char *)":Data:Animations:Winduppunch",middleheight,normalattack); - animation[winduppunchblockedanim].Load((char *)":Data:Animations:Winduppunchblocked",middleheight,normalattack); - animation[blockhighleftanim].Load((char *)":Data:Animations:Blockhighleft",middleheight,normalattack); - animation[blockhighleftstrikeanim].Load((char *)":Data:Animations:Blockhighleftstrike",middleheight,normalattack); - animation[backflipanim].Load((char *)":Data:Animations:Backflip",highheight,neutral); - animation[walljumpbackanim].Load((char *)":Data:Animations:Walljumpback",highheight,neutral); - animation[walljumpfrontanim].Load((char *)":Data:Animations:Walljumpfront",highheight,neutral); - animation[rightflipanim].Load((char *)":Data:Animations:Rightflip",highheight,neutral); - animation[walljumprightanim].Load((char *)":Data:Animations:Walljumpright",highheight,neutral); - animation[leftflipanim].Load((char *)":Data:Animations:Leftflip",highheight,neutral); - animation[walljumpleftanim].Load((char *)":Data:Animations:Walljumpleft",highheight,neutral); - animation[walljumprightkickanim].Load((char *)":Data:Animations:Walljumprightkick",highheight,neutral); - animation[walljumpleftkickanim].Load((char *)":Data:Animations:Walljumpleftkick",highheight,neutral); - animation[knifefightidleanim].Load((char *)":Data:Animations:Knifefightidle",middleheight,neutral); - animation[knifesneakattackanim].Load((char *)":Data:Animations:Knifesneakattack",middleheight,reversal); - animation[knifesneakattackedanim].Load((char *)":Data:Animations:Knifesneakattacked",middleheight,reversed); - animation[swordfightidleanim].Load((char *)":Data:Animations:swordfightidle",middleheight,neutral); - animation[drawleftanim].Load((char *)":Data:Animations:drawleft",middleheight,neutral); - animation[swordslashanim].Load((char *)":Data:Animations:swordslash",middleheight,normalattack); - animation[swordgroundstabanim].Load((char *)":Data:Animations:swordgroundstab",lowheight,normalattack); - animation[dodgebackanim].Load((char *)":Data:Animations:dodgeback",middleheight,neutral); - animation[swordsneakattackanim].Load((char *)":Data:Animations:Swordsneakattack",middleheight,reversal); - animation[swordsneakattackedanim].Load((char *)":Data:Animations:Swordsneakattacked",middleheight,reversed); - animation[swordslashreversedanim].Load((char *)":Data:Animations:swordslashCaught",middleheight,reversed); - animation[swordslashreversalanim].Load((char *)":Data:Animations:swordslashCatch",middleheight,reversal); - animation[knifeslashreversedanim].Load((char *)":Data:Animations:knifeslashCaught",middleheight,reversed); - animation[knifeslashreversalanim].Load((char *)":Data:Animations:knifeslashCatch",middleheight,reversal); - animation[swordfightidlebothanim].Load((char *)":Data:Animations:swordfightidleboth",middleheight,neutral); - animation[swordslashparryanim].Load((char *)":Data:Animations:sworduprightparry",middleheight,normalattack); - animation[swordslashparriedanim].Load((char *)":Data:Animations:swordslashparried",middleheight,normalattack); - animation[wolfidle].Load((char *)":Data:Animations:Wolfidle",middleheight,neutral); - animation[wolfcrouchanim].Load((char *)":Data:Animations:Wolfcrouch",lowheight,neutral); - animation[wolflandanim].Load((char *)":Data:Animations:Wolflanding",lowheight,neutral); - animation[wolflandhardanim].Load((char *)":Data:Animations:Wolflandhard",lowheight,neutral); - animation[wolfrunanim].Load((char *)":Data:Animations:Wolfrun",middleheight,neutral); - animation[wolfrunninganim].Load((char *)":Data:Animations:Wolfrunning",middleheight,neutral); - animation[rabbitrunninganim].Load((char *)":Data:Animations:Rabbitrunning",middleheight,neutral); - animation[wolfstopanim].Load((char *)":Data:Animations:Wolfstop",middleheight,neutral); - animation[rabbittackleanim].Load((char *)":Data:Animations:Rabbittackle",middleheight,neutral); - animation[rabbittacklinganim].Load((char *)":Data:Animations:Rabbittackling",middleheight,reversal); - animation[rabbittackledbackanim].Load((char *)":Data:Animations:Rabbittackledback",middleheight,reversed); - animation[rabbittackledfrontanim].Load((char *)":Data:Animations:Rabbittackledfront",middleheight,reversed); - animation[wolfslapanim].Load((char *)":Data:Animations:Wolfslap",middleheight,normalattack); - animation[staffhitanim].Load((char *)":Data:Animations:StaffHit",middleheight,normalattack); - animation[staffgroundsmashanim].Load((char *)":Data:Animations:StaffGroundSmash",lowheight,normalattack); - animation[staffspinhitanim].Load((char *)":Data:Animations:Spinwhack",middleheight,normalattack); - animation[staffhitreversedanim].Load((char *)":Data:Animations:StaffHitCaught",middleheight,reversed); - animation[staffhitreversalanim].Load((char *)":Data:Animations:StaffHitCatch",middleheight,reversal); - animation[staffspinhitreversedanim].Load((char *)":Data:Animations:SpinWhackCaught",middleheight,reversed); - animation[staffspinhitreversalanim].Load((char *)":Data:Animations:SpinWhackCatch",middleheight,reversal); - - animation[sitanim].Load((char *)":Data:Animations:Sit",lowheight,neutral); - animation[sleepanim].Load((char *)":Data:Animations:Sleep",lowheight,neutral); - animation[talkidleanim].Load((char *)":Data:Animations:TalkIdle",middleheight,neutral); - - animation[sitwallanim].Load((char *)":Data:Animations:Dying",lowheight,neutral); - animation[dead1anim].Load((char *)":Data:Animations:Dead1",lowheight,neutral); - animation[dead2anim].Load((char *)":Data:Animations:Dead2",lowheight,neutral); - animation[dead3anim].Load((char *)":Data:Animations:Dead3",lowheight,neutral); - animation[dead4anim].Load((char *)":Data:Animations:Dead4",lowheight,neutral); + loadAllAnimations(); //Fix knife stab, too lazy to do it manually XYZ moveamount; moveamount=0; @@ -1688,200 +1366,3 @@ void Game::LoadStuff() visibleloading=0; } -Game::Game() -{ - terraintexture = 0; - terraintexture2 = 0; - terraintexture3 = 0; - screentexture = 0; - screentexture2 = 0; - logotexture = 0; - loadscreentexture = 0; - Maparrowtexture = 0; - Mapboxtexture = 0; - Mapcircletexture = 0; - cursortexture = 0; - - memset(Mainmenuitems, 0, sizeof(Mainmenuitems)); - - nummenuitems = 0; - - memset(startx, 0, sizeof(startx)); - memset(starty, 0, sizeof(starty)); - memset(endx, 0, sizeof(endx)); - memset(endy, 0, sizeof(endy)); - - memset(selectedlong, 0, sizeof(selectedlong)); - memset(offsetx, 0, sizeof(offsetx)); - memset(offsety, 0, sizeof(offsety)); - memset(movex, 0, sizeof(movex)); - memset(movey, 0, sizeof(movey)); - memset(endy, 0, sizeof(endy)); - - transition = 0; - anim = 0; - selected = 0; - loaddistrib = 0; - keyselect = 0; - indemo = 0; - - won = 0; - - entername = 0; - - memset(menustring, 0, sizeof(menustring)); - memset(registrationname, 0, sizeof(registrationname)); - registrationnumber = 0; - - newdetail = 0; - newscreenwidth = 0; - newscreenheight = 0; - - gameon = 0; - deltah = 0,deltav = 0; - mousecoordh = 0,mousecoordv = 0; - oldmousecoordh = 0,oldmousecoordv = 0; - rotation = 0,rotation2 = 0; - -// SkyBox skybox; - - cameramode = 0; - cameratogglekeydown = 0; - chattogglekeydown = 0; - olddrawmode = 0; - drawmode = 0; - drawmodetogglekeydown = 0; - explodetogglekeydown = 0; - detailtogglekeydown = 0; - firstload = 0; - oldbutton = 0; - - leveltime = 0; - loadtime = 0; - -// Model hawk; - -// XYZ hawkcoords; -// XYZ realhawkcoords; - - hawktexture = 0; - hawkrotation = 0; - hawkcalldelay = 0; -/* - Model eye; - Model iris; - Model cornea; -*/ - stealthloading = 0; - - campaignnumlevels = 0; - - memset(campaignmapname, 0, sizeof(campaignmapname)); - memset(campaigndescription, 0, sizeof(campaigndescription)); - memset(campaignchoosenext, 0, sizeof(campaignchoosenext)); - memset(campaignnumnext, 0, sizeof(campaignnumnext)); - memset(campaignnextlevel, 0, sizeof(campaignnextlevel)); - int campaignchoicesmade; - memset(campaignchoices, 0, sizeof(campaignchoices)); - memset(campaignlocationx, 0, sizeof(campaignlocationx)); - memset(campaignlocationy, 0, sizeof(campaignlocationy)); - memset(campaignlocationy, 0, sizeof(campaignlocationy)); - - campaignchoicenum = 0; - - memset(campaignchoicewhich, 0, sizeof(campaignchoicewhich)); - - whichchoice = 0; - - numlevelspassed = 0; - - memset(levelorder, 0, sizeof(levelorder)); - memset(levelvisible, 0, sizeof(levelvisible)); - memset(levelhighlight, 0, sizeof(levelhighlight)); - - minimap = 0; - - musictype = 0,oldmusictype = 0,oldoldmusictype = 0; - realthreat = 0; - -// Model rabbit; -// XYZ rabbitcoords; - -// XYZ mapcenter; - mapradius = 0; - -// Text text; - fps = 0; - -// XYZ cameraloc; - cameradist = 0; - - envtogglekeydown = 0; - slomotogglekeydown = 0; - texturesizetogglekeydown = 0; - freezetogglekeydown = 0; - drawtoggle = 0; - - editorenabled = 0; - editortype = 0; - editorsize = 0; - editorrotation = 0; - editorrotation2 = 0; - - brightness = 0; - - quit = 0; - tryquit = 0; - -// XYZ pathpoint[30]; - numpathpoints = 0; - memset(numpathpointconnect, 0, sizeof(numpathpointconnect)); - memset(pathpointconnect, 0, sizeof(pathpointconnect)); - pathpointselected = 0; - - endgame = 0; - scoreadded = 0; - numchallengelevels = 0; - - console = 0; - archiveselected = 0; - - memset(consoletext, 0, sizeof(consoletext)); - memset(consolechars, 0, sizeof(consolechars)); - chatting = 0; - memset(displaytext, 0, sizeof(displaytext)); - memset(displaychars, 0, sizeof(displaychars)); - memset(displaytime, 0, sizeof(displaytime)); - displayblinkdelay = 0; - displayblink = 0; - displayselected = 0; - consolekeydown = 0; - consoletogglekeydown = 0; - consoleblinkdelay = 0; - consoleblink = 0; - consoleselected = 0; - memset(togglekey, 0, sizeof(togglekey)); - memset(togglekeydelay, 0, sizeof(togglekeydelay)); - registernow = 0; - autocam = 0; - - crouchkey = 0,jumpkey = 0,forwardkey = 0,chatkey = 0,backkey = 0,leftkey = 0,rightkey = 0,drawkey = 0,throwkey = 0,attackkey = 0; - oldattackkey = 0; - - loading = 0; - talkdelay = 0; - - numboundaries = 0; -// XYZ boundary[360]; - - whichlevel = 0; - oldenvironment = 0; - targetlevel = 0; - changedelay = 0; - - memset(musicvolume, 0, sizeof(musicvolume)); - memset(oldmusicvolume, 0, sizeof(oldmusicvolume)); - musicselected = 0; - change = 0; -} -