SoundSSGood
060aecc61c
CArtifact refactoring
2023-06-30 19:41:26 +03:00
SoundSSGood
07c811dd67
CCombinedArtifactInstance refactoring
2023-06-30 19:40:57 +03:00
Ivan Savenko
6493922f9b
Reverted debug changes
2023-06-27 16:27:46 +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
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
85262cf4f5
Moved CGameState files into a separate directory
2023-06-26 17:15:59 +03:00
Ivan Savenko
08cfbe79cf
Added encapsulation for movement points access
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
ce3e150d59
Minor formatting
2023-06-23 13:55:52 +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
69dc95c3c8
Merge pull request #2235 from IvanSavenko/hota_h3m_support
...
Hota h3m support
2023-06-23 13:32:10 +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
3913b8e98c
Heroes placed on water in map will be automatically given boat
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
f35b3a0dc3
Replace MetaString operator << with member function
2023-06-20 19:37:27 +03:00
Ivan Savenko
6ed0fbe579
Fix excessive warning - neutral town with Portal is perfectly legal
2023-06-20 19:37:27 +03:00
Ivan Savenko
ece9982ca0
Fix build
2023-06-16 18:11:45 +03:00
Ivan Savenko
6aedb99117
Cleaned up IShipyard interface
2023-06-16 17:59:10 +03:00
Tomasz Zieliński
adec58f5bf
- Set fixed boat type for Tavern / Prison
...
- Move magical boat offset to static function
2023-06-15 17:53:18 +02:00
Tomasz Zieliński
351d596bdc
Handle water Prisons and Taverns.
2023-06-08 09:17:08 +02:00
Tomasz Zieliński
db917ae435
Fix #1140
2023-06-07 17:29:07 +02:00
Ivan Savenko
1e9eea30e1
Merge remote-tracking branch 'soundsgood/CArtHandler-rework' into develop
2023-06-05 18:53:17 +03:00
Ivan Savenko
acac42291e
Remove excessive CMap.h includes
2023-05-31 23:18:38 +03:00
Michael
70bdec41a3
case-insensitive cheats
2023-05-20 01:14:06 +02:00
SoundSSGood
021f94a579
artifact utils
2023-05-17 17:00:31 +03:00
SoundSSGood
a10279e1cc
Grail fix
2023-05-16 16:51:45 +03:00
Ivan Savenko
79982c4ad4
Fix broken bonuses due to calling PutArtifact before NewArtifact
2023-05-09 16:48:52 +03:00
nordsoft
ce80c83ca2
Merge remote-tracking branch 'upstream/develop' into town-buildings
...
# Conflicts:
# lib/CTownHandler.cpp
# lib/rewardable/Interface.cpp
2023-05-04 22:23:44 +04:00
Konstantin
05eccbc2bb
vcmi: split bonus to enumerator and HeroBonus.h
2023-05-03 18:01:06 +03:00
nordsoft
92dcfd1f68
Fix garrisons hero
2023-05-02 15:09:02 +04:00
nordsoft
96420bfc05
Fix configurable reward for non-query scenrio
2023-05-02 14:45:42 +04:00
Konstantin
fbc05c70ac
vcmi: camelCase methods of new classes
...
Also use EGameSettings for clamping morale and luck
2023-05-02 12:09:13 +03:00
Konstantin
a6de9097be
vcmi: rename HeroBonus.h to Bonus.h
2023-05-02 11:20:58 +03:00
nordsoft
c4cf2a100b
Fix behavior for hero bought in town tavern
2023-05-02 04:44:09 +04:00
Ivan Savenko
916b41d9a7
Merge pull request #2078 from IvanSavenko/shortcuts
...
Basic shortcuts system
2023-05-01 21:45:52 +03:00
nordsoft
59bc9326e9
Remove excess pointer from market interface
2023-05-01 21:49:37 +04:00
Ivan Savenko
a654cc2391
Removed vstd::advance. Added vstd::next to handle similar cases.
2023-05-01 17:58:18 +03:00
Ivan Savenko
ac09f78c67
Merge pull request #2109 from IvanSavenko/server_fix
...
Fix potential nullptr-to-reference conversion
2023-05-01 16:36:51 +03:00
Ivan Savenko
c7bee037d2
Fix potential nullptr-to-reference conversion
2023-05-01 14:44:52 +03:00
Ivan Savenko
4aa232a60a
Merge pull request #2055 from SoundSSGood/cartifactholder-rework
...
Artifact related code refactoring part2 (client CArtifactHolder)
2023-05-01 02:33:08 +03:00
Konstantin
86f5d6de69
vcmi: modernize headers
2023-04-30 13:35:54 +03:00
Ivan Savenko
d985ac90d3
Merge master -> develop
2023-04-28 22:57:25 +03:00
Ivan Savenko
c55f52e84f
Fixed disabled special weeks
2023-04-28 16:54:00 +03:00
Konstantin P
b472c89276
vcmi: make some CStack properties private
...
There is a getters for this properties already available
2023-04-27 20:58:49 +03:00
Ivan Savenko
fb739e7186
Merge beta -> develop
2023-04-26 22:48:08 +03:00
Ivan Savenko
9296306fa3
Merge pull request #2041 from IvanSavenko/bugfixing_for_hotfix
...
Fixes for 1.2.1
2023-04-24 18:13:00 +03:00
Ivan Savenko
48abf46824
Merge pull request #2005 from IvanSavenko/advmap_refactor
...
Refactoring of adventure map interface
2023-04-24 17:19:22 +03:00
Andrii Danylchenko
eff158a9a8
Fix killing hero with grail
2023-04-23 16:17:27 +03:00
SoundSSGood
c86af54ce1
arts move condition fix
2023-04-23 14:18:55 +03:00
Nordsoft91
a553a4aa66
Merge pull request #2030 from Nordsoft91/boats
2023-04-22 03:27:00 +04:00
Ivan Savenko
7db67a3101
int3 now has proper hasher function
2023-04-20 22:04:24 +03:00
nordsoft
de159df481
Rename boats
2023-04-20 21:20:51 +04:00
Ivan Savenko
9882c37ce3
Good morale can no longer happen after battle is over
2023-04-20 13:10:03 +03:00
Ivan Savenko
d9939f0918
Bad morale can no longer happen after waiting
2023-04-20 13:08:55 +03:00
Ivan Savenko
4bb4d7e7a5
Merge pull request #1989 from SoundSSGood/refactoring-arts-p1
...
Artifact related code refactoring part1 (initial)
2023-04-19 15:31:11 +03:00
nordsoft
0a28262c15
Merge remote-tracking branch 'upstream/develop' into boats
...
# Conflicts:
# AI/VCAI/Pathfinding/AINodeStorage.cpp
2023-04-19 02:22:19 +04:00
nordsoft
008db447e7
Minor changes
2023-04-19 02:11:24 +04:00
nordsoft
22da7a931d
Boat as bonus system node
2023-04-19 01:11:51 +04:00
nordsoft
1c66cd221d
Polish transport mechanics
2023-04-18 19:18:44 +04:00
nordsoft
3ff99a1a15
Mechanic for air and land transport
2023-04-18 18:33:28 +04:00
nordsoft
ddcdfb643a
Try to enable air/land movement
2023-04-18 17:36:42 +04:00
nordsoft
ed798b06da
Prepare transport enum
2023-04-18 13:04:49 +04:00
Konstantin
7a5775a9f9
vcmi: use std::optional
2023-04-17 00:43:13 +03:00
Konstantin
0d35606a44
vcmi: use std::variant
2023-04-17 00:43:13 +03:00
Ivan Savenko
e3ed728193
Merge pull request #1932 from rilian-la-te/proper-teleport
...
VCMI: teleport redesign
2023-04-16 22:52:01 +03:00
SoundSSGood
9a838598a6
arts refactoring part1
2023-04-15 00:10:39 +03:00
Konstantin P
f11fa8f0c8
Teleport: can trigger obstacles now
2023-04-13 11:24:19 +03:00
Konstantin
bc1aad3b26
vcmi: remove deprecated CStack::getCreature()
...
Function battle::Unit::unitType() does the same.
2023-04-13 11:24:19 +03:00
Ivan Savenko
506c3d29bc
Replaced vstd clamp with std version
2023-04-12 01:03:14 +03:00
Ivan Savenko
63b197b78a
Converted attributes to use c++17 functionality
2023-04-12 01:03:14 +03:00
Nordsoft91
3951bbb395
Merge pull request #1108 from Nordsoft91/battle-dialog
...
[HDMod features] Quick combat
2023-04-11 21:18:04 +04:00
Ivan Savenko
dfa2e2a349
Merge beta into develop
2023-04-11 19:37:35 +03:00
nordsoft
8e77b833d9
Merge remote-tracking branch 'upstream/develop' into battle-dialog
2023-04-11 15:54:08 +04:00
Ivan Savenko
ff66592fad
Merge pull request #1882 from rilian-la-te/native-terrain-refactor
...
Native terrain refactor
2023-04-11 02:14:37 +03:00
nordsoft
bfc75ccd39
Merge remote-tracking branch 'upstream/develop' into battle-dialog
2023-04-11 02:22:42 +04:00
Nordsoft91
ebd17c9e4a
Merge pull request #1928 from Nordsoft91/cast-reward
...
Spell cast reward
2023-04-10 22:49:36 +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
Ivan Savenko
42b2be4bbb
Merge pull request #1908 from SoundSSGood/art-client-server-fixes
...
Artifact related fixes
2023-04-10 18:26:49 +03:00
Konstantin
2eaecfd1ae
ObstacleCasterProxy: beta branch
2023-04-10 15:41:58 +03:00
nordsoft
464ad63749
Implement behavior
2023-04-10 05:46:45 +04:00
nordsoft
c0b90432cb
Change callback interface
2023-04-10 05:40:03 +04:00
nordsoft
e440343921
Bypass initial version of spell callback
2023-04-10 04:34:24 +04:00
SoundSSGood
e58be8e7f7
vcmiartifacts fixed
2023-04-08 12:28:53 +03:00
SoundSSGood
ea7dd14d8b
client is able to erase artifact
2023-04-08 00:41:55 +03:00
Ivan Savenko
f3aed901fd
Merge pull request #1883 from rilian-la-te/fixup-healing-destination
...
CGameHandler: fixup healing destination
2023-04-07 12:42:52 +03:00
nordsoft
b1d06b6141
Complete quick combat feature
2023-04-06 22:49:38 +04:00
nordsoft
e85593dbb3
Save & restore mana
2023-04-06 21:19:46 +04:00
nordsoft
3e28b58c80
Fixes
2023-04-06 19:59:22 +04:00
nordsoft
ece8a2a41f
Merge branch 'battle-dialog' into battle-dialog2
...
# Conflicts:
# AI/BattleAI/BattleAI.h
# AI/StupidAI/StupidAI.h
# client/CPlayerInterface.cpp
# client/CPlayerInterface.h
# client/Client.cpp
# client/NetPacksClient.cpp
# client/battle/CBattleInterface.cpp
# client/battle/CBattleInterface.h
# client/battle/CBattleInterfaceClasses.cpp
# client/battle/CBattleInterfaceClasses.h
# config/schemas/settings.json
# lib/CGameInterface.h
# lib/IGameEventsReceiver.h
# lib/NetPacks.h
# lib/NetPacksLib.cpp
# lib/battle/BattleInfo.cpp
# server/CGameHandler.cpp
# server/CQuery.h
2023-04-06 19:53:52 +04:00
nordsoft
ce3028bd73
Intermediate commit
2023-04-06 19:34:07 +04:00
Konstantin
dc7d0297a7
CGameHandler: fixup healing destination
...
If it contains hex, not unit, server complains.
Add actual unit there.
2023-04-06 00:21:21 +03:00
Konstantin
11b237a23c
vcmi: massive refactoring v1
2023-04-05 22:33:12 +03:00
Konstantin
e0715a76c8
vcmi: reduce CStack usage a little bit
2023-04-04 23:02:54 +03:00
Konstantin
e946ddcfeb
CGameHandler: obstacle trigger does not use CStack
2023-04-04 23:02:54 +03:00
Konstantin
4259d116e1
vcmi: move ServerSpellCastEnvironment in separate file
...
In theory, it should not know about CGameHandler
2023-04-04 23:02:54 +03:00
Ivan Savenko
307065a633
Merge beta into develop
2023-04-04 16:06:20 +03:00
Ivan Savenko
c661419897
Merge pull request #1700 from rilian-la-te/resource-array
...
Modernize resourceSet.
2023-04-02 20:12:45 +03:00
Ivan Savenko
2b1def4ef1
Merge pull request #1813 from Laserlicht/patch-1
...
hide messages from AI
2023-04-02 20:08:45 +03:00
Ivan Savenko
f471d1b23a
Merge pull request #1816 from krs0/feature/all_cheats_should_have_lotr_equivalent
...
Added LotR alternatives for vcmiarmy and vcmiexp
2023-04-02 20:08:33 +03:00
Ivan Savenko
efbc5cf581
Merge pull request #1815 from IvanSavenko/beta_fixes
...
Beta fixes
2023-04-02 20:02:41 +03:00
krs
28486a0b40
In the Silmarillion, Gandalf is referred to as "Olórin"
2023-04-02 10:58:20 +03:00
krs
7bec5bf606
Added LotR alternatives for vcmiarmy and vcmiexp
2023-04-02 10:58:20 +03:00
Ivan Savenko
63d0e437a9
Merge pull request #1820 from rilian-la-te/fix-magogs
...
GGameHandler: fix spell-like attack targeting
2023-04-01 23:09:08 +03:00
Konstantin
05cc7fbf67
GGameHandler: fix spell-like attack targeting
2023-04-01 01:06:26 +03:00
Ivan Savenko
56e1866db9
Remove final path node when directly attacking guards
2023-03-31 23:18:45 +03:00
Ivan Savenko
820c9be61b
Use own resources when buying boat in allied shipyard
2023-03-31 23:18:45 +03:00
Michael
f7feeacc1f
hide messages from AI
2023-03-31 22:10:48 +02:00
Konstantin
6d17b9342d
ResourceSet: resolve .at troubles
2023-03-31 14:12:38 +03:00
Konstantin
d8a237ba46
vcmi: add getTrigger method to obstacles
...
Fixes advanced remove obstacle spell
2023-03-31 01:01:26 +03:00
Konstantin
d5e2933bee
CGameHandler: slightly rework obstacle caster
2023-03-31 01:01:26 +03:00
Konstantin
53a6fb2836
CGameHandler: do not open-code toInfo
...
There is an obstacle function which is doing exactly this.
2023-03-31 01:01:25 +03:00
Konstantin
f704a17e1a
vcmi: add a last hex setting
...
I consider this behaviour as H3 bug, but this is H3.
So, added a setting to disable this behaviour.
2023-03-31 01:01:25 +03:00
Konstantin
a8478a012b
vcmi: check long bridge by moat
...
If moat is on GATE_BRIDGE hex, then it is a long bridge.
No need to check town type.
2023-03-31 01:01:25 +03:00
Konstantin
aab5b47038
vcmi: setup moats using MoatAbility
...
Setup moats using moat ability, need playtest for now.
-3 to defence not added for now.
2023-03-31 01:01:25 +03:00
Ivan Savenko
46ccd65080
Removed largely unused signal handling, fixes build with musl c library
2023-03-30 14:56:13 +03:00
Konstantin
cd1730b1fb
vcmi: remove obstacle caster logic
...
It is possible now to cast something via obstacle
Immune creatures should not trigger an obstacle trigger now
and should not reveal it.
2023-03-30 14:41:40 +03:00
Konstantin
5716925b47
NetPacks: change GiveBonus enum to enum class.
2023-03-30 12:41:17 +03:00
Ivan Savenko
484f0a175a
Blocked movement of war machines in tactics phase
2023-03-30 12:20:13 +03:00
Ivan Savenko
8a3e1b0230
Merge pull request #1789 from IvanSavenko/beta_fixes
...
Fixes for 1.2 release
2023-03-30 00:09:51 +03:00
Ivan Savenko
3e1506dba3
Merge pull request #1767 from Adriankhl/fix_battle_thread_shutdown
...
Properly shutdown battle thread
2023-03-29 14:40:15 +03:00
Ivan Savenko
0c7dae0913
Allow formation change while in hero exchange query
2023-03-28 19:12:35 +03:00
Ivan Savenko
b2f5042942
Merge pull request #1783 from vcmi/beta
...
Merge beta -> develop
2023-03-27 21:21:25 +03:00
Ivan Savenko
11088100a0
Merge pull request #1782 from korli/haiku
...
Haiku patch
2023-03-27 18:42:22 +03:00
Ivan Savenko
b875da108b
Merge pull request #1717 from SoundSSGood/backpack-limit-size
...
Introducing backpack size limit functionality
2023-03-27 17:17:49 +03:00
Ivan Savenko
e3b5db0ade
Merge pull request #1778 from rilian-la-te/fix-obstacle-removal-mechanincs
...
Fix landmines staying on battlefield after trigger
2023-03-27 17:17:14 +03:00
Konstantin
9a229d6e48
vcmi: really correct obstacle trigger
...
Now obstacle trigger really matches H3
2023-03-27 16:11:17 +03:00
Jerome Duval
518f8d69e5
Haiku patch
2023-03-27 10:10:09 +02:00
Konstantin
5b50191af7
NetPacksLib: remove obstacle ACTIVATE* actions
...
Actually these actions was not working anyway.
2023-03-26 22:59:34 +03:00
Adriankhl
21a4113fc1
Properly shutdown battle thread in CGameHandler destructor
2023-03-25 20:29:33 +01:00
Ivan Savenko
5288e3761e
Merge pull request #1764 from IvanSavenko/selectable_spellcaster
...
Implemented support for multi-spell casters
2023-03-25 20:08:47 +02:00
Ivan Savenko
dc099b2a35
Implemented support for multi-spell casters
2023-03-25 00:48:14 +02:00
Ivan Savenko
970981cfc9
Show information on potential kills in attack tooltip
2023-03-24 17:18:47 +02:00
SoundSSGood
19096f39f0
Backpack limit. Amount of fixes.
2023-03-21 22:11:42 +02:00
Ivan Savenko
575fb29a22
Merge pull request #1534 from kambala-decapitator/pathfinder-fly
...
fix movement cost with Fly
2023-03-21 14:32:56 +02:00
SoundSSGood
f0f9eecf97
Backpack limit part5. End of battle. Other stuff
2023-03-21 12:14:33 +02:00
SoundSSGood
9f8aa25297
Backpack limit part4 (Using cheats, buying)
2023-03-21 12:14:33 +02:00
SoundSSGood
e23766280f
Backpack limit part2 (Pick up, Dig up, Object rewards)
2023-03-21 12:14:33 +02:00
SoundSSGood
96e8a1f21c
Backpack limit part1 (move, disassemble)
2023-03-21 12:14:33 +02:00
SoundSSGood
72122fb433
CArtifact, CArtifactInstance, CCombinedArtifactInstance reorganization
2023-03-21 12:14:33 +02:00
Adriankhl
8d549bf030
Fix town portal query when it calls level up query
2023-03-20 16:08:18 +01:00
Andrey Filipenkov
aae9e70771
remove duplicate call
...
already performed in CPathfinderHelper constructor
2023-03-20 11:35:19 +03:00
Ivan Savenko
a0e9e01b48
Renamed & reorganized all game mechanics settings names
2023-03-16 18:11:35 +02:00
Ivan Savenko
383387ef29
Integrated defaultMods into mod system
2023-03-16 17:55:09 +02:00