1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-06-17 00:07:41 +02:00
Commit Graph

49 Commits

Author SHA1 Message Date
829739da24 Reduce usage of implicit conversions to int 2025-04-27 14:57:31 +03:00
47cfe01141 seperate identifier 2025-04-11 00:49:26 +02:00
5b74f7f19e code review (first batch) 2025-04-10 21:04:24 +02:00
645b95ba02 Renamed LibClasses * VLC to GameLibrary * LIBRARY 2025-02-21 16:54:56 +00:00
2a204ab764 Support for parsing HotA 1.7.0 campaigns 2025-02-13 19:10:29 +00:00
dea6a02e1c Fix loading vcmp campaign with specific hero used in scenario bonuses 2025-01-18 14:50:34 +01:00
dc406ae906 remove json campaign override 2025-01-02 21:42:32 +01:00
c5b8a4fd61 static const for globals 2024-12-30 18:31:33 +01:00
a345517776 h3c converter implementation 2024-12-25 18:40:40 +01:00
22f517686d Better handling of encoding detection for maps and campaigns
Now VCMI will use either preferred language or install language to load
maps and campaigns that are part of "core" mod, or, in other words -
placed in Maps directory of H3 data (like most of manually downloaded
maps and campaigns are)

If game data is in English, then game can safely use encoding of player-
selected language (such as Chinese) to load maps. After all, both GBK
and all Win-125X encoding are superset of ASCII, so English map will
always load up correctly.

Maps that are part of a mod still use mod language as before - it is up
to mod maker to correctly set up mod language.
2024-10-30 11:54:35 +00:00
6d9385b8bd outro for RoE 2024-09-05 21:31:17 +02:00
c7064377da code review 2024-09-01 12:23:10 +02:00
46872b764b integrate campaign intro 2024-08-31 17:57:27 +02:00
16cbd6a7d2 allow custom loadbar-backgrounds for campaigns 2024-08-31 16:03:42 +02:00
2fef4b5d69 voice override 2024-08-31 14:17:25 +02:00
e4ec26e613 override 2024-08-31 13:15:07 +02:00
46c169d20f chr loading 2024-08-31 12:39:23 +02:00
97f1a310df Fix miscellaneous issues discovered by Sonar 2024-08-12 18:26:30 +00:00
661c374bf2 fixes & code review 2024-08-10 15:01:17 +02:00
772224e46c enable translation for vcmp 2024-08-10 14:28:50 +02:00
b16f721b39 respect headeronly 2024-08-10 13:57:13 +02:00
d97fdfdefa zip format VCMP 2024-08-10 13:30:03 +02:00
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
434371195d JsonNode constructors: Take fileName as argument
* Don't print JSON in JsonParser::parse() in case of errors
2024-07-17 13:50:59 +02:00
018127b236 set values for map editor and rmg 2024-06-29 14:01:25 +02:00
02bd52041b extend map format 2024-06-29 13:13:59 +02:00
02e429e973 Fix typos using https://github.com/crate-ci/typos
Changes were reviewed manually
2024-06-24 03:47:19 +02:00
08a27663f9 Reworked JsonNode constructors to more logical form 2024-02-26 12:55:49 +02:00
6d0803dab6 Fixed decompression of slayer.h3c from french version from gog.com 2024-01-31 16:41:42 +02:00
c7897300c0 Fixed missing translation strings on loading campaign save
- campaign header now contains text container and stores campaign texts
- map header now contains text container instead of inheriting it
- moved text container registration logic to a wraper class
- fixed registration of copied text containers (from copied map header)
2024-01-15 13:10:25 +02:00
a1a5bc28c2 convert line endings from CRLF (Windows) to LF (Linux/Unix)
Mixed line endings cause problems when exporting patches with
git-format-patch and then trying to "git am" a patch with mixed and
non-matching line endings. In such a situation git will fail to apply
the patch.

This commit runs the dos2unix tools on the remaining files with CRLF
(\r\n) line endings to convert them to line-feeds (\n) only.

Files that are Windows specific like *.vcxproj and *.props files were
not converted.

Closes: #3073
2023-10-19 16:23:21 +02:00
037efdf5fc Improvements to type safety of Identifier class
- Constructor of Identifier from integer is now explicit
- Lobby hero/town selection now uses Identifiers instead of int's
- Removed serialization workaround for hero portraits
- Added dummy objects for custom heroes portraits for ID resolver to use
- HeroInstance now stores portrait ID only in case of custom portrait
- Fixed loading of campaign heroes portraits on RoE maps
2023-10-04 18:05:23 +03:00
6da605ff83 Campaign meta strings 2023-09-28 00:10:28 +02:00
03c099d4fd First steps 2023-09-27 22:53:13 +02:00
994da3fcf2 code review 2023-09-11 14:44:07 +02:00
00f07f93d1 wait while audio playing; no audio on custom campaigns 2023-09-11 14:04:44 +02:00
fc1ce85a72 basic voice support 2023-09-11 12:57:10 +02:00
8dfdfffd87 Use ResourcePath for audio files 2023-09-04 18:22:34 +03:00
97b7d44c88 Use ResourcePath for video accessing 2023-09-04 18:22:34 +03:00
6f0108e462 Use ResourcePath for referencing texts and json's 2023-09-04 18:22:34 +03:00
823ffa7a07 Always use ResourcePath for referencing images and animations 2023-09-04 18:22:34 +03:00
e54287ea5d Converted remaining identifier to new system 2023-08-25 13:38:02 +03:00
62fddca21e Split massive CModHandler class/file into multiple parts:
- IdentifierStorage is now a separate handler in VLC
- Renamed ModHandler::Incompatibility exception to ModIncompatibility
- Extracted ModScope namespace from ModHandler
- Extracted ModUtilities namespace from ModHandler
- Split CModHandler.cpp on per-class basis
- Replaced some direct members with unique_ptr to reduce header includes
2023-07-30 22:17:47 +03:00
cdc27d1fcf Play correct music file in campaign menu 2023-06-27 20:09:11 +03:00
4a5c1556a1 Always use std::vector<uint8_t> to store binary map 2023-06-27 16:27:35 +03:00
48ac84110b Replaced hero crossover logic with one that actually matches H3 2023-06-26 17:15:59 +03:00
f6b2f58da9 Use inheritance instead of composition for campaign header 2023-06-26 17:15:59 +03:00
a08fe09517 Added encapsulation for CampaignState class 2023-06-26 17:15:59 +03:00
8420a90aa4 Reorganization of campaigns code 2023-06-26 17:15:59 +03:00