| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- // The general flow of a gane - server's creation, loading and hosting clients, and then destruction is as follows:
- // First, a client will always create a server in the event that they want to host a single player
- // game. Torque3D treats even single player connections as a soft multiplayer game, with some stuff
- // in the networking short-circuited to sidestep around lag and packet transmission times.
- // initServer() is called, loading the default server scripts.
- // After that, if this is a dedicated server session, initDedicated() is called, otherwise initClient is called
- // to prep a playable client session.
- // When a local game is started - a listen server - via calling StartGame() a server is created and then the client is
- // connected to it via createAndConnectToLocalServer().
- function UI::onCreate( %this )
- {
- exec("./scripts/utility");
- // create and set as core a defaultTable LanguageTable for localization purposes
- // example usage for quick language appending
- // addLanguage("defaultTable","check","ch");
- // addLanguage("defaultTable","try","tr");
- createLangTable("defaultTable");
- setCoreLangTable("defaultTable");
- exec("./langs/languageMap");
- }
- function UI::onDestroy( %this )
- {
- }
- function UI::initServer(%this){}
- function UI::onCreateGameServer(%this){}
- function UI::onDestroyGameServer(%this){}
- function UI::initClient(%this)
- {
- //Load UI stuff
- //Profiles
- %this.queueExec("./scripts/profiles");
- %this.queueExec("./guis/mainMenu");
- %this.queueExec("./guis/mainMenu.gui");
-
- %this.queueExec("./guis/ChooseLevelMenu");
- %this.queueExec("./guis/ChooseLevelMenu.gui");
-
- %this.queueExec("./guis/joinServerMenu");
- %this.queueExec("./guis/joinServerMenu.gui");
-
- %this.queueExec("./guis/loadingGui.gui");
-
- %this.queueExec("./guis/optionsMenu");
- %this.queueExec("./guis/optionsMenu.gui");
-
- %this.queueExec("./guis/GameMenu");
- %this.queueExec("./guis/GameMenu.gui");
-
- %this.queueExec("./guis/remapDlg");
- %this.queueExec("./guis/remapDlg.gui");
- %this.queueExec("./guis/remapConfirmDlg.gui");
-
- %this.queueExec("./guis/profiler");
- %this.queueExec("./guis/profiler.gui");
-
- %this.queueExec("./guis/netGraphGui.gui");
-
- %this.queueExec("./guis/startupGui");
- %this.queueExec("./guis/startupGui.gui");
-
- %this.queueExec("./guis/messageBoxDlg");
- %this.queueExec("./guis/messageBoxDlg.gui");
-
- %this.queueExec("./guis/SystemMenu");
- %this.queueExec("./guis/SystemMenu.gui");
-
- //Load scripts
- %this.queueExec("./scripts/controlsMenu");
- %this.queueExec("./scripts/cursors");
-
- if(isToolBuild())
- %this.queueExec("./tools/creator.tscript");
-
- //GameMenu actionmap
- %this.queueExec("./scripts/defaultKeybinds.tscript");
- }
- function UI::onCreateClientConnection(%this)
- {
- GameMenuToggleActionMap.push();
- }
- function UI::onDestroyClientConnection(%this)
- {
- GameMenuToggleActionMap.pop();
- }
- function UI::registerGameMenus(%this, %menusArrayObj)
- {
- %menusArrayObj.add("System", SystemMenu);
- }
|