Commit Graph

249 Commits (d71ee4ef68c8d8d01b3f23319e2f6653f76a5164)

Author SHA1 Message Date
krzys-h 7a6e669a37 Show detailed error info when opening haptic device fails 2015-09-27 18:54:02 +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 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 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
Piotr Dziwinski a63a959dbe Apply clang-modernize -use-nullptr 2015-08-17 22:40:52 +02:00
Piotr Dziwinski 2289d69735 Replace NULL -> nullptr 2015-08-16 12:43:42 +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
krzys-h ff957afefc Moved files not directly related to CObject into src/level/ directory 2015-08-13 11:47:32 +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
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
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
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 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 d3c3a51ede Don't open joystick if it's not enabled in ChangeJoystick 2015-07-10 10:28:04 +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 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 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 d003247120 Provide usleep() in CSystemUtils interface 2015-04-27 20:02:22 +02:00
krzys-h 78795c4b44 Alt+tab minimize to taskbar (#391, fixes #329) 2015-03-22 16:10:32 +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 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 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 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 17041e718b Added -mod commandline argument to add additional locations to physfs 2014-07-24 22:46:47 +02:00
krzys-h fd8ea13cbb Fixed not destroying CGameData
This also fixed failing assertion in tests
2014-06-26 21:38:02 +02: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
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
krzys-h 8d30791595 Ability to set language via ini file
If language autodetection doesn't work, someone might want to manually force the game to use correct language without using -language parameter every time
2013-12-31 17:20:03 +01:00
krzys-h 246b7e107e Removed prototypes support 2013-12-27 20:36:11 +01:00
krzys-h 01cbc4177e Whoops 2013-12-26 22:14:53 +01:00
krzys-h 0f57809f51 Added scene test mode
... and fixed a "small" bug in previous commit ;)
2013-12-26 22:13:04 +01:00
erihel fe3f9ea38c Sound support changes
* removed 2d sound
* fixed listener orientation (propably issue #235)
* removed unused code and minor refactoring
2013-12-19 22:46:29 +01:00
Didier 'OdyX' Raboud 114cbec8a9 Never cache Data, Sound and Music paths
Let them always be either auto-detected, defined on the command-line
or written in the configuration file
2013-12-09 17:39:39 +01:00
Piotr Dziwinski fdd7c22591 Updated README and INSTALL files 2013-11-26 00:38:32 +01:00