1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-07-03 00:46:55 +02:00
Commit Graph

689 Commits

Author SHA1 Message Date
1917fae2c0 Fix loading of HotA maps with Cove town placed on map 2025-02-09 22:11:19 +00:00
4e6560c4c9 Fixes for issues detected by valgrind 2025-02-06 19:22:04 +00:00
09db3e4bef Reworked resource piles loading to fix wog maps with mithril 2025-01-25 11:40:21 +00:00
baa9b1e312 Load unknown objects as "Nothing" object 2025-01-24 19:26:40 +00:00
e4505f20b9 Remove no longer used map checksum computation 2025-01-24 19:26:40 +00:00
a99274d72e BattleHexArray - new container for BattleHexes 2025-01-06 23:18:18 +01:00
dfe8a95f8c Fix build 2025-01-04 15:09:50 +00:00
ea368c5176 Inlined methods commonly used by pathfinder for better optimization 2025-01-04 15:09:50 +00:00
7be31c94f2 Fixes from code review 2024-12-05 21:16:06 +01:00
f7b0c7405b Fix "padding variables" for object deletion 2024-12-03 17:40:35 +01:00
e9be46af98 Merge branch 'develop' into timed_events_objects_removal 2024-12-03 17:27:24 +01:00
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
733b1b339c Remove broken automatic addition of dependency for wog maps 2024-11-07 12:08:28 +00:00
c3c5f73a63 Restore save compatibility with 1.5 2024-11-07 12:08:08 +00:00
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
d39dad6cb4 Fix build 2024-10-30 17:03:48 +00:00
a39469d165 Add save compatibility 2024-10-30 16:57:03 +00:00
01d787fb5a Removed remaining cases of serialization of VLC entities 2024-10-30 16:48:18 +00:00
d3af9f1c67 Removed pointer to VLC entity from CStackBasicDescriptor 2024-10-30 16:47:02 +00:00
08fbcd5239 TerrainTile now uses identifiers instead of pointers to VLC 2024-10-30 16:22:11 +00: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
a97deea563 Merge pull request #4824 from IvanSavenko/translate_fix
Fixes for issues with translations
2024-10-28 12:56:50 +02:00
638bc174c3 Fix crash on exporting maps for translation 2024-10-25 21:41:24 +00:00
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
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
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
31095248ab Removed typeName and subtypeName properties from CGObjectInstance 2024-10-13 13:05:50 +00:00
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
a8f8c3f4b1 Replaced most of accesses to CGObjectInstance::pos with anchorPoint() 2024-10-09 15:43:46 +00:00
a826b88641 Merge branch 'develop' into spell 2024-10-07 12:55:23 +02:00
1488629628 Add simple support for translation of strings that were changed by
another mod
2024-10-06 19:42:15 +00:00
d078c5ff2d store ObjectInstanceID of objects to remove instead of their position 2024-09-30 20:44:40 +02:00
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
253af651cc Add map editor ui to set objects to remove on timed event 2024-09-29 13:37:24 +02:00
3bff68958e Change deleted objects format to use ObjectInstanceID 2024-09-28 22:58:05 +02:00
2052a26031 code review 2024-09-28 14:25:11 +02:00
e56b8e86e5 Do not use VisitableObjects - BlockedObjects should suffice 2024-09-26 21:25:02 +02:00
9004b88c7e Mapping of deletable coordinates to objects on map start 2024-09-26 20:05:46 +02:00
586a32a616 CArtifactSet cleanup 2024-09-23 23:39:19 +03:00
b9ae7f1138 CMap put move and remove artifact method 2024-09-23 23:30:38 +03:00
cf5ce96aeb Backend implementation of object removal possibility by timed map events 2024-09-23 21:45:50 +02:00
503b87561e Converted all h3 banks to rewardable, remove most of hardcoded checks 2024-09-12 12:11:18 +00:00
ce4548718c Merge pull request #4544 from IvanSavenko/map_settings
Per-map game settings
2024-09-10 00:03:10 +03:00
a58e209cbd Merge pull request #4490 from godric3/fix-campaign-hero-placeholder
Fix campaign hero placeholder
2024-09-09 23:39:20 +03:00
ff8d36c350 It is now possible to define game settings in rmg template 2024-09-05 15:16:28 +00:00
8225eb454e Added GameSettings to gamestate, potentially allowing to define game
settings per map (or in random map template)
2024-09-05 15:16:27 +00:00
a72715ad31 Merge pull request #4563 from SoundSSGood/vcmiScrolls
Improvements to the artifact creation
2024-09-05 17:10:13 +03:00
7466d7452d vcmiscrolls 2024-09-05 15:51:45 +03:00
b06426ac43 CMap removed from CArtifactSet level 2024-09-04 15:12:40 +03:00
0280254810 tarnum icon 2024-08-31 22:05:36 +02:00