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
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
999490e88b
Code for changing music in pause mode
...
As requested by @Emxx52. Only code for now, we don't have the music yet. Temporairly in developements builds music will change to Prototype (in CBot editor) and Constructive Destruction (in SatCom)
2013-12-31 16:58:21 +01:00
krzys-h
4a237f5925
CPauseManager
2013-12-31 13:24:09 +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
Didier 'OdyX' Raboud
aeefdbd1be
On MacOSX, define the LangPath as being i18n in the Resources path of the bundle
2013-11-13 09:35:32 +01:00
Didier 'OdyX' Raboud
b32f87bac7
Abstract the definition of LangPath to CSystemUtils
2013-11-13 09:35:32 +01:00
Didier 'OdyX' Raboud
93727a3fdf
On MacOSX, don't cache the Data, Sound and Music paths
...
As users can potentially move the bundle around, it doesn't make sense to cache these
(It would probably make sense to drop this caching on all architectures, but it's only on MacOSX where it hurts most)
2013-11-13 09:35:32 +01:00
Didier 'OdyX' Raboud
e78d2cce18
On MacOSX, define the DataPath as being the Resources path in the bundle
2013-11-13 09:35:32 +01:00
Didier 'OdyX' Raboud
17ad3e5a90
Abstract the definition of DataPath to CSystemUtils
2013-11-13 09:35:31 +01:00
Didier 'OdyX' Raboud
8f7f56f1ea
On Mac OS X, write colobot.ini and savegames to Application Support directories
2013-11-13 09:35:31 +01:00
Didier 'OdyX' Raboud
8b65e9b56f
Add russian language support
2013-11-07 14:44:12 +01:00
Didier 'OdyX' Raboud
9e9a9937ba
Revert "Include SDL.h in main.cpp to make sure the main loop is SDL's main loop"
...
This was the wrong fix for the problem.
This reverts commit f31a570d96
.
2013-10-29 14:43:29 +01:00
Didier 'OdyX' Raboud
f31a570d96
Include SDL.h in main.cpp to make sure the main loop is SDL's main loop
...
This allows the MacOSX program to start.
2013-10-26 13:19:13 +02:00
Didier 'OdyX' Raboud
97baf7242e
Fix system_other implementation by adding an Init() and fixing the wrong const
2013-10-24 21:12:52 +02:00
krzys-h
39866db502
Fixed @Emxx52 's fail :P
...
Merge branch 'master' into dev
Conflicts:
src/app/app.cpp
2013-09-08 17:55:48 +02:00
Emxx52
2891c2ea4c
Added '-game' launch option
2013-09-08 17:05:11 +02:00
erihel
b5e87aa91f
Datadir in command line didn't work with config.
...
Values from config file overwrote datadir
2013-07-16 16:00:06 +02:00
Piotr Dziwinski
3e989c96df
Fixed auto-detecting locale on Windows
...
* localename library is now used to determine the actual locale used
* added patched version of FindGettext.cmake to fix
installation path of translation files
2013-06-24 14:16:39 +02:00
krzys-h
868b592706
Added -proto to options[]
2013-06-17 16:26:25 +02:00
Piotr Dziwinski
7874aca10c
Enhanced logging, option to auto-start mission
...
* added logging of application events
* changed debug mode flag to independent debug modes
* added option to auto-start mission (load a mission immediately
after startup)
* removed "enum value out of range" prints
* some refactoring
2013-06-16 21:54:36 +02:00
Piotr Dziwinski
7cf8811888
Fix for #195
...
* loading time now is not counted in elapsed time
2013-06-13 17:25:58 +02:00
Piotr Dziwinski
8765d58b02
Fixed code formatting
...
* moved braces to new lines
* fixed some function/variable names
* fixed whitespace issues
2013-05-27 10:19:16 +02:00
Piotr Dziwinski
8f6fd2a131
Changes in texture code & refactoring
...
* refactored and altered slightly the texture pack code
* added flushing of texture cache
* some refactoring and const-correctness in CApplication methods
2013-05-26 14:50:23 +02:00
Piotr Dziwinski
ff101c6973
Fix for #213
...
Was caused by invalid options for getopt
2013-05-26 10:24:35 +02:00
krzys-h
04f747b00b
Added simple texturepack support ( #208 )
2013-05-12 14:55:41 +02:00
Piotr Dziwinski
cc8ed2979b
Fixed deleting of CObjectManager
...
* fix in CApplication destructor
* re-enabled unit tests
2013-05-11 21:22:03 +02:00
krzys-h
6333d2d38e
Removed most of "No such node" messages
2013-05-04 11:56:03 +02:00
krzys-h
c3e95d40a2
Added relative install paths for MXE build
2013-05-03 22:23:36 +02:00
krzys-h
64ebda0ab9
Added creating ini file with default values
2013-05-03 21:35:33 +02:00
erihel
af24aba899
* Key repeating in edit fields
2013-04-18 21:02:25 +02:00