1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-06-15 00:05:02 +02:00
Commit Graph

121 Commits

Author SHA1 Message Date
645b95ba02 Renamed LibClasses * VLC to GameLibrary * LIBRARY 2025-02-21 16:54:56 +00:00
156de5b17e Added GameInstance class
- available as global GAME
- integrates LOCPLINT (CPlayerInterface)
- integrates CGI->mh (CMapHandler)
- integrates CSH (CServerHandler)
2025-02-21 16:54:06 +00:00
ffd37a8fa8 Removed CGI in favor of VLC. Map handle is for now global variable 2025-02-21 16:53:14 +00:00
f657e85305 Integrated CClientState into GameEngine class 2025-02-21 16:53:14 +00:00
cacceda950 Renamed CGuiHandler to GameEngine
- class CGuiHandler is now called GameEngine to better describe its
functionality
- renamed global GH to more clear ENGINE
- GH/ENGINE is now unique_ptr to make construction / deconstruction
order more clear and to allow interface / implementation split
- CGuiHandler.cpp/h is now called GameEngine.cpp/h and located in root
directory of client dir
2025-02-21 16:53:13 +00:00
0548f325e4 Merge branch 'master' into 'develop' 2025-02-21 13:59:34 +00:00
f7f94bb7dc Remove old code 2025-02-10 21:08:30 +00:00
31e627f128 Remove screen2 and screenBuf global variables 2025-02-10 21:08:30 +00:00
2468ab54ea Show total movement cost for multi-turn paths 2025-02-09 17:29:28 +00:00
7803f7a972 Clicking on blocked tile of a visitable object now builds a path to it
Suggestion from Discord.

If player has hero selected, clicking on a blocked tile of a visitable,
reachable object will now build a path to its visitable position (or
move hero to it, in case of second click / tap).

Objects that have interaction on left click (allied town and shipyards)
are excluded from this change and work as before
2025-02-07 13:59:32 +00:00
c5a75b20ad Merge pull request #5352 from IvanSavenko/assets_generation
[1.6.5] In-memory assets generation
2025-02-01 14:23:06 +02:00
cca4c0888c In-memory assets generation
All assets generation (large spellbook, terrain animations, etc) are now
done in memory and used as it, without saving to disk.

This should slightly improve load times since there is no encode png /
decode png, and should help with avoiding strange bug when vcmi fails to
load recently saved assets.

If needed, such assets can be force-dumped on disk using already
existing console command
2025-01-30 22:21:38 +00:00
6957ac33b6 Fix excessive paths updates when using Fly/Water Walk 2025-01-30 16:43:52 +00:00
32391dc7a9 Pathfinder cache is now stored separately per playerBlocked
- human player will now use pathfinder settings from config (as before)
- nullkiller AI will now use its own, modified settings
- added option to configure NKAI usage of monolith to config
- fixed pathfinder costs not updating on receiving levelup
2025-01-23 15:28:44 +00:00
1fb5301750 remove test 2024-11-30 15:52:39 +01:00
e93a060500 Merge branch 'vcmi/beta' into 'vcmi/develop' 2024-09-23 14:25:53 +00:00
c6edd615ac Block possibility to move hero if shift-clicking on path end 2024-09-17 21:49:21 +02:00
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
748a3a1b64 Fixed minimap generation when upscaled mode is used 2024-08-17 15:25:26 +00:00
79c55bc898 Merge pull request #4425 from IvanSavenko/ui_cleanup
Remove old code from UI system
2024-08-12 17:16:03 +03:00
9fba3d97f1 Renamed & unified OBJECT_CONSTRUCTION macro set 2024-08-09 15:30:04 +00:00
0e28791075 scroll only if in focus 2024-08-07 20:47:29 +02:00
b7391f49f6 Merge branch 'vcmi/master' into 'vcmi/develop' 2024-08-05 10:36:10 +00:00
dde5cea601 Fix activation of world view on end turn in multiplayer 2024-08-04 13:19:12 +00:00
1aa391fdf8 Split CGeneralTextHandler file into 1 file per class form
All text processing code is now located in lib/texts.
No changes other than code being moved around and adjustment of includes

Moved without changes:
Languages.h           -> texts/Languages.h
MetaString.*          -> texts/MetaString.*
TextOperations.*      -> texts/TextOperations.*

Split into parts:
CGeneralTextHandler.* -> texts/CGeneralTextHandler.*
                      -> texts/CLegacyConfigParser.*
                      -> texts/TextLocalizationContainer.*
                      -> texts/TextIdentifier.h
2024-07-20 12:55:17 +00:00
0d6ec0d224 Reviewed usage of EBlitMode, now specified clearly in all cases 2024-07-19 10:08:50 +00:00
920a39844b Unified naming of method to recolor UI element to current player scheme 2024-07-19 10:08:50 +00:00
7328c9ffd6 Fix path and music not updating on new turn 2024-07-16 13:08:15 +00:00
575d15c425 Fix centering on selected map object on loading save 2024-07-08 20:52:37 +00:00
2584432b92 Fix crash on clicking on map when player is not making turn in MP 2024-07-04 08:46:39 +00:00
fc1a20239e Swapped functions of Ctrl and Shift on adventure map 2024-06-11 17:14:06 +00:00
56ee3713fe Pressing shift will now add tile coordinates to adventure map hover text 2024-06-04 14:11:53 +00:00
16f963bed5 Fix zooming with keyboard shortcuts 2024-05-19 09:58:55 +00:00
79206ce65b fix hotseat hide 2024-05-14 22:25:10 +02:00
7267e02b8d Better handling of Ctrl / Cmd modifier keys on Apple systems:
- Test only for Cmd modifier key when processing mouse clicks
- Test both Ctrl and Cmd modifier key when processing keyboard input
- This logic is now used for all Apple systems - macOS and iOS
2024-05-12 17:09:31 +00:00
49691ef743 Unblock interface during turn of another human player 2024-04-30 17:51:31 +03:00
68e63630d8 Code review
Co-authored-by: Ivan Savenko <saven.ivan@gmail.com>
2024-04-20 00:23:25 +02:00
cf4384071d use CIntObject instead of IShowActivatable 2024-04-19 23:11:24 +02:00
19b75c3d88 possibility to disable dimming of small windows 2024-04-19 22:50:05 +02:00
320469d773 Cleanup 2024-04-10 20:04:08 +03:00
8353bca34f Small refactoring of adventure map spell casting:
- Removed duplicated checks for DD possibility
- Moved most of spell-specific code from AdventureMapInterface to library
code
- AdventureSpellMechanics class now provides methods to check whether
spellcast is possible, similarly to battle spells
- If it is not possible to cast adventure map spell (e.g. no mana or no
move points) game will show infowindow immediately on clicking spellbook
instead of on cast attempt
- If hero does not have movement points for a DD, game will show correct
error message
- Added game settings 'dimensionDoorFailureSpendsPoints' due to
discovered H3 logic
2024-04-10 20:04:08 +03:00
3f94d316cb Fix cursor & add way to access danger info for HotA-like DD cursor 2024-04-01 20:18:35 +02:00
3bb66de551 Serverside validation, setting for terrain compatibility before cast etc 2024-04-01 18:12:38 +02:00
e69c096f94 Move dimension door FoW limit check to lib 2024-04-01 15:13:18 +02:00
25f9e6a3e9 Add setting to allow previous VCMI mechanics of dimension door 2024-03-27 23:39:08 +01:00
048fb1867d Merge remote-tracking branch 'origin/develop' into dimension-door-changes 2024-03-27 23:03:33 +01:00
38659abcb8 Fix wrong cursor assignment for uncovered tiles beyond DD range 2024-03-27 22:48:53 +01:00
4f0a286167 Fix checks for tile visibility in tile click/hover handlers 2024-03-27 22:06:31 +01:00
807035c321 temporarily add TODO's 2024-03-25 09:21:42 +01:00
982e67cea8 Working version of SoD dimension door spell 2024-03-24 23:58:04 +01:00