Commit Graph
8773 Commits
Author SHA1 Message Date
Ivan Savenko 35576834c9 Fixing sieges, part 1 2022-11-27 20:21:51 +02:00
Ivan Savenko b5d1cb4996 Fixes for projectile playback. TODO: check catapult projectile 2022-11-27 17:24:45 +02:00
Ivan Savenko 15b588b164 Fix stack reactivation leading to broken spellcasting 2022-11-27 15:10:27 +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 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