X-Git-Url: https://git.jsancho.org/?a=blobdiff_plain;f=Source%2FGame.cpp;h=0fe8e53fea2da730f42650ce8bf25e8d05cf28f5;hb=d5f64d3689e1ce594e22ad0f6d372cee143872fd;hp=5b816b54bd7349350c4637dd9c571629f64a7476;hpb=ad46a578f2879eef5c1ee922ab22922e1f7988f2;p=lugaru.git diff --git a/Source/Game.cpp b/Source/Game.cpp index 5b816b5..0fe8e53 100644 --- a/Source/Game.cpp +++ b/Source/Game.cpp @@ -18,33 +18,14 @@ You should have received a copy of the GNU General Public License along with Lugaru. If not, see . */ -#include "Game.h" -#include "openal_wrapper.h" -#include "SDL_thread.h" +#include "Game.hpp" -extern int mainmenu; +#include "Audio/openal_wrapper.hpp" +#include "Level/Dialog.hpp" + +#include -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 participantyaw[max_dialogues][10]; -XYZ participantfacing[max_dialogues][max_dialoguelength][10]; -float dialoguecamerayaw[max_dialogues][max_dialoguelength]; -float dialoguecamerapitch[max_dialogues][max_dialoguelength]; -int indialogue; -int whichdialogue; -int directing; -float dialoguetime; -int dialoguegonethrough[20]; +extern int mainmenu; const char *pathtypenames[] = {"keepwalking", "pause"}; const char *editortypenames[] = { @@ -83,12 +64,14 @@ float yaw = 0; float pitch = 0; SkyBox *skybox = NULL; bool cameramode = 0; -bool firstload = 0; +bool firstLoadDone = false; Texture hawktexture; float hawkyaw = 0; float hawkcalldelay = 0; + float leveltime = 0; +float wonleveltime = 0; float loadtime = 0; Model hawk; @@ -107,6 +90,7 @@ XYZ mapcenter; float mapradius = 0; Text *text = NULL; +Text *textmono = NULL; float fps = 0; bool editorenabled = 0; @@ -129,11 +113,6 @@ int numchallengelevels = 0; bool console = false; std::string consoletext[15] = {}; -std::string displaytext[15] = {}; -float displaytime[15] = {}; -float displayblinkdelay = 0; -bool displayblink = 0; -unsigned displayselected = 0; float consoleblinkdelay = 0; bool consoleblink = 0; unsigned consoleselected = 0; @@ -148,7 +127,6 @@ int targetlevel = 0; float changedelay = 0; bool waiting = false; -Account* accountactive = NULL; } void Game::fireSound(int sound) @@ -213,76 +191,3 @@ void Game::inputText(string& str, unsigned* charselected) SDL_StopTextInput(); } } - -int setKeySelected_thread(void* data) -{ - using namespace Game; - int scancode = -1; - SDL_Event evenement; - while (scancode == -1) { - SDL_WaitEvent(&evenement); - switch (evenement.type) { - case SDL_KEYDOWN: - scancode = evenement.key.keysym.scancode; - break; - case SDL_MOUSEBUTTONDOWN: - scancode = SDL_NUM_SCANCODES + evenement.button.button; - break; - default: - break; - } - } - if (scancode != SDL_SCANCODE_ESCAPE) { - fireSound(); - switch (keyselect) { - case 0: - forwardkey = scancode; - break; - case 1: - backkey = scancode; - break; - case 2: - leftkey = scancode; - break; - case 3: - rightkey = scancode; - break; - case 4: - crouchkey = scancode; - break; - case 5: - jumpkey = scancode; - break; - case 6: - drawkey = scancode; - break; - case 7: - throwkey = scancode; - break; - case 8: - attackkey = scancode; - break; - case 9: - consolekey = scancode; - break; - default: - break; - } - } - keyselect = -1; - waiting = false; - LoadMenu(); - return 0; -} - -void Game::setKeySelected() -{ - waiting = true; - printf("launch thread\n"); - SDL_Thread* thread = SDL_CreateThread(setKeySelected_thread, NULL, NULL); - if ( thread == NULL ) { - fprintf(stderr, "Unable to create thread: %s\n", SDL_GetError()); - waiting = false; - return; - } -}