Ivan Savenko
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
Ivan Savenko
115439f16a
Fix town events not actually giving offered creatures
2024-10-11 15:01:18 +00:00
Ivan Savenko
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
Ivan Savenko
c0f5c7c0ea
Replace pointer with reference in pack apply functions
2024-10-07 14:59:46 +00:00
Ivan Savenko
cc6d6b0d63
Replaced unique_ptr with simple references to packs
2024-10-07 14:59:14 +00:00
godric3
8917c753bd
adjust town event handling after introducing 8th creature in town
2024-09-16 20:16:36 +02:00
Ivan Savenko
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
Ivan Savenko
a72715ad31
Merge pull request #4563 from SoundSSGood/vcmiScrolls
...
Improvements to the artifact creation
2024-09-05 17:10:13 +03:00
SoundSSGood
7466d7452d
vcmiscrolls
2024-09-05 15:51:45 +03:00
Ivan Savenko
7a0726bcff
Apply x2 bonus only to creature growth of affected creature on new month
2024-09-04 19:46:15 +00:00
Ivan Savenko
21fc80a315
Growth of town garrison in neutral towns now uses H3 logic
2024-08-29 15:22:31 +00:00
Ivan Savenko
37658478fa
Move timed events to NewTurnProcessor
2024-08-28 13:03:26 +00:00
Ivan Savenko
ce1e0b8875
Moved NewTurn pack generation to NewTurnProcessor
2024-08-28 13:03:24 +00:00
Ivan Savenko
10a9d777c7
Moved mana and movement points refresh to NewTurnProcessor
2024-08-28 13:03:15 +00:00
Ivan Savenko
c09c414f5a
Moved roll for week type to NewTurnProcessor
2024-08-28 13:03:15 +00:00
Ivan Savenko
020f1d1f46
Moved rumors generation to NewTurnProcessor
2024-08-28 13:03:15 +00:00
Ivan Savenko
691a1a666d
Moved most of town growth handling to NewTurnProcessor
2024-08-28 13:03:13 +00:00
Ivan Savenko
d49a61645c
All objects that can be owned by player now implement IOwnableObject
2024-08-28 12:51:28 +00:00
Ivan Savenko
a481f07daf
PlayerState now stores all objects owned by player
2024-08-28 12:51:27 +00:00
Ivan Savenko
0fd9dbf240
Unified income handling, added IOwnableObject interface
2024-08-28 12:40:44 +00:00
Ivan Savenko
189cb1c762
Moved most of daily income handling to a separate method
2024-08-28 12:40:44 +00:00
Laserlicht
01c14ae9ce
Merge branch 'develop' into extended_statistic
2024-08-20 20:25:16 +02:00
Ivan Savenko
67132b3e7f
Fixed visitation of configurable town buildings by newly recruited heroes
...
and on building construction
2024-08-14 17:03:25 +00:00
Laserlicht
37283e51c3
basic diagram
2024-08-12 20:14:36 +02:00
Laserlicht
490f1bfee6
rework
2024-08-01 21:36:00 +02:00
Ivan Savenko
4aa73b40c9
Split CTownHandler into smaller chunks
2024-07-21 18:21:48 +00:00
Ivan Savenko
b07408e984
New objects are now created and initialized on server and sent to client
2024-07-16 13:13:39 +00:00
Ivan Savenko
63bcf7d83c
Replaced most of usages of CRandomGenerator with vstd::RNG in library
2024-07-16 13:13:07 +00:00
Ivan Savenko
6b8f94e6e7
Merge remote-tracking branch 'vcmi/master' into develop
2024-07-11 17:43:44 +00:00
Ivan Savenko
6300473ff8
Block AI from acting at the same time as guest-human during simturns
2024-07-08 20:57:47 +00:00
Alexander Wilms
02e429e973
Fix typos using https://github.com/crate-ci/typos
...
Changes were reviewed manually
2024-06-24 03:47:19 +02:00
Ivan Savenko
df83fa33a1
Merge branch 'vcmi/master' into 'vcmi/develop'
2024-05-31 09:34:21 +00:00
Ivan Savenko
5ecb527252
Merge pull request #3997 from IvanSavenko/serialization_refactor
...
[1.6] Serialization refactor
2024-05-30 19:13:21 +03:00
Ivan Savenko
888149c6f6
Implemented simple versioning system for multiplayer
2024-05-29 20:08:32 +00:00
Ivan Savenko
2ff28f6957
Merge pull request #4018 from IvanSavenko/voting
...
[1.5.2?] Multiplayer voting
2024-05-29 18:13:42 +03:00
Ivan Savenko
215b279ea8
Contact between allies will no longer break simturns
2024-05-19 20:18:14 +00:00
Ivan Savenko
e04c662bc9
Owned object in range of enemy heroes now break simturns
2024-05-19 20:03:24 +00:00
Ivan Savenko
10b50cd905
It is now possible to vote for simturns and turn timer changes
2024-05-19 18:31:32 +00:00
Ivan Savenko
721b15d9de
Merge branch 'vcmi/master' into 'vcmi/develop'
2024-05-17 08:26:37 +00:00
Ivan Savenko
84bc6c42db
Added 'Serializeable' base class for classes serializeable by pointer
2024-05-16 18:40:59 +00:00
Ivan Savenko
19f2fbce1e
Reveal terrain around newly recruited hero to account for Scouting
2024-05-10 16:48:20 +00:00
Ivan Savenko
2521557f68
Fixed some newly reported issues from SonarCloud
2024-05-10 13:40:24 +00:00
Ivan Savenko
6ac67775f5
Merge pull request #3861 from Laserlicht/pvp_options
...
Pvp options
2024-05-03 10:38:42 +03:00
Laserlicht
1f209fd94a
use MetaString
2024-05-02 21:03:23 +02:00
Laserlicht
b9c4a56360
translate also cheater message
2024-05-01 16:06:34 +02:00
Ivan Savenko
ac11a0e639
Blocked most of incoming network packs during turns of other players
2024-04-30 17:51:31 +03:00
Ivan Savenko
5010344df0
Added serialization of turn timer handler
2024-04-26 13:16:02 +03:00
Ivan Savenko
a99d5e6fa1
Simplify code
2024-04-26 12:44:57 +03:00
Ivan Savenko
f14aec5876
Trim cheats so 'vcmiartifacts ' will be recognized as single-word cheat
2024-04-09 17:08:24 +03:00
Ivan Savenko
2c2bec791c
Fixes and cleanup of game client network shutdown and restart
2024-02-03 19:27:04 +02:00