Ivan Savenko
5c810df36f
Reorganized types registration code
2023-11-11 00:39:08 +02:00
Ivan Savenko
eb167d94a6
Mod compatibility check is now in a separate class and not part of
...
ModHandler
2023-11-08 21:27:05 +02:00
Ivan Savenko
5487f07d3b
added toEntity overload that accepts generic Services class
2023-11-04 17:04:53 +02:00
Ivan Savenko
184f5a72cc
Use toEntity/toXXX methods in Identifier instead VLC objects access
2023-11-03 16:03:29 +02:00
Ivan Savenko
8d5fa41a19
Minor fixes
2023-11-03 16:03:29 +02:00
Ivan Savenko
3634fb2158
Remove int <=> Identifier comparisons
2023-11-03 16:03:29 +02:00
Ivan Savenko
885dce0c27
Replace static_cast's of Identifiers with getNum call
2023-11-03 16:03:29 +02:00
Ivan Savenko
2b9c362d5b
Explicitly convert identifier to underlying enumeration
2023-11-03 16:03:29 +02:00
Ivan Savenko
b42f073f0c
Stabilization
2023-11-01 18:26:57 +02:00
Ivan Savenko
8346d71c98
Remove more subID access
2023-11-01 14:44:05 +02:00
Ivan Savenko
7a09646009
Cleaned up dwelling randomization
2023-11-01 14:43:20 +02:00
Ivan Savenko
dcb8f4fc7b
Moved object type randomization to object class
2023-11-01 14:43:20 +02:00
Ivan Savenko
03e1169781
Reduced number of accesses to CGObjectInstance::subID
2023-11-01 14:43:20 +02:00
SoundSSGood
ab2f6abb87
ArtifactLocation now use ID for artHolder identification part2
2023-10-29 17:46:13 +02:00
Ivan Savenko
5523f05284
Moved ArtifactLocation to a separate file
2023-10-23 19:02:28 +03:00
Ivan Savenko
b88a8da4e8
Split off some netpack structures into separate files
2023-10-23 13:59:15 +03:00
Ivan Savenko
3880ea58b9
Merge branch 'josch/dos2unix' into develop
2023-10-22 18:39:03 +03:00
Ivan Savenko
3867e512f7
Merge pull request #3064 from IvanSavenko/bonus_metaidentifier
...
Type-safe bonus system
2023-10-22 18:34:12 +03:00
Ivan Savenko
a5f0429691
Merge pull request #3083 from Nordsoft91/editor-improvements-1.4
...
Redesign map editor rendering
2023-10-22 16:56:39 +03:00
Ivan Savenko
4f47555977
Split OBJECT bonus source into OBJECT_TYPE and OBJECT_INSTANCE
2023-10-22 16:55:19 +03:00
Ivan Savenko
ac925bb786
Renamed new types for consistency with code style
2023-10-22 16:55:19 +03:00
Ivan Savenko
b394158dc9
Bonus Source ID now uses metaidentifier
2023-10-22 16:55:18 +03:00
Ivan Savenko
454ba44ac5
Merge pull request #2988 from IvanSavenko/configurable_extensions
...
Extension of configurable object functionality
2023-10-22 16:24:47 +03:00
nordsoft
b9a660f6c3
Redesign map editor rendering
2023-10-20 01:25:06 +02:00
Johannes Schauer Marin Rodrigues
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
Ivan Savenko
ce480c8c84
Fixed Scholar handling
2023-10-18 17:14:22 +03:00
Alexandre Detiste
15e45f966c
typos found by lintian
2023-10-17 22:06:08 +02:00
Ivan Savenko
e10de0594e
Scholar is now configurable object (partial)
2023-10-16 00:12:39 +03:00
Ivan Savenko
bb05c2dea5
Implemented configurable shrine
2023-10-16 00:12:39 +03:00
Ivan Savenko
a3b2354481
Implemented visit mode "limiter". Fixed h3m variable loading
2023-10-16 00:12:38 +03:00
Ivan Savenko
fd01a25352
Implemented basic version of configurable Witch Hut
2023-10-16 00:12:38 +03:00
nordsoft
4651893b48
Fix hota quests
2023-10-14 00:15:15 +02:00
nordsoft
2bf8cdc9f5
Hota-related bugs were fixed
2023-10-13 12:52:45 +02:00
nordsoft
6093f042dd
Text container fix
2023-10-11 01:26:07 +02:00
nordsoft
5b10b457cf
Fix code review suggestions
2023-10-11 00:47:19 +02:00
nordsoft
62c4e8a98d
Fix compiling
2023-10-10 23:44:29 +02:00
nordsoft
bb238f9b72
New quests work
2023-10-10 23:44:29 +02:00
nordsoft
1460541ee5
New limiter based quests
2023-10-10 23:44:29 +02:00
nordsoft
043f54698b
Fix translations in map editor / fix crash on game end
2023-10-05 23:34:29 +02:00
Ivan Savenko
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
Nordsoft91
c57d5545c2
Merge pull request #2971 from Nordsoft91/translations
...
Multi-language support for network game and for VMAPs
2023-10-02 20:41:42 +02:00
nordsoft
10eb19758a
Code review fixes
2023-10-01 18:00:36 +02:00
nordsoft
70796d232b
Full support of maps translations
2023-09-29 00:24:45 +02:00
nordsoft
ae073ee35d
Remove unused identifiers
2023-09-28 23:15:36 +02:00
nordsoft
98fde9ab1d
Add string IDs in map editor
2023-09-28 14:38:31 +02:00
nordsoft
56eefab255
Fix headers
2023-09-28 13:28:24 +02:00
nordsoft
a710c88b07
Proper map translations loading
2023-09-28 13:09:01 +02:00
nordsoft
ba1dbbbb1d
New version for map format
2023-09-28 04:23:14 +02:00
nordsoft
65f696b018
Cosmetic changes for json map reader
2023-09-28 03:02:46 +02:00
nordsoft
9098126684
Separate map text identifiers from global
2023-09-28 02:52:49 +02:00
nordsoft
5b97c323d3
Rename hero strings to text id
2023-09-28 00:04:05 +02:00
nordsoft
486091a915
Heroes switched to text id
2023-09-28 00:00:32 +02:00
nordsoft
0c94a4d891
Town name switched to id
2023-09-27 23:57:05 +02:00
nordsoft
41da252e67
Seerhut meta strings
2023-09-27 23:49:27 +02:00
nordsoft
00c8c2eb82
Event message meta string
2023-09-27 23:28:17 +02:00
nordsoft
f9f79255c5
Creature message meta string
2023-09-27 23:25:19 +02:00
nordsoft
0ac893b80f
Rumors meta string
2023-09-27 23:22:45 +02:00
nordsoft
ab373f08ab
Use meta string for messages
2023-09-27 23:11:11 +02:00
nordsoft
03c099d4fd
First steps
2023-09-27 22:53:13 +02:00
Ivan Savenko
f4c33f49ee
Removed excessive warning
2023-09-27 21:24:37 +03:00
Ivan Savenko
97097c20ad
Merge pull request #2874 from SoundSSGood/exchange-window-update
...
Exchange window update
2023-09-27 15:50:52 +03:00
Nordsoft91
c803b57c33
Merge pull request #2889 from Nordsoft91/mod-compatibility-check
...
Proper mod compatibility check logic
2023-09-26 19:29:46 +02:00
nordsoft
60eef59bc9
Show root mods for maps
2023-09-21 22:38:01 +02:00
nordsoft
4691907f9c
Show root mods only
2023-09-21 22:28:29 +02:00
nordsoft
a05f8339ae
Proper mod compatibility check system
2023-09-21 04:31:08 +02:00
Ivan Savenko
3f35ed000c
Fixed parsing of some user-made H3M maps
2023-09-20 22:00:03 +03:00
Ivan Savenko
02dfecd38b
Fixed hota maps templates loading
2023-09-20 21:59:16 +03:00
Ivan Savenko
921569e02e
Fixed "Long Live the King", 1st scenario victory condition
2023-09-20 21:58:47 +03:00
SoundSSGood
f47def3588
refactoring
2023-09-19 13:31:57 +03:00
SoundSSGood
a83f290e13
bulk move artifacts only equipped, only backpack
2023-09-19 13:31:42 +03:00
nordsoft
e3538f24ab
Fix components problem
2023-09-17 16:04:34 +02:00
nordsoft
44d72dce51
Use enum in h3m map parser
2023-09-17 15:06:49 +02:00
nordsoft
b5b5d881c4
Merge remote-tracking branch 'upstream/develop' into rewardable-quests
2023-09-15 21:08:22 +02:00
nordsoft
c1c13cfafb
Pandora and events work as rewardable object
2023-09-15 15:29:41 +02:00
Ivan Savenko
f8541d0ae4
Merge branch 'vcmi/master' into 'vcmi/develop'
2023-09-15 13:59:02 +03:00
nordsoft
ef3f0174dd
Rewardable seer hut and quest gate
2023-09-13 01:40:07 +02:00
Ivan Savenko
9ae7f53d66
Merge pull request #2791 from Nordsoft91/fix-2790
...
Fix for random dwellings
2023-09-12 12:38:55 +03:00
nordsoft
6e3817f18c
Events serialization
2023-09-10 01:54:55 +02:00
nordsoft
cc3864a0fa
Fix for random dwellings
2023-09-09 21:17:21 +02:00
nordsoft
01bf146640
Change string id
2023-09-09 14:31:44 +02:00
nordsoft
f6e3c6a487
Fix
2023-09-09 14:27:51 +02:00
Ivan Savenko
f39fbe5151
Merge pull request #2757 from IvanSavenko/filesystem_refactor
...
Filesystem refactor - part 1
2023-09-07 10:51:02 +03:00
Ivan Savenko
86a7f5f5cd
Removed getStr(bool), replaced with similar toString()
2023-09-04 22:21:02 +03:00
Ivan Savenko
a30e7ba321
Remove bitmasks of PlayerColor's. Add encode/decode methods
2023-09-04 18:56:16 +03:00
Ivan Savenko
6a260a60cf
Fix resource creation
2023-09-04 18:22:34 +03:00
Ivan Savenko
0f88b8969b
Removed some usages of std string as resource path
2023-09-04 18:22:34 +03:00
Ivan Savenko
8dfdfffd87
Use ResourcePath for audio files
2023-09-04 18:22:34 +03:00
Ivan Savenko
6f0108e462
Use ResourcePath for referencing texts and json's
2023-09-04 18:22:34 +03:00
Ivan Savenko
823ffa7a07
Always use ResourcePath for referencing images and animations
2023-09-04 18:22:34 +03:00
Ivan Savenko
ce20d913e0
Fix checking PlayerColor's for validness
2023-08-27 01:35:38 +03:00
Ivan Savenko
e2718db791
Converted several enumerations into constants
2023-08-25 13:38:02 +03:00
Ivan Savenko
e54287ea5d
Converted remaining identifier to new system
2023-08-25 13:38:02 +03:00
Ivan Savenko
0240ee886d
Converted (almost) all namespace enum's to enum classes
2023-08-25 13:38:02 +03:00
Ivan Savenko
62cd8b12d4
Converted several namespace enums to enum class
2023-08-25 13:38:02 +03:00
Ivan Savenko
17d3d663ee
Converted creature ID and spell ID to new form
2023-08-25 13:38:02 +03:00
Ivan Savenko
ec8d31bbfc
First step at unifying game identifiers code
2023-08-25 13:38:01 +03:00
Nordsoft91
96e820ddac
Merge pull request #2517 from Laserlicht/folders
2023-08-17 10:09:37 +04:00
Ivan Savenko
f13a53c1d9
Merge remote-tracking branch 'vcmi/beta' into develop
2023-08-12 17:28:47 +03:00
Michael
52f00ec308
extra function: getFormattedDateTime
2023-08-12 01:13:03 +02:00
Michael
4d507f3d8a
format fix
2023-08-12 00:00:35 +02:00
Michael
f0b60cf166
suggestions; use internally uppercase; fix; fullname
2023-08-11 23:56:20 +02:00
Ivan Savenko
f0ede46186
Clear spell list, not hero army
2023-08-07 19:12:04 +03:00
Ivan Savenko
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
Ivan Savenko
4d08a131d3
Reorganization of boost filesystem usage
...
- Removed (most of) boost filesystem namespace usings
- Replaced boost::filesystem::fstream with std::fstream and different
constructor that should be available on any plaftorm
2023-07-28 19:12:04 +03:00
Tomasz Zieliński
ad5081f9fe
Merge remote-tracking branch 'origin/develop' into ban_stuff_on_water_maps
2023-07-19 12:05:30 +02:00
Tomasz Zieliński
03b3771f19
Ban Navigation on maps without water
2023-07-18 10:54:36 +02:00
Tomasz Zieliński
025b0814c8
+ Handled banning spells and artifacts
...
+ Rename allowedSpell => allowedSpells
2023-07-17 17:21:28 +02:00
Ivan Savenko
6fd3c0f8bc
Fixes loading of hota maps with enabled wog mod (identifiers conflict)
2023-07-17 16:38:23 +03:00
Ivan Savenko
22b09f7164
Fixed parsing of some hota campaigns
2023-07-17 16:22:43 +03:00
Ivan Savenko
81d0ac4d6b
Removed excessive warnings from console - this is legal case
2023-07-17 16:22:29 +03:00
Tomasz Zieliński
bda126a1fd
Merge remote-tracking branch 'origin/develop' into ban_stuff_on_water_maps
2023-07-16 18:54:50 +02:00
Ivan Savenko
463efea7bb
Fix hero retreating handling & code cleanup
2023-07-15 19:55:30 +03:00
Ivan Savenko
19ace6a849
Moved hero pool logic to the separate files
2023-07-15 19:55:29 +03:00
Tomasz Zieliński
a200e87640
Merge remote-tracking branch 'origin/develop' into ban_stuff_on_water_maps
2023-07-15 14:36:32 +02:00
Ivan Savenko
37f3560b9c
Fix build in debug mode
2023-07-11 15:21:31 +03:00
Tomasz Zieliński
700d8459ac
Checking flags and conditions
2023-07-09 11:16:36 +02:00
SoundSSGood
9b5f6ec7cf
CArtifact getters setters
2023-07-05 15:48:08 +03:00
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