1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-01-24 03:47:18 +02:00

632 Commits

Author SHA1 Message Date
nordsoft
b1f2c7aed4 Team alignments implemented 2022-12-17 08:19:16 +04:00
Ivan Savenko
39367473d2 Removed no longer used code 2022-12-16 16:23:50 +02:00
Ivan Savenko
3403b42cd8 Fix transparency checks that were broken for palette images with alpha 2022-12-16 16:23:07 +02:00
Ivan Savenko
291bb9b204 Expanded cursors enum to include all possible values 2022-12-16 11:22:58 +02:00
nordsoft
268b87052b Fix for hint 2022-12-16 02:49:52 +04:00
nordsoft
1d59dfecef Support translations 2022-12-16 02:48:07 +04:00
nordsoft
d3c3feb037 Configurable template selection 2022-12-16 02:15:53 +04:00
Ivan Savenko
864990db13 Implemented Bloodlust & Petrification effect
- ColorFilter is now in separate file
- Moved lerp function into global.h
- Bloodlust visuals mostly matches H3
- Petrify visual matches H3
- TODO: Adjust timing of all ColorFilter efects to match H3
- TODO: Petrify should pause stack animations
- TODO: ColorFilter-powered effects should be configurable in Spell system
2022-12-15 23:24:03 +02:00
nordsoft
1d4209d97e Continue refactoring 2022-12-16 00:57:10 +04:00
nordsoft
2371e3e9a2 Interface builder refactored 2022-12-16 00:46:36 +04:00
nordsoft
2fe951f819 Merge remote-tracking branch 'upstream/develop' into interface-builder
# Conflicts:
#	client/lobby/RandomMapTab.cpp
2022-12-15 04:47:11 +04:00
Ivan Savenko
7e35a96055 Changed ColorPutter in preparation for Bloodlust & Petrify effects 2022-12-14 15:17:38 +02:00
Ivan Savenko
fb3a08e0a6 Added fading animation for fade-in effect for summons 2022-12-14 12:04:37 +02:00
Ivan Savenko
e7206cb759 Cleaned up BattleHero class 2022-12-13 21:31:49 +02:00
Ivan Savenko
c79634b6a7 Moved all animation ordering logic to callers
Previously, CBattleAnimation & inheritors were controlling animation
ordering - e.g. which animations should play after which.
Now, this is controlled by caller, e.g. BattleInterface & its
controllers.
H3 animations are fairly linear and can be split in stages which are
already somewhat implemented via waitForAnims
2022-12-13 21:31:49 +02:00
nordsoft
f90cb1be90 Template list prototype looks fine 2022-12-13 03:47:29 +04:00
Ivan Savenko
d40d5250b7 changes to status bar according to review comments:
- renamed IStatusBar API to more clear names
- removed "locking" of status bar
- added comments for IStatusBar API
- removed dynamic_casts to CGStatusBar, now IStatusBar API is fully
sufficient
2022-12-12 18:23:41 +02:00
nordsoft
690ff773f4 Remove files 2022-12-12 11:53:23 +04:00
nordsoft
cd58e8a860 Rename InterfaceBuilder 2022-12-12 11:48:39 +04:00
nordsoft
34bf741936 Fix compilation error 2022-12-12 11:43:54 +04:00
nordsoft
5e3504f578 Add improvements 2022-12-12 11:38:27 +04:00
nordsoft
3be9969154 Prevent crashes for custom config 2022-12-12 03:58:39 +04:00
nordsoft
0104c77d61 Interface builder for random map tab 2022-12-12 03:27:59 +04:00
Ivan Savenko
c302efd315 Fix crash on accessing not yet created object 2022-12-12 00:04:46 +02:00
Ivan Savenko
ac839ad26a Changes to rest of the code according to review:
- renamed status bar method clearMatching -> clearIfMatching
- renamed class ColorShifterAddMul -> ColorShifterMultiplyAndAdd
- fixed missing return from function
- fixed potential access to deleted object
2022-12-11 23:43:43 +02:00
Ivan Savenko
7f5e5259c8 Changes to Canvas class according to review:
- renamed CCanvas -> Canvas.cpp
- replaced shared_ptr<Canvas> with Canvas&
- removed getSurface method
2022-12-11 22:09:57 +02:00
Ivan Savenko
c855823528 Renamed files in client/battle to match new names of classes 2022-12-09 13:38:46 +02:00
Ivan Savenko
facf77b3ae vstd::unique -> std::unique 2022-12-07 23:36:20 +02:00
Ivan Savenko
6f6d350228 Formatting cleanup 2022-11-28 16:43:38 +02:00
Ivan Savenko
9f21569a79 Next batch of siege fixes 2022-11-27 22:50:18 +02:00
Ivan Savenko
e76cd1b6a7 Bugfixing: fix crashes on battle start & most noticeable glitches 2022-11-27 02:26:02 +02:00
Ivan Savenko
0cae259f53 Most of rendering in BattleInt is done via canvas
- refactoring of CBattleStacksController.cpp
- moved EAlignment enum to Geometries.h from CIntObject
- renamed EAlignment to ETextAlignment, to avoid conflict with good/evil
alignemt
- ETextAlignment is now enum class
2022-11-26 23:12:20 +02:00
Ivan Savenko
4f91b062db Refactoring of projectile controller
- projectiles now separated based on type
- each type has its own rendering method
- refactoring of CShootingAnimation
2022-11-25 16:32:23 +02:00
Ivan Savenko
abb553d975 Next step of code refactoring:
- refactoring of CBattleFieldController code (except for 2 arcane
methods)
- introduced class CCanvas for encapsulated rendering surface
- battleint rendering is now partially done with CCanvas
- removed unused includes of CBitmapHandler
2022-11-25 11:46:47 +02:00
Ivan Savenko
6b3beb05e5 BattleInt split is finished, start of refactoring:
- Refactoring of siege controller code
- Replaced some usages of C struct SDL_Surface with proper c++ class
IImage
- Refactoring of rendering of battlefield objects (WIP)
2022-11-25 00:26:14 +02:00
Ivan Savenko
7a6ad671ab Separated battle control panel into new class, refactoring of
CGStatusBar to allow shared API with battle console
2022-11-18 17:54:10 +02:00
Ivan Savenko
48be492517 Fix parameter order in case of right-to-left lines, formatting 2022-11-16 12:28:07 +02:00
Ivan Savenko
6678a747bb Implemented ray-like projectiles for shooters
- Added missing support for ray-like projectiles
- Archmages, Evil Eyes and Beholders now use ray for shooting
- New method to draw 1 pixel-wide line with color gradient at arbitrary
angle
- fixed incorrect attackClimaxFrame field for Archmages
2022-11-15 21:42:16 +02:00
Andrey Filipenkov
3ab21d8491 show loading indicator when starting local server
single player or hosting a multiplayer game
2022-09-24 15:55:25 +03:00
Andrey Filipenkov
e1c9903a45 extract iOS helpers into a shared lib 2022-09-24 15:55:24 +03:00
Andrey Filipenkov
ff635edc0b wrap all library code into namespace if VCMI_LIB_NAMESPACE is defined
preparation for having client and server in a single process
2022-09-24 15:55:21 +03:00
Andrey Filipenkov
217c83a7e7 convert text input rect to screen coordinates
workarounds SDL bug related to moving window ensuring that the input is always above the native keyboard
kambala-decapitator/vcmi#31
2022-09-24 15:55:19 +03:00
Andrii Danylchenko
2b0f02c832
Merge pull request #944 from AgostonSzepessy/dev/agos/937
Add right click to Quick Recruit Window
2022-09-23 14:01:52 +03:00
Andrii Danylchenko
43a1a8b76d
Merge pull request #928 from kambala-decapitator/quick-recruit-no-creatures
show message instead of the Quick Recruit dialog when there're no creatures in town
2022-09-22 18:21:45 +03:00
Andrey Filipenkov
a1cf120ea6 add missing virtual destructors 2022-09-22 11:54:09 +03:00
Agoston Szepessy
411038195c Add clickeable area on top of creature picture
A class that wraps an instance of `CIntObject` creates an area
that users can right click to view information about the creature
they're buying.

The constants were based off the existing ones in the code and were
refined by guessing and checking where clicking falls inside/outside
the border of the rectangle.
2022-09-18 22:53:11 -07:00
Andrey Filipenkov
a320af837d fix includes in client subdirectories 2022-09-18 17:43:40 +03:00
Andrey Filipenkov
d7650ce9c0
use Conan to make macOS CI builds for both Intel and ARM (#782)
* [CI] append platform to output artifact name if it's given
2022-08-30 17:29:00 +03:00
Andrey Filipenkov
7150ee565a [macOS] text input handling must be done on main thread
Xcode's Main Thread Checker warns about that
2022-08-03 12:09:49 +03:00
Andrii Danylchenko
2521e7bac9 Fix flickering in fullscreen 2022-06-13 16:11:53 +03:00