1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-12-24 22:14:36 +02:00
Commit Graph

1333 Commits

Author SHA1 Message Date
Ivan Savenko
3867e512f7
Merge pull request #3064 from IvanSavenko/bonus_metaidentifier
Type-safe bonus system
2023-10-22 18:34:12 +03:00
Ivan Savenko
a70ad7202f
Merge pull request #3088 from Laserlicht/non_squared
Minimap keep aspect ratio (Letterboxing)
2023-10-22 16:55:58 +03:00
Ivan Savenko
ac925bb786 Renamed new types for consistency with code style 2023-10-22 16:55:19 +03:00
Ivan Savenko
b394158dc9 Bonus Source ID now uses metaidentifier 2023-10-22 16:55:18 +03:00
Ivan Savenko
77facf9387 Implement missing functions, fixes linking errors 2023-10-22 16:54:56 +03:00
Ivan Savenko
454ba44ac5
Merge pull request #2988 from IvanSavenko/configurable_extensions
Extension of configurable object functionality
2023-10-22 16:24:47 +03:00
Laserlicht
e03f2a9d3a
improvements for non quadratic maps 2023-10-21 16:49:50 +02:00
Nordsoft91
12b179ef1f
Merge pull request #3057 from Laserlicht/rw_hero 2023-10-20 01:42:06 +02:00
Johannes Schauer Marin Rodrigues
a1a5bc28c2
convert line endings from CRLF (Windows) to LF (Linux/Unix)
Mixed line endings cause problems when exporting patches with
git-format-patch and then trying to "git am" a patch with mixed and
non-matching line endings. In such a situation git will fail to apply
the patch.

This commit runs the dos2unix tools on the remaining files with CRLF
(\r\n) line endings to convert them to line-feeds (\n) only.

Files that are Windows specific like *.vcxproj and *.props files were
not converted.

Closes: #3073
2023-10-19 16:23:21 +02:00
Ivan Savenko
e0f6b582f5 Display object description only on right-click 2023-10-19 14:36:11 +03:00
Ivan Savenko
0f2922d064 Only show components if UI enhancements is on 2023-10-19 13:33:49 +03:00
Laserlicht
464577be28
new icons 2023-10-17 20:06:35 +02:00
Ivan Savenko
927ce4e60e Improvements to rewardable objects popups 2023-10-16 23:55:37 +03:00
Nordsoft91
ee997a291c
Merge pull request #3045 from Laserlicht/interface_improvement
various interface shortcuts
2023-10-15 23:48:22 +02:00
Laserlicht
efcf6b71d7
formatting 2023-10-15 12:58:07 +02:00
Laserlicht
dd0033296f
docs 2023-10-15 12:28:13 +02:00
Laserlicht
5ae646bd15
Update client/windows/GUIClasses.cpp
Co-authored-by: Ivan Savenko <saven.ivan@gmail.com>
2023-10-15 12:19:44 +02:00
Laserlicht
23e1b0b0d5
radial wheel for hero 2023-10-15 02:43:42 +02:00
Laserlicht
78026f40eb
name opens town itself 2023-10-15 00:41:17 +02:00
Laserlicht
c96cc405ed
town now updates 2023-10-14 23:41:12 +02:00
Nordsoft91
aa25ab6488
Merge pull request #3035 from Nordsoft91/quests
Quests rework
2023-10-14 21:38:15 +02:00
Laserlicht
5a84e7cd7f Update client/windows/GUIClasses.cpp
Co-authored-by: Nordsoft91 <nordsoft@yahoo.com>
2023-10-13 19:56:56 +02:00
Laserlicht
3c117da4eb fix tavern 2023-10-13 19:56:56 +02:00
Laserlicht
9e508fe2c2 interface improvements 2023-10-13 19:56:56 +02:00
Nordsoft91
802e1bb961
Merge pull request #3042 from Laserlicht/crash_preview
[fix] crash with custom campaign preview
2023-10-13 10:57:02 +02:00
Nordsoft91
ab36692847
Merge pull request #3037 from Laserlicht/missing_res 2023-10-13 10:36:33 +02:00
nordsoft
fadf086e61 Fix review comments 2023-10-12 13:30:01 +02:00
nordsoft
7ccd4cdcb2 Refactor quests progress 2023-10-11 21:10:42 +02:00
Nordsoft91
ecd01fd53c
Merge pull request #3039 from Laserlicht/townhall_click 2023-10-11 18:43:59 +02:00
Laserlicht
abab917ef9
fix crash with custom campaign preview 2023-10-11 11:23:38 +02:00
nordsoft
bb238f9b72 New quests work 2023-10-10 23:44:29 +02:00
Laserlicht
8a3e58cd5e
red is the most liked color 2023-10-10 23:15:40 +02:00
Laserlicht
926bf71814
make townhall clickable 2023-10-10 21:02:40 +02:00
Laserlicht
25f7bb40d0
new layout 2023-10-09 22:50:07 +02:00
Laserlicht
fa9d5e9971
show missing resources 2023-10-09 21:43:43 +02:00
nordsoft
d7d435dcb7 Add game pause 2023-10-08 16:03:57 +02:00
Ivan Savenko
b75a67ef7c
Merge pull request #2973 from IvanSavenko/identifier_explicit_constructor
Improvements to type safety of Identifier class
2023-10-05 00:33:07 +03:00
Ivan Savenko
037efdf5fc Improvements to type safety of Identifier class
- Constructor of Identifier from integer is now explicit
- Lobby hero/town selection now uses Identifiers instead of int's
- Removed serialization workaround for hero portraits
- Added dummy objects for custom heroes portraits for ID resolver to use
- HeroInstance now stores portrait ID only in case of custom portrait
- Fixed loading of campaign heroes portraits on RoE maps
2023-10-04 18:05:23 +03:00
Ivan Savenko
39a92cdde3 Add query for dwellings dialog 2023-10-04 17:47:12 +03:00
Ivan Savenko
898733eed7 Added Query to track visit duration for Taverns and Markets 2023-10-04 17:47:12 +03:00
Ivan Savenko
e322d0a084
Merge pull request #2966 from IvanSavenko/simplify_ui_lock
Simplified locking of game UI state
2023-10-04 16:50:23 +03:00
Laserlicht
ec8580b99e
Merge branch 'develop' into patch-4map_overview_rework 2023-10-02 21:03:16 +02:00
Laserlicht
12ca3ea0ec
pos from texture 2023-10-01 19:44:04 +02:00
Laserlicht
cbd014ac88
code review 2023-10-01 17:35:56 +02:00
Laserlicht
23b8a321f6
file ending 2023-10-01 00:46:29 +02:00
Laserlicht
648a37310f
description 2023-10-01 00:35:11 +02:00
Laserlicht
65c21064b5
added var 2023-10-01 00:18:25 +02:00
Laserlicht
58dfc55ca3
only calc minimaps once 2023-09-30 23:50:27 +02:00
Laserlicht
61aae7bccc
code review 2023-09-30 22:49:22 +02:00
Laserlicht
8b835c9253
load game support 2023-09-30 20:03:33 +02:00
Laserlicht
c6adcc40f5
add date; cleanup 2023-09-30 17:56:51 +02:00
Laserlicht
79e66c38df
layout 2023-09-30 17:14:22 +02:00
Laserlicht
718bafc8af
map overview rework 2023-09-30 15:05:12 +02:00
nordsoft
0ac893b80f Rumors meta string 2023-09-27 23:22:45 +02:00
Ivan Savenko
d6b9fa8fbd Replaced CPlayerInterface::pim with CGuiHandler::interfaceLock
- Removed CPlayerInterface::pim since this lock does not actually
protects LOCPLINT but rather entire game UI state
- added more logical CGuiHandler::interfaceLock
- interface lock is now non-recursive and is locked only once by initial
caller that want to access GUI
2023-09-27 18:33:52 +03:00
Ivan Savenko
97097c20ad
Merge pull request #2874 from SoundSSGood/exchange-window-update
Exchange window update
2023-09-27 15:50:52 +03:00
Ivan Savenko
efe3393408
Merge pull request #2947 from Laserlicht/enableUiEnhancements_button
enableUiEnhancements button
2023-09-27 15:47:25 +03:00
Laserlicht
7cf654992f
code review 2023-09-25 16:34:36 +02:00
Laserlicht
5061792cce
enableUiEnhancements button 2023-09-25 13:11:08 +02:00
Laserlicht
28f4046937
ready 2023-09-25 01:04:06 +02:00
Laserlicht
3e4a5b7d80
border and variable 2023-09-25 00:31:32 +02:00
Laserlicht
a6b68be2df
offsets 2023-09-24 23:50:50 +02:00
Laserlicht
8b5c9db21b
basic offset 2023-09-24 23:15:09 +02:00
Laserlicht
240d291de9
big spellbook 2023-09-24 22:24:51 +02:00
Ivan Savenko
42d9ba6c82
Merge pull request #2877 from IvanSavenko/simturn_fixes
Changes for simturns support
2023-09-20 22:09:25 +03:00
Ivan Savenko
7b37c2353a
Merge pull request #2865 from IvanSavenko/market_ownership_check_fix
Cleaned up and fixed ownership checks for market netpack
2023-09-19 23:43:33 +03:00
Ivan Savenko
2af7d7c085 Ignore garrison update events of another towns for our castleInt 2023-09-19 19:24:35 +03:00
SoundSSGood
6280e778dc fix build 2023-09-19 16:04:37 +03:00
SoundSSGood
9cc623c981 Fixed move checks. Backpack buttons. 2023-09-19 13:31:59 +03:00
SoundSSGood
f47def3588 refactoring 2023-09-19 13:31:57 +03:00
SoundSSGood
a83f290e13 bulk move artifacts only equipped, only backpack 2023-09-19 13:31:42 +03:00
Ivan Savenko
3d04e9c9ed Cleaned up and fixed ownership checks for market netpack 2023-09-18 17:22:30 +03:00
Laserlicht
5125bcc67f
added probabilities 2023-09-17 23:01:18 +02:00
Laserlicht
7978e5a9b7
adjusted army and warmachine space 2023-09-17 21:55:35 +02:00
Laserlicht
21f37cfafb
simplified 2023-09-17 21:41:55 +02:00
Laserlicht
05fad115b5
Added new Widgets an functions for simplification 2023-09-17 20:34:31 +02:00
Laserlicht
d33101187b
simplify 2023-09-17 16:55:26 +02:00
Laserlicht
a994fa00aa
fixes; translation 2023-09-17 16:15:17 +02:00
Laserlicht
69da4d59bf
basic function ready 2023-09-17 15:28:05 +02:00
Laserlicht
cfc5bac540
layout 2023-09-17 14:31:07 +02:00
Laserlicht
59b5c46a32
right side draft 2023-09-17 13:22:39 +02:00
Laserlicht
79e872da68
left side ready 2023-09-17 04:10:08 +02:00
Laserlicht
b674682fe3
left side 2023-09-17 03:21:29 +02:00
Laserlicht
73fe924544
draw background 2023-09-17 02:14:03 +02:00
Laserlicht
ff96b1af0a
initial hero overview 2023-09-17 00:32:10 +02:00
Nordsoft91
717a765123
Merge pull request #2813 from Laserlicht/textcolor
Textcolor support
2023-09-16 14:12:17 +02:00
Laserlicht
063c7f3ca0 move function; optional; json static 2023-09-15 15:27:26 +02:00
Laserlicht
922a775108 Update CMessage.h 2023-09-15 15:27:26 +02:00
Laserlicht
f5505c9f6d support for predefined colors 2023-09-15 15:27:26 +02:00
Laserlicht
f776422c67 color linesplit 2023-09-15 15:27:26 +02:00
Laserlicht
d948cb72a0 Alignment 2023-09-15 15:27:26 +02:00
Laserlicht
39838fdd3c extend for all selections 2023-09-15 15:24:17 +02:00
Laserlicht
03316c62bf Easy choosing for a secondary skill in Level Up Dialog by double clicking it 2023-09-15 15:24:17 +02:00
Ivan Savenko
f8541d0ae4 Merge branch 'vcmi/master' into 'vcmi/develop' 2023-09-15 13:59:02 +03:00
Dydzio
56c969be4f Fix commanders requirements for special skills to match WoG 2023-09-13 23:08:22 +02:00
Ivan Savenko
d070953c28 Fix open backpack strings 2023-09-12 21:28:36 +03:00
Ivan Savenko
e8453916cf Merge remote-tracking branch 'vcmi/beta' into develop 2023-09-08 18:49:06 +03:00
Ivan Savenko
72858cd0d8
Merge pull request #2768 from IvanSavenko/cherry_picked_fixes
(1.3.2) Cherry picked fixes
2023-09-08 13:15:34 +03:00
SoundSSGood
f1a6116088 CHeroArea fix 2023-09-07 11:54:50 +03:00
Ivan Savenko
f39fbe5151
Merge pull request #2757 from IvanSavenko/filesystem_refactor
Filesystem refactor - part 1
2023-09-07 10:51:02 +03:00
Ivan Savenko
41210c1dbf Client-side support for multiple battles 2023-09-06 16:03:47 +03:00
Gwart
707400d764 #2646 add a null check if creature is empty 2023-09-05 23:32:12 +03:00
SoundSSGood
a7cedea73c Support for different backpack capacities 2023-09-04 20:59:24 +03:00
Ivan Savenko
1d0e696db6 Added RenderHandler that acts as factory for images and animations 2023-09-04 18:22:34 +03:00
Ivan Savenko
9cfcf5ea19 Fix regressions 2023-09-04 18:22:34 +03:00
Ivan Savenko
0f88b8969b Removed some usages of std string as resource path 2023-09-04 18:22:34 +03:00
Ivan Savenko
97b7d44c88 Use ResourcePath for video accessing 2023-09-04 18:22:34 +03:00
Ivan Savenko
6f0108e462 Use ResourcePath for referencing texts and json's 2023-09-04 18:22:34 +03:00
Ivan Savenko
823ffa7a07 Always use ResourcePath for referencing images and animations 2023-09-04 18:22:34 +03:00
Gwart
05ba56a873 #2646 add a null check if creature is empty 2023-09-02 16:21:54 +02:00
Ivan Savenko
7255dda624
Merge pull request #2629 from dydzio0614/neutral-creature-popup
Improve neutral creature adventure map popup
2023-08-31 15:44:19 +03:00
Ivan Savenko
3ce99e8613
Merge pull request #2710 from dydzio0614/artifacts-backpack-graphics
Split artifacts bag button background and icon
2023-08-31 15:42:50 +03:00
Dydzio
e1e41d1107 Implement TOPCENTER text alignment 2023-08-30 00:35:31 +02:00
Dydzio
03ef5b6b0f Split artifacts bag button background and icon 2023-08-29 18:53:50 +02:00
Dydzio
bafe8baa15 Fix "ghost" icons in commander grandmaster abilities list 2023-08-29 00:20:44 +02:00
Dydzio
2769782d0a Fix broken grandmaster ability description updating on select/deselect 2023-08-28 23:49:07 +02:00
Dydzio
dacf6c9d08 Add border around selected commander "grandmaster ability" on levelup 2023-08-28 23:36:45 +02:00
Ivan Savenko
695a51d8c8 Merge remote-tracking branch 'vcmi/beta' into develop 2023-08-28 21:19:53 +03:00
Ivan Savenko
5be87b30c1
Merge pull request #2625 from dydzio0614/artifacts-backpack-gui
Artifacts backpack GUI
2023-08-28 19:59:11 +03:00
Ivan Savenko
e54287ea5d Converted remaining identifier to new system 2023-08-25 13:38:02 +03:00
Ivan Savenko
0240ee886d Converted (almost) all namespace enum's to enum classes 2023-08-25 13:38:02 +03:00
Ivan Savenko
62cd8b12d4 Converted several namespace enums to enum class 2023-08-25 13:38:02 +03:00
Ivan Savenko
43096f0ed1
Merge pull request #2617 from dydzio0614/configurable-autobattle-spells
Configurable autobattle spells usage
2023-08-25 01:29:16 +03:00
Konstantin
d746a96d55 vcmi: use SpellSchool identifier instead of enum
Use identifier instead of enum inside callbacks. It is better and more
expandable solution.
2023-08-23 17:53:09 +03:00
Konstantin
344593e891 vcmi: made some CSpell properties private
There are getters for it.
2023-08-23 17:53:08 +03:00
Konstantin
8724181a0f vcmi: spell resistance rework
Now instead of XXX_IMMUNITY bonuses we have 2 bonuses with spellSchool
subtype: SPELL_SCHOOL_IMMUNITY and NEGATIVE_EFFECT_IMMUNITY.
All previous bonuses of subtype 0 is covered by SPELL_SCHOOL_IMMUNITY,
and all previous bonuses of subtype 1 is covered by
NEGATIVE_EFFECT_IMMUNITY. Unit tests are updated accordingly.
2023-08-23 17:52:16 +03:00
Ivan Savenko
44d16b32fe Use API identical to std classes where possible 2023-08-23 16:32:29 +03:00
Dydzio
28fe28adf5 Fix player coloring 2023-08-21 17:08:15 +02:00
Dydzio
ed12f20609 Improve neutral creature adventure map popup 2023-08-21 14:42:41 +02:00
Dydzio
cab6fb76aa Draft version of backpack button + new setting for original H3 UI mode 2023-08-20 17:45:43 +02:00
Dydzio
f24910e5d2 Artifacts backpack window GUI improvements 2023-08-20 00:52:03 +02:00
Dydzio
f409b6ced9 Fix counting wood mines starting from 8 in kingdom overview 2023-08-19 21:09:02 +02:00
Dydzio
6bfbe80cc9 Allow toggling quick combat spells usage 2023-08-19 17:23:55 +02:00
Ivan Savenko
f13a53c1d9 Merge remote-tracking branch 'vcmi/beta' into develop 2023-08-12 17:28:47 +03:00
SoundSSGood
119d51d1ef altar sacrifice all fix 2023-08-11 18:51:59 +03:00
Ivan Savenko
ad2bd897d0 Replace boost::format with MetaString
Looks like some of H3 localizations don't have string replacements for
building / war machine name, resulting in exceptions on formatting
attempt. MetaString handles this case silently.
2023-08-11 18:50:39 +03:00
Ivan Savenko
0dca5c45bd Workaround for potential crash on opening town dwelling with no valid
creatures
2023-08-06 12:46:29 +03:00
Ivan Savenko
537f9fa048 Merged master into develop 2023-08-03 23:38:32 +03:00
Ivan Savenko
723c674d81
Merge pull request #2447 from IvanSavenko/modding_handler_refactoring
(develop) Modding handler refactoring
2023-08-02 21:26:05 +03:00
Ivan Savenko
43795c39a5 Replaced all usage of SDL_Color outside of render with ColorRGBA 2023-07-31 21:07:30 +03:00
Ivan Savenko
62fddca21e Split massive CModHandler class/file into multiple parts:
- IdentifierStorage is now a separate handler in VLC
- Renamed ModHandler::Incompatibility exception to ModIncompatibility
- Extracted ModScope namespace from ModHandler
- Extracted ModUtilities namespace from ModHandler
- Split CModHandler.cpp on per-class basis
- Replaced some direct members with unique_ptr to reduce header includes
2023-07-30 22:17:47 +03:00
Ivan Savenko
5d2dd4c633 Show creature popup window on right-click in town fort 2023-07-30 15:29:18 +03:00
Ivan Savenko
01d588ab54 Fix keyboard shortcuts on selection dialogs 2023-07-22 22:29:05 +03:00
Ivan Savenko
a494dc4870 Refactoring of CGarrisonInt 2023-07-21 15:47:42 +03:00
Ivan Savenko
cefbe5152e
Merge pull request #2359 from IvanSavenko/crashfixing
Fix crashes from 1.2.1 statistics on Google Play
2023-07-21 15:44:37 +03:00
Ivan Savenko
3f4e88c396
Merge pull request #2325 from SoundSSGood/hero-backpack-window
Hero backpack window prototyping
2023-07-21 15:43:34 +03:00
Ivan Savenko
ddda46a7fd
Merge pull request #2358 from dydzio0614/persistent-hero-info-window
Add option for persistent hero info window as in HD mod
2023-07-19 14:46:16 +03:00
Ivan Savenko
ab6a4be105
Merge pull request #2357 from SoundSSGood/picked-art-fix
Fixed hero skills if artifact picked
2023-07-19 14:45:58 +03:00
SoundSSGood
ca977d7105 backpack window slider 2023-07-18 21:01:55 +03:00
Ivan Savenko
c7d88271a9 Removed asynchronous calls from exchange window 2023-07-18 17:31:21 +03:00
Ivan Savenko
317183e00d
Merge branch 'develop' into info-box-army-management 2023-07-18 16:05:09 +03:00
Dydzio
48a72f90f7 Add option for persistent hero info window as in HD mod 2023-07-17 23:25:16 +02:00
SoundSSGood
ff278d5f3a cleanup unused 2023-07-17 22:26:21 +03:00
SoundSSGood
f33dec9337 picked art fixed 2023-07-17 22:24:43 +03:00
SoundSSGood
b1351d8532 two scrolling modes demo 2023-07-16 21:16:12 +03:00
Dydzio
ee663b1595 Changes from code review 2023-07-16 15:56:42 +02:00
Dydzio
fe26ab4501 Add settings entry, immediately refresh info bar on setting toggle 2023-07-16 14:52:43 +02:00
Ivan Savenko
61750d30c2 Implemented dragging map via left mouse click (off by default) 2023-07-16 12:00:40 +03:00
Dydzio
ea0ee87299 Interactable hero status - alternative infobox component 2023-07-15 23:14:59 +02:00
Dydzio
484d03334c New garrison interface layout: Reversed two rows + labels below slot 2023-07-15 23:11:21 +02:00
SoundSSGood
9427de6344 initial files 2023-07-15 22:15:32 +03:00
SoundSSGood
3ea6f530ad backpack window initial 2023-07-15 22:15:32 +03:00
Ivan Savenko
8129cbc514 Allow dismissing hero from town 2023-07-15 16:09:44 +03:00
Ivan Savenko
3e8debc243 Allow dismissing heroes from kingdom overview window 2023-07-15 16:09:44 +03:00
Ivan Savenko
8a92941681 Allow merging stack on recruitment to give place for recruited unit 2023-07-15 16:09:44 +03:00
Ivan Savenko
8dc009e2c9 Always show correct game resolution in settings, unaffected by scaling 2023-07-15 16:09:44 +03:00
Ivan Savenko
e4e353449e Recreate screen on UI scaling change 2023-07-15 16:09:44 +03:00
Ivan Savenko
9ef959a7f8
Merge pull request #2310 from IvanSavenko/left_click_refactor
Left click input refactor
2023-07-13 13:03:06 +03:00
Ivan Savenko
b30db5fc1f
Merge pull request #2301 from Laserlicht/haptic_feedback
Haptic feedback
2023-07-13 12:56:54 +03:00
Michael
1abd8bbe92
Update client/windows/settings/GeneralOptionsTab.cpp
Co-authored-by: Ivan Savenko <saven.ivan@gmail.com>
2023-07-12 22:56:35 +02:00
Ivan Savenko
9acab48bc3
Merge pull request #2268 from SoundSSGood/CArtifactInstance-rework
CArtifact CArtifactInstance refactoring
2023-07-11 14:36:08 +03:00
Ivan Savenko
18db944083 Replaced clickReleased with clickPressed where applicable in H3 2023-07-09 17:48:25 +03:00
Michael
ff51b8f46b
Setting for haptic feedback 2023-07-08 18:47:38 +02:00
Ivan Savenko
ca889a5c2a Replaced clickLeft with clickPressed clickReleased methods 2023-07-08 14:33:04 +03:00
Ivan Savenko
2a634b2ec0 Fixed UI updates on switching to/from fullscreen 2023-07-07 15:26:42 +03:00
Ivan Savenko
ae8579558d
Merge pull request #2282 from IvanSavenko/adventure_map_fixes
Adventure map fixes for 1.3
2023-07-07 14:27:58 +03:00
Mike
6414e3b3fc Changed resource cost value label position 2023-07-05 18:43:52 -07:00
SoundSSGood
9b5f6ec7cf CArtifact getters setters 2023-07-05 15:48:08 +03:00
Ivan Savenko
8b61c0d59b Replaced CIntObject::type bitfield with bool's. Added input blocking. 2023-07-03 19:24:12 +03:00
Ivan Savenko
0f8d53e978 Replaced SDL user events list with dispatching of arbitrary functors 2023-06-26 21:51:10 +03:00
Ivan Savenko
3d66455cd1 Fix build 2023-06-26 19:44:38 +03:00
Ivan Savenko
f6b2f58da9 Use inheritance instead of composition for campaign header 2023-06-26 17:15:59 +03:00
Ivan Savenko
a08fe09517 Added encapsulation for CampaignState class 2023-06-26 17:15:59 +03:00
Ivan Savenko
8420a90aa4 Reorganization of campaigns code 2023-06-26 17:15:59 +03:00
Ivan Savenko
d1e5a347ff Refactoring of campaign handler: rename types and use strong typing 2023-06-26 17:15:59 +03:00
Ivan Savenko
85262cf4f5 Moved CGameState files into a separate directory 2023-06-26 17:15:59 +03:00
Ivan Savenko
a84ccb37c2
Merge pull request #2250 from IvanSavenko/event_handling_fixes
Slider input event fix
2023-06-25 17:39:55 +03:00
krs
afe0146021 Renamed settings option to reflect that same option is used for both ranges. 2023-06-23 19:50:39 +03:00
Ivan Savenko
69dc95c3c8
Merge pull request #2235 from IvanSavenko/hota_h3m_support
Hota h3m support
2023-06-23 13:32:10 +03:00
Ivan Savenko
a505cc464e Fixed slider's behavior, especially for mobile systems 2023-06-22 23:49:38 +03:00
Ivan Savenko
4e7412faa6 Split mouseDragged event from mouseMoved 2023-06-22 22:11:48 +03:00
Ivan Savenko
108688389e Fix accessing potentially non-existing UI element 2023-06-20 19:58:05 +03:00
Ivan Savenko
ffdac314e9 Added selection of long touch duration 2023-06-20 19:58:05 +03:00
Ivan Savenko
06437cbde6 Renamed gesture-related methods, remove unused code 2023-06-20 19:58:05 +03:00
Ivan Savenko
563d7dd41f Renamed RCLICK -> SHOW_POPUP 2023-06-20 19:58:05 +03:00
Ivan Savenko
82288996a2 Fix cursor visibility on closing popup 2023-06-20 19:58:05 +03:00
Ivan Savenko
85a11c090e Enter popup await mode only if there is an active popup 2023-06-20 19:58:05 +03:00
Ivan Savenko
d4aa778547 Replaced clickRight event with showPopupWindow/closePopupWindow 2023-06-20 19:58:05 +03:00
Ivan Savenko
56d69e790b Renamed MetaString methods to more logical names 2023-06-20 19:37:27 +03:00
Ivan Savenko
2636a0dcc3 Moved MetaString to a new file 2023-06-20 19:37:27 +03:00
Ivan Savenko
f35b3a0dc3 Replace MetaString operator << with member function 2023-06-20 19:37:27 +03:00
Ivan Savenko
487f441f47 Implemented boat selection for town shipyards 2023-06-16 17:59:49 +03:00
krs
c0591573bf Working Version 2023-06-11 18:40:47 +03:00
Ivan Savenko
6283329aeb Added option to disable edge scrolling 2023-06-05 19:20:20 +03:00
Ivan Savenko
a08ff1e6ef Removed no longer used touchscreen option 2023-06-05 19:20:08 +03:00
Ivan Savenko
b20109c830 Test version of swipe gesture for in-combat attacks 2023-06-05 19:20:08 +03:00
Ivan Savenko
70155b48e1 Only show touchscreen options on systems that have one 2023-06-05 19:20:08 +03:00
Ivan Savenko
2c7b94d17f Remove unused map swipe option 2023-06-05 19:20:08 +03:00
Ivan Savenko
052d0d314a Implemented Scrollable class, to server as common base for such classes 2023-06-05 19:17:04 +03:00
Ivan Savenko
6fe00ad55c Moved slider class to a separate file 2023-06-05 19:16:01 +03:00
Ivan Savenko
e2a85e25fa Removed old code 2023-06-05 19:00:57 +03:00
Ivan Savenko
48859e186e Added panning gesture, activated by mouse wheel press 2023-06-05 19:00:56 +03:00
Ivan Savenko
1e9eea30e1 Merge remote-tracking branch 'soundsgood/CArtHandler-rework' into develop 2023-06-05 18:53:17 +03:00
Ivan Savenko
8d278e653f
Merge pull request #2202 from IvanSavenko/map_objects_reorganization
Map objects code reorganization
2023-06-05 18:35:05 +03:00
Ivan Savenko
d6a357fd17 Split some map object files into smaller files. Reduced includes usage. 2023-06-02 21:47:37 +03:00
Ivan Savenko
8ea0ecaec1 show/showAll methods now use Canvas instead of SDL_Surface
- added compatibility method to Canvas to allow SDL_Surface access
- added drawBorder method to Canvas to replace CSDL_Ext method
- added drawColor method to Canvas to replace CSDL_Ext method
- minor changes to Tavern and Trade windows to adapt to new API
2023-06-02 16:42:18 +03:00
Ivan Savenko
acac42291e Remove excessive CMap.h includes 2023-05-31 23:18:38 +03:00
Ivan Savenko
2c3e8c3390
Merge pull request #2168 from IvanSavenko/gui_handler_event_handling_refactoring
Event handling refactoring
2023-05-23 15:08:10 +03:00
Ivan Savenko
a4000f2fc8 Removed isActive(int) method since its usages were redundant or wrong 2023-05-20 01:51:49 +03:00
Ivan Savenko
c77f8482e3 Replaced event handling break system with key capturing 2023-05-20 01:51:49 +03:00
Ivan Savenko
d5d0ca96a8 Minor fixes and cleanup 2023-05-20 01:51:49 +03:00
Ivan Savenko
1f513fd280 Extracted event management from GuiHandler and CIntObject 2023-05-20 01:51:49 +03:00
Ivan Savenko
06b6f59107 Resolution selector will now correctly update in borderless window mode 2023-05-19 23:54:43 +03:00
Ivan Savenko
20ec747440 Do not show desktop-only options on mobile systems 2023-05-19 23:19:43 +03:00
Ivan Savenko
d18b240d6d Added separate borderless & exclusive fullscreen options 2023-05-19 22:43:52 +03:00
SoundSSGood
021f94a579 artifact utils 2023-05-17 17:00:31 +03:00
Ivan Savenko
ad3e54e6c0 Reduced usage of topWindow() method 2023-05-16 21:57:45 +03:00
Ivan Savenko
e2ef136003 Renamed "Int" -> "Window" in WindowHandler API 2023-05-16 19:10:22 +03:00
Ivan Savenko
051a4a3c17 Encapsulation of WindowHandler state 2023-05-16 19:10:22 +03:00
Ivan Savenko
7838190ef4 Moved window stack management from GuiHandler to new class 2023-05-16 19:10:21 +03:00
Ivan Savenko
fa496628f2 Separated timer updates from rendering in adventure map and town screen 2023-05-14 22:22:37 +03:00
Ivan Savenko
3ecdff2a21 FramerateManager now uses chrono instead of SDL_Ticks 2023-05-14 22:22:37 +03:00
Ivan Savenko
03df274450 Framerate manager is now in a separate file and private member of GH 2023-05-14 22:22:37 +03:00
Ivan Savenko
c5a48a01ce Remove no longer used code 2023-05-09 13:10:33 +03:00
Ivan Savenko
243773b6ef Renamed some adventure map files & classes 2023-05-09 13:10:33 +03:00
Ivan Savenko
e26b18c139 Rename & cleanup of WindowHandler -> ScreenHandler 2023-05-09 13:10:33 +03:00
Ivan Savenko
dbc4330fc5 Fixed positioning of resource bar and town list in other windows 2023-05-09 13:10:33 +03:00
Ivan Savenko
97d266ea2d Remove duplicated resolutions, e.g. different frequency 2023-05-09 13:10:33 +03:00
Ivan Savenko
342ea138f9 Fix remaining graphical artifacts on switching from world view 2023-05-09 13:10:33 +03:00
Ivan Savenko
c24ccf663b Fixed auto-enabling of status bar on windows activations 2023-05-09 13:10:33 +03:00
Ivan Savenko
77beca50e2 Hide resolution selector on mobile devices 2023-05-09 13:10:33 +03:00
Ivan Savenko
a0f1bf3928 Implemented user-selectable UI scaling mode 2023-05-09 13:10:33 +03:00
Ivan Savenko
a4b102e46f Implemented UI scaling (non-selectable option for now) 2023-05-09 13:10:33 +03:00
Ivan Savenko
8d28f96619 Resolutions selector now shows all available resolutions 2023-05-09 13:10:33 +03:00
Ivan Savenko
c688411bab Extracted window management from CMT to new class 2023-05-09 13:10:33 +03:00
Ivan Savenko
a015bf6507 Initial part of dynamically-sized adventure map:
- removed no longer used CConfigHandler
- remove no longer use resolutions.json
- moved widget management from adventure map to a separate class
- adventure map layout is now loaded from config
2023-05-09 13:10:33 +03:00
Konstantin P
057a33c508 SpellSchool: use identifier instead of int
Needs redifinition of MAGIC_SCHOOL_SKILL in all mods
2023-05-07 20:37:32 +03:00
Konstantin
05eccbc2bb vcmi: split bonus to enumerator and HeroBonus.h 2023-05-03 18:01:06 +03:00
Konstantin
fbc05c70ac vcmi: camelCase methods of new classes
Also use EGameSettings for clamping morale and luck
2023-05-02 12:09:13 +03:00
Konstantin
a6de9097be vcmi: rename HeroBonus.h to Bonus.h 2023-05-02 11:20:58 +03:00
Konstantin
4866c2fe5c vcmi: split IBonusBearer 2023-05-02 00:54:53 +03:00
Konstantin
b6eb2dc060 vcmi: rename IFactionMember and ICreature 2023-05-02 00:54:53 +03:00
Konstantin
6fa1b2b19f vcmi: move bonuses to its own folder 2023-05-02 00:53:50 +03:00
Konstantin P
4b2a09dae7 FactionMember: move code around 2023-05-02 00:53:50 +03:00
Ivan Savenko
916b41d9a7
Merge pull request #2078 from IvanSavenko/shortcuts
Basic shortcuts system
2023-05-01 21:45:52 +03:00
nordsoft
32277a007d Fix compilation after merge 2023-05-01 21:49:37 +04:00
nordsoft
07b2052679 Bit refactoring 2023-05-01 21:49:37 +04:00
nordsoft
68fa7aaf35 Remove limitations for amount of skills 2023-05-01 21:49:37 +04:00
nordsoft
a4fd6c1c92 Move trading window title to config 2023-05-01 21:49:37 +04:00
nordsoft
07f7c318dc Adjust client part for markets 2023-05-01 21:49:37 +04:00
nordsoft
4b1b58b617 Change Callback to abstract 2023-05-01 21:49:37 +04:00
nordsoft
59bc9326e9 Remove excess pointer from market interface 2023-05-01 21:49:37 +04:00
Ivan Savenko
dea10e6091 Use more descriptive names for hotkeys 2023-05-01 17:59:20 +03:00
Ivan Savenko
a654cc2391 Removed vstd::advance. Added vstd::next to handle similar cases. 2023-05-01 17:58:18 +03:00
Ivan Savenko
832e56e005 Implementation of (very basic) shortcuts system
- Added EShortcut enumeration that contains all in-game shortcuts
- CIntObject::keyPressed now receive values from hotkey enumeration
- On keypress, SDL key code will be translated to shortcut ID
- Removed access to SDL key codes from most of engine
2023-05-01 17:58:17 +03:00
Ivan Savenko
4aa232a60a
Merge pull request #2055 from SoundSSGood/cartifactholder-rework
Artifact related code refactoring part2 (client CArtifactHolder)
2023-05-01 02:33:08 +03:00
SoundSSGood
8b531ca6c4 CArtifactHolder divided into files 2023-05-01 00:34:45 +03:00
Konstantin
86f5d6de69 vcmi: modernize headers 2023-04-30 13:35:54 +03:00
Ivan Savenko
d985ac90d3 Merge master -> develop 2023-04-28 22:57:25 +03:00
Ivan Savenko
76d5b459f1 Fixed music playback on switching between towns 2023-04-28 16:53:45 +03:00
Konstantin P
b472c89276 vcmi: make some CStack properties private
There is a getters for this properties already available
2023-04-27 20:58:49 +03:00
Ivan Savenko
fb739e7186 Merge beta -> develop 2023-04-26 22:48:08 +03:00
Ivan Savenko
48abf46824
Merge pull request #2005 from IvanSavenko/advmap_refactor
Refactoring of adventure map interface
2023-04-24 17:19:22 +03:00
SoundSSGood
dcac8252f3 fixed windows positions 2023-04-23 14:57:45 +03:00
SoundSSGood
a8220c551f fixed init CArtifactsOfHero 2023-04-23 14:33:47 +03:00
Ivan Savenko
bb08a0afc8 Moved selection logic to player state 2023-04-20 22:04:24 +03:00
Ivan Savenko
365f552fa1 Added API for owned towns access 2023-04-20 22:04:24 +03:00
Ivan Savenko
6a46138617 Moved current selection to local state class 2023-04-20 22:04:24 +03:00
Ivan Savenko
f6d480cbb2 Moved player-specific heroes & towns information to new class 2023-04-20 22:04:24 +03:00
Ivan Savenko
4ec32e4dcd Renamed CAdvMapInt to its proper full name 2023-04-20 22:04:24 +03:00
Ivan Savenko
f1902ab247 Initial refactoring to encapsulate adventure map 2023-04-20 22:03:28 +03:00
nordsoft
de159df481 Rename boats 2023-04-20 21:20:51 +04:00
Ivan Savenko
f245080cba Fix missing error message on casting spell in hotseat 2023-04-20 19:24:13 +03:00
nordsoft
0a28262c15 Merge remote-tracking branch 'upstream/develop' into boats
# Conflicts:
#	AI/VCAI/Pathfinding/AINodeStorage.cpp
2023-04-19 02:22:19 +04:00
nordsoft
ed798b06da Prepare transport enum 2023-04-18 13:04:49 +04:00
Konstantin
7a5775a9f9 vcmi: use std::optional 2023-04-17 00:43:13 +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
644f0f4b32 Removed ARRAY_COUNT in favor of std::size 2023-04-12 01:04:26 +03:00
Ivan Savenko
506c3d29bc Replaced vstd clamp with std version 2023-04-12 01:03:14 +03:00
Ivan Savenko
5f74aca341 Fix missing attribute 2023-04-12 01:03:14 +03:00
Ivan Savenko
63b197b78a Converted attributes to use c++17 functionality 2023-04-12 01:03:14 +03:00
Ivan Savenko
dfa2e2a349 Merge beta into develop 2023-04-11 19:37:35 +03:00
Konstantin
fedf7d377c vcmi: remove TFaction
This is a huge change and will break save compatibility
2023-04-10 19:28:16 +03:00
Konstantin
40bea35a26 CHeroWindow: fix picked art mana limit display 2023-04-10 15:35:21 +03:00
krs
1644cab938 Added combat option Highlight Movement on Hover 2023-04-08 20:40:30 +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
Konstantin
11b237a23c vcmi: massive refactoring v1 2023-04-05 22:33:12 +03:00
Ivan Savenko
cf966015bb Correctly update battle queue state after changing its state 2023-04-05 18:35:45 +03:00
Ivan Savenko
307065a633 Merge beta into develop 2023-04-04 16:06:20 +03:00
Ivan Savenko
5b480124b8
Merge pull request #1862 from IvanSavenko/fix_garrison_move_shortcut
Space and left-clicking on second hero in town now have share code
2023-04-04 11:23:19 +03:00
Ivan Savenko
d6cb513374
Merge pull request #1858 from IvanSavenko/sliders_fix
Allow defining active areas for sliders.
2023-04-04 11:21:45 +03:00
Ivan Savenko
93b77d0c99 Space and left-clicking on second hero in town now have share code 2023-04-03 00:43:18 +03:00
Ivan Savenko
507d8bf7fd Allow defining active areas for sliders. Fixes settings window. 2023-04-02 22:24:07 +03:00
Ivan Savenko
c661419897
Merge pull request #1700 from rilian-la-te/resource-array
Modernize resourceSet.
2023-04-02 20:12:45 +03:00
Ivan Savenko
4c6dbb5037 Fix town UI update on building new structures 2023-03-31 23:18:45 +03:00
Konstantin
c1fd7309ad ResourceSet: composition 2023-03-31 14:00:49 +03:00
Ivan Savenko
1084da00df Fix initial value of sound/music labels in settings 2023-03-30 12:23:47 +03:00
Ivan Savenko
47e774897d Show simple message on left-clicking empty buildings 2023-03-28 17:36:46 +03:00
Ivan Savenko
b875da108b
Merge pull request #1717 from SoundSSGood/backpack-limit-size
Introducing backpack size limit functionality
2023-03-27 17:17:49 +03:00
Ivan Savenko
5857ad0169 Fix corrupted UI redraw in artifact merchant 2023-03-25 23:54:51 +02:00
Ivan Savenko
c246cadaa7 Fix potential crash on exit 2023-03-25 23:54:51 +02:00
Ivan Savenko
46461e5c33 Improve performance of window redraws 2023-03-25 23:54:51 +02:00
SoundSSGood
19096f39f0 Backpack limit. Amount of fixes. 2023-03-21 22:11:42 +02:00
SoundSSGood
f0f9eecf97 Backpack limit part5. End of battle. Other stuff 2023-03-21 12:14:33 +02:00
SoundSSGood
9f8aa25297 Backpack limit part4 (Using cheats, buying) 2023-03-21 12:14:33 +02:00
SoundSSGood
72122fb433 CArtifact, CArtifactInstance, CCombinedArtifactInstance reorganization 2023-03-21 12:14:33 +02:00
Konstantin
bbbbfe00f0 Modernize resourceSet 2023-03-17 02:26:54 +03:00
Ivan Savenko
a0e9e01b48 Renamed & reorganized all game mechanics settings names 2023-03-16 18:11:35 +02:00
Ivan Savenko
383387ef29 Integrated defaultMods into mod system 2023-03-16 17:55:09 +02:00
Konstantin
a0987313ba vcmi: convert intelligence
Intelligence is converted to both global effect and skill bonus

Bonus name HERO_MANA_PER_TEN_KNOWLEDGE is a little weird, but works
like old SECONDARY_SKILL_PREMY bonus
2023-03-16 16:46:41 +03:00
Konstantin
f264c541fb vcmi: skill-agnostic tactics
Tactics is split to 2 bonuses, and it is now possible to
block tactics without having tactics itself. But tactics
for two sides is not implemented, because it is huge rework
and not high priority for me now, I want to do basic
secondary skill rework first.
2023-03-16 16:46:41 +03:00
Konstantin
300a8a15ba vcmi: remove estates bonus
Now it is handled by GENERATE_RESOURCE::GOLD.
2023-03-16 16:46:41 +03:00
Konstantin
34a26580a7 vcmi: skill-agnostic resistance
Uses exiting bonus and new PERCENT_TO_TARGET_TYPE value type
2023-03-16 16:46:41 +03:00
Ivan Savenko
77f92e56ac
Merge pull request #1689 from IvanSavenko/map_renderer_fixes
Map renderer fixes
2023-03-16 14:48:57 +02:00
Ivan Savenko
2a2af34788
Merge pull request #1650 from SoundSSGood/arts-swap-regression-fix
Arts swap regression fixed
2023-03-16 14:47:31 +02:00
Ivan Savenko
d3533150b8 Fix misplaced width/height in UI 2023-03-15 12:17:08 +02:00
Konstantin
18200d1d98 vcmi: move getEstimatedComponentHeight 2023-03-13 00:24:26 +03:00
Konstantin
a0c644a0e5 vcmi: actually implement AUTO for CInfoWindow
This is possible to use infobar interactions now.
2023-03-11 21:41:57 +03:00
Ivan Savenko
0ea73cae7f
Merge pull request #1662 from rilian-la-te/reduce-lexical-cast
vcmi: reduce boost::lexical_cast usage
2023-03-10 12:53:21 +02:00
Ivan Savenko
11dc9228e2
Merge pull request #1635 from SoundSSGood/warmachine-buying-fix
warmachine buying fix
2023-03-09 15:52:41 +02:00
Konstantin
5366f9190e vcmi: reduce boost::lexical_cast usage 2023-03-09 16:36:46 +03:00
SoundSSGood
e24eb6cc12 regression fixed 2023-03-08 17:20:38 +02:00
Ivan Savenko
76927cf434 Fix selection of current resolution 2023-03-07 15:35:04 +02:00
Ivan Savenko
d7e914d0eb Fix resolution selection menu texts 2023-03-07 15:27:54 +02:00
Ivan Savenko
b7025125d5 Added map swipe option 2023-03-05 23:53:06 +02:00
Ivan Savenko
2e69a4769d Implemented framerate limit option (not available in UI) 2023-03-05 21:06:52 +02:00
Ivan Savenko
37b2fb7ff3 Fixed map options to support adventure map rewrite 2023-03-05 20:14:23 +02:00
Ivan Savenko
5f5ba0a54c Fix town-related options 2023-03-05 19:55:38 +02:00
Ivan Savenko
d34268d7d5 Split "Show available creatures in town" into two buttons 2023-03-05 19:55:38 +02:00
Ivan Savenko
cbe6a80020 Do not block "Load" button in battle 2023-03-05 19:55:38 +02:00
Ivan Savenko
b2e5e55c1e Added labels that indicate current option values 2023-03-05 19:55:37 +02:00
Ivan Savenko
2f556ccf60 Improved General options tab layout presentation 2023-03-05 19:53:27 +02:00
Ivan Savenko
c976176453 Added additional buttons for movement speeds 2023-03-05 19:53:26 +02:00
Ivan Savenko
f09897b2b4 Remove unnecessary redraws 2023-03-05 19:51:42 +02:00
Ivan Savenko
c011a5a9cf Added lines to window to separate UI elements into groups 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
SoundSSGood
142375c050 warmachine buying fix 2023-03-05 18:06:04 +02:00
Ivan Savenko
59d8989399 Fix initialization of movement speed settings 2023-03-05 18:02:59 +02:00
Ivan Savenko
b57a07b10f Restored ambient sounds functionality 2023-03-05 18:02:59 +02:00
Ivan Savenko
cdcd5a29dd Updated path to renamed directory 2023-03-05 18:02:59 +02:00
Ivan Savenko
387a7b421a Refactoring of new code, multiple functionality changes:
- Implemented separate Map View contexts for different map modes
- Puzzle map now works
- Enemy movement now works as in H3
- Removed no longer used code
- Implemented missing embark/disembark sounds
- Fixed view focusing on embarking/disembarking
- Fixed focusing on movement near edge of terra incognita
- Fixed sea movement sound
2023-03-05 18:02:58 +02:00
Ivan Savenko
45e2875342 Completely removed old TerrainRect class 2023-03-05 17:57:36 +02:00
Ivan Savenko
7df5c612f7 Fix battle rendering 2023-03-05 17:48:02 +02:00
Ivan Savenko
ec6f19ea18 Code reorganization, no changes to functionality 2023-03-05 17:48:02 +02:00
Ivan Savenko
def1e35836 Use SDL BlitMode's to speed up image rendering 2023-03-05 17:48:02 +02:00
Ivan Savenko
ebe996fa74 Hero movement speed and map scrolling speed now matches H3 2023-03-05 17:48:02 +02:00
Ivan Savenko
4501036a04 Basic version of hero movement on map. Removed old code. 2023-03-05 17:48:02 +02:00
Ivan Savenko
600054e001 Refactored access to hero paths in CPlayerInterface 2023-03-05 17:48:01 +02:00
Ivan Savenko
260f6d626c Implemented translations for H3M maps 2023-03-05 17:39:27 +02:00
Ivan Savenko
acdb8d6e06 renamed Unicode -> TextOperations, to use for all text processing 2023-03-05 17:39:23 +02:00
Ivan Savenko
65c020ef34 Moved Unicode namespace out of GeneralTextHandler file 2023-03-05 17:30:38 +02:00
Ivan Savenko
476e60c753
Merge pull request #1615 from SoundSSGood/CArtifactsOfHero-refactoring
Optimization and cleanup CArtifactHolder
2023-03-05 17:28:36 +02:00
SoundSSGood
a1dbbe2d86 redraw optimization 2023-03-03 10:17:31 +02:00
Ivan Savenko
195eac3375
Merge pull request #1545 from dydzio0614/town-panel-number-formatting
Improve creature numbers handling in castle interface bottom left part
2023-02-26 22:56:54 +02:00
Dydzio
9eccc29e16 Adjust tab positioning 2023-02-19 12:18:54 +01:00
Dydzio
7f03223634 Remove SDL_Events reference 2023-02-18 18:00:34 +01:00
Dydzio
6bd4eac27a Rename settings files 2023-02-18 17:58:22 +01:00
Dydzio
7137329e80 Clang-tidy related fixed 2023-02-18 17:49:43 +01:00
Dydzio
7e409df3cb Apply manual changes from code review 2023-02-18 16:35:07 +01:00
Dydzio
c2ef3331ef Change main settings tabs to toggle group + fix json commas 2023-02-16 21:37:37 +01:00
Dydzio
ade52239ea Use config value from new settings 2023-02-15 23:26:55 +01:00
Dydzio
9101f05835 Fixes for new battle settings 2023-02-15 22:38:41 +01:00
Dydzio
775db89241 Fix battle settings UI labels, add "dont show battle intro" setting 2023-02-15 20:29:29 +01:00
Dydzio
1d153f4ee9 "ForceMovementInfo" support + make other settings tab 2023-02-14 23:45:45 +01:00
Dydzio
be9c71934c Merge remote-tracking branch 'origin/develop' into settings-rework 2023-02-14 21:00:17 +01:00
Dydzio
fb06aca0bb Further progress - UI tweaks, new settings etc 2023-02-14 20:30:06 +01:00
Ivan Savenko
91b17bed79 Partial encapsulation of AdvMapInt 2023-02-14 11:18:42 +02:00
Ivan Savenko
e15c7dcd33 Attempt at better encapsulation of CTerrainRect 2023-02-14 11:18:41 +02:00
Ivan Savenko
cc0c3e5bc9 All adventure map components now use shared_ptr 2023-02-14 11:18:41 +02:00
Ivan Savenko
f8c1c46562 removed CAdvMapInt::handleRightClick method 2023-02-14 11:18:41 +02:00
Ivan Savenko
d0f57fed6f Cleaned up code of Minimap 2023-02-14 11:18:41 +02:00
Dydzio
80a5595d6c Adding some settings options, minor UI fixes 2023-02-13 23:53:28 +01:00
Dydzio
de5138c854 Basic separation of adventure map & general tabs 2023-02-12 19:25:59 +01:00
Dydzio
58bed920b4 Sort out settings files structure 2023-02-12 17:49:41 +01:00
Dydzio
7430616ada Move settings to separate subfolder 2023-02-12 17:29:23 +01:00
Konstantin
6d8eac320d vcmi/client: add missing include to GUIclasses.cpp
Fix building with clang++ version 15.
2023-02-12 19:11:24 +03:00
Dydzio
34227a0dab Integrate new settings with battle UI 2023-02-12 15:49:17 +01:00
Dydzio
2f171fcc0e Merge branch 'develop' into settings-rework 2023-02-12 15:03:33 +01:00
Dydzio
ee186f3839 Conversion of battle settings to configurable interface 2023-02-12 13:51:57 +01:00
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