Commit Graph

263 Commits (498f15cc9295a51529eb6ccfb4f7b1826c734f36)

Author SHA1 Message Date
Tomasz Kapuściński 498f15cc92 Refactored Math::Point in CApplication, CInput, CCamera, CCloud and Event 2021-12-24 01:38:54 +01:00
Tomasz Kapuściński 0ef4579da8 Refactored Math::IntPoint in CApplication and various classes 2021-12-23 23:26:08 +01:00
Tomasz Kapuściński 9139239f9f Merge branch 'dev' into dev-graphics-overhaul
# Conflicts:
#	src/app/app.cpp
#	src/graphics/opengl/gl14device.cpp
#	src/graphics/opengl/gl14device.h
#	src/graphics/opengl/gl21device.cpp
#	src/graphics/opengl/gl21device.h
2021-12-01 17:27:54 +01:00
MrSimbax 80f074e2ba Update license headers 2021-09-11 15:53:59 +02:00
MrSimbax c9dca4cebd Rename SystemDialogType::ERROR to ERROR_MSG
Unfortunately, the ERROR name collides with
a preprocessor definition in windows.h
2021-09-11 13:40:22 +02:00
MrSimbax a69b88e09a Move time related functions out of CSystemUtils
GetCurrentTimeStamp() has not been moved because of
CApplication unit tests.
2021-09-11 13:26:38 +02:00
MrSimbax 5daaba6e64 Fixes after merge
Fix mistakes after previous merge and make it compile.

Rewrite the function interpolating between time stamps as it was
written after the original pull request was created. Add unit tests
for it.

I couldn't help myself and also changed some enums to enum classes and
did some renames.
2021-09-11 12:44:26 +02:00
MrSimbax 2b107736e2 Merge branch 'platform-independent' of https://github.com/AbigailBuccaneer/colobot into AbigailBuccaneer-platform-independent 2021-09-11 10:47:39 +02:00
Tomasz Kapuściński 5e7fb5010f Temporarily removed CNullDevice 2021-09-05 16:32:14 +02:00
MrSimbax 404d2dbeb1 Fix segfault in CApp UT
I moved m_engine creation to the constructor.
However, it is not complete until after calling m_engine->Create().
The UT segfault because the pointer is not null and destructor calls
m_engine->Destroy() on an incomplete object.
(Yes, UTs test incomplete SUT.)

So I moved back the m_engine creation to CApp::Create() but before
the SDL initialization as m_engine holds the flag for vsync.
2021-02-07 13:38:29 +01:00
MrSimbax 9a04685101 Fix compile error 2021-02-07 13:03:12 +01:00
MrSimbax 71ff89a803 Remove vsync disable/enable loop (fix #1383)
Also a small refactor due to repeated code.
The vsync flag in m_engine is now synchronized with the SDL state
during initial configuration of CApp.
2021-02-07 12:47:32 +01:00
Emxx52 1c9f5f3f64
Merge branch 'dev' into dev-mod-manager 2020-08-21 18:21:08 +02:00
MrSimbax 9cb80daedf Improve sound reloading
Also some minor refactoring.

Since realoding may take a lot of time, modman no longer reloads
the whole app on entering/leaving the screen.
2020-07-27 15:59:33 +02:00
immibis 9e743e86af Fix crash when quick-saving with increased game speed 2020-07-26 14:55:56 +02:00
MrSimbax f57da76ae8 Add handling of mods manifests
Also add Polish translations for mod manager related strings.
2020-07-22 16:35:47 +02:00
MrSimbax 63bf6bed08 Add saving mods list in colobot.ini 2020-07-19 15:02:35 +02:00
MrSimbax a0635ae400 Fix linter issues 2020-07-18 15:01:36 +02:00
MrSimbax 8390d85e46 Refactor the mod manager
Moved list of mods logic to a new CModManager class.

The list of enabled mods is now managed by a flag instead of directory
names of mods.

Mods are now disabled by default.

Also general cleanup, fixing issues from the code review in
https://github.com/colobot/colobot/pull/1191 and fixing linter issues.

Regression: the state of enabled/disabled mods is now not persistent.
The plan is to use some kind of config file for this.
2020-07-18 14:30:50 +02:00
MrSimbax 4905abe30b Merge branch 'dev-mod-manager' of https://github.com/DavivaD/colobot into dev-mod-manager 2020-07-17 11:49:51 +02:00
immibis a2aeef0155 When game speed is 2 or higher, run multiple ticks. 2020-07-11 21:20:55 +02:00
tomangelo 37e4ed8029
Updated license headers (#1317)
* Updated headers

* Updated more headers
2020-07-07 10:19:36 +02:00
MrSimbax d4b2f23c4a Add handling of env variables 2020-04-03 20:15:24 +02:00
tomangelo 3f6e84b418
Merge pull request #1167 from badernageral/dev
Translation to Brazilian Portuguese
2018-09-08 22:03:28 +02:00
tomangelo a76bbe49ed
Merge pull request #1189 from colobot/dev-msvc
Add some Visual Studio specific fixes
2018-09-08 22:00:47 +02:00
DavivaD 1b47cf76d3 Implement Mod Manager 2018-08-02 07:38:32 +02:00
MrSimbax cb701cacb8 Add a workaround for failed assertion in VS debugger
Assertion failed: ploc->_Mbcurmax == 1 || ploc->_Mbcurmax == 2

Apparently MS C/C++ library doesn't support UTF-8 locales, which causes the assertion to fail. My solution is to ignore the system locale and try to set the classic one.

LibreOffice seems to have this problem fixed in less simple way: https://gerrit.libreoffice.org/#/c/54110/
2018-07-25 21:44:31 +02:00
tomangelo2 4bfada2ad6 Better handling of VSync errors 2018-07-05 21:18:14 +02:00
tomangelo2 608d59f07b Moved VSync setting from Experimental to Setup 2018-07-05 20:56:38 +02:00
tomangelo2 359abf9a82 Add VSync switch to Device tab 2018-07-05 19:43:56 +02:00
José Robson Mariano Alves 0c16d9a272 Translation to Brazilian Portuguese 2018-05-16 10:22:57 -03:00
José Robson Mariano Alves dbd1f601da Translation to Brazilian Portuguese 2018-05-15 18:31:41 -03:00
José Robson Mariano Alves 2b933264fc Translation to Brazilian Portuguese 2018-05-15 16:07:03 -03:00
krzys_h db90fcd2ef
Merge pull request #1118 from nextghost/dev
Czech translation
2018-04-24 14:17:23 +02:00
AbigailBuccaneer 4119e669d1 Remove central tracking of SystemTimeStamp
SystemTimeStamp used to be an opaque class, as it was provided by
`system_{linux/other/windows}.h`. Because of this, code dealt in
SystemTimeStamp pointers, and getting the current timestamp required a
memory allocation. Now SystemTimeStamp is just a
`std::chrono::time_point`, we can make the code cleaner and faster by
just directly keeping SystemTimeStamp instead of pointers around.
2018-04-20 09:57:10 +01:00
AbigailBuccaneer 2a003a27b1 Use C++11 threads, mutexes and condition variables 2018-04-20 09:56:57 +01:00
krzys-h 1c2bdc9cab Update license headers 2018-04-20 02:08:50 +02:00
Martin Doucha 81b4d0e28b Add Czech translation 2018-02-24 20:39:29 +01:00
Abigail f4614658cf Fix -Wundefined-var-template warning (#963)
This avoids specializing CSingleton<T>::m_instance for each type, and
instead just defines it once in the header. This is allowed by the
standard, multiple definitions are merged in the same way that inline
functions are.
2017-05-29 20:46:11 +02:00
krzys-h 08d87fa975 Make initial scoreboard values editable 2017-05-24 12:39:05 +02:00
krzys-h 88c6818cfd Fix code style issues 2016-11-26 13:48:12 +01:00
krzys-h 0ecdee08cc Merge branch 'dev-async-music-load' (PR #801) 2016-08-09 19:20:46 +02:00
krzys-h 5fea22ff03 Moved performance counters to a separate class 2016-07-24 16:18:25 +02:00
krzys-h 81b7bcc5bc Moved system modules from app/ to common/system/ 2016-07-24 14:38:49 +02:00
krzys-h 29f0631a2c Asynchronous sound/music loading
This improves the loading time a lot. Time from starting the app to opening game window decreased by almost 5 seconds (it's almost instant now). Mission loading times are significantly better too. As a bonus, the playmusic() CBot function doesn't hang the game if you don't preload the files with CacheAudio in scene file.
2016-07-10 14:56:34 +02:00
Krzysztof Dermont 2168b57cac Remove part of boost::filesystem usage. 2016-06-09 19:30:08 +02:00
krzys-h 4de9d25f04 Man, those compile errors... 2016-04-09 18:58:34 +02:00
krzys-h 139592bc00 Proper l10n for date/time 2016-04-09 18:23:57 +02:00
krzys-h c94ebb45e7 Moved pathman from common/ to app/ 2016-04-04 22:28:08 +02:00
krzys-h 39b364fa77 Fixed compilation with disabled sound support, closes #748 2016-03-30 22:22:22 +02:00