X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2FGame.cpp;h=c3c846d8bce2a8fd6e878c2f22f4c15062cc271a;hb=7602f0f320a55597c79cdbee252658d601ca1853;hp=524009d2500b504846f927c4223147d5fba8fe47;hpb=735daf95aba0eef54d151daae01285f0959825d0;p=lugaru.git diff --git a/Source/Game.cpp b/Source/Game.cpp index 524009d..c3c846d 100644 --- a/Source/Game.cpp +++ b/Source/Game.cpp @@ -3,11 +3,28 @@ #include "SDL_thread.h" extern int mainmenu; -extern OPENAL_SAMPLE *samp[100]; -extern int channels[100]; -extern "C" void PlaySoundEx(int channel, OPENAL_SAMPLE *sptr, OPENAL_DSPUNIT *dsp, signed char startpaused); - +int numdialogues; +int numdialogueboxes[max_dialogues]; +int dialoguetype[max_dialogues]; +int dialogueboxlocation[max_dialogues][max_dialoguelength]; +float dialogueboxcolor[max_dialogues][max_dialoguelength][3]; +int dialogueboxsound[max_dialogues][max_dialoguelength]; +char dialoguetext[max_dialogues][max_dialoguelength][128]; +char dialoguename[max_dialogues][max_dialoguelength][64]; +XYZ dialoguecamera[max_dialogues][max_dialoguelength]; +XYZ participantlocation[max_dialogues][10]; +int participantfocus[max_dialogues][max_dialoguelength]; +int participantaction[max_dialogues][max_dialoguelength]; +float participantrotation[max_dialogues][10]; +XYZ participantfacing[max_dialogues][max_dialoguelength][10]; +float dialoguecamerarotation[max_dialogues][max_dialoguelength]; +float dialoguecamerarotation2[max_dialogues][max_dialoguelength]; +int indialogue; +int whichdialogue; +int directing; +float dialoguetime; +int dialoguegonethrough[20]; Game::Game() { @@ -183,7 +200,6 @@ Game::Game() 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; @@ -219,14 +235,7 @@ typedef struct { } params_thread; void Game::fireSound(int sound) { - float gLoc[3]={0,0,0}; - float vel[3]={0,0,0}; - OPENAL_Sample_SetMinMaxDistance(samp[sound], 9999.0f, 99999.0f); - PlaySoundEx( sound, samp[sound], NULL, true); - OPENAL_3D_SetAttributes(channels[sound], gLoc, vel); - OPENAL_SetVolume(channels[sound], 256); - OPENAL_SetPaused(channels[sound], false); - OPENAL_Sample_SetMinMaxDistance(samp[sound], 8.0f, 2000.0f); + emit_sound_at(sound); } void Game::inputText(char* str, int* charselected, int* nb_chars) { @@ -355,3 +364,12 @@ int Game::thread(void *data) { (pt->game->*(pt->method))(); } } + +void Game::DrawGL() { + if ( stereomode == stereoNone ) { + DrawGLScene(stereoCenter); + } else { + DrawGLScene(stereoLeft); + DrawGLScene(stereoRight); + } +}