Ivan Savenko
baa865d857
Extracted message-related functionality of CGameHandler to separate file
2023-07-15 21:01:13 +03:00
Ivan Savenko
463efea7bb
Fix hero retreating handling & code cleanup
2023-07-15 19:55:30 +03:00
Ivan Savenko
cb16636fce
Implemented preserving hero on retreat on 7th day after end of turn
2023-07-15 19:55:30 +03:00
Ivan Savenko
9a38d8ea97
Implemented tavern slot selection using rules similar to H3
2023-07-15 19:55:30 +03:00
Ivan Savenko
ec7e046617
Fix hero pool persistency between saves
2023-07-15 19:55:30 +03:00
Ivan Savenko
539c508870
Implemented persistent random seed for hero pool
2023-07-15 19:55:30 +03:00
Ivan Savenko
a2d2ecc96f
Roll first for hero class, and then - for actual hero for tavern
2023-07-15 19:55:30 +03:00
Ivan Savenko
f8187ce1d8
Fix regressions
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
Ivan Savenko
1c55835b8b
Merge pull request #2329 from rilian-la-te/fix-M-stack
...
CCreatureHandler: fix positive morale
2023-07-15 19:46:40 +03:00
Ivan Savenko
199f9eb6f5
Fix build
2023-07-15 19:29:11 +03:00
Ivan Savenko
8129cbc514
Allow dismissing hero from town
2023-07-15 16:09:44 +03:00
Ivan Savenko
8ed5f412e2
Show per-type object names in editor
2023-07-15 16:09:44 +03:00
Ivan Savenko
0a27539fb5
Fixed crashes on loading with Tides of War mod
2023-07-15 16:09:44 +03:00
Ivan Savenko
8a92941681
Allow merging stack on recruitment to give place for recruited unit
2023-07-15 16:09:44 +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
Tomasz Zieliński
a968903c51
Fix HoTA guard offset in RMG
2023-07-14 16:45:13 +02:00
Konstantin P
6988b288ba
Rect: fix serialization
2023-07-14 11:39:04 +03:00
Konstantin P
118b68349a
CCreatureHandler: fix positive morale
2023-07-14 11:33:21 +03:00
Ivan Savenko
37f3560b9c
Fix build in debug mode
2023-07-11 15:21:31 +03:00
Ivan Savenko
9acab48bc3
Merge pull request #2268 from SoundSSGood/CArtifactInstance-rework
...
CArtifact CArtifactInstance refactoring
2023-07-11 14:36:08 +03:00
DjWarmonger
f6cc61e0be
Merge pull request #2297 from vcmi/rmg_roads
...
Rmg roads
2023-07-11 09:25:24 +02:00
Ivan Savenko
8750aa2c5b
Merged server savegame and (broken and unused) client savegame files
2023-07-09 15:30:47 +03:00
Tomasz Zieliński
700d8459ac
Checking flags and conditions
2023-07-09 11:16:36 +02:00
Tomasz Zieliński
b4fcf20b19
Fix
2023-07-08 10:26:10 +02:00
Tomasz Zieliński
fabad20aa1
Compile fixes, cleanup
2023-07-08 10:21:36 +02:00
Tomasz Zieliński
3711ce846e
Check road settings for connections
2023-07-08 09:11:20 +02:00
Tomasz Zieliński
730b36612c
Respect GUI settings for roads. By default, all road types are enabled.
2023-07-08 08:44:10 +02:00
Tomasz Zieliński
27c4882237
Compile fix
2023-07-07 21:40:55 +02:00
Tomasz Zieliński
7e07ed65c8
- Check road connection for Shipyards
2023-07-07 21:27:24 +02:00
Tomasz Zieliński
1cad64c470
Move road flag to placeObject() method
2023-07-07 20:17:20 +02:00
Tomasz Zieliński
3889193a48
Reorganize namespaces
2023-07-07 16:32:17 +02:00
Ivan Savenko
fa4a0004b2
Merge pull request #2291 from IvanSavenko/terrain_animations_config
...
Moved hardcoded terrain palette-cycling animations to config
2023-07-07 14:28:39 +03:00
Ivan Savenko
ae8579558d
Merge pull request #2282 from IvanSavenko/adventure_map_fixes
...
Adventure map fixes for 1.3
2023-07-07 14:27:58 +03:00
Tomasz Zieliński
8463fe200c
Merge remote-tracking branch 'origin/develop' into rmg_roads
2023-07-07 08:19:52 +02:00
DjWarmonger
f9e1a70ab8
Merge pull request #2278 from vcmi/rmg_factions
...
Rmg factions
2023-07-06 22:15:36 +02:00
Tomasz Zieliński
0d3ac4a502
- Add new option for connection
...
- Store info about objects and roads in RequiredObjectInfo
2023-07-06 22:15:00 +02:00
Tomasz Zieliński
a592f5604b
Add "bannedTerrains", "bannedMonsters" options for templates.
2023-07-06 17:30:23 +02:00
Tomasz Zieliński
06449ce7b0
Another compile fix
2023-07-05 21:18:30 +02:00
Tomasz Zieliński
506a0cdda0
- Better name as suggested in PR
...
- Compile fix
2023-07-05 21:08:32 +02:00
Ivan Savenko
3bce245780
Moved hardcoded terrain palette-cycling animations to config
2023-07-05 22:07:20 +03:00
Tomasz Zieliński
9f2bfbc1d8
Improve serialization of IDs from mods, so they are resolved correctly after all mods are loaded.
2023-07-05 20:53:00 +02:00
SoundSSGood
9b5f6ec7cf
CArtifact getters setters
2023-07-05 15:48:08 +03:00
Nikolay Kostov
fa3568dca1
Small fix in characters encodings in Languages.h
2023-07-05 13:12:49 +03:00
Ivan Savenko
1cbc6457ce
Fix possible assertion failure on removing non-owned town
2023-07-04 20:28:02 +03:00
SoundSSGood
fd9c7352a0
suggested changes
2023-07-03 22:54:03 +03:00
Ivan Savenko
5f8a125a98
Updated translations
2023-07-03 14:34:53 +03:00
Ivan Savenko
8ac56f06b0
Added Hungarian
2023-07-03 14:34:53 +03:00
Ivan Savenko
bcc335e0a8
Added Finnish, Portuguese, Swedish, Turkish languages
2023-07-03 14:34:53 +03:00
Ivan Savenko
4b366e1fe8
Added new languages: Czech, Italian, Korean
2023-07-03 14:34:53 +03:00
Ivan Savenko
8efa7911b7
Implemented "Allied Adventure Map AI" option
2023-07-03 14:34:53 +03:00
Ivan Savenko
fc696fa0b3
Added detection of OS language on first run
2023-07-03 14:34:53 +03:00
Tomasz Zieliński
73b78dd75e
Handle "bannedTowns" (alredy used on Jebus).
2023-07-02 11:41:47 +02:00
Tomasz Zieliński
cb4d818241
Inherit terrain types only after all terrain Ids are resolved.
2023-07-02 09:28:51 +02:00
Tomasz Zieliński
04e2cf728e
Allow all terrains from mods by default (including Wasteland).
2023-07-02 08:13:06 +02:00
Tomasz Zieliński
dc3dda7676
Fix new factions not appearing in random maps
2023-07-01 15:25:20 +02:00
SoundSSGood
11a109f3af
fix build
2023-07-01 14:59:23 +03:00
SoundSSGood
aa90433418
bump serialization version
2023-07-01 14:59:23 +03:00
SoundSSGood
670999d40e
BattleResultAccepted fixed
2023-07-01 14:59:16 +03:00
SoundSSGood
060aecc61c
CArtifact refactoring
2023-06-30 19:41:26 +03:00
SoundSSGood
d44821e733
CArtifactInstance moved to own file
2023-06-30 19:41:19 +03:00
SoundSSGood
58fc2efd41
CGrowingArtifactInstance
2023-06-30 19:41:12 +03:00
SoundSSGood
f8023ad283
CScrollArtifactInstance
2023-06-30 19:41:04 +03:00
SoundSSGood
07c811dd67
CCombinedArtifactInstance refactoring
2023-06-30 19:40:57 +03:00
Ivan Savenko
9cd246ab8b
Merge pull request #2259 from IvanSavenko/campaign_refactoring
...
Fix accumulated issues with campaigns
2023-06-30 12:59:48 +03:00
Ivan Savenko
cdc27d1fcf
Play correct music file in campaign menu
2023-06-27 20:09:11 +03:00
Ivan Savenko
0fdbf54937
Use HeroTypeID instead of int
2023-06-27 19:32:27 +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
96eab03b16
Fix UI updates
2023-06-27 14:09:04 +03:00
Ivan Savenko
cc91be3518
Added workaround for loading spellbook existance status
2023-06-27 13:58:45 +03:00
Ivan Savenko
33cbd46406
Merge pull request #2252 from SoundSSGood/crash_fix
...
Crash fix. Cosmetic fixes.
2023-06-26 23:06:20 +03:00
Ivan Savenko
7fc66c2797
Fix loading of experience for predefined heroes
2023-06-26 20:02:43 +03:00
Ivan Savenko
3d66455cd1
Fix build
2023-06-26 19:44:38 +03:00
Ivan Savenko
098e68b8dd
Fix granting of building upgrade as bonus
...
Such as granting Mages Guild Level 4 when town does not have Mages Guild
Level 1
2023-06-26 17:15:59 +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
e2bd98e21e
CampaignRegions class encapsulation
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
a08fe09517
Added encapsulation for CampaignState class
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
453d441562
Remove heroes placeholders even in single scenarios
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
2b7e554807
Formatting & cleanup
2023-06-26 17:15:59 +03:00
Ivan Savenko
0fb284f948
Extracted campaign-related code from GameState into a separate class
2023-06-26 17:15:59 +03:00
Ivan Savenko
85262cf4f5
Moved CGameState files into a separate directory
2023-06-26 17:15:59 +03:00
Ivan Savenko
5c3cacd290
Merge pull request #2247 from IvanSavenko/pathfinding_fixes
...
Fix accumulated issues with pathfinding
2023-06-25 21:13:52 +03:00
DjWarmonger
a560eaea51
Merge pull request #2237 from vcmi/fictive_connections
...
Wide, fictive, repulsive connections
2023-06-25 19:57:08 +02:00
Tomasz Zieliński
43d666a2ff
Refactor duplicated code
2023-06-25 18:31:54 +02:00
Ivan Savenko
c77d353086
Fix build
2023-06-25 17:42:36 +03:00
Ivan Savenko
e0ea994656
Moved some pathfinding options to game settings
2023-06-25 17:42:36 +03:00
Ivan Savenko
03c3797945
Fixed pathfinding with free ship boarding (Admiral's Hat)
2023-06-25 17:42:36 +03:00
Ivan Savenko
08cfbe79cf
Added encapsulation for movement points access
2023-06-25 17:42:36 +03:00
Ivan Savenko
f66a8a9cf0
Do not allow stopping movement while in air
...
(client-side check, since proper fix would require major rewrite)
2023-06-25 17:42:36 +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
a84ccb37c2
Merge pull request #2250 from IvanSavenko/event_handling_fixes
...
Slider input event fix
2023-06-25 17:39:55 +03:00
SoundSSGood
b135045dcd
cosmetic fixes
2023-06-24 19:01:42 +03:00
SoundSSGood
8751d9ab8b
CArtifactInstance::putAt, CArtifactInstance::removeFrom, CArtifactInstance::move interface unified. Small optimization.
2023-06-24 19:01:36 +03:00
SoundSSGood
20d86edbd1
crash fixed
2023-06-24 19:01:25 +03:00
Tomasz Zieliński
a5ddc225ac
Place objects away from connection even if it's empty (not guarded)
2023-06-23 21:43:49 +02:00
Tomasz Zieliński
64e8b9b2b9
Smarter scaling for forces between zones.
2023-06-23 21:43:12 +02:00
krs
27c488e62f
Small changes after review.
2023-06-23 20:05:15 +03:00
krs
756dd398c2
Added constant for BATTLE_SHOOTING_RANGE_DISTANCE
2023-06-23 19:13:39 +03:00
krs
e938152c1d
Fix for showing penalty limit in red for unlimited ranged archers
2023-06-23 19:13:39 +03:00
krs
33bbbefdeb
First working prototype that mimics rangedFullDamageLimit code
...
Next step is to create more generic functions that can be shared between the 2.
2023-06-23 19:13:39 +03:00
Ivan Savenko
ce3e150d59
Minor formatting
2023-06-23 13:55:52 +03:00
Ivan Savenko
1fb2b60999
Remove no longer relevant check
2023-06-23 13:42:09 +03:00
Ivan Savenko
44261ecc21
Fix boat positioning
2023-06-23 13:42:09 +03:00
Ivan Savenko
caccd58eb0
boat offsets for shipyards are counted from visitable position
2023-06-23 13:42:09 +03:00
Ivan Savenko
6a08a96d0c
Added createObject call as wrapper around NewObject netpack
2023-06-23 13:42:08 +03:00
Ivan Savenko
d8879f1e53
NewObject pack now receives visitable position instead of h3m position
2023-06-23 13:34:51 +03:00
Ivan Savenko
56680e102d
Merge pull request #2245 from IvanSavenko/platform_settings
...
Allow defining default values of settings per platform
2023-06-23 13:32:30 +03:00
Ivan Savenko
69dc95c3c8
Merge pull request #2235 from IvanSavenko/hota_h3m_support
...
Hota h3m support
2023-06-23 13:32:10 +03:00
Ivan Savenko
a505cc464e
Fixed slider's behavior, especially for mobile systems
2023-06-22 23:49:38 +03:00
Ivan Savenko
ebc7a82c2e
Converted pathfinder enum's to enum class
2023-06-21 15:38:57 +03:00
Ivan Savenko
f78470a301
Fix build
2023-06-21 14:55:25 +03:00
Ivan Savenko
bd4d2788ed
Split pathfinder into multiple smaller files
2023-06-21 13:46:09 +03:00
Ivan Savenko
87fcfa4add
Removed excessive pathfinder includes
2023-06-21 12:00:44 +03:00
Ivan Savenko
8f602b2ef6
Allow defining default values of settings per platform
2023-06-21 10:55:30 +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
3913b8e98c
Heroes placed on water in map will be automatically given boat
2023-06-20 19:37:27 +03:00
Ivan Savenko
9b5e81929f
Fix build
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
56d69e790b
Renamed MetaString methods to more logical names
2023-06-20 19:37:27 +03:00
Ivan Savenko
2636a0dcc3
Moved MetaString to a new file
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
8dde8018d0
Implemented support for fixed monster def's from hota
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
f86133705e
Fix loading of allowed artifacts from hota h3m
2023-06-20 19:37:27 +03:00
Tomasz Zieliński
25707b6d5e
Place zones in order given by template. Yields better results in a number of cases.
2023-06-18 20:23:25 +02:00
Tomasz Zieliński
8510af487e
Place objects away from wide connection
2023-06-18 19:20:12 +02:00
Tomasz Zieliński
47726625c2
Do not generate passable connections for virtual connections.
2023-06-18 12:03:41 +02:00
Tomasz Zieliński
acc141d626
Fix unused variable
2023-06-17 19:31:16 +02:00
Tomasz Zieliński
65d10cf9f2
+ Handle Wide Connections
...
+ Possibly hide fictive and repulsive connections, needs testing
2023-06-17 19:09:38 +02:00
DjWarmonger
02ea798c97
Merge pull request #2229 from vcmi/zone_placement_improvements
...
Zone placement improvements
2023-06-17 08:53:08 +02:00
Tomasz Zieliński
30f81297c3
Create only a single seer hut for every artifact we have.
2023-06-17 08:45:10 +02:00
Ivan Savenko
ece9982ca0
Fix build
2023-06-16 18:11:45 +03:00
Ivan Savenko
58661fc8ec
Moved DwellingInstanceConstructor to a new file
2023-06-16 17:59:50 +03:00
Ivan Savenko
77b58bc66d
Cleaned up object constructors to reduce duplicated code
2023-06-16 17:59:50 +03:00
Ivan Savenko
4d947be287
Adventure map shipyard nwo has configurable boat type
2023-06-16 17:59:50 +03:00
Ivan Savenko
487f441f47
Implemented boat selection for town shipyards
2023-06-16 17:59:49 +03:00
Ivan Savenko
6aedb99117
Cleaned up IShipyard interface
2023-06-16 17:59:10 +03:00
Ivan Savenko
a94b68e6aa
Hill fort upgrade costs are now loaded from json
2023-06-16 17:59:10 +03:00
Ivan Savenko
2e7c382612
Moved creature upgrade logic to CGObjectInstance inheritors
2023-06-16 17:59:10 +03:00