1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-22 22:13:35 +02:00
Commit Graph

450 Commits

Author SHA1 Message Date
SoundSSGood
fd9c7352a0 suggested changes 2023-07-03 22:54:03 +03:00
Ivan Savenko
4a5c1556a1 Always use std::vector<uint8_t> to store binary map 2023-06-27 16:27:35 +03:00
Ivan Savenko
cc91be3518 Added workaround for loading spellbook existance status 2023-06-27 13:58:45 +03:00
Ivan Savenko
7fc66c2797 Fix loading of experience for predefined heroes 2023-06-26 20:02:43 +03:00
Ivan Savenko
48ac84110b Replaced hero crossover logic with one that actually matches H3 2023-06-26 17:15:59 +03:00
Ivan Savenko
f6b2f58da9 Use inheritance instead of composition for campaign header 2023-06-26 17:15:59 +03:00
Ivan Savenko
8420a90aa4 Reorganization of campaigns code 2023-06-26 17:15:59 +03:00
Ivan Savenko
d1e5a347ff Refactoring of campaign handler: rename types and use strong typing 2023-06-26 17:15:59 +03:00
Ivan Savenko
2882e2d248 Added loading of reserved heroes from H3M 2023-06-26 17:15:59 +03:00
Ivan Savenko
f7b27da00e Implemented support for "coast visitable" objects:
- objects marked as coast visitable can be visited from land even when
placed in water
- added isBlockedVisitable and isCoastVisitable method to
CGObjectInstance
- implemented json config for these properties in banks
2023-06-25 17:42:33 +03:00
Ivan Savenko
c4772ae59d Load new hota quests as empty quests, to avoid unexpected behavior 2023-06-20 19:37:27 +03:00
Ivan Savenko
6564502a0e Implemented mapping of hero portraits 2023-06-20 19:37:27 +03:00
Ivan Savenko
d4728f78ce Support for hota victory conditions 2023-06-20 19:37:27 +03:00
Ivan Savenko
a84666edf6 MetaString can be serialized in json 2023-06-20 19:37:27 +03:00
Ivan Savenko
d51fe62804 Win/loss condition texts use MetaString 2023-06-20 19:37:27 +03:00
Ivan Savenko
f35b3a0dc3 Replace MetaString operator << with member function 2023-06-20 19:37:27 +03:00
Ivan Savenko
c43783db58 Use string ID's instead of raw strings for win/loss conditions 2023-06-20 19:37:27 +03:00
Ivan Savenko
6f743916db Moved CGCreature to a new file 2023-06-20 19:37:27 +03:00
Ivan Savenko
7c88bb7e4f Detect mirror maps 2023-06-20 19:37:27 +03:00
Ivan Savenko
636b2ea856 Removed no longer used code - moved to hota mod 2023-06-20 19:37:27 +03:00
Ivan Savenko
d742b6b809 Fix mapping of map objects linked to game entities 2023-06-20 19:37:27 +03:00
Ivan Savenko
4d947be287 Adventure map shipyard nwo has configurable boat type 2023-06-16 17:59:50 +03:00
Ivan Savenko
0901c8feaf Use boost::multiarray instead of manual memory management in CMap 2023-06-16 17:59:10 +03:00
Ivan Savenko
1e9eea30e1 Merge remote-tracking branch 'soundsgood/CArtHandler-rework' into develop 2023-06-05 18:53:17 +03:00
Ivan Savenko
d6a357fd17 Split some map object files into smaller files. Reduced includes usage. 2023-06-02 21:47:37 +03:00
Ivan Savenko
2f9073e13a Fix assertion 2023-06-01 16:03:37 +03:00
Ivan Savenko
fce5f9f907 Fix buildings loading 2023-05-31 23:18:39 +03:00
Ivan Savenko
312b703a78 Fixed mapping of hota objects 2023-05-31 23:18:39 +03:00
Ivan Savenko
952708e865 Basic version of object templates mapping 2023-05-31 23:18:39 +03:00
Ivan Savenko
b3ca6c8cee Fixed detection of campaign format 2023-05-31 23:18:39 +03:00
Ivan Savenko
e1c01ca636 Fix CI build 2023-05-31 23:18:39 +03:00
Ivan Savenko
acac42291e Remove excessive CMap.h includes 2023-05-31 23:18:38 +03:00
Ivan Savenko
62595cb039 Split massive CMap.h a bit 2023-05-31 23:01:57 +03:00
Ivan Savenko
bf720200f9 Implemented identifiers remapping for game entities 2023-05-31 23:01:57 +03:00
Ivan Savenko
c51e0ef052 Added information on Heroes Chronicles map ID's 2023-05-31 23:01:57 +03:00
Ivan Savenko
8d0dcd6ad7 All h3m bitsets are now loaded inside mapReader 2023-05-31 23:01:57 +03:00
Ivan Savenko
5fe5d0c045 Fix loading of buildings of random town 2023-05-31 23:01:57 +03:00
Ivan Savenko
ffd7144df8 Implemented identifiers mapping for town buildings 2023-05-31 23:01:57 +03:00
Ivan Savenko
de769a04d6 Remove unnecessary includes from headers 2023-05-31 23:01:57 +03:00
Ivan Savenko
daaaf84392 Icon index for map format is now defined in config 2023-05-31 23:01:57 +03:00
Ivan Savenko
402823e3d5 Fix loading of some user-made maps 2023-05-31 23:01:57 +03:00
Tomasz Zieliński
edf47f5769 Fix StdInc.h 2023-05-21 07:26:36 +02:00
Tomasz Zieliński
5ffbdb10ef Another build fix 2023-05-20 14:07:16 +02:00
Tomasz Zieliński
c7f4fe8243 Another compile fix. 2023-05-20 13:47:36 +02:00
Tomasz Zieliński
a1531b58db More fixes 2023-05-20 13:38:14 +02:00
Tomasz Zieliński
ae97912b1e Fix warning 2023-05-20 13:23:27 +02:00
Tomasz Zieliński
219e897db0 Added missing files. 2023-05-20 12:02:30 +02:00
SoundSSGood
021f94a579 artifact utils 2023-05-17 17:00:31 +03:00
Konstantin
05eccbc2bb vcmi: split bonus to enumerator and HeroBonus.h 2023-05-03 18:01:06 +03:00
Konstantin
86f5d6de69 vcmi: modernize headers 2023-04-30 13:35:54 +03:00
Konstantin P
e5f78a8997 vcmi: fix tests with latest develop 2023-04-27 20:59:55 +03:00
Konstantin
bcf8ca1268 vcmi: fix map format for teams number 2023-04-27 20:59:55 +03:00
nordsoft
de22132cdf Fix loading 2023-04-20 19:46:27 +04:00
nordsoft
db33558abc Load custom campaigns from gzip 2023-04-20 19:22:27 +04:00
nordsoft
9ecf16ca23 Fix minor bugs 2023-04-20 03:20:00 +04:00
nordsoft
5cf9fbbe02 Fix compiling 2023-04-19 03:11:13 +04:00
nordsoft
f464ca3560 Merge remote-tracking branch 'upstream/develop' into vcmi-campaign
# Conflicts:
#	lib/mapping/CCampaignHandler.cpp
2023-04-19 02:45:49 +04:00
nordsoft
ecf8b9934b Further refactoring 2023-04-17 23:19:56 +04:00
nordsoft
80220fda5b Merge remote-tracking branch 'upstream/develop' into vcmi-campaign
# Conflicts:
#	lib/mapping/CMap.h
2023-04-17 04:54:57 +04:00
nordsoft
91b4782a2f Refactor more fields from campaign header 2023-04-17 04:47:54 +04:00
nordsoft
70f4cc5e0f Refactor campaign regions 2023-04-17 04:26:35 +04:00
Konstantin
7a5775a9f9 vcmi: use std::optional 2023-04-17 00:43:13 +03:00
nordsoft
0c87d0a26c Add a comment 2023-04-16 21:49:43 +04:00
nordsoft
954a2abb71 Verifying mods before starting map 2023-04-16 15:38:13 +04:00
nordsoft
67e1b48d47 Remove unused interface 2023-04-16 14:00:01 +04:00
Ivan Savenko
65e4ce9ffe Update to c++17 2023-04-15 17:20:38 +03:00
Ivan Savenko
5589e973a8 Fixed parsing of hota 'arena' map format hacks 2023-04-15 17:20:38 +03:00
Ivan Savenko
22558551bf Fix parsing of invalid data from h3m 2023-04-15 17:20:38 +03:00
Ivan Savenko
2c2c2c8fe0 Slight tweaking of logging of h3m edge cases 2023-04-15 17:20:38 +03:00
Ivan Savenko
f84665b5ec Fixed loading of maps with objects owned by non-existing players 2023-04-15 17:20:38 +03:00
Ivan Savenko
f997241da1 Throw exception on loading not supported hota duel/arena maps 2023-04-15 17:20:38 +03:00
Ivan Savenko
d6a3c0e666 Cleaned up handling of hota map format versioning 2023-04-15 17:20:38 +03:00
Ivan Savenko
5b658462a1 Renamed army formation enum value 2023-04-15 17:20:38 +03:00
Ivan Savenko
b1e7774bbd Fixed parsing of hota format '0' 2023-04-15 17:20:38 +03:00
Ivan Savenko
1b6ece1367 Formatting and renames of H3M readers, no functionality changes 2023-04-15 17:20:38 +03:00
Ivan Savenko
de855085f0 Added information on banks, seer hut and monster properties 2023-04-15 17:20:38 +03:00
Ivan Savenko
ea8aeef8c0 Implemeted parsing of HotA Seer Huts 2023-04-15 17:20:38 +03:00
Ivan Savenko
88096de7e4 Fixed parsing of HotA H3M format, including Seer Huts 2023-04-15 17:20:38 +03:00
Ivan Savenko
46239215af Implemented parsing of HotA map objects (except for Seer Hut) 2023-04-15 17:20:38 +03:00
Ivan Savenko
3790661fa6 Refactored loadObject() monstrocity into set of smaller methods. 2023-04-15 17:20:38 +03:00
Ivan Savenko
c0e9eb6eb1 HotA maps up to objects block can be parsed 2023-04-15 17:20:38 +03:00
Ivan Savenko
838d45b32c Implemented parsing of HotA h3m header 2023-04-15 17:20:38 +03:00
Ivan Savenko
f93335d678 Cleanup and formatting of H3M loader code 2023-04-15 17:20:38 +03:00
Ivan Savenko
3738171b21 Refactoring of H3M loader to make HotA format support easier
- extracted low-level reader from MapFormatH3M class
- added separate structure to define version-specific values
- cleared up some H3M format edge cases
- replaced witch hut skill vector with set
- converted several fields to enum type
2023-04-15 17:20:38 +03:00
Ivan Savenko
b354f99cc3
Merge pull request #1936 from IvanSavenko/cpp_17_upgrade
Upgrade c++ standard to c++17
2023-04-14 19:21:17 +03:00
Ivan Savenko
44b83b2e11 Merge master -> develop 2023-04-14 16:51:35 +03:00
Ivan Savenko
2dc48496ef Fix generation of roads and rivers near map edge 2023-04-13 16:26:03 +03:00
nordsoft
d244702abc Read and write mods into map 2023-04-12 02:59:55 +04:00
nordsoft
617a4385a2 Add mods fields into map header 2023-04-12 02:14:22 +04:00
Ivan Savenko
644f0f4b32 Removed ARRAY_COUNT in favor of std::size 2023-04-12 01:04:26 +03:00
nordsoft
30281d5991 Merge remote-tracking branch 'upstream/develop' into vcmi-campaign 2023-04-11 21:44:31 +04:00
Konstantin
fedf7d377c vcmi: remove TFaction
This is a huge change and will break save compatibility
2023-04-10 19:28:16 +03:00
nordsoft
3166fd05f4 Handle array exceed limit potential crash 2023-04-09 14:43:51 +04:00
nordsoft
23e411cacd Adding logging and error handling 2023-04-09 13:29:07 +04:00
nordsoft
7c13246851 Keep creatures and arts 2023-04-09 05:02:34 +04:00
nordsoft
08809f1cdc String building id 2023-04-09 04:53:06 +04:00
nordsoft
6ed8f748b3 Use string ids for most of bonuses 2023-04-09 04:26:04 +04:00
nordsoft
307fb071a2 VCMI campaign format support prototype 2023-04-09 03:24:40 +04:00
Konstantin
11b237a23c vcmi: massive refactoring v1 2023-04-05 22:33:12 +03:00
Ivan Savenko
307065a633 Merge beta into develop 2023-04-04 16:06:20 +03:00