Ivan Savenko
e4a719fb7e
Fix corrupted pixels on town building animations in mods
2025-02-25 15:28:45 +00:00
Ivan Savenko
05e8542a79
Fix corrupted image of university
2025-02-20 13:09:38 +00:00
Ivan Savenko
38bb5a76e6
Handle flag color overlay and creature selection overlay separately
...
Fixes handling of Iron Golem animation from HotA
2025-02-03 11:44:21 +00:00
Ivan Savenko
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
Ivan Savenko
668bf63fc0
Remove access to internal surface of Canvas
2025-01-21 21:15:21 +00:00
Ivan Savenko
4a600a9d4c
Reworked image container classes for easier support of new features
2025-01-21 21:15:21 +00:00
Ivan Savenko
91940dbfc6
Do not show selection highlight on creature preview images
2024-11-17 20:40:38 +00:00
Ivan Savenko
251155d913
More robust management of body/shadow/overlay split
2024-11-17 17:54:55 +00:00
Ivan Savenko
915533ed2e
Implemented generation of player-colored version of DiBoxBck
2024-09-12 21:22:41 +00:00
Laserlicht
01c14ae9ce
Merge branch 'develop' into extended_statistic
2024-08-20 20:25:16 +02:00
Ivan Savenko
f29a687234
Clean up scaling code, implemented image size optimization
2024-08-17 15:25:26 +00:00
Laserlicht
00692888df
sonar cloud fixes
2024-08-15 23:09:04 +02:00
Laserlicht
5743f151a1
icon drawing
2024-08-15 00:21:02 +02:00
Ivan Savenko
97f1a310df
Fix miscellaneous issues discovered by Sonar
2024-08-12 18:26:30 +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
c40eea6e10
Fix fade-in animation - per-surface alpha was not set correctly
2024-07-19 10:46:20 +00:00
Ivan Savenko
0d6ec0d224
Reviewed usage of EBlitMode, now specified clearly in all cases
2024-07-19 10:08:50 +00:00
Ivan Savenko
230add02e4
Remove no longer used code
2024-07-19 10:08:50 +00:00
Ivan Savenko
0e407540ec
Fixed player-coloring on adventure map
2024-07-19 10:08:50 +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
a8a330f39f
Remove unused code and no longer needed caching
2024-07-19 10:08:50 +00:00
Ivan Savenko
47de9a62dc
Created separate classes for shared, unchangeable image and image
...
manipulators owned by UI elements
2024-07-19 10:08:50 +00:00
Ivan Savenko
a1fb3b8b01
Reduce direct access to CAnimation, removed various caching schemes
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
d27b854cb1
Reorganized music, video and sound players:
...
- All XXXplayers are now in client/media directory
- Reogranized code on one class per file basis
- Extracted interfaces from handlers. Handlers now implement
corresponding interface.
- CCS now only stores pointer to an interface
2024-05-15 17:05:12 +00:00
Ivan Savenko
c92a5bbbab
Attempt to track crashes with unclear cause
2024-05-14 09:44:40 +00:00
Ivan Savenko
7d93206786
Use cache for CAnimImage. Improves performance of CAnimImage
2024-04-20 12:28:50 +03:00
Ivan Savenko
0fd966818f
Remove 'visible' property from images, replaced with enable/disabled
...
call
2023-12-07 13:57:16 +02:00
Alexander Wilms
466cdb9d2b
client/widgetsImages.{h,cpp}: implicit conversion loses integer precision: 'int' to 'uint8_t' (aka 'unsigned char')
2023-10-29 13:34:19 +00:00
SoundSSGood
068a7d5d4a
crash fixed
2023-10-20 01:11:10 +03:00
Ivan Savenko
1d0e696db6
Added RenderHandler that acts as factory for images and animations
2023-09-04 18:22:34 +03:00
Ivan Savenko
823ffa7a07
Always use ResourcePath for referencing images and animations
2023-09-04 18:22:34 +03:00
Ivan Savenko
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
Ivan Savenko
fa496628f2
Separated timer updates from rendering in adventure map and town screen
2023-05-14 22:22:37 +03:00
Ivan Savenko
03df274450
Framerate manager is now in a separate file and private member of GH
2023-05-14 22:22:37 +03:00
Ivan Savenko
b2233b8ced
Attempt to improve coloring of resource bar texture-fill
2023-05-09 13:10:33 +03:00
Ivan Savenko
7228b08d1d
Implemeted runtime generation of player-colored background texture
2023-05-09 13:10:33 +03:00
Ivan Savenko
d4098059b8
Proper support for player-colored buttons in UI
2023-05-09 13:10:33 +03:00
Ivan Savenko
4958190e82
Fixed visibility of corner gems
2023-05-09 13:10:33 +03:00
Ivan Savenko
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
Konstantin
7a5775a9f9
vcmi: use std::optional
2023-04-17 00:43:13 +03:00
Konstantin
40222e3f77
vcmi: fix week animation
2023-03-13 01:22:19 +03:00
Ivan Savenko
108a42e4ba
Reorganized includes for new layout. New class - IImageLoader
2023-02-01 20:42:06 +02:00
Ivan Savenko
0ba74fea73
Merge pull request #1515 from IvanSavenko/time_based_animations
...
Time based animations
2023-02-01 12:25:54 +02:00
Ivan Savenko
5cc23cc286
Renamed SDL_Pixels -> SDL_PixelAccess due to similar SDL header
2023-01-30 20:06:08 +02:00
Ivan Savenko
e14290fde0
Removed loading of images from file into SDL_Surface
2023-01-30 18:25:47 +02:00
Ivan Savenko
87218c63c4
CPicture now uses IImage internally
2023-01-30 17:18:59 +02:00
Ivan Savenko
e35a669eeb
Refactoring of CPicture class to improve encapsulation
2023-01-30 13:58:13 +02:00
Ivan Savenko
3acee297be
CShowableAnim is now time-based with timing matching H3
2023-01-28 13:19:35 +02:00
Ivan Savenko
ee7a573cb8
Refactoring of SDL API usage:
...
- Rect no longer inherits from SDL_Rect
- renamed vcmi functions that used SDL naming format
- moved all functions in SDL_Extensions file into CSDL_Ext namespace
- SDL_Rect is now used only by SDL_Extensions, all other code uses Rect
2023-01-20 16:11:43 +02:00