Ivan Savenko
e3ed728193
Merge pull request #1932 from rilian-la-te/proper-teleport
...
VCMI: teleport redesign
2023-04-16 22:52:01 +03:00
Ivan Savenko
1704fab3a2
Fix assertion failure on fighting against AI with tactics
2023-04-15 17:20:38 +03:00
Ivan Savenko
3738171b21
Refactoring of H3M loader to make HotA format support easier
...
- extracted low-level reader from MapFormatH3M class
- added separate structure to define version-specific values
- cleared up some H3M format edge cases
- replaced witch hut skill vector with set
- converted several fields to enum type
2023-04-15 17:20:38 +03:00
Ivan Savenko
b354f99cc3
Merge pull request #1936 from IvanSavenko/cpp_17_upgrade
...
Upgrade c++ standard to c++17
2023-04-14 19:21:17 +03:00
Ivan Savenko
128764b1c9
Merge pull request #1968 from rilian-la-te/fix-caster-tactics
...
Fix caster tactics
2023-04-14 18:59:03 +03:00
Ivan Savenko
44b83b2e11
Merge master -> develop
2023-04-14 16:51:35 +03:00
Ivan Savenko
1978e6f8e8
Do not show unit information on dead creatures
2023-04-13 21:16:55 +03:00
Konstantin P
384ee99834
vcmi: configurable teleport v2
...
1. Redesign wall and teleport penalty using shortest path
This will avoid OH3 exploits with teleport inside walls
2. Teleport is now configurable
2023-04-13 11:24:19 +03:00
Konstantin
bc1aad3b26
vcmi: remove deprecated CStack::getCreature()
...
Function battle::Unit::unitType() does the same.
2023-04-13 11:24:19 +03:00
Konstantin
8397bd91fb
BattleActionsController: do not pass unused caster
...
This is unused, so, remove this parameter to prepare for teleport action
2023-04-13 11:24:19 +03:00
Konstantin
15031d2e16
vcmi: do not block interface on setup spells
2023-04-13 01:06:36 +03:00
Ivan Savenko
506c3d29bc
Replaced vstd clamp with std version
2023-04-12 01:03:14 +03:00
Nordsoft91
3951bbb395
Merge pull request #1108 from Nordsoft91/battle-dialog
...
[HDMod features] Quick combat
2023-04-11 21:18:04 +04:00
Ivan Savenko
dfa2e2a349
Merge beta into develop
2023-04-11 19:37:35 +03:00
nordsoft
bfc75ccd39
Merge remote-tracking branch 'upstream/develop' into battle-dialog
2023-04-11 02:22:42 +04:00
Ivan Savenko
02c9a3f3d8
Correctly reset UI on aborting Clone/Sacrifice
2023-04-10 14:33:24 +03:00
krs
7eda4b6c1e
replaced SDLK_LSHIFT check with GH.isKeyboardShiftDown()
2023-04-08 20:42:37 +03:00
krs
3194999809
Add SHIFT + hover shortcut to show movement highlight while pressed.
2023-04-08 20:42:37 +03:00
krs
aba5840a6f
Removed Max Movement Highlight stubs
2023-04-08 20:40:30 +03:00
krs
1644cab938
Added combat option Highlight Movement on Hover
2023-04-08 20:40:30 +03:00
krs
9012a25276
Stub For Max Movement Range highlight
...
When a creature is hovered., besides movement, for max possible movement, a hex in center of map is now highlighted.
2023-04-08 20:39:59 +03:00
krs
51ad49532b
Fix for wrong merge :(
2023-04-08 20:39:59 +03:00
krs
dab07bdef9
Now unit range is shown in Tactics phase as well
...
A new parameter: isActiveStack was needed in battleGetAvailableHexes, so that we show the propper Tactics range.
2023-04-08 20:39:59 +03:00
krs
e1c388465a
HD mod highlighting of movement for hovered stack.
...
Does not work as intended in tactics mode.
2023-04-08 20:39:59 +03:00
Ivan Savenko
e35a1ba471
Merge pull request #1876 from rilian-la-te/refactoring-v1
...
VCMI Refactoring
2023-04-08 11:14:05 +03:00
nordsoft
52b53ab307
Feature and setting implemented
2023-04-08 01:49:59 +04:00
nordsoft
b1d06b6141
Complete quick combat feature
2023-04-06 22:49:38 +04:00
nordsoft
ce3028bd73
Intermediate commit
2023-04-06 19:34:07 +04:00
Konstantin
11b237a23c
vcmi: massive refactoring v1
2023-04-05 22:33:12 +03:00
Ivan Savenko
a3c5f75600
Fix visibility of alternative actions button in tactics stage
2023-04-05 18:36:10 +03:00
Ivan Savenko
cf966015bb
Correctly update battle queue state after changing its state
2023-04-05 18:35:45 +03:00
Konstantin
e0715a76c8
vcmi: reduce CStack usage a little bit
2023-04-04 23:02:54 +03:00
Ivan Savenko
307065a633
Merge beta into develop
2023-04-04 16:06:20 +03:00
Ivan Savenko
e9aed2761c
Fix target selection for teleport
2023-03-31 23:18:45 +03:00
Konstantin
d83e58f948
vcmi: use new animation functions in client
2023-03-31 01:01:25 +03:00
Konstantin
eff41f66ed
vcmi: now obstacles can have disappearing anim
...
It is a reverse version of appearingAnimation.
2023-03-31 01:01:25 +03:00
Konstantin
7543fdf787
vcmi: add reverse effect animation type
...
To be used later with obstacle removal
2023-03-31 01:01:25 +03:00
Konstantin
c4d5a7a2d6
vcmi:towns now can choose if moat render is needed
...
Using invalid points. Also removed unused variable.
2023-03-31 01:01:25 +03:00
Ivan Savenko
484f0a175a
Blocked movement of war machines in tactics phase
2023-03-30 12:20:13 +03:00
Ivan Savenko
974be97e6d
Merge pull request #1792 from IvanSavenko/happy_dydzio
...
Fixes for beta - graphical artifacts
2023-03-30 00:11:19 +03:00
Ivan Savenko
a42dc923e4
Remove hardcoded constant
2023-03-29 14:33:44 +03:00
Ivan Savenko
1fcaeba8e0
Fix stack amount boxes flickering between actions
2023-03-29 13:21:43 +03:00
Ivan Savenko
3af829e6af
Fix stack label position updates
2023-03-29 13:03:40 +03:00
Ivan Savenko
06f9759aee
Fix crash on using Teleport/Sacrifice spells
2023-03-28 23:50:42 +03:00
Ivan Savenko
0ce06e0f30
Improved rendering of stack amount boxes
2023-03-28 23:50:22 +03:00
Ivan Savenko
238de8a5d7
Properly disable combat panel during spell targeting
2023-03-28 18:14:09 +03:00
Ivan Savenko
fd3f80e860
Fix game hang on invalid shooter animation config
2023-03-28 17:04:18 +03:00
Konstantin
1b893fa525
client: do not show obstacles placed by another player
2023-03-26 21:23:54 +03:00
Ivan Savenko
da3a05bc8b
Fix special colors in battle
2023-03-26 00:46:21 +02:00
Ivan Savenko
4c311da21b
Clamp potential kills tooltip to target unit size
2023-03-26 00:07:21 +02:00
Ivan Savenko
4eed0b2c9e
Added workaround for Dungeon towers
2023-03-25 23:54:51 +02:00
Ivan Savenko
49fa628e9b
Turret creature cutoff position should match H3
2023-03-25 23:54:51 +02:00
Ivan Savenko
dcff463d36
Fixed handling of special palette colors in palette transformations
...
Fixes black color turning semi-transparent in some creatures from mods
2023-03-25 23:54:51 +02:00
Ivan Savenko
2167cb2a68
Fix battle startup with "no intro sound" mod
2023-03-25 23:54:51 +02:00
Ivan Savenko
5288e3761e
Merge pull request #1764 from IvanSavenko/selectable_spellcaster
...
Implemented support for multi-spell casters
2023-03-25 20:08:47 +02:00
Ivan Savenko
6f631a0aa7
Merge pull request #1759 from IvanSavenko/kills_in_tooltip
...
Show potential kill amount in attack tooltip
2023-03-25 20:03:27 +02:00
Ivan Savenko
9a19feaf4a
Fix spellcasters with massive spells
2023-03-25 01:23:49 +02:00
Ivan Savenko
dc099b2a35
Implemented support for multi-spell casters
2023-03-25 00:48:14 +02:00
Adriankhl
76a71226a2
Deactivate activeStack during spellCast
2023-03-24 22:43:41 +01:00
Ivan Savenko
970981cfc9
Show information on potential kills in attack tooltip
2023-03-24 17:18:47 +02:00
Adriankhl
49662f6f36
Deactivate activeStack when auto combat starts
2023-03-23 22:37:39 +01:00
Ivan Savenko
31147ac83b
refactoring: TDmgRange pair -> DamageRange struct
2023-03-23 17:49:33 +02:00
Ivan Savenko
4968ac58b4
Do not abort battle opening sound, only allow actions
2023-03-21 13:49:19 +02:00
Ivan Savenko
4919550a19
Show a message that battle intro can be skipped
2023-03-20 21:58:32 +02:00
Ivan Savenko
2864a04bda
Minor refactoring
2023-03-20 20:19:05 +02:00
Ivan Savenko
31b718898a
Fix playback of shooter animations at max speed
2023-03-20 20:19:05 +02:00
Ivan Savenko
688b8db3eb
Removed delays due to thread waits from battle animations
2023-03-20 20:19:05 +02:00
Adriankhl
4718396f5f
Prevent crashing when pressing auto-combat button on enemy turn
2023-03-17 15:40:14 +01:00
Konstantin
9205ef2c91
vcmi: skill-agnostic ballistics
...
Made ballistics by using spell action and more code is shared now.
2023-03-16 16:46:41 +03:00
Konstantin
84f53485e2
vcmi: skill-agnostic first aid
...
Now first aid is passive battle spell, and skill just bumps
specific spell power for this spell. Everything about healing
is handled into Heal spell effect.
2023-03-16 16:46:41 +03:00
Konstantin
5366f9190e
vcmi: reduce boost::lexical_cast usage
2023-03-09 16:36:46 +03:00
Ivan Savenko
7030fa8fe7
Allow changing queue size instantly on option toggle
2023-03-05 19:55:38 +02:00
Ivan Savenko
f09897b2b4
Remove unnecessary redraws
2023-03-05 19:51:42 +02:00
Ivan Savenko
7ef5163d9d
Merge pull request #1581 from IvanSavenko/map_render_rewrite
...
Adventure Map - rendering rewrite
2023-03-05 19:51:07 +02:00
Ivan Savenko
b57a07b10f
Restored ambient sounds functionality
2023-03-05 18:02:59 +02:00
Ivan Savenko
7df5c612f7
Fix battle rendering
2023-03-05 17:48:02 +02:00
Ivan Savenko
acdb8d6e06
renamed Unicode -> TextOperations, to use for all text processing
2023-03-05 17:39:23 +02:00
Dydzio
6bd4eac27a
Rename settings files
2023-02-18 17:58:22 +01:00
Dydzio
7e409df3cb
Apply manual changes from code review
2023-02-18 16:35:07 +01:00
Dydzio
9101f05835
Fixes for new battle settings
2023-02-15 22:38:41 +01:00
Dydzio
be9c71934c
Merge remote-tracking branch 'origin/develop' into settings-rework
2023-02-14 21:00:17 +01:00
Ivan Savenko
91b17bed79
Partial encapsulation of AdvMapInt
2023-02-14 11:18:42 +02:00
Dydzio
7430616ada
Move settings to separate subfolder
2023-02-12 17:29:23 +01:00
Dydzio
34227a0dab
Integrate new settings with battle UI
2023-02-12 15:49:17 +01:00
Dydzio
fc7d2b9778
Merge remote-tracking branch 'origin/develop' into settings-rework
2023-02-12 11:55:21 +01:00
Ivan Savenko
4a0a82ceb4
Merge pull request #1553 from IvanSavenko/sdl_cleanup
...
SDL usage cleanup
2023-02-08 18:14:15 +02:00
Ivan Savenko
ab8b407294
Style cleanup
2023-02-08 13:56:09 +02:00
nordsoft
fd6987ea0a
Fix alternative actions button redraw
2023-02-05 03:29:50 +04:00
Ivan Savenko
34dcb4127a
Removed text utilities from SDL_Extensions
2023-02-03 18:55:25 +02:00
Ivan Savenko
7c58a46279
Removed some instances of access to screen
surface
2023-02-03 18:23:53 +02:00
Ivan Savenko
ae9f040abf
removed unused method
2023-02-03 11:42:27 +02:00
Ivan Savenko
3fef2a5e1f
Moved Colors to a separate file, updated includes
2023-02-03 11:39:40 +02:00
Ivan Savenko
cfcaf5cbb6
renamed keyDown -> keyPressed
2023-02-03 11:39:40 +02:00
Ivan Savenko
d4fba3787c
Removed usage of SDL_KeyboardEvent from UI code
2023-02-03 11:39:40 +02:00
Ivan Savenko
6669ffd4b3
Moved input-related code from SDL_Extensions to GuiHandler
2023-02-03 11:39:40 +02:00
Ivan Savenko
214fc19e74
CIntObject now receives mouse position as point instead of SDL event
2023-02-03 11:39:39 +02:00
Ivan Savenko
64faa13b6d
Merge pull request #1487 from IvanSavenko/battle_actions_refactoring
...
Battle actions refactoring
2023-02-03 11:28:14 +02:00
Dydzio
2ef33d54ab
Merge branch 'develop' into battle-queue-improvement
2023-02-02 18:26:31 +01:00
Dydzio
5a08ec04fe
Initial split of BattleOptionsWindow
2023-02-02 17:17:16 +01:00
Ivan Savenko
2ac997d8a9
Fix "holding" animation speed
2023-02-02 14:37:34 +02:00
Ivan Savenko
731f7b0578
Fix opening spellbook via clicking on hero
2023-02-02 14:37:16 +02:00
Ivan Savenko
1e09c39c0e
Fix battle cursor after attack command
2023-02-02 14:36:58 +02:00
Ivan Savenko
3c8a0b9e70
Add missing text
2023-02-02 13:43:20 +02:00
Ivan Savenko
9678296875
Hero interaction is now battle action
2023-02-02 13:43:19 +02:00
Ivan Savenko
d3c85a19cb
Merged CClickableHex class into BattleFieldController
2023-02-02 13:35:57 +02:00
Ivan Savenko
c3b79c786b
Spellcasters UI now shares handling with hero spellcasting
2023-02-02 13:25:55 +02:00
Ivan Savenko
f150ced14c
All spellcasters should work correctly now
2023-02-02 13:25:55 +02:00
Ivan Savenko
55a58596bc
Mostly finished refactoring of BattleActionsController
...
TODO: test actions
TODO: test casters
TODO: fix random casters
2023-02-02 13:25:55 +02:00
Ivan Savenko
a2035122e1
Removed makingTurn variable
2023-02-02 13:25:55 +02:00
Ivan Savenko
4d62bf22f2
Removed no longer used code
2023-02-02 13:25:55 +02:00
Dydzio
d04c53e7e0
Merge branch 'develop' into settings-rework
2023-02-02 11:55:13 +01: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
bf343126c4
Fix Hero animation speed in battles
2023-01-31 00:42:50 +02:00
Dydzio
cc9d65a341
Make battle settings callable without battle, save last settings tab
2023-01-30 22:15:37 +01:00
Ivan Savenko
9c3030603d
Removed most SDL includes from headers, removed SDL int's
2023-01-30 19:55:32 +02:00
Ivan Savenko
e14290fde0
Removed loading of images from file into SDL_Surface
2023-01-30 18:25:47 +02:00
Ivan Savenko
42df5626d9
Added Color class to replace SDL_Color
2023-01-30 00:12:43 +02:00
Andrey Filipenkov
07dc2e1c48
Merge pull request #1496 from kambala-decapitator/resurrect-message
...
show resurrect message in the battle log
2023-01-29 22:18:32 +03:00
Ivan Savenko
3749074a4d
Renamed speed setting name to force-reset it to new scale
2023-01-28 16:49:35 +02:00
Ivan Savenko
9d1a075806
Fix battle speed selector in settings
2023-01-28 14:00:49 +02:00
Ivan Savenko
d34efaeb81
All battle effects now use time-based timings
2023-01-28 13:19:35 +02:00
Ivan Savenko
4d1c338503
Merge pull request #1498 from rilian-la-te/conan-v2
...
Conan as MXE replacement
2023-01-27 23:14:37 +02:00
Konstantin
cf56f7ccce
vcmi: remove unused-but-set-variables
2023-01-26 23:49:00 +03:00
Andrey Filipenkov
a2ac189e03
fix typo
2023-01-25 18:13:11 +03:00
Dydzio
68be7643f1
Remove redundant method - code review suggestion
2023-01-25 13:06:13 +01:00
Dydzio
4a23f93754
Give thicker frame to highlighted queue boxes
2023-01-23 12:32:20 +01:00
Dydzio
aa18118df0
Add simple cyan color frame on highlight + mouse right-click for mobile
2023-01-23 11:34:21 +01:00
Dydzio
bd1bd5064a
Highlight logic for queue icon on stack hover, lacks visual representation
2023-01-22 20:06:10 +01:00
Dydzio
92754e22f0
Highlight stack on queue icon hovered
2023-01-22 20:03:11 +01:00
Andrey Filipenkov
6f0cd37e8f
limit displayed units number to 4 digits in battle
...
- unit box
- turn queue
2023-01-20 20:38:54 +03:00
Ivan Savenko
8ed115a628
Fix ios compile
2023-01-20 16:11:43 +02:00
Ivan Savenko
9be38780cd
Removed remaining parts of Geomeotries.h/cpp
2023-01-20 16:11:43 +02:00
Ivan Savenko
46931a0ecf
Bugfixing
2023-01-20 16:11:43 +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
Ivan Savenko
05a1d7c6e3
All text for factions/towns/building are passed through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
388ed88b5d
All artifact strings now pass through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
d2b837b116
All creature-related texts go through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
fa6f7513e8
All heroes-related strings are passed through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
5da407e822
All spell texts are now passed through translator
2023-01-20 15:18:36 +02:00
Ivan Savenko
fb3c3a4636
Provide distance information fo Jousting ability
2023-01-20 15:18:10 +02:00
Ivan Savenko
785a9aadcd
Do not consider corpses for movement range display ( #1476 )
2023-01-20 15:16:28 +02:00
Ivan Savenko
b8c5a32b9b
Fix attack targeting selection for double-wide units
2023-01-20 15:15:44 +02:00
Ivan Savenko
17fc9d8d8f
Merge with vcmi/develop
2023-01-18 01:04:34 +02:00
Ivan Savenko
05ac217b0f
Merge with vcmi/develop
2023-01-17 23:02:25 +02:00
Ivan Savenko
0a858d9a7c
Upgrade msvc to include enet and qt translator ( #1436 )
...
- Updated MSVC prebuilt package
- Fixed build warnings
2023-01-15 23:55:24 +02:00
Ivan Savenko
0e8ee929df
Renamed CCursorHandler -> CursorHandler
2023-01-15 21:18:34 +02:00
Ivan Savenko
1d7f004658
Implemented reinforced walls in towns with Castle
2023-01-13 01:09:24 +02:00
Ivan Savenko
500cf7f15d
EWallPart & EWallState are now enum class
2023-01-13 00:35:58 +02:00
Ivan Savenko
4f3ea0d1d9
Renamed Terrain.h/cpp -> TerrainHandler.h/cpp
2023-01-10 00:01:35 +02:00
Ivan Savenko
f51b3bca57
use JsonKey or NameTranslated instead of ambiguos Name
2023-01-10 00:01:35 +02:00
Ivan Savenko
7c7ae26e67
Map/Road/River identifiers are now private members
2023-01-10 00:01:35 +02:00
Ivan Savenko
3e0bb3a7cc
Fixed copy-paste error
2023-01-09 19:14:21 +02:00
Ivan Savenko
f155a35378
Fix positioning of UI elements in BattleWindow
2023-01-09 17:25:49 +02:00
Ivan Savenko
c63e79fb28
Fix multi-line texts in combat log
2023-01-09 17:25:18 +02:00
Ivan Savenko
205beb96ed
Fix petrification effect
2023-01-08 16:25:47 +02:00
Ivan Savenko
9895dca615
Play sound if spell was resisted
2023-01-07 14:27:12 +02:00
Ivan Savenko
4ca22e652d
All projectile animations now use time-based speed
2023-01-05 15:26:29 +02:00
Ivan Savenko
a25214ae71
Fixes graphical artifacts on toggling stack queue visibility
...
Battlefield rendering now uses local coordinates
2023-01-05 14:16:01 +02:00
Ivan Savenko
c6c6d9e58e
Redraw battle log on sending chat message
2023-01-05 13:05:16 +02:00
Ivan Savenko
428fe0406b
Fix visibility of embedded battle queue
2023-01-05 12:57:34 +02:00
Ivan Savenko
d8a70de068
Improved ordering of movement animation, fixes potential visual artifact
2023-01-04 23:04:48 +02:00
Ivan Savenko
e422fcd092
Play spell sound on Lich/Magog attack
2023-01-04 21:55:15 +02:00
Ivan Savenko
d2fe31e224
Fix obstacles (e.g. Quicksands) animation speed
2023-01-04 21:39:32 +02:00
Ivan Savenko
6b2490903d
Fix casting of massive spells by creatures
2023-01-04 21:26:13 +02:00
Ivan Savenko
21196e822f
Fixed blue tint for clones
2023-01-04 19:36:18 +02:00
Ivan Savenko
d157735846
Initialize new animations if current one is over
2023-01-04 18:15:26 +02:00
Ivan Savenko
397ea90040
Do not show selection highlight during stack teleporting
2023-01-04 17:45:08 +02:00
Ivan Savenko
d712a6b896
Do not play mouse-over animation on petrified creatures
2023-01-04 17:23:13 +02:00
Ivan Savenko
d8c4209ded
Movement animation is now more smooth at high animation speeds
2023-01-04 17:21:40 +02:00
Ivan Savenko
7657115c5a
Fix battleQueue positioning on toggling hotkey
2023-01-04 16:40:38 +02:00
Ivan Savenko
d3ecd43aba
Merge remote-tracking branch 'vcmi/develop' into battle_improvements
2023-01-04 16:20:53 +02:00
nordsoft
e8845244f7
Fix tactic button
2023-01-03 13:02:54 +04:00
nordsoft
660d25a335
Make control panel configurable
2023-01-03 13:02:54 +04:00
nordsoft
87c47fff1d
Business logic of alternative actions
2023-01-03 13:02:54 +04:00
Ivan Savenko
4bfdb44c78
Restore status bar on BattleWindow reactivation
2022-12-30 12:32:36 +02:00
Ivan Savenko
a9808a6541
Fix battle start when hero has tactics and no battle sounds mod is on
2022-12-30 11:55:22 +02:00
Ivan Savenko
5d80457eda
Merge with vcmi/develop branch
2022-12-30 00:52:23 +02:00
Ivan Savenko
c8cd8aaf10
merge fix - do not attempt to display multiple dialogs at once
2022-12-29 22:11:47 +02:00
Ivan Savenko
7a5258853a
Fix potential access violation due to iterator invalidation
2022-12-29 14:28:38 +02:00
Ivan Savenko
da7766e90b
Fix battle start with disabled opening sounds
2022-12-28 16:51:44 +02:00
Ivan Savenko
ae3f6c5e79
Renamed PointEffectAnimation -> EffectAnimation
2022-12-25 21:39:55 +02:00
Ivan Savenko
5b41ced427
Removed sound playback from PointEffectAnimation
2022-12-25 21:35:13 +02:00
Ivan Savenko
7e3cd7db51
Fix for missing Death Blow sound
2022-12-25 20:11:22 +02:00
Ivan Savenko
5a7eed01da
Made BattleInterface class less friendly
2022-12-25 17:44:40 +02:00
Ivan Savenko
4b3d93f378
Minor cleanup
2022-12-25 17:43:55 +02:00
Ivan Savenko
325c29da0d
Merge remote-tracking branch 'vcmi/develop' into battle_improvements
2022-12-23 14:51:34 +02:00
Ivan Savenko
eb20a4b208
Merge remote-tracking branch 'vcmi/develop' into warnings_fix
2022-12-23 14:40:45 +02:00
Ivan Savenko
f073c676f9
Merge 1.1 release into develop
2022-12-23 14:17:18 +02:00
Ivan Savenko
9248e06ae0
Demon summon is now a spell. DEMON_SUMMONING bonus has been removed
2022-12-22 23:11:55 +02:00
Ivan Savenko
5b453bf530
Stack amount boxes visibility now follows H3 rules
2022-12-22 11:49:40 +02:00
Ivan Savenko
8b207fae63
ECreatureAnimType enum -> enum class
2022-12-22 01:04:58 +02:00
Ivan Savenko
bab5922951
Spells can now define color muxer effect (e.g. Bloodlust & Petrify)
2022-12-22 00:25:35 +02:00
Ivan Savenko
41b87088d5
Color muxer effects can now be (partially) configured by user.
...
TODO: move color muxer effects from spells into spell config
2022-12-21 23:29:56 +02:00
Ivan Savenko
8a9a7b9650
Fix UI on battle start if hero has tactics
2022-12-21 20:01:50 +02:00
Ivan Savenko
b423b3fa6b
Fix dragon breath & fire shield
2022-12-21 18:04:54 +02:00
Ivan Savenko
d0f259bbf7
Fix battle shutdown
2022-12-21 18:04:19 +02:00
Ivan Savenko
541d98143b
Renamed BattleControlPanel -> BattleWindow
2022-12-21 17:06:47 +02:00
Ivan Savenko
c835a84051
Moved all GUI handling from BattleInterface to BattleControlPanel
2022-12-21 17:02:53 +02:00
Ivan Savenko
822df113f3
Fix formatting
2022-12-21 13:18:16 +02:00
Ivan Savenko
6138ff1670
Minor refactoring of BattleHero class
2022-12-21 01:08:56 +02:00
Ivan Savenko
b373c4a2b6
Fix Status Bar & In-game console activation
2022-12-19 22:53:31 +02:00
Ivan Savenko
a75b437fef
Disable text input on window deactivation
2022-12-19 22:06:01 +02:00
Ivan Savenko
a57eec23e6
Refactoring of setBattleCursor & fromWhichHexAttack methods
2022-12-19 01:12:26 +02:00
Ivan Savenko
e2cc73d67b
Fix fire shield sounds
2022-12-18 22:43:13 +02:00
Ivan Savenko
16c4851d3b
Animated cursor for spell selection, removed hardcoded cursor ID's
2022-12-18 22:32:07 +02:00
Ivan Savenko
53f6b7bd32
Fix Ice Ring target selection
2022-12-18 20:23:19 +02:00
Ivan Savenko
e9e549148d
Implemented teleportation animation effect
2022-12-18 18:26:43 +02:00
Ivan Savenko
45aa841fb6
Stack reversing logic now matches H3
2022-12-18 11:42:02 +02:00
Ivan Savenko
52fc5b3c39
Exploded mines now send ACTIVATE flag to client to play effect
2022-12-17 19:37:00 +02:00
Ivan Savenko
deffba01b9
All battle effects are now fully client sided
2022-12-17 17:35:15 +02:00
Ivan Savenko
70eac47f08
Fixes #1051 , #1042 - highlight creatures that will be affected by spell
2022-12-17 00:10:12 +02:00
Ivan Savenko
4d5311789e
Fixes #831 - do not process any incoming Packs until opening is over
2022-12-16 23:22:04 +02:00
Ivan Savenko
9e5f72166b
Fix animation ordering for moving with rotation
2022-12-16 22:38:14 +02:00
Ivan Savenko
bbabc991ee
Clean up logging
2022-12-16 22:37:44 +02:00
Ivan Savenko
6c04581655
Fix stack rendering order during movement
2022-12-16 22:07:46 +02:00
Ivan Savenko
733f21f8dc
Petrify will freeze stack animations
2022-12-16 18:34:35 +02:00
Ivan Savenko
4d628a8ba1
Fixed several assertion failures on shutting down game
2022-12-16 16:19:57 +02: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
Ivan Savenko
7e35a96055
Changed ColorPutter in preparation for Bloodlust & Petrify effects
2022-12-14 15:17:38 +02:00
Ivan Savenko
3693184e51
Fix cast animation for Genie and heroes
2022-12-14 14:48:02 +02:00
Ivan Savenko
7857668158
Implemented group attack animations for dragons/Hydras/etc
2022-12-14 14:21:58 +02:00
Ivan Savenko
814f6ed684
Made Clone color filter identical to H3
2022-12-14 13:00:40 +02:00
Ivan Savenko
fb3a08e0a6
Added fading animation for fade-in effect for summons
2022-12-14 12:04:37 +02:00
Ivan Savenko
b2f5a87a0f
Spell animation will now wait for hero animation before playing
2022-12-13 21:31:49 +02:00
Ivan Savenko
e7206cb759
Cleaned up BattleHero class
2022-12-13 21:31:49 +02:00
Ivan Savenko
c172e3c8e0
Cleaned up BattleAnimationClasses file
2022-12-13 21:31:49 +02:00
Ivan Savenko
776d00d901
Cleaned up UI blocking conditions
2022-12-13 21:31:49 +02:00
Ivan Savenko
e791323502
Implemented placement sound for obstacles
2022-12-13 21:31:49 +02:00
Ivan Savenko
2148b76911
Fix lambda captures lifetime
2022-12-13 21:31:49 +02:00
Ivan Savenko
60a00b450e
Multiple fixes & improvements to animation ordering
2022-12-13 21:31:49 +02:00
Ivan Savenko
0020d76d1d
Introduced animation phases for beter ordering of visuals in battles
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
Ivan Savenko
e750bd2713
Reverse death animation for resurrection spells
2022-12-13 21:31:49 +02:00
Ivan Savenko
1dea1854ae
Moved battle animation enum's into new file
2022-12-13 21:31:49 +02:00
Ivan Savenko
55d0f0ad9f
Fixed infinite loop
2022-12-13 15:17:42 +02:00
Ivan Savenko
99e5569ab5
Changes according to review
2022-12-13 15:10:31 +02:00
Ivan Savenko
264f5c91e8
Applied suggestions from review
2022-12-13 13:58:16 +02:00
Ivan Savenko
602e52127b
Cleaned up forward declarations
2022-12-12 18:26:04 +02: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
Ivan Savenko
1558c28c0a
Fix obstacle rendering
2022-12-12 00:05:00 +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
49a6d056d9
Changes for BattleInterface classes according to code review:
...
- added documentation comments for classes, members and methods
- added const specifier to methods where applicable
- renamed some methods with more clear name
- removed some commented-out or unused code
2022-12-11 23:16:23 +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
3f9a0a855e
Renamed most of classes in client/battle directory to match current code
...
style
2022-12-09 13:26:17 +02:00
Ivan Savenko
facf77b3ae
vstd::unique -> std::unique
2022-12-07 23:36:20 +02:00
Ivan Savenko
2855606a88
Enabled & fixed -Woverloaded-virtual warning from gcc/cland
...
- fixed almost all instances of overloaded-virtual warning
- cleared up inheritance & method overrides in code affected by warning
2022-12-07 21:50:45 +02:00
Ivan Savenko
7007b86737
Do not show destroyed towers in battle results window
2022-12-07 15:57:17 +02:00
Ivan Savenko
a06d7ec80e
Fix Armaggeddon visual effect
2022-12-06 14:29:31 +02:00