1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-01-10 00:43:59 +02:00
Commit Graph

593 Commits

Author SHA1 Message Date
Ivan Savenko
c8c38ac922
Merge pull request #1386 from IvanSavenko/resolutions_filter
Do not allow selecting resolutions not supported by display
2023-02-12 14:33:39 +02:00
Dydzio
319d05b94f Missing merge conflict stuff 2023-02-12 12:05:12 +01:00
Dydzio
11df79dc2a Minor formatting 2023-02-12 11:55:39 +01:00
Dydzio
fc7d2b9778 Merge remote-tracking branch 'origin/develop' into settings-rework 2023-02-12 11:55:21 +01:00
Ivan Savenko
ab8b407294 Style cleanup 2023-02-08 13:56:09 +02:00
Dydzio
a4cc386a5a
Apply suggestions from code review
Co-authored-by: Nordsoft91 <nordsoft@yahoo.com>
2023-02-05 20:24:36 +01:00
Ivan Savenko
62151cd20c Replaced genRect with Rect constructor call 2023-02-03 19:17:59 +02: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
70c0937972 Moved SDL-specific code to SDL_Extensions 2023-02-03 13:02:05 +02:00
Ivan Savenko
01322aa4c5 Do not allow selecting resolution no supported by display 2023-02-03 12:57:38 +02:00
Ivan Savenko
9833edcf73 Removed using namespace SDL_Ext 2023-02-03 11:39:40 +02:00
Ivan Savenko
d87fb43dcd Replaced SDL access with VCMI methods 2023-02-03 11:39:40 +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
e1bd0d2a04 API for custom events no longer requires SDL access 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
Dydzio
e7a774c465 Improve creature numbers handling in castle interface bottom left part 2023-02-02 20:54:47 +01:00
Dydzio
5a08ec04fe Initial split of BattleOptionsWindow 2023-02-02 17:17:16 +01: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
8a9492d129 Moved client files to more suitable locations 2023-02-01 13:09:19 +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
Dydzio
88744633de Move buttons from mainOptions to SystemOptionsWindow 2023-01-30 23:26:33 +01:00
Dydzio
cc9d65a341 Make battle settings callable without battle, save last settings tab 2023-01-30 22:15:37 +01:00
Dydzio
9dd692cea4 Initial draft of tabbed settings window 2023-01-30 20:18:59 +01:00
Ivan Savenko
5cc23cc286 Renamed SDL_Pixels -> SDL_PixelAccess due to similar SDL header 2023-01-30 20:06:08 +02: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
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
42df5626d9 Added Color class to replace SDL_Color 2023-01-30 00:12:43 +02:00
Dydzio
1898b8218c Merge remote-tracking branch 'origin/develop' into settings-rework 2023-01-29 17:36:56 +01:00
Dydzio
e3578d0bc8 Extract options stuff to separate file 2023-01-29 17:36:33 +01:00
Ivan Savenko
57ee9a9bf3 Merge vcmi/beta into vcmi/develop 2023-01-29 18:21:55 +02:00
Dydzio
0fdfd8bdcb Configurable interface for game settings, change sound/music sliders 2023-01-29 16:49:47 +01:00
Ivan Savenko
bdde9f831a Fixed timings of building construction to match H3 2023-01-28 13:19:35 +02:00
Ivan Savenko
09413c61b8 Changed timing of building fade-in to match H3 2023-01-28 13:19:35 +02:00
Ivan Savenko
3acee297be CShowableAnim is now time-based with timing matching H3 2023-01-28 13:19:35 +02:00
Ivan Savenko
7bbaae75a2
Merge pull request #1508 from kambala-decapitator/shipyard-regression
attempt to show shipyard dialog only when a hero is selected
2023-01-28 02:04:10 +02:00
Ivan Savenko
50a0fc4fb2 Removed pointer to current SDL_Event from GuiHandler 2023-01-27 23:17:40 +02:00
Andrey Filipenkov
612b5e2746 attempt to show shipyard dialog only when a hero is selected
fixes regression from a4e8255cbc
2023-01-25 20:49:37 +03:00
Andrey Filipenkov
b2d2c7a2dc
Merge pull request #1501 from kambala-decapitator/townportal-doubleclick
handle double-click in Town Portal dialog
2023-01-25 17:42:15 +03:00
Ivan Savenko
52ab0f9b5b
Merge pull request #1446 from dydzio0614/movement-points-show
Implement movement points info on ALT hold + tile mouse hover
2023-01-25 12:30:34 +02:00
Andrey Filipenkov
08b04a3527 handle double-click in Town Portal dialog 2023-01-23 15:43:55 +03:00
Dydzio
192a97bc05 Extract method and make customizable movement points string 2023-01-21 15:30:32 +01:00
Andrey Filipenkov
919c592e67 fix closing Buy Boat dialog with Escape button 2023-01-21 16:00:29 +03:00
Andrey Filipenkov
a4e8255cbc allow opening Buy Boat dialog on clicking shipyard on advmap when a town is selected 2023-01-21 15:58:12 +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
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
e22f6283c2 Secondary skills strings are now 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
Andrey Filipenkov
1b3c07eda4 buy units starting from the highest level in the "buy all units" dialog 2023-01-20 15:14:15 +02:00
Ivan Savenko
05ac217b0f Merge with vcmi/develop 2023-01-17 23:02:25 +02:00
Andrii Danylchenko
c24b89fe06 2 finger rclick block adwmap scrolling and disable for iOS 2023-01-17 16:22:44 +02:00
Andrii Danylchenko
33f92bc4b1
Merge pull request #1438 from dydzio0614/build-speed-adjust
Adjust newly built building appearance and outline blinking speed
2023-01-16 20:27:56 +02:00
Dydzio
c3b254a815 Enum value can be used here as well 2023-01-16 18:26:31 +01:00
Dydzio
c886a2a02b Implement movement points info on ALT hold + tile mouse hover 2023-01-16 17:29:33 +01:00
Andrii Danylchenko
b3f6250f4e
Merge pull request #1439 from dydzio0614/castle-shipyard-animation-fix
Fix wrong rendering of castle shipyard
2023-01-16 14:23:37 +02:00
Dydzio
54e499f5e7 Minor refactoring from code review 2023-01-16 00:33:53 +01:00
Ivan Savenko
9971bdca1b Existing software cursor logic is now in a separate class 2023-01-15 21:18:34 +02:00
Ivan Savenko
0e8ee929df Renamed CCursorHandler -> CursorHandler 2023-01-15 21:18:34 +02:00
Dydzio
7dd7f4af54 Change to time-based frame counting, easier than I though 2023-01-15 19:56:55 +01:00
Dydzio
6572f5697e Fix wrong rendering of castle shipyard 2023-01-15 19:10:40 +01:00
Dydzio
cbddf2d8fb Adjust newly built building appearance and outline blinking speed 2023-01-15 17:22:53 +01:00
Ivan Savenko
246281e62a Merged vcmi/beta with vcmi/develop 2023-01-15 17:46:42 +02:00
Ivan Savenko
6ea7add4bb
Merge pull request #1394 from SoundSSGood/art-move-fix
Artifact movement refactoring
2023-01-15 17:29:36 +02:00
SoundSSGood
a0568823a9 swap contitutient 2023-01-11 13:17:33 +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
64885bdf6b Better names for terrain parameters. Support for new movement sounds. 2023-01-10 00:01:35 +02:00
Ivan Savenko
1fece0ce18
Merge pull request #1229 from IvanSavenko/battle_improvements
Battle: Fixing bugs & Implementation of missing features
2023-01-09 22:07:13 +02:00
Ivan Savenko
9308319ac7 Added workaround for ~200 ms lag occuring after hero move 2023-01-09 13:05:28 +02:00
SoundSSGood
4005b48360 Regressions fixed 2023-01-08 23:31:12 +02:00
Ivan Savenko
d83eedb8dd Fixes #1378 - do not auto-set key color - image might not have one 2023-01-06 13:15:52 +02:00
Ivan Savenko
c479504646 Formatting cleanup 2023-01-01 22:50:38 +02:00
Ivan Savenko
7c0d5666a0 Return string by copy to fix cases when string is constructed on stack 2023-01-01 20:55:43 +02:00
Ivan Savenko
cb4f5edae9 All Heroes 3 texts are now passed through translator 2023-01-01 14:56:45 +02:00
Ivan Savenko
bdb8e0ee5c Introduced string identifiers for H3 texts, still WIP 2023-01-01 14:56:44 +02:00
Ivan Savenko
5d80457eda Merge with vcmi/develop branch 2022-12-30 00:52:23 +02:00
Ivan Savenko
405b2976d5 Renamed getUpgradeInfo -> fillUpgradeInfo 2022-12-25 14:03:43 +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
c835a84051 Moved all GUI handling from BattleInterface to BattleControlPanel 2022-12-21 17:02:53 +02:00
Ivan Savenko
b373c4a2b6 Fix Status Bar & In-game console activation 2022-12-19 22:53:31 +02:00
Ivan Savenko
d29c9d6445 Fortify CLabel interface to prevent unchecked access 2022-12-19 22:04:50 +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
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
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
c855823528 Renamed files in client/battle to match new names of classes 2022-12-09 13:38:46 +02:00
Ivan Savenko
db2a40600d Fixed some of the warnings detected by CI run 2022-12-08 23:20:42 +02:00
Ivan Savenko
facf77b3ae vstd::unique -> std::unique 2022-12-07 23:36:20 +02:00
Ivan Savenko
908e6892f3 Removed CGHeroInstance::getPosition pseudo-override
Now access to hero visible position is always done via visitablePos
2022-12-07 22:10:08 +02:00
Ivan Savenko
65802d958b Integrated valid fixes from PR #1143 2022-12-07 18:13:54 +02:00
Ivan Savenko
fb6b3c31e8 Renamed UNUSED -> MAYBE_UNUSED macro to match c++17 attribute name 2022-12-07 18:06:47 +02:00
Andrii Danylchenko
a72d1270cd #1186 - disable status bar with other advmap controls 2022-12-03 21:32:47 +02:00
Ivan Savenko
397371b969 HoMM3 bug workaround: fixes missing slot on artifact merchant background
image
2022-12-02 18:52:05 +02:00
Ivan Savenko
495e0b3657 Merge remote-tracking branch 'vcmi/develop' into battleint_refactor 2022-12-01 23:58:01 +02:00
SoundSSGood
3bf0cfe4fa
Merge branch 'vcmi:develop' into refactoring-art 2022-11-29 22:34:08 +02:00
Ivan Savenko
a512e0d58f Fixed ugly solid-white status bars in pregame, removed operator* from
CPicture
2022-11-29 17:07:21 +02:00
Andrii Danylchenko
d6ca8017bf Clickable status bar to send messages with on mobile 2022-11-29 08:05:54 +02:00
SoundSSGood
909dcb82fa use ArtifactID 2022-11-29 00:32:18 +02:00
Ivan Savenko
7c4e04c1ec Refactoring/cleanup of classes in CBattleAnimations.cpp 2022-11-28 16:02:46 +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
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
cb6fe1eedf Moved battle effects into a new class 2022-11-24 16:30:04 +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
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
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
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
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
SoundSSGood
ad47a7573c Code style. Typo. Code clean up. 2022-11-10 18:29:39 +02:00
SoundSSGood
ff63167553
warnings fixed 2022-11-07 18:31:22 +02:00
SoundSSGood
f72a3e3884 function ArtifactUtils::checkSpellbookIsNeeded for the artifacts like a Titan's thunder 2022-11-07 00:18:05 +02:00
SoundSSGood
d0895e30ef callback functions and cleaning up unused code 2022-11-06 23:41:29 +02:00
Andrii Danylchenko
288f36c0c3
Merge pull request #1052 from Nordsoft91/mp-disconnection
MP handle disconnection
2022-10-19 09:56:18 +03:00
nordsoft
895ec2d302 Make console available during other players' turn 2022-10-05 19:04:51 +04:00
Andrii Danylchenko
b83a40db87 #1054 - fix crash and UI 2022-10-04 21:54:14 +03:00
Andrii Danylchenko
34ef0efa74
Merge pull request #1029 from kambala-decapitator/options-highlight-current-resolution
highlight current resolution in the resolution selector in game options
2022-10-01 18:32:17 +03:00
Andrey Filipenkov
ebeff94130 inherit CHeroWindow from CStatusbarWindow for proper status bar support 2022-10-01 11:21:16 +03:00
Andrey Filipenkov
c9ae43abe8 highlight current resolution in the resolution selector in game options 2022-10-01 10:33:48 +03:00
Andrii Danylchenko
a2dbb6c8ac
Merge pull request #978 from kambala-decapitator/hide-unsupported-resolutions
Hide unsupported resolutions
2022-09-30 17:34:07 +03:00
Andrii Danylchenko
4835387004
Merge pull request #1015 from kambala-decapitator/prohibit-dig-while-waiting
prohibit digging while waiting for your turn to start
2022-09-30 08:39:48 +03:00
DjWarmonger
58a3abb643
Merge pull request #963 from vcmi/terrain-rewrite
Terrain rewrite
2022-09-29 18:24:05 +02:00
Andrii Danylchenko
878aabd4d6
Merge pull request #981 from kambala-decapitator/fix-analyzer-warnings
Fix Clang Analyzer warnings
2022-09-29 19:23:24 +03:00
Andrey Filipenkov
836d7dc2d6 prohibit digging while waiting for your turn to start 2022-09-29 15:52:28 +03:00
Andrey Filipenkov
76b36b8951 iOS can use any resolution 2022-09-27 11:56:12 +03:00
Andrey Filipenkov
6e6bf1e77b don't list resolutions larger than the current screen's in the game options 2022-09-27 11:56:12 +03:00
Andrey Filipenkov
f0b909f772 code improvement 2022-09-27 11:56:12 +03:00
Tomasz Zieliński
f386f42166 Merge remote-tracking branch 'origin/develop' into terrain-rewrite
# Conflicts:
#	lib/Terrain.cpp
#	lib/Terrain.h
#	lib/battle/CBattleInfoEssentials.cpp
#	lib/rmg/ObstaclePlacer.cpp
#	lib/rmg/RiverPlacer.cpp
2022-09-27 07:50:17 +02:00
Andrii Danylchenko
127a7e6653
Merge pull request #959 from kambala-decapitator/fix-cursor-attack
fix cursor image on hover when there're multiple creatures nearby
2022-09-25 17:44:10 +03:00
Andrey Filipenkov
96c2db4d56 remove useless variable 2022-09-25 13:13:37 +03:00
Andrey Filipenkov
72feb538ce add explicit null pointer checks 2022-09-25 10:05:16 +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
27b7cb8f1f show long press hints higher
kambala-decapitator/vcmi#29
2022-09-24 15:55:19 +03:00
Andrey Filipenkov
d2b1cc00e8 enable same adventure map tweaks as on android 2022-09-24 15:55:17 +03:00