Ivan Savenko
eb3b51a6cf
Remove save compatibility with 1.5.X
2025-03-18 11:35:15 +00:00
MichalZr6
38b994f28e
Init lastWrite and date for campaigns
2025-03-11 22:36:26 +01:00
MichalZr6
ea1c911e4d
Update maps sorting logic
2025-03-11 22:36:26 +01:00
Ivan Savenko
9f713a0914
Rename int3::valid to isValid for consistency
2025-03-03 10:46:00 +00:00
Ivan Savenko
645b95ba02
Renamed LibClasses * VLC
to GameLibrary * LIBRARY
2025-02-21 16:54:56 +00:00
Ivan Savenko
2362c6da21
Fixes for multiple new issues from Sonar
2025-02-21 15:57:39 +00:00
Ivan Savenko
0548f325e4
Merge branch 'master' into 'develop'
2025-02-21 13:59:34 +00:00
Ivan Savenko
b2642bb7d7
Merge pull request #5422 from IvanSavenko/disposed_heroes_fix
...
[1.7] Do not allow heroes banned for player as starting heroes
2025-02-20 16:33:04 +02:00
Ivan Savenko
4b824d05e2
Do not allow heroes banned for player as starting heroes
...
- `disposedHeroes` is now in map header, for use in map selection
- heroes that are marked as unavailable for player will now be hidden
from starting hero selection
2025-02-14 10:43:55 +00:00
Ivan Savenko
0337ef90ec
Fix and cleanup event loading, clarify remaining hota keys
2025-02-13 19:48:37 +00:00
Ivan Savenko
f9fe8fc312
Cleanup hota object loading code
2025-02-13 19:10:29 +00:00
Ivan Savenko
091029e0bb
Support for parsing HotA 1.7.2 h3m's and h3c's
2025-02-13 19:10:29 +00:00
Ivan Savenko
a12ea45276
Support of parsing of all hota 1.7.1 h3m's and h3c's
2025-02-13 19:10:29 +00:00
Ivan Savenko
d996726fe7
Support for parsing HotA 1.7.0 maps
2025-02-13 19:10:29 +00:00
Ivan Savenko
1917fae2c0
Fix loading of HotA maps with Cove town placed on map
2025-02-09 22:11:19 +00:00
Ivan Savenko
4e6560c4c9
Fixes for issues detected by valgrind
2025-02-06 19:22:04 +00:00
Ivan Savenko
09db3e4bef
Reworked resource piles loading to fix wog maps with mithril
2025-01-25 11:40:21 +00:00
Ivan Savenko
baa9b1e312
Load unknown objects as "Nothing" object
2025-01-24 19:26:40 +00:00
Ivan Savenko
e4505f20b9
Remove no longer used map checksum computation
2025-01-24 19:26:40 +00:00
MichalZr6
a99274d72e
BattleHexArray - new container for BattleHexes
2025-01-06 23:18:18 +01:00
Ivan Savenko
dfe8a95f8c
Fix build
2025-01-04 15:09:50 +00:00
Ivan Savenko
ea368c5176
Inlined methods commonly used by pathfinder for better optimization
2025-01-04 15:09:50 +00:00
Dydzio
7be31c94f2
Fixes from code review
2024-12-05 21:16:06 +01:00
Dydzio
f7b0c7405b
Fix "padding variables" for object deletion
2024-12-03 17:40:35 +01:00
Dydzio
e9be46af98
Merge branch 'develop' into timed_events_objects_removal
2024-12-03 17:27:24 +01:00
Ivan Savenko
ba9e3dca9d
Mod management rework, part 1
...
- Replaced CModInfo class with constant ModDescription class
- Simplified mod loading logic
- Extracted some functionality from ModHandler into separate classes for
future reuse by Launcher
2024-11-26 13:55:46 +00:00
Ivan Savenko
733b1b339c
Remove broken automatic addition of dependency for wog maps
2024-11-07 12:08:28 +00:00
Ivan Savenko
c3c5f73a63
Restore save compatibility with 1.5
2024-11-07 12:08:08 +00:00
Ivan Savenko
e7bea6c3b8
Merge pull request #4852 from IvanSavenko/remove_vlc_entities_serialization
...
Remove remaining pointers to VLC entities from serializer
2024-11-06 22:01:11 +02:00
Ivan Savenko
d39dad6cb4
Fix build
2024-10-30 17:03:48 +00:00
Ivan Savenko
a39469d165
Add save compatibility
2024-10-30 16:57:03 +00:00
Ivan Savenko
01d787fb5a
Removed remaining cases of serialization of VLC entities
2024-10-30 16:48:18 +00:00
Ivan Savenko
d3af9f1c67
Removed pointer to VLC entity from CStackBasicDescriptor
2024-10-30 16:47:02 +00:00
Ivan Savenko
08fbcd5239
TerrainTile now uses identifiers instead of pointers to VLC
2024-10-30 16:22:11 +00:00
Ivan Savenko
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
Ivan Savenko
a97deea563
Merge pull request #4824 from IvanSavenko/translate_fix
...
Fixes for issues with translations
2024-10-28 12:56:50 +02:00
Ivan Savenko
638bc174c3
Fix crash on exporting maps for translation
2024-10-25 21:41:24 +00:00
Ivan Savenko
8a5ac73438
Basic support for configurable flaggable objects
...
Converted CGLighthouse class into FlaggableMapObject
Bonus provided by Lighthouse/Flaggable is now defined in config and is
accessible to mods.
2024-10-25 16:48:10 +00:00
Ivan Savenko
604e3b5c67
Merge pull request #4763 from IvanSavenko/herohandler_split
...
Split CHeroHandler.cpp/.h into 1 file per class
2024-10-14 19:05:48 +03:00
Ivan Savenko
10ad0fc760
Split CHeroHandler.cpp/.h into 1 file per class
...
All parts of CHeroHandler.cpp are now in lib/entities/hero
Adjusted includes to use new paths
No functionality changes
2024-10-13 14:01:09 +00:00
Ivan Savenko
31095248ab
Removed typeName and subtypeName properties from CGObjectInstance
2024-10-13 13:05:50 +00:00
Ivan Savenko
3dd4fa2528
Reduce usage of pointers to VLC entities
...
Final goal (of multiple PR's) is to remove all remaining pointers from
serializeable game state, and replace them with either identifiers or
with shared/unique pointers.
CGTownInstance::town and CGHeroInstance::type members have been removed.
Now this data is computed dynamically using subID member.
VLC entity of a town can now be accessed via following methods:
- getFactionID() returns ID of a faction
- getFaction() returns pointer to a faction
- getTown() returns pointer to a town
VLC entity of a hero can now be accessed via following methods:
- getHeroTypeID() returns ID of a hero
- getHeroClassID() returns ID of a hero class
- getHeroType() returns pointer to a hero
- getHeroClass() returns pointer to a hero class
2024-10-10 12:28:08 +00:00
Ivan Savenko
a8f8c3f4b1
Replaced most of accesses to CGObjectInstance::pos with anchorPoint()
2024-10-09 15:43:46 +00:00
Laserlicht
a826b88641
Merge branch 'develop' into spell
2024-10-07 12:55:23 +02:00
Ivan Savenko
1488629628
Add simple support for translation of strings that were changed by
...
another mod
2024-10-06 19:42:15 +00:00
godric3
d078c5ff2d
store ObjectInstanceID of objects to remove instead of their position
2024-09-30 20:44:40 +02:00
godric3
e50ba14bbe
Use exact position of object to remove + add object name to list of objects to remove
2024-09-30 19:17:21 +02:00
godric3
253af651cc
Add map editor ui to set objects to remove on timed event
2024-09-29 13:37:24 +02:00
Dydzio
3bff68958e
Change deleted objects format to use ObjectInstanceID
2024-09-28 22:58:05 +02:00
Laserlicht
2052a26031
code review
2024-09-28 14:25:11 +02:00