Commit Graph

391 Commits (07541d0bbb03e8b3f3871e9ea8fe19e925e22a66)

Author SHA1 Message Date
krzys-h e0fcaf3a64 Disable logging to file
This causes the log to not be displayed in console, and the commit that was supposed to fix that was reverted because it fails to compile on our build server for some reason
2016-01-30 16:51:12 +01:00
krzys-h 76c43cddb2 Rename CSoundInterface::AddMusicFiles to CacheCommonMusic 2016-01-24 21:31:45 +01:00
krzys-h 5f01153c5f Fixed joystick switch crash; small bugfix to joystick UI 2016-01-24 20:48:07 +01:00
krzys-h 40352be5cc Add language switcher to the settings UI, closes #506 2016-01-24 16:03:24 +01:00
krzys-h 2e17712b5d Added official build info in crash screen 2015-12-19 22:10:15 +01:00
krzys-h e20f5f6983 Allow on-crash save during in-simulation config, closes #685 2015-12-19 22:06:16 +01:00
Tomasz Kapuściński aa2e14219e Added warnings and error messages to graphics devices regarding unsupported OpenGL version 2015-12-18 21:04:16 +01:00
Piotr Dziwinski d11ebc891c Bring to zero some types of issues reported by colobot-lint 2015-10-04 00:09:10 +02:00
krzys-h 3815ef0bd6 Refactored CPauseManager (again) 2015-10-01 18:55:41 +02:00
krzys-h 6e1504d7a5 Further cleanup USE_SDL_MAIN 2015-09-29 22:39:34 +02:00
Piotr Dziwinski 61a3ba2800 Fix undefined function colobot-lint issues 2015-09-29 21:44:24 +02:00
krzys-h 7a6e669a37 Show detailed error info when opening haptic device fails 2015-09-27 18:54:02 +02:00
Piotr Dziwinski 66ce745be0 Introduce forward declarations as suggested by colobot-lint 2015-09-27 16:28:14 +02:00
krzys-h 6a6025f557 Implemented force feedback 2015-09-27 00:34:03 +02:00
krzys-h fd07589ebb Separated config.h and version.h
This prevents unnecessary recompilation of some files when version number changes
2015-09-26 21:12:12 +02:00
krzys-h 4dc7a301eb Always reverse forward/backward and up/down axes on a joypad 2015-09-26 21:03:17 +02:00
krzys-h 07df35ca01 Refactored mouse wheel 2015-09-25 22:54:48 +02:00
krzys-h a0034f8000 Finalized SDL2 migration 2015-09-25 21:26:49 +02:00
krzys-h e965414d34 Rewritten text input to SDL2 2015-09-25 19:49:50 +02:00
krzys-h 7839dce624 Fixed duplicate resolutions appearing on the list 2015-09-25 11:16:09 +02:00
krzys-h dfa06dafcf Refactored window resize 2015-09-25 11:11:35 +02:00
krzys-h 53e4470dbf Started SDL2 migration 2015-09-24 21:09:46 +02:00
krzys-h e956311626 Moved free camera controls to numpad; added 'camtype %d', 'camspeed %f', 'freecam' 2015-09-04 19:04:42 +02:00
krzys-h d97042e252 Fixed possible problems if another crash occurs while saving crash state 2015-09-01 16:17:23 +02:00
krzys-h e015d9f1c3 Don't allow saving if crashed during loading 2015-09-01 16:15:59 +02:00
krzys-h c3d7876a5c Made CPauseManager not a singleton 2015-08-31 22:05:21 +02:00
krzys-h 75d18ced05 Fixed #596 2015-08-31 21:57:46 +02:00
krzys-h ff17961584 Refactored CPauseManager 2015-08-31 21:47:55 +02:00
krzys-h 1519145c4c Added information when no exception object is returned from std::current_exception 2015-08-25 14:01:10 +02:00
krzys-h 551710646b Revert "Fix reporting unhandled exceptions in MSVC"
This reverts commit 4d3a0b6602.

Conflicts:
	src/app/main.cpp
2015-08-25 13:32:58 +02:00
krzys-h 8ff6fadb75 Unlocked free window resolution change 2015-08-24 19:56:50 +02:00
krzys-h d9b680bdcf Removed Windows restart on resolution change workaround 2015-08-24 19:47:48 +02:00
Piotr Dziwinski b93f610930 Fix license header in all files 2015-08-22 16:40:02 +02:00
krzys-h 9d6543a947 Close game window on error (mentioned in #570)
Otherwise, the error doesn't show up and the game appears to freeze in fullscreen mode
2015-08-19 11:14:25 +02:00
Piotr Dziwinski a63a959dbe Apply clang-modernize -use-nullptr 2015-08-17 22:40:52 +02:00
Piotr Dziwinski ba3284b8b8 Apply clang-modernize -add-override 2015-08-17 22:12:09 +02:00
krzys-h 7e028977bd Implemented emergency save on crash, closes #572 2015-08-17 20:56:42 +02:00
Piotr Dziwinski 2289d69735 Replace NULL -> nullptr 2015-08-16 12:43:42 +02:00
Piotr Dziwinski 4d3a0b6602 Fix reporting unhandled exceptions in MSVC
For some reason set_terminate() doesn't work with MSVC2013
2015-08-16 00:48:15 +02:00
krzys-h 0c670e7699 Don't demangle the exception class name on MSVC 2015-08-16 00:44:36 +02:00
krzys-h f21025b526 User-friendly abort error messages 2015-08-16 00:44:36 +02:00
Piotr Dziwinski d703eb7165 Compile fixes for MSVC2013 2015-08-16 00:39:08 +02:00
krzys-h 9a15db1bea Split global.h 2015-08-15 14:02:07 +02:00
krzys-h 02b76e5aba Workaround for too fast calling of m_app->Render 2015-08-14 00:10:07 +02:00
Piotr Dziwinski 26e4ec0ae2 Add more missing includes and forward declarations 2015-08-13 22:49:05 +02:00
krzys-h ff957afefc Moved files not directly related to CObject into src/level/ directory 2015-08-13 11:47:32 +02:00
Piotr Dziwinski 8ad3b4e552 Fix Clang compilation 2015-08-10 22:40:37 +02:00
krzys-h 4964e35625 Fixed gun targetting with mouse 2015-08-09 23:04:24 +02:00
krzys-h 6b4610e808 Improved stats display 2015-08-09 15:20:38 +02:00
krzys-h 30589f3e79 Fixed -runscene 2015-08-07 22:37:56 +02:00
krzys-h 57469533b6 Implemented loading progress bar 2015-08-07 20:48:55 +02:00
krzys-h f90bb63520 Hide some things in save screenshots
Save indicator, mouse cursor, CDisplayText and interface particles
2015-08-07 15:59:05 +02:00
Piotr Dziwinski e9e1c8d4dd Add proper initializations and remove manual memory management in app classes 2015-08-07 10:16:46 +02:00
Piotr Dziwinski f95980456a Replace anonymous union in Event with pointer to appropriate struct 2015-08-06 19:11:50 +02:00
krzys-h 2b4210dcbc Separated CMainUserInterface from CMainDialog 2015-08-06 12:59:09 +02:00
Piotr Dziwinski 596bb49de0 Normalize static variables and functions
* get rid of some of them
 * put the rest into anonymous namespaces
2015-08-06 10:12:20 +02:00
Piotr Dziwinski bdeeaf690b Get rid of memsets 2015-08-06 09:37:25 +02:00
Piotr Dziwinski 18f9bfb575 Make saving screenshot thread- and exception-safe
* introduce ResourceOwningThread wrapper for safely passing resources
   to new threads
 * make CEventQueue thread-safe
 * start screenshot saving thread using ResourceOwningThread
 * change direct call at end of writing screenshot to thread-safe
   event communication
2015-08-04 20:37:15 +02:00
krzys-h ea7bfdefda Moved scene to load out of CMainDialog 2015-08-04 10:56:49 +02:00
Piotr Dziwinski 11b0398c03 Include refactoring
* reordered includes according to correct style
 * removed some unnecessary includes
2015-08-02 17:49:07 +02:00
Piotr Dziwinski 7d8b56d9ab More style fixes 2015-08-02 12:06:14 +02:00
Piotr Dziwinski 3b585d9f51 Some style and whitespace fixes 2015-08-02 11:36:36 +02:00
krzys-h 59d5545eca Fixed code pause editor bug (#527) 2015-07-22 18:01:24 +02:00
krzys-h 083f216529 Team object recoloring (#514) 2015-07-22 12:45:50 +02:00
krzys-h a2f1aa195b Combined all level list phases into one, removed PHASE_TERM 2015-07-19 23:07:57 +02:00
krzys-h 02c24fbf27 CProfile -> CConfigFile 2015-07-19 16:05:09 +02:00
krzys-h 86f473ac16 Finished support for up to 999 chapters and levels 2015-07-18 19:48:25 +02:00
krzys-h ea9361fbb4 LevelCategory enum 2015-07-18 19:45:40 +02:00
Tomasz Kapuściński 59a68892c6 Game displays an error message and uses default graphics device when unknown device is selected with -graphics switch 2015-07-18 12:03:33 +02:00
Piotr Dziwinski 25eaf8f72f Add MakeUniqueArray for array types 2015-07-17 20:57:12 +02:00
Piotr Dziwinski a872ea128b Add MakeUnique template to avoid use of naked new 2015-07-17 20:06:59 +02:00
krzys-h 2c0baeec35 Fixed potential error in locale logging
setlocale() result is valid only until next call to setlocale()
2015-07-17 19:55:02 +02:00
krzys-h c8f6e8124e Replaced CLogger::GetInstancePointer() calls with GetLogger() 2015-07-16 22:12:44 +02:00
Piotr Dziwinski e8582d214c CStaticObject subclass using new model framework
* added reading/writing working version of new model format V3
 * added CStaticObject with minial interface intended for
   non-interactive static objects like trees
 * converted first model, tree0, to new format
2015-07-11 19:52:38 +02:00
krzys-h 24db675d3f Added x6 speed option 2015-07-10 20:17:00 +02:00
krzys-h d3c3a51ede Don't open joystick if it's not enabled in ChangeJoystick 2015-07-10 10:28:04 +02:00
krzys-h 20a367783b Added joystick settings in colobot.ini 2015-07-10 10:25:31 +02:00
krzys-h 7e41e9fe23 Refactored keybindings storage 2015-07-10 10:11:40 +02:00
krzys-h 5a68558f4c Implemented basic joystick selection
You can select joystick in the config file, there is still no GUI. By default, the first available joystick is used.
issue #171
2015-07-10 00:05:43 +02:00
Piotr Dziwinski 93e950584a Refactor model-related code
* refactored model loading code based on code from dev-models
 * support new model format V2 (without LOD levels)
 * removed LOD levels support in CEngine and from model files
 * preparations for new model format V3:
   - support for multiple meshes in one model file
   - support for saving crash spheres and shadow spots
   - removed all direct dependencies on CEngine enum values
   - quantized model rendering states to new flags and enums
2015-07-09 21:37:04 +02:00
Tomasz Kapuściński ac291f5bea Fix for issue #488 2015-06-28 21:05:12 +02:00
krzys-h 2509f99776 Fixed program arguments not being parsed on restart (#483) 2015-06-26 18:51:39 +02:00
Piotr Dziwinski 88ec9aaae3 Drop GCC 4.6 support 2015-06-26 00:24:32 +02:00
Piotr Dziwinski 7e21d3bd79 Get rid of some more manual memory management 2015-06-26 00:24:05 +02:00
Piotr Dziwinski 8806d1708d Proper CAuto, CBrain, CMotion, CPhysics, CPyro lifetime management
* change manual memory manament to std::unique_ptr
 * create CPyroManager
 * finally get rid of CInstanceManager
2015-06-22 21:58:58 +02:00
Piotr Dziwinski 5f1d3c21d4 Fix some more warnings reported by Clang 2015-06-21 19:46:01 +02:00
Piotr Dziwinski fed67e6640 Rename objman.h/cpp -> object_manger.h/cpp 2015-06-20 20:02:40 +02:00
Piotr Dziwinski f9b09d08f0 Create CObjectFactory
* move functions creating objects to new class CObjectFactory
 * replace calls to CObject::Create*() with CObjectManager::Create()
 * move creation/deletion of some objects to better places
 * make CModelManager non-singleton
 * clean up some code in changed functions
2015-06-20 19:37:25 +02:00
Tomasz Kapuściński ff44637d49 Removed VBO override switch and some unnecessary code 2015-06-16 18:00:42 +02:00
Tomasz Kapuściński 012eb10e19 Added automatic graphics detection (-graphics auto) 2015-06-15 20:20:03 +02:00
Tomasz Kapuściński e1a0f5b1c7 Added OpenGL 2.1 engine 2015-05-27 22:12:02 +02:00
Tomasz Kapuściński 933609967a Added OpenGL 3.3 graphics implementation 2015-05-19 14:29:31 +02:00
Piotr Dziwinski 0ddfdebab3 Remove unused system utils functions 2015-05-13 20:52:19 +02:00
Piotr Dziwinski ccaac2c544 Rewrite unit tests to use HippoMocks 2015-05-13 00:52:18 +02:00
Tomasz Kapuściński 0b2f00530b Added experimental support for dynamic shadows (shadow mapping) 2015-05-11 15:21:17 +02:00
Piotr Dziwinski d003247120 Provide usleep() in CSystemUtils interface 2015-04-27 20:02:22 +02:00
Piotr Dziwinski 3dce58c0fa Replace override and noexcept with macros 2015-04-27 18:07:42 +02:00
tomangelo2 802aaad1a4 Should fix issue #456 2015-04-17 21:02:26 +02:00
krzys-h 78795c4b44 Alt+tab minimize to taskbar (#391, fixes #329) 2015-03-22 16:10:32 +01:00
krzys-h f9bdd32812 Fixed USERPROFILE encoding, final fix to #414 2015-03-22 14:07:38 +01:00
krzys-h 83599238d1 Added workaround for argv encoding on Windows
First part of fixing #414
2015-03-22 13:11:00 +01:00
krzys-h bb16c6d97c Fixed updating C locale after exception in C++ locale, should finish fixing #445 2015-03-21 20:14:41 +01:00
krzys-h 9c20f275a0 Fixed MXE builds after 87cf056158
On MXE, setlocale is a macro...
2015-03-21 17:34:18 +01:00
krzys-h 87cf056158 Modified locale setting code
I'm doing my best to fix #445. At least shouldn't crash anymore.
Needs more testing.
2015-03-21 17:12:05 +01:00
krzys-h f43acaa943 Store resolution as value instead of id on the list, closes #417
Also fixed a bug where after starting the game for the first time the "Apply changes" button would behave like you selected highest resolution possible (while the game is running at 800x600)
2015-03-19 19:46:37 +01:00
krzys-h e179847358 Fixed remapping virtual keys, closes #415 2015-03-18 21:29:33 +01:00
krzys-h 8f78dc81e7 Whoops, the file didn't save 2015-03-18 21:12:49 +01:00
krzys-h 92ea770121 Better fix for numerical enter (issue #427)
Should now work everywhere, not only in the editor.
2015-03-18 21:10:47 +01:00
krzys-h f54b46b61d CPathManager
* Moved path management from CApplication to CPathManager
* Moved %lvl% replacements from CParserParam to CPathManager
* Added %lvl% support in produce(), closes #426
2015-03-08 15:22:21 +01:00
krzys-h 0231c2359a Fixed #425 2015-01-08 19:01:56 +01:00
krzys-h 986cf98aaf CController - entry point into CRobotMain and CMainDialog 2014-12-22 10:36:36 +01:00
krzys-h 4fef3af9ef Moved all CObject management from CInstanceManager to CObjectManager 2014-12-21 19:04:31 +01:00
krzys-h fb07691790 New speed keybindings 2014-12-14 17:05:28 +01:00
krzys-h be0f4c2ffe Refactored keybindings UI and added some keybindings 2014-12-14 16:54:32 +01:00
krzys-h 5948a9e9d8 Show game version in logs, closes #413 2014-12-11 19:59:24 +01:00
krzys-h eec6041104 Refactoring of input and input bindings, CInput class 2014-12-11 19:14:33 +01:00
krzys-h 3dade17f89 Level saving through CLevelParser 2014-11-10 14:27:42 +01:00
krzys-h 750f0f0810 COLOBOT: Gold Edition -> Colobot: Gold Edition 2014-11-01 19:46:06 +01:00
krzys-h f8841f96f2 Added -headless
For automated stuff on devices without GPU
2014-10-31 20:40:13 +01:00
krzys-h 487e43ff4e Changing resolution from commandline
Conflicts:
	src/app/app.cpp
2014-10-31 20:40:09 +01:00
krzys-h c1f931c8ee Added some debug stuff, possible fix for #348 and #335 2014-10-30 22:18:33 +01:00
krzys-h 26376c652d Nothing else works, so restart the game on resolution change
Fixes #339 for now, but we'll need alternative solution later
2014-10-25 18:34:29 +02:00
CoLoRaptor 1ab5746ca7 Disabled active window resizing that crashes in some software/hardware configurations 2014-10-21 22:22:32 +02:00
krzys-h 97b7c0cab1 Fixed map turning gray after resizing window 2014-10-20 21:54:52 +02:00
krzys-h 0245fdc6c3 Merge branch 'dev-physfs' into dev
Conflicts:
	src/app/app.cpp
2014-10-19 16:18:36 +02:00
krzys-h d7ef0a1a5f Implemented "Apply changes" button (issue #141) 2014-10-19 15:45:59 +02:00
krzys-h 7af92cc4ce Added portable build flag 2014-10-18 20:00:30 +02:00
krzys-h f65b00089a Merge branch 'dev' into dev-physfs
Conflicts:
	data
2014-10-14 15:42:19 +02:00
krzys-h 9fd6cf5449 Changed all occurences of PPC in the code to TerranovaTeam 2014-10-14 15:26:18 +02:00
Piotr Dziwinski 5274acd624 Merge with dev 2014-10-07 22:15:40 +02:00
krzys-h c2b8787453 On development builds store savegame data in current directory 2014-09-29 21:39:21 +02:00
Piotr Dziwinski 9f2d544b27 Fix zenity version checking problems 2014-09-21 21:28:59 +02:00
Piotr Dziwinski 6a1ceba8c0 Some cleaning up 2014-09-21 12:29:06 +02:00
krzys-h f0b38721e0 Loading all mods found in "mods" directory 2014-09-21 12:29:01 +02:00
Piotr Dziwinski e4d52d9afb CProfile refactoring 2014-08-12 21:24:33 +02:00
Piotr Dziwinski 9de086390b Remove some more delete checks (#318) 2014-08-10 17:51:47 +02:00
krzys-h 0b2f25a6e3 Restored -datadir and -langdir arguments, added -savedir
Also, fixed some crashes when unable to open file
2014-08-06 12:27:17 +02:00
krzys-h 9a3cd67c3b Saving colobot.ini through physfs 2014-07-24 23:38:13 +02:00
krzys-h 17041e718b Added -mod commandline argument to add additional locations to physfs 2014-07-24 22:46:47 +02:00
krzys-h 092e7cc68d Fixed tests 2014-06-26 22:14:30 +02:00
krzys-h fd8ea13cbb Fixed not destroying CGameData
This also fixed failing assertion in tests
2014-06-26 21:38:02 +02:00
Mohamed Waheed f5ba2a27d4 fixed savefile screenshot loading bug 2014-06-24 20:31:17 +03:00
Krzysztof Dermont 754154341d More work on PhysFS support
* added output stream
* fixed music loading
2014-06-22 15:01:06 +02:00
Krzysztof Dermont 2260f6bf4f Big part of PhysFS support
* removed -mod argument
* removed -datadir argument
* removed -lang argument
* removed some dead ui code
* added resource manager and file loaders (stream and SDL)
* changed interface textures location to match new directory structure
* removed CGameData for mod support
* added PhysFS support
2014-06-20 23:51:28 +02:00
Piotr Dziwinski ba62e6f8be Remove dead code 2014-06-01 13:02:08 +02:00
krzys-h f0d97bfdb9 Better datadir mod support 2014-05-18 12:12:47 +02:00
MrSimbax a61da7404b Added fall damage
+ changed window title
2014-03-08 22:36:35 +01:00
krzys-h bb2a9bcfd3 Added option to set pause audio in Scene 2014-02-21 14:19:58 +01:00
Piotr Dziwinski 70b18cc4c0 Move engine frame update after game state update
This should finally fix #225
2014-01-18 21:35:32 +01:00
krzys-h 130c4fd941 Fixed log level in 8d30791595 2014-01-01 16:46:28 +01:00