1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-16 10:19:47 +02:00
Commit Graph

105 Commits

Author SHA1 Message Date
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
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
SoundSSGood
58bb2b58e3 IMarket suggestions
Co-authored-by: Ivan Savenko <saven.ivan@gmail.com>
2024-08-20 18:49:48 +03:00
SoundSSGood
fd45b5144d IMarket serializeable 2024-08-20 18:49:47 +03:00
Ivan Savenko
9fba3d97f1 Renamed & unified OBJECT_CONSTRUCTION macro set 2024-08-09 15:30:04 +00:00
Ivan Savenko
00605b5129 Remove largely unused defActions member from CIntObject 2024-08-09 14:26:53 +00:00
SoundSSGood
34b824f9ea moveChildForeground 2024-08-03 17:04:27 +03:00
Ivan Savenko
4aa73b40c9 Split CTownHandler into smaller chunks 2024-07-21 18:21:48 +00:00
Ivan Savenko
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
Ivan Savenko
920a39844b Unified naming of method to recolor UI element to current player scheme 2024-07-19 10:08:50 +00:00
Ivan Savenko
56f1725234 All images are now loaded via RenderHandler class 2024-07-19 10:08:50 +00:00
Ivan Savenko
ef68bd7ac0 Show message to player and close game if creature battle animation is
missing (demo assets usage?)
2024-07-10 14:36:24 +00:00
Ivan Savenko
4f64b1f7e6 Try to localize crash on missing combat animation 2024-06-17 13:24:07 +00:00
Ivan Savenko
0aa7362adf Fix possible crash on accessing faction description 2024-05-12 20:24:09 +00:00
Laserlicht
e4b60baa3b
creature/town biography/description 2024-04-12 23:35:39 +02:00
SoundSSGood
0813fdbf8c market window 2024-03-25 12:44:33 +02:00
Ivan Savenko
14e3c762c0 Fix slot selection in markets 2024-02-18 21:18:55 +02:00
Ivan Savenko
af671d109f Made graphical primitive-based UI more configurable 2024-02-18 20:48:45 +02:00
Ivan Savenko
bd5682ecc3 Merge remote-tracking branch 'vcmi/master' into develop 2024-01-19 13:49:54 +02:00
SoundSSGood
b840cf3650 suggested changes 2024-01-11 12:46:32 +02:00
SoundSSGood
b246e24811 reworking slot selection 2024-01-08 16:24:47 +02:00
Laserlicht
f0c97b344a
add duration + morale/luck 2023-12-23 16:07:12 +01:00
Laserlicht
c20f0bdc3e
using CHeroArea 2023-12-22 01:30:41 +01:00
gamestales-com
a574f18e69 #2903-morale-description-#1442 2023-11-10 15:58:19 +01:00
Ivan Savenko
f039b20653 Improvement for wandering monster tooltip/hover text:
- show Visions information only on right-click (H3 logic)
- show threat level only on right-click and only if UI tweaks are on
2023-11-06 20:37:07 +02:00
Ivan Savenko
10e50548e7 Converted Component class to use VariantIdentifier instead of int 2023-11-02 12:00:04 +02:00
Laserlicht
b89cdda718
Tavern also in infobox & haptics 2023-10-13 23:36:51 +02:00
Laserlicht
08832eeeb4 fix 2023-10-13 19:56:56 +02:00
Laserlicht
9e508fe2c2 interface improvements 2023-10-13 19:56:56 +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
Laserlicht
05fad115b5
Added new Widgets an functions for simplification 2023-09-17 20:34:31 +02:00
Ivan Savenko
e8453916cf Merge remote-tracking branch 'vcmi/beta' into develop 2023-09-08 18:49:06 +03:00
SoundSSGood
f1a6116088 CHeroArea fix 2023-09-07 11:54:50 +03:00
Ivan Savenko
823ffa7a07 Always use ResourcePath for referencing images and animations 2023-09-04 18:22:34 +03:00
Dydzio
e1e41d1107 Implement TOPCENTER text alignment 2023-08-30 00:35:31 +02:00
Dydzio
ed12f20609 Improve neutral creature adventure map popup 2023-08-21 14:42:41 +02:00
Ivan Savenko
f13a53c1d9 Merge remote-tracking branch 'vcmi/beta' into develop 2023-08-12 17:28:47 +03:00
Ivan Savenko
ab4fb2a228 Prefer composition over inheritance 2023-08-05 14:25:57 +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
a494dc4870 Refactoring of CGarrisonInt 2023-07-21 15:47:42 +03:00
Dydzio
ee663b1595 Changes from code review 2023-07-16 15:56:42 +02:00
Dydzio
dbfcb5a749 Implement interactable town tooltip 2023-07-16 10:17:37 +02:00
Dydzio
ea0ee87299 Interactable hero status - alternative infobox component 2023-07-15 23:14:59 +02:00
Ivan Savenko
18db944083 Replaced clickReleased with clickPressed where applicable in H3 2023-07-09 17:48:25 +03:00
Ivan Savenko
ca889a5c2a Replaced clickLeft with clickPressed clickReleased methods 2023-07-08 14:33:04 +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
Mike
c35d9d66a6 Brought back missing fort level in info box
This is to fix #2158
2023-06-28 22:21:34 -07:00
Ivan Savenko
85262cf4f5 Moved CGameState files into a separate directory 2023-06-26 17:15:59 +03:00
Ivan Savenko
563d7dd41f Renamed RCLICK -> SHOW_POPUP 2023-06-20 19:58:05 +03:00
Ivan Savenko
d4aa778547 Replaced clickRight event with showPopupWindow/closePopupWindow 2023-06-20 19:58:05 +03:00