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
cb6fe1eedf
Moved battle effects into a new class
2022-11-24 16:30:04 +02:00
Ivan Savenko
02fe0425c7
Moved battle actions handling into a separate class
2022-11-20 22:56:42 +02:00
Ivan Savenko
b01737daf2
Moved stacks & animations handling into a separate class
2022-11-20 19:11:34 +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
3c5858f01e
Separated battlefield background&hexes handling into a new class
2022-11-17 23:57:51 +02:00
Ivan Savenko
9c2a6dc9fc
moved battle obstacle handling into separate class
2022-11-17 19:36:25 +02:00
Ivan Savenko
a65dd0726d
Separated siege-related part of BattleInterface into separate class
...
- added constants for BattleHex'es of castle towers
2022-11-17 18:50:12 +02:00
Ivan Savenko
bd1b2e4977
Battle Interface refactoring: separated projectile handling into a
...
separate class (untested)
2022-11-17 13:21:03 +02:00
Nordsoft91
1893212abb
Merge pull request #1146 from IvanSavenko/ray_projectile
...
Implemented ray-like projectiles for shooters
2022-11-16 22:45:00 +04:00
Ivan Savenko
b3067c0e3f
Attemts to improve timing of ranged attacks:
...
- when computing number of steps/frames to display projectile round to
nearest instead of rounding down
- end projectile animation only *after* last step was shown
2022-11-16 17:53:40 +02:00
Ivan Savenko
3771080a45
Merge pull request #1145 from vcmi/master_debian_build
...
Fixes building .deb packages on Launchpad PPA
2022-11-16 12:32:16 +02:00
Ivan Savenko
d1c95204c5
Code formatting
2022-11-16 12:29:07 +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
9afc1eed49
Expanded schema to validate ray configuration
2022-11-16 12:26:56 +02:00
Ivan Savenko
1bdc4240d1
Remove unused include
2022-11-16 12:16:23 +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
Andrii Danylchenko
6974d4ea53
Merge pull request #1130 from IvanSavenko/banned_skills_fix
...
Fixes #1096 - do not propose banned skills on levelup
2022-11-15 09:32:12 +02:00
Andrii Danylchenko
8b964be71f
Merge pull request #1111 from GermanAizek/develop
...
Code refactor and fix condition bug
2022-11-15 09:23:16 +02:00
lainon
7fdad4e0f6
Code refactor following C++ standard and condition fixes
2022-11-15 03:20:55 +03:00
Ivan Savenko
729357824b
Added common method for secondary skill availability checks
2022-11-14 19:08:49 +02:00
Andrii Danylchenko
b6bcfec329
Merge pull request #1129 from IvanSavenko/new_day_sound_fix
...
Fixes #825 - do not wait for new week dialog in single-player
2022-11-14 17:45:57 +02:00
Ivan Savenko
e06db2365d
Fixes #1096 - do not propose banned skills on levelup
...
Remove possibility to get banned skill on levelup as "obligatory skill"
if all other such skills have been learned before.
May happen under some conditions, e.g. if hero quickly learns other
magic schools - in witch hut/university, leading to case where banned
skill is the only obligatory skill that can be offered on levelup
2022-11-14 17:16:49 +02:00
Ivan Savenko
4fe8ff9b01
Fixes #825 - do not wait for new week dialog in single-player
2022-11-14 15:53:07 +02:00
Ivan Savenko
c5c2f0ffb9
Added Lua library to Debian dependencies
2022-11-14 12:12:03 +02:00
Andrii Danylchenko
86972d7164
Merge pull request #1112 from SoundSSGood/bulk-move-swap-artifacts-rev2
...
Bulk move and swap artifacts rev2
2022-11-14 08:31:48 +02:00
Andrii Danylchenko
38f36fa720
Merge pull request #1127 from IvanSavenko/resume_music
...
Fix #985 - resume town & terrain themes
2022-11-13 21:18:46 +02:00
Ivan Savenko
6388b73204
Typo in library name
2022-11-13 20:46:17 +02:00
Ivan Savenko
2f0225600a
Update .deb packaging data
2022-11-13 20:46:02 +02:00
SoundSSGood
98bf6931a1
cosmetic correction
2022-11-13 19:01:28 +02:00
SoundSSGood
57ab13c820
cosmetic correction
2022-11-13 17:09:48 +02:00
SoundSSGood
f9738f0d0b
nullptr checks
2022-11-13 16:28:26 +02:00
SoundSSGood
aef87dd482
Apply suggested cosmetic changes
2022-11-13 15:28:09 +02:00
Ivan Savenko
2324148187
Fix compilation using older SDL library
2022-11-13 14:59:28 +02:00
Ivan Savenko
38b8fc0af8
Formatting: space -> tabs
2022-11-13 14:24:15 +02:00
Ivan Savenko
4af9bc2461
Music: remember playback position of music tracks
...
Town & terrain themes will now resume from previously stopped position
instead of playing from start, as it was in original game.
Fixes #965
2022-11-13 14:05:51 +02:00
Andrii Danylchenko
e4f3d2a685
Merge pull request #1121 from vcmi/nk-fix-hung
...
#1102 - NKAI: one more freeze - no mains with strong army
2022-11-13 09:56:39 +02:00
Andrii Danylchenko
41825e8c92
Merge pull request #1125 from GermanAizek/fix-3144
...
Fix [3144]
2022-11-13 09:00:03 +02:00
lainon
79bc82af63
Fix [3144]
2022-11-13 05:35:16 +03:00
SoundSSGood
84841a5f0a
BulkMoveArtifacts::applyGs reworked
2022-11-12 19:44:34 +02:00
SoundSSGood
3142f32cbb
Fix for callback return. More code optimization
2022-11-11 01:28:04 +02:00
SoundSSGood
9647758812
Apply suggested changes next part
2022-11-10 23:24:41 +02:00
Andrii Danylchenko
3676152644
#1102 - NKAI: one more freeze - no mains with strong army
2022-11-10 21:12:08 +02:00
SoundSSGood
6e5932c016
Apply suggested changes next part
2022-11-10 21:02:06 +02:00
SoundSSGood
30db38c0fe
Unified CGameHandler::bulkMoveArtifacts and CGameHandler::bulkSwapArtifacts to one
2022-11-10 20:11:26 +02:00
SoundSSGood
ad47a7573c
Code style. Typo. Code clean up.
2022-11-10 18:29:39 +02:00
SoundSSGood
b9087e2d63
Apply suggestions from code review
...
Co-authored-by: Nordsoft91 <nordsoft@yahoo.com>
2022-11-10 17:45:54 +02:00