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

62 Commits

Author SHA1 Message Date
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
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
e93a060500 Merge branch 'vcmi/beta' into 'vcmi/develop' 2024-09-23 14:25:53 +00:00
7979f62f82 Add status bar movement points info for own hero on adventure map or hero list 2024-09-17 21:38:28 +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
89dca5061d Merge pull request #4384 from Laserlicht/shortcut
add shortcut for list item ordering
2024-08-14 17:04:45 +03:00
52b1219db6 code review 2024-08-12 17:53:24 +02:00
9a9cc10ee7 use Strg instead mouse pos 2024-08-09 22:50:09 +02:00
9fba3d97f1 Renamed & unified OBJECT_CONSTRUCTION macro set 2024-08-09 15:30:04 +00:00
00605b5129 Remove largely unused defActions member from CIntObject 2024-08-09 14:26:53 +00:00
dc81426b5e remove var 2024-08-06 19:34:50 +02:00
7071647b72 add shortcut for list item moving 2024-08-04 14:11:10 +02: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
02e429e973 Fix typos using https://github.com/crate-ci/typos
Changes were reviewed manually
2024-06-24 03:47:19 +02:00
7992144763 Gem class is now Sorceress 2024-01-30 23:34:27 +02:00
bcbd708fa7 Added more checks to detect illegal access in CList's class 2023-12-24 00:16:29 +02:00
5f4608c9f0 Fixed memory corruption on usage of radial wheel to reorder towns/heroes 2023-12-16 13:46:29 +02:00
2fcbf78e4e unused var 2023-10-17 21:22:27 +02:00
464c65a595 fix 2023-10-17 21:17:57 +02:00
e05102192b heroes and more buttons 2023-10-17 21:13:08 +02:00
d5b16ac96c rename 2023-10-16 01:43:50 +02:00
f3262a47c0 Update client/adventureMap/CList.cpp
Co-authored-by: Nordsoft91 <nordsoft@yahoo.com>
2023-10-16 01:42:01 +02:00
4528f42cdf fix segmentation fault; update townlist on adventuremap 2023-10-15 15:53:19 +02:00
3b853bff08 sort town feature 2023-10-15 14:31:33 +02:00
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
823ffa7a07 Always use ResourcePath for referencing images and animations 2023-09-04 18:22:34 +03:00
723c674d81 Merge pull request #2447 from IvanSavenko/modding_handler_refactoring
(develop) Modding handler refactoring
2023-08-02 21:26:05 +03:00
43795c39a5 Replaced all usage of SDL_Color outside of render with ColorRGBA 2023-07-31 21:07:30 +03:00
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
64a22d8590 Workaround for false double-clicking of elements in hero/town lists 2023-07-17 17:40:28 +03:00
3836217da5 Fix updating of heroes when moving to/from garrison 2023-07-15 16:09:44 +03:00
3e1125570d Fix updating of hero & town lists on adventure map 2023-07-15 16:09:44 +03:00
ca889a5c2a Replaced clickLeft with clickPressed clickReleased methods 2023-07-08 14:33:04 +03:00
08cfbe79cf Added encapsulation for movement points access 2023-06-25 17:42:36 +03:00
563d7dd41f Renamed RCLICK -> SHOW_POPUP 2023-06-20 19:58:05 +03:00
d4aa778547 Replaced clickRight event with showPopupWindow/closePopupWindow 2023-06-20 19:58:05 +03:00
0e36a3ab5a Use Scrollable class for all appropriate locations 2023-06-05 19:18:33 +03:00
57df1c3e0d Implemented gesture for town/hero lists and town/hero selection 2023-06-05 19:12:24 +03:00
360bf48031 Implemented panning/swiping gesture for sliders 2023-06-05 19:09:56 +03:00
261308b942 Hero/town lists are now scrollable with mouse wheel 2023-06-05 19:00:57 +03:00
8ea0ecaec1 show/showAll methods now use Canvas instead of SDL_Surface
- added compatibility method to Canvas to allow SDL_Surface access
- added drawBorder method to Canvas to replace CSDL_Ext method
- added drawColor method to Canvas to replace CSDL_Ext method
- minor changes to Tavern and Trade windows to adapt to new API
2023-06-02 16:42:18 +03:00
ad3e54e6c0 Reduced usage of topWindow() method 2023-05-16 21:57:45 +03:00
c5a48a01ce Remove no longer used code 2023-05-09 13:10:33 +03:00
243773b6ef Renamed some adventure map files & classes 2023-05-09 13:10:33 +03:00
342ea138f9 Fix remaining graphical artifacts on switching from world view 2023-05-09 13:10:33 +03:00
a015bf6507 Initial part of dynamically-sized adventure map:
- removed no longer used CConfigHandler
- remove no longer use resolutions.json
- moved widget management from adventure map to a separate class
- adventure map layout is now loaded from config
2023-05-09 13:10:33 +03:00
bb08a0afc8 Moved selection logic to player state 2023-04-20 22:04:24 +03:00
e8718a46cc Fix regressions 2023-04-20 22:04:24 +03:00
365f552fa1 Added API for owned towns access 2023-04-20 22:04:24 +03:00
5cbd0f8fc8 API for wandering heroes access 2023-04-20 22:04:24 +03:00