1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-14 10:12:59 +02:00
Commit Graph

173 Commits

Author SHA1 Message Date
Ivan Savenko
0fd9dbf240 Unified income handling, added IOwnableObject interface 2024-08-28 12:40:44 +00:00
Ivan Savenko
77faa14119 Added explicit indexing of type indexes for serialization 2024-08-26 20:06:35 +00:00
Ivan Savenko
01396b62b7 Extracted handling of type ID's from serializer into a separate class 2024-08-26 19:48:46 +00:00
Ivan Savenko
85f6030c7c
Merge pull request #4318 from IvanSavenko/upscaled_render
Support for xBRZ upscaling filter
2024-08-20 14:23:30 +03:00
Ivan Savenko
2f3f3c21df Rename town building types to more clear names 2024-08-19 11:47:13 +00:00
Ivan Savenko
f0448acaa3 TBB is now a dependency of lib. Implemented multithreaded xBRZ scale 2024-08-17 15:25:26 +00:00
Ivan Savenko
2a05fbdd50 Unified handling of battle sides ID's
- Replaced BattleSide namespace-enum with enum class
- Merged two different BattleSide enum's into one
- Merged BattlePerspective enum into BattleSide enum
- Changed all places that use integers to represent battle side to use
BattleSide enum
- Added BattleSideArray convenience wrapper for std::array that is
always 2-elements in size and allows access to its elements using
BattleSide enum
2024-08-11 20:54:44 +00:00
Laserlicht
9ceb1c567d highscore refactoring 2024-08-02 19:37:46 +02:00
Laserlicht
fb171ab3a2 statisic basic 2024-08-01 21:36:00 +02:00
Laserlicht
53c0d20a57 fix campaign highscores 2024-07-26 20:36:52 +02:00
Ivan Savenko
4aa73b40c9 Split CTownHandler into smaller chunks 2024-07-21 18:21:48 +00:00
Ivan Savenko
1aa391fdf8 Split CGeneralTextHandler file into 1 file per class form
All text processing code is now located in lib/texts.
No changes other than code being moved around and adjustment of includes

Moved without changes:
Languages.h           -> texts/Languages.h
MetaString.*          -> texts/MetaString.*
TextOperations.*      -> texts/TextOperations.*

Split into parts:
CGeneralTextHandler.* -> texts/CGeneralTextHandler.*
                      -> texts/CLegacyConfigParser.*
                      -> texts/TextLocalizationContainer.*
                      -> texts/TextIdentifier.h
2024-07-20 12:55:17 +00:00
Ivan Savenko
d2839c8e52 Rewardable object randomization is now always server-sided 2024-07-16 13:13:39 +00:00
Ivan Savenko
5178e4842e Moved generation of new rumors to server 2024-07-16 13:13:39 +00:00
Ivan Savenko
df83fa33a1 Merge branch 'vcmi/master' into 'vcmi/develop' 2024-05-31 09:34:21 +00:00
Ivan Savenko
9bfe000724 Added semi-workaround method for network thread shutdown:
Currently closing game while network thread is waiting for something is
very bug-prone, since network thread may resume during shutdown and
access partially destroyed client state.

Now if exit has been requested, the very first step would be semi-
graceful shutdown of network thread (via exception throwing). This may
in theory skip some cleanup in non-RAII code, but since game is shutting
down this does not matters much.

This logic applies to:
- shutting down while network thread is waiting for dialogs
- shuttind down while network thread waiting for animations in combat
2024-05-18 11:04:10 +00:00
Ivan Savenko
84bc6c42db Added 'Serializeable' base class for classes serializeable by pointer 2024-05-16 18:40:59 +00:00
Ivan Savenko
95d761bbb8 Handle corrupted H3 data - show message box instead of silent crash 2024-05-13 15:41:47 +00:00
Ivan Savenko
6ba6e0d55b Moved serialization of ModCompatibilityInfo from MapFormat 2024-04-23 17:15:59 +03:00
Tomasz Zieliński
b1a5693612 Proof of concept with OH3 obstacles 2024-04-04 21:39:01 +02:00
Ivan Savenko
675e7c3110 Move files that are not needed for lobby to main part of vcmi_lib 2024-03-29 15:02:14 +02:00
Ivan Savenko
39da7b3e32 Added option to build minimal vcmi library as needed by lobby 2024-03-28 12:07:49 +02:00
Ivan Savenko
dd785d71c9 Fix linking when using static libraries without client 2024-03-28 12:07:49 +02:00
Andrii Danylchenko
047e076d05 NKAI: visual logger 2024-03-02 15:54:05 +02:00
Ivan Savenko
41493d6f67 Implemented 'strict' json support 2024-02-26 12:55:49 +02:00
Ivan Savenko
3740f8b02f Moved bonus parsing to a new file 2024-02-14 15:48:06 +02:00
Ivan Savenko
c3957c2c2a Moved json files to new directory, split on per-class basis 2024-02-14 13:08:24 +02:00
Ivan Savenko
763e18d202 Fix symlink target - use absolute path 2024-02-12 16:35:18 +02:00
Ivan Savenko
a909d7ddde Removed cmake_modules/VCMI_lib macro, use it directly in place 2024-02-11 20:38:24 +02:00
Ivan Savenko
f08c9f4d59 Renamed ENABLE_STATIC_AI_LIBS option to match its actual effect 2024-02-11 17:55:02 +02:00
Ivan Savenko
0d263c5571 Implemented option to run server as a thread with shared VLC 2024-02-11 17:55:02 +02:00
Ivan Savenko
c2286e5126 Server now consists from library and separate executable projects 2024-02-11 17:55:02 +02:00
Andrey Filipenkov
0294a8b063 enable StupidAI and EmptyAI for static AI 2023-03-02 12:09:49 +03:00
Andrey Filipenkov
71d51beab2 change static AI approach to use static libvcmi
- now links to static AI lib targets
- solves uncaught boost exception on closing server
2023-03-02 12:09:48 +03:00
Andrey Filipenkov
4c19d8794d add option to compile AI code into libvcmi directly
- used on Android by default
- AI sources and libs are propagated to upper level with set(... PARENT_SCOPE)
2023-03-02 12:09:48 +03:00
Andrey Filipenkov
b0c109d5f7 use target from variable 2023-02-22 14:00:52 +03:00
Ivan Savenko
fa23965d0b Renamed for consistency BUILD_SINGLE_APP -> ENABLE_SINGLE_APP_BUILD 2022-12-06 00:00:56 +02:00
Ivan Savenko
5e37ad6836 Changes to single-app build
- client version of library is now always called vcmi, like in regular
builds (e.g. libvcmi.so)
- server version of library keeps its separate name
2022-12-05 22:57:43 +02:00
Andrey Filipenkov
2d3002bc1d add standard lib target back
- the moved CMakeLists.txt is turned into a macro (adds whitespace difference)
- now uses absolute paths to the lib and include dirs
- refactors iOS install section to use "early continue" in the foreach loop
2022-09-24 15:55:21 +03:00
Andrey Filipenkov
267e8df7db move lib/CMakeLists.txt to cmake_modules/VCMI_lib.cmake
preparation to be able to duplicate the lib target
2022-09-24 15:55:21 +03:00
Andrey Filipenkov
27551a9eae fix using local minizip after rebase 2022-09-24 15:55:20 +03:00
Andrey Filipenkov
3388583089 use component-based install to copy only what's needed for every app 2022-09-24 15:55:20 +03:00
Andrey Filipenkov
cfa22c33ad use rpath properly 2022-09-24 15:55:17 +03:00
Andrey Filipenkov
8249171066 implement VCMIDirs 2022-09-24 15:55:16 +03:00
Nordsoft91
e4ac0d4370
Editor prerequisites [part 2] (#889) 2022-09-17 14:04:01 +03:00
Nordsoft91
ad01c7ffce
Vlc obstacles [part 1] (#888)
* obstacles content handler, entity service and VLC integration
2022-09-15 11:06:54 +03:00
Nordsoft91
4bd0ff680a Random map generator refactoring (#762)
random map generator refactoring and improvements
2022-09-11 11:31:27 +03:00
Andrii Danylchenko
4b4cc3cf4b battlefields in VLC and custom bonuses for terrain patches 2022-09-11 11:31:27 +03:00
Nordsoft91
aaa07e4d2e New terrain support - part 1 (#755)
Initial support of new terrains
2022-09-11 11:31:26 +03:00
Andrey Filipenkov
d7650ce9c0
use Conan to make macOS CI builds for both Intel and ARM (#782)
* [CI] append platform to output artifact name if it's given
2022-08-30 17:29:00 +03:00