Commit Graph

317 Commits (07df35ca011952018a16b9e25504502ce83c128c)

Author SHA1 Message Date
Piotr Dziwinski 654ef7ba59 Add proper initializers to common classes 2015-08-06 14:31:40 +02:00
Piotr Dziwinski 2906451d06 Indent style fix 2015-08-06 14:31:40 +02:00
Piotr Dziwinski 61ec101b11 Replace size_t with std::size_t
For some reason Clang's AST API doesn't like size_t
2015-08-06 14:31:40 +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 9ccb39ce66 Fix Clang compilation 2015-08-05 22:02:59 +02:00
krzys-h 47d79c9977 Added #Include support in level files 2015-08-05 19:27:26 +02:00
Piotr Dziwinski c2387b4b56 Class naming fix 2015-08-04 20:58:03 +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 3f48e4699d Moved window position and font size storage from CRobotMain to CSettings 2015-08-04 13:09:34 +02:00
krzys-h 4b271cee2d Moved settings out of CMainDialog into a separate class
Also fixed some problems with resolution list selection after starting game
2015-08-04 12:46:54 +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 9e7cc0bab5 Renamed original shadows to simple shadows 2015-07-20 18:51:01 +02:00
krzys-h f03734d17f Added shadow mapping to settings screen 2015-07-20 18:42:09 +02:00
krzys-h e2ebcb769e Added MSAA to settings screen 2015-07-20 16:29:09 +02:00
krzys-h 90756f8b34 Added FilterMode, MipmapLevel and Anisotropy to settings screen 2015-07-20 13:56:45 +02:00
krzys-h a879e496f5 Removed unused texture quality setting 2015-07-20 12:21:16 +02:00
krzys-h 8c87eedd28 Fixed huge lag on closing settings
Introduced in 02c24fbf27, this was supposed to make it more resistant to crashes but turned out to generate huge lag on closing settings
Instead, I added manual .Save() after every value change
2015-07-19 21:35:55 +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
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 82247e75fc Fixed a crash
This replaced more than I throught
2015-07-16 22:27:25 +02:00
krzys-h aa0946f4ba Fixed line endings in pathman.cpp 2015-07-16 22:15:22 +02:00
krzys-h c8f6e8124e Replaced CLogger::GetInstancePointer() calls with GetLogger() 2015-07-16 22:12:44 +02:00
Piotr Dziwinski 6dcf4dffa6 Refactor CSNDFile -> CSNDFileWrapper
This seems more consistent
2015-07-16 21:47:48 +02:00
Piotr Dziwinski 8ca77f27a1 Extracted CSDLFileHandler from CResourceManager
This also possibly fixes some rare error cases (e.g. #439)
2015-07-16 21:13:38 +02:00
krzys-h 8a72f0a849 Addressed commit comments on a0e0ee3631 2015-07-16 20:09:06 +02:00
krzys-h a0e0ee3631 Separate shortcut bars for teams 2015-07-16 13:46:40 +02:00
Piotr Dziwinski c8498548cc Remove manual memory management in oalsound
Plugging a few more memory leaks detected by valgrind
2015-07-15 22:43:30 +02:00
Piotr Dziwinski 83f3cfa6e0 Fix some memory problems reported by valgrind
Also remove some manual memory management
2015-07-15 20:23:21 +02:00
krzys-h 78f4749134 Disallow controlling enemy objects from CBot 2015-07-13 18:53:56 +02:00
krzys-h 3479c51bb9 Refactored EnableBuild, EnableResearch and DoneResearch
* Moved from global variables to CRobotMain members
* Added functions for accessing the values
* Cleaned up some code related to building objects, BotFactory, ResearchCenter and AutoLab
2015-07-13 17:38:19 +02:00
krzys-h 38a0849e10 Added system mouse option
This reverts commit e21853d632.
2015-07-13 12:11:11 +02:00
Piotr Dziwinski 394f911d7b Remove unnecessary #include "object/object.h" 2015-07-12 14:23:18 +02:00
Piotr Dziwinski 4dc40a8853 Fix missing curly braces 2015-07-12 12:38:25 +02:00
Piotr Dziwinski 37b0d5796d Fix PNGSaveSurface not closing file sometimes 2015-07-12 12:33:30 +02:00
krzys-h 24db675d3f Added x6 speed option 2015-07-10 20:17:00 +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 c7ccb29d6a Removed spoiler from tooltip in options menu (fixes #489) 2015-06-28 23:07:42 +02:00
Piotr Dziwinski f871ba4729 Create CExchangePost subclass 2015-06-27 23:22:55 +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 0c9a9bce98 Proper CObject lifetime management
CObjectManager is now the only class responsible for storing CObjects
2015-06-21 15:13:55 +02:00
Tomasz Kapuściński 6434ff55dd Ending splashscreen enhancement (fixes #472) 2015-06-05 20:20:06 +02:00
Piotr Dziwinski 35ce6c228a Fix gcc warning 2015-05-19 23:03:32 +02:00
Piotr Dziwinski ccaac2c544 Rewrite unit tests to use HippoMocks 2015-05-13 00:52:18 +02:00
Piotr Dziwinski 4c8127c6ec Fix two bugs uncovered by MSVC 2015-04-27 20:04:01 +02:00
Piotr Dziwinski bca9a019ae Suppress some MSVC warnings 2015-04-27 20:02:22 +02:00
Piotr Dziwinski 544e513148 Minor MSVC compilation fixes 2015-04-27 18:17:03 +02:00
krzys-h df4cb110b5 Made example programs not directly runnable (#450) 2015-04-17 22:39:57 +02:00
krzys-h e21853d632 Removed old, unused mouse shadow option 2015-04-17 21:54:03 +02:00
krzys-h 1a8bb9c0fb Marked programs from SatCom with a star 2015-04-06 16:21:19 +02:00
krzys-h 58016c6c69 Made programs from SatCom read-only; added program cloning 2015-04-06 16:07:49 +02:00
krzys-h a3ae7802a2 New scripts interface, removed script limit
This is a big change in game structure and requires more testing!
2015-03-29 14:21:02 +02:00
Piotr Walkusz bf55691e44 Issue #399 : Sniffer can delete mark and probe ground 2015-03-22 14:40:19 +01:00
krzys-h d2d0886b76 Implemented %cat%
and renamed BuildSceneName to BuildScenePath
2015-03-22 13:51:14 +01:00
krzys-h 47ed73247b Use std::wstring in boost::filesystem calls on Windows, fixes #414 2015-03-22 13:36:23 +01:00
krzys-h a60a4590b2 Better error logging in CResourceManager for further debugging #414 2015-03-19 19:55:22 +01:00
krzys-h bb9e490316 Removed unused Copy function
It's not used by the game and causes incombatibility with some version of Boost.
Should fix Travis build, see issue #393
2015-03-18 21:45:28 +01:00
krzys-h e179847358 Fixed remapping virtual keys, closes #415 2015-03-18 21:29:33 +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
Tomasz Kapuściński 03bb000e82 Revert "Potential fix to Travis build fails"
This reverts commit ed0e5dfef5.
2015-01-31 11:55:37 +01:00
Tomasz Kapuściński ed0e5dfef5 Potential fix to Travis build fails 2015-01-30 22:13:07 +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 601a58ea31 Nicer formatting of key names 2014-12-11 19:48:06 +01:00
krzys-h eec6041104 Refactoring of input and input bindings, CInput class 2014-12-11 19:14:33 +01:00
krzys-h 48ca5b5663 Removed info about CD in background music tooltip; removed unused 3D sound translation 2014-11-11 14:59:56 +01:00
krzys-h a1fe9c8d7f Implemented autosave (#292) 2014-11-11 14:50:44 +01:00
krzys-h b8103963c3 Sorting saved games list (#380) 2014-11-11 12:08:19 +01:00
krzys-h c330bcac6d PHYSFS in CStudio 2014-11-10 18:17:13 +01:00
CoLoRaptor 81a02220ee Depth of field to Render distance in EN & PL translations, close issue #369 2014-11-05 23:01:33 +01:00
Didier Raboud c1043837a5 Allow PHYSFS to follow symlinks, fixes the launch on Debian systems which fonts' are symlinks to the system fonts 2014-11-02 17:18:53 +01:00
krzys-h 750f0f0810 COLOBOT: Gold Edition -> Colobot: Gold Edition 2014-11-01 19:46:06 +01:00
krzys-h 6d2fd18b41 Implemented mission timer 2014-10-29 17:53:46 +01:00
krzys-h d6e88a07b0 Support for %lvl% in TerrainInitTextures + cleanup
cleanup:
* Removed CProfile::SetUserPath (unused)
* Removed CProfile::GetUserBasedPath (unused)
* Removed CProfile::CopyFileToTemp (i have no idea why it even existed)
* Removed CopyFileListToTemp (it did the same as CopyFileToTemp but for multiple files, wasn't even fully implemented)
2014-10-27 21:15:14 +01:00
krzys-h 569dd8ed25 Fixed regex in CResourceManager::CleanPath 2014-10-26 20:43:51 +01:00
krzys-h ca4f1e85d2 Support for %lvl% in all commands
Except for TerrainInitTextures (I'm not sure what it does but it does something weird)
2014-10-26 18:35:13 +01:00
krzys-h 2d043d46bb Merge branch 'vieux-blood_mode' into dev
Conflicts:
	src/common/restext.cpp
	src/ui/maindialog.cpp
2014-10-22 17:52:17 +02:00
Victor Vieux d019a4990f add option to disable blood 2014-10-21 21:44:17 -07:00
krzys-h c0ac60e4fa Fixed save directories in things not yet refactored to use PHYSFS 2014-10-20 21:15:39 +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 7af92cc4ce Added portable build flag 2014-10-18 20:00:30 +02:00
krzys-h b85a41b42a Also fixed the same thing in file writing code 2014-10-15 21:31:43 +02:00
krzys-h 63b6aa56b0 Fixed crash when colobot.ini doesn't exist 2014-10-15 21:28:40 +02:00
krzys-h 47ea8a1175 Updated some more license headers 2014-10-15 21:16:06 +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 343504168f Clean up translations
* translate only marked strings from restext.cpp
 * update and clean pot and po files
 * remove redundant POT-Creation-Data
2014-10-09 00:32:58 +02:00
Piotr Dziwinski 342210b062 GCC 4.6 compilation fixes 2014-10-07 23:25:37 +02:00
Piotr Dziwinski 12feb49098 Fixes in unit tests 2014-10-07 22:22:59 +02:00
Piotr Dziwinski 5274acd624 Merge with dev 2014-10-07 22:15:40 +02:00
Piotr Dziwinski 2b86e6e9d9 Rewrite CMainDialog to use physfs 2014-09-21 12:29:06 +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