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

1344 Commits

Author SHA1 Message Date
Ivan Savenko
ae8779779b Fix typo in file names 2024-04-14 13:09:11 +03:00
Laserlicht
e4b60baa3b
creature/town biography/description 2024-04-12 23:35:39 +02:00
Ivan Savenko
a7d47cd3d2
Merge pull request #3742 from IvanSavenko/adventure_map_spellcast_fixes
Adventure map spellcasting fixes
2024-04-12 11:17:19 +03:00
SoundSSGood
6a0e8b0cab Junkyard crash fixed 2024-04-11 01:44:15 +03:00
Ivan Savenko
8353bca34f Small refactoring of adventure map spell casting:
- Removed duplicated checks for DD possibility
- Moved most of spell-specific code from AdventureMapInterface to library
code
- AdventureSpellMechanics class now provides methods to check whether
spellcast is possible, similarly to battle spells
- If it is not possible to cast adventure map spell (e.g. no mana or no
move points) game will show infowindow immediately on clicking spellbook
instead of on cast attempt
- If hero does not have movement points for a DD, game will show correct
error message
- Added game settings 'dimensionDoorFailureSpendsPoints' due to
discovered H3 logic
2024-04-10 20:04:08 +03:00
SoundSSGood
39a0e56169 suggested changes 2024-04-08 14:57:58 +03:00
SoundSSGood
2cdf2b4083 fixed missed trader text 2024-03-25 17:38:43 +02:00
SoundSSGood
c6c213c454 CMarketBase::hRight CMarketBase::hLeft removed. Final changes 2024-03-25 12:56:46 +02:00
SoundSSGood
cc14f85445 Refactoring. Regressions fixing. 2024-03-25 12:55:05 +02:00
SoundSSGood
433d55cac3 Market window unified 2024-03-25 12:44:34 +02:00
SoundSSGood
ae8d70748b Altar artifacts widget refactoring 2024-03-25 12:44:33 +02:00
SoundSSGood
4839891de4 Cleanup & refactoring 2024-03-25 12:44:33 +02:00
SoundSSGood
f3fa6714dc Artifacts selling widget 2024-03-25 12:44:33 +02:00
SoundSSGood
bb7137545f Artifacts market widget 2024-03-25 12:44:33 +02:00
SoundSSGood
4e0ea7355b Transfer resources widget 2024-03-25 12:44:33 +02:00
SoundSSGood
4d3bf882ed market resources widget 2024-03-25 12:44:33 +02:00
SoundSSGood
6b658bf9c1 freelancer guild widget 2024-03-25 12:44:33 +02:00
SoundSSGood
0813fdbf8c market window 2024-03-25 12:44:33 +02:00
Ivan Savenko
4b2cba96cc
Merge pull request #3646 from IvanSavenko/configurable_button
Configurable buttons
2024-03-04 13:34:40 +02:00
Ivan Savenko
83eb0ea28f
Merge pull request #3625 from IvanSavenko/exchange_in_town
Better hero exchange in town
2024-03-04 13:34:15 +02:00
Ivan Savenko
22f23ba6f8 Restore previously disabled functionality 2024-02-29 16:47:44 +02:00
Ivan Savenko
ddb2acb9c2 Code cleanup 2024-02-29 15:39:13 +02:00
Ivan Savenko
20008cd5a5 Replaced premade buttons on hero screen with generated ones 2024-02-29 13:57:25 +02:00
Ivan Savenko
0051ffa7a9 Implemented configurable buttons. Replaced 'animateLonelyFrame' logic. 2024-02-29 13:57:25 +02:00
Ivan Savenko
07d201502e Refactoring of button class to prepare for configurable button 2024-02-29 13:57:25 +02:00
Ivan Savenko
658747d342 Code cleanup 2024-02-27 14:45:15 +02:00
Ivan Savenko
99cb1df91d Fixes for positioning on popups with components 2024-02-27 13:15:16 +02:00
Ivan Savenko
93b3cb3af5 Better size & positioning of infoboxes 2024-02-26 22:04:30 +02:00
Ivan Savenko
4b4dedeab9 Code formatting 2024-02-26 18:53:12 +02:00
Ivan Savenko
e6b339448f Refactoring & deduplication of infowindow code 2024-02-26 18:32:15 +02:00
Ivan Savenko
658cc14cd0 Removed direct usage of SDL_Surface in info windows 2024-02-26 15:49:27 +02:00
Ivan Savenko
5419df1140 Removed no longer used class 2024-02-26 15:49:27 +02:00
Ivan Savenko
82eea1abc1 Remove unused variable 2024-02-19 16:49:59 +02:00
Ivan Savenko
8b60275a6e Hero exchange in town is now activated by clicking on hero portrait 2024-02-18 21:02:24 +02:00
Ivan Savenko
af671d109f Made graphical primitive-based UI more configurable 2024-02-18 20:48:45 +02:00
Ivan Savenko
4c70abbeb5 Reduced usage of global variables - removed or made const / constexpr 2024-02-12 13:49:45 +02:00
Ivan Savenko
6e399eb21a Make some non-const static variables const or constexpr 2024-02-12 13:22:54 +02:00
Ivan Savenko
f2ecd4cf11 Merge branch 'develop' into 'lobby' 2024-02-11 16:13:13 +02:00
Alexander Wilms
522cb571b3 Remove redundant virtual specifiers
`grep -nr virtual | grep -v googletest | grep override > ../redundant_virtual.txt`

```python
import os

with open("../redundant_virtual.txt") as f:
    for line in f:
        print()
        line: str = line.strip()
        print(line)
        tmp = line.split(":")
        file = tmp[0].strip()
        code = tmp[-1].strip()
        print(file)
        print(code)
        new_code = code.replace("virtual ", "", 1)
        # https://superuser.com/a/802490/578501
        command = f"export FIND='{code}' && export REPLACE='{new_code}' && ruby -p -i -e \"gsub(ENV['FIND'], ENV['REPLACE'])\" {file}"
        os.system(command)
```
2024-02-10 20:46:13 +01:00
Alexander Wilms
0495c52cf4 Don't call ScreenHandler::onScreenResize() when the window has been (un)maximized to avoid creating a huge texture and crashing 2024-02-05 18:59:55 +01:00
Ivan Savenko
d4bedd8d8d Fixed handling of match server crash 2024-02-04 19:58:09 +02:00
Ivan Savenko
80fc2bb695 Merge remote-tracking branch 'vcmi/develop' into lobby 2024-02-03 21:11:34 +02:00
Ivan Savenko
7247038458
Merge pull request #3574 from SoundSSGood/altar-fixes
Artifacts altar related fixes
2024-02-01 22:27:41 +02:00
Ivan Savenko
facdc9f993
Merge pull request #3583 from Laserlicht/town_portal
town portal dialog adjustments
2024-02-01 11:30:51 +02:00
Laserlicht
9e7fbc3ca2
use localstate 2024-01-31 21:29:04 +01:00
Laserlicht
9cd6a6838b
fix 2024-01-31 11:32:35 +01:00
Laserlicht
ebb2cce8b8
rework town portal 2024-01-31 02:30:10 +01:00
Ivan Savenko
7992144763 Gem class is now Sorceress 2024-01-30 23:34:27 +02:00
Ivan Savenko
3abc26e789 Moved checks for campaign heroes to CGHeroInstance class 2024-01-30 23:33:58 +02:00
Ivan Savenko
26703af8b0
Merge pull request #3576 from Alexander-Wilms/conditional-screen-clearing
CVideoHandler: Call SDL_RenderClear() when playing intro, call SDL_Re…
2024-01-30 17:36:18 +02:00
SoundSSGood
d16632b54c cleanup & fix build & sonarcloud fixes 2024-01-30 01:23:50 +02:00
Alexander Wilms
70ce090bc4 CVideoHandler: Use EVideoType::INTRO and EVideoType::SPELLBOOK 2024-01-29 16:08:53 +01:00
SoundSSGood
f66918ea14 bulk move to altar 2024-01-27 15:28:23 +02:00
Laserlicht
a2fd5039ab
setting 2024-01-27 01:16:55 +01:00
Ivan Savenko
322c5faf63 Merge remote-tracking branch 'vcmi/develop' into lobby 2024-01-26 16:52:23 +02:00
Ivan Savenko
388ca6e776 Added list of active accounts and rooms to UI. Added room creation logic 2024-01-26 16:32:36 +02:00
Ivan Savenko
4d0c0f10a9
Merge pull request #3530 from Laserlicht/tavern
Invite hero
2024-01-26 13:12:55 +02:00
Laserlicht
e434d5c0b7
Apply suggestions from code review
Co-authored-by: Ivan Savenko <saven.ivan@gmail.com>
2024-01-25 20:35:30 +01:00
Laserlicht
7d1553bc29
fix build 2024-01-22 20:56:35 +01:00
Laserlicht
9b2908d464
Apply suggestions from code review
Co-authored-by: Ivan Savenko <saven.ivan@gmail.com>
2024-01-22 20:19:49 +01:00
Laserlicht
0a4b5dbe10
code review 2024-01-21 18:12:46 +01:00
Ivan Savenko
fc4ae3bd8c Merge remote-tracking branch 'vcmi/develop' into lobby 2024-01-20 23:01:49 +02:00
Ivan Savenko
0c07384293 Refactoring of serialization versioning handling
- Removed 'version' field from serialize() method
- Handler classes - Binary(De)Serializer now have 'version' field
- Serialization versioning now uses named enum

Save compatibility with 1.4.X saves should be intact
2024-01-20 20:34:51 +02:00
Ivan Savenko
6b760089a4
Merge pull request #3473 from IvanSavenko/const_lib
[1.5] Remove non-const global variables from library
2024-01-20 19:22:46 +02:00
Laserlicht
883ea23495
moved to gameconfig 2024-01-20 17:54:15 +01:00
Laserlicht
a0098eb065 Gui for hero invite 2024-01-20 12:54:06 +01:00
Laserlicht
346beea49c
invite hero backend 2024-01-20 01:09:55 +01:00
Laserlicht
1fb2a026ec
enable doubleclick 2024-01-19 23:31:21 +01:00
Ivan Savenko
55b504792e Implemented basic version of login window and persistent connection on
client
2024-01-19 23:49:59 +02:00
Ivan Savenko
1f7e53a609 Code style fixes 2024-01-19 21:21:23 +02:00
Ivan Savenko
6e629a6a5f split getBonusLocalFirst into two distinct method:
- const method getFirstBonus that returns single matching bonusToString
- non-const method getLocalBonus that returns bonus from current node
2024-01-19 13:56:06 +02:00
Ivan Savenko
a15366f5a5 Make IObjectInterface::cb non-static 2024-01-19 13:55:21 +02:00
Ivan Savenko
bd5682ecc3 Merge remote-tracking branch 'vcmi/master' into develop 2024-01-19 13:49:54 +02:00
Ivan Savenko
3e8f110482
Merge pull request #3515 from SoundSSGood/backpack-statusbar
Backpack statusbar
2024-01-18 16:05:42 +02:00
SoundSSGood
a753319ad0 backpack window statusbar 2024-01-18 15:55:54 +02:00
Laserlicht
a1f4fcb78a
hide adventuremap 2024-01-18 00:47:18 +01:00
Alexander Wilms
7a1cee1a60 Fix error: 'auto' not allowed in non-static struct member 2024-01-17 14:49:28 +00:00
Alexander Wilms
73019c204d Replace redundant types with auto for the lvalues of template factory functions for smart pointers
grep -r --include \*.h --include \*.cpp "= std::" * | grep -v auto | grep -Po ".*[^ ]+ [^ ]+ [^ ]*[ ]*=.*;" | grep -v "auto\|int\|char\|bool\|float|\double\|for\|if\|googletest\|fuzzylite\|size_t\|using\|return" | grep -v double | grep -v si64 | grep -v si32 | grep -v ui32 | grep \< | grep -v float | tr -d '\t' | grep -v assert > redundant_types.txt

import re

with open("redundant_types.txt") as f:
    for line in f:
        line = line.strip()
        path = line.split(":", 1)[0]
        original_code = ":".join(line.split(":")[1:]).strip()

        print()
        print(path)
        print(original_code)
        prefix = "auto "
        if original_code.startswith("static"):
            static = True
        else:
            static = False

        cpp_type = " ".join(original_code.split("=")[0].strip().split(" ")[0:-1])
        print(cpp_type)

        if static:
            new_code = "static auto "+ " ".join(original_code.split(" ")[2:])
        else:
            new_code = "auto "+ " ".join(original_code.split(" ")[1:])
        print(new_code)

        if True:
            with open(path, "r") as f:
                filedata = f.read()

            filedata = filedata.replace(original_code, new_code)

            with open(path, "w") as f:
                f.write(filedata)
2024-01-17 12:50:00 +00:00
Ivan Savenko
0d0d3d8c80 Renamed speed -> getMovementRange, remove misleading default parameter 2024-01-14 17:14:36 +02:00
Ivan Savenko
7cf738b20e
Merge pull request #3462 from Laserlicht/trim_text
limit textboxes
2024-01-12 21:53:30 +02:00
Ivan Savenko
019a4151b9
Merge pull request #3258 from SoundSSGood/trade-panels
Market rework
2024-01-12 21:53:13 +02:00
SoundSSGood
b840cf3650 suggested changes 2024-01-11 12:46:32 +02:00
Alexander Wilms
f3277b7953 Define each identifier in a dedicated statement 2024-01-10 00:22:23 +00:00
SoundSSGood
fdf60b2151 moved to widgets/markets 2024-01-09 20:21:09 +02:00
SoundSSGood
d0ca63d2c9 subclasses for market composition 2024-01-08 16:24:47 +02:00
SoundSSGood
50a5c72d1b Creatures trade panel 2024-01-08 16:24:47 +02:00
SoundSSGood
791ee78cc4 players trade panel 2024-01-08 16:24:47 +02:00
SoundSSGood
f043c417a1 Artifacts trade panel 2024-01-08 16:24:47 +02:00
SoundSSGood
b246e24811 reworking slot selection 2024-01-08 16:24:47 +02:00
SoundSSGood
6c828d1be9 Resources trade panel 2024-01-08 16:24:47 +02:00
Laserlicht
24d4816a36
trim text 2024-01-07 23:42:48 +01:00
Ivan Savenko
a2f603ac02 Fixed some cases of illegal access to std::array::operator[] 2024-01-07 12:45:02 +02:00
Laserlicht
9066dbcbd4
spellbook fix pages 2024-01-01 14:57:55 +01:00
Ivan Savenko
a9005da01e
Merge pull request #3366 from Laserlicht/battle_informations
Battle stacks informations
2023-12-28 12:39:26 +02:00
Dydzio
046d3abee4 Add new setting for instant adventure map fade in / fadeout effects 2023-12-24 17:18:48 +01:00
Laserlicht
39c58a9d94
disable animation button 2023-12-24 00:41:29 +01:00
Laserlicht
f0c97b344a
add duration + morale/luck 2023-12-23 16:07:12 +01:00
Laserlicht
c20f0bdc3e
using CHeroArea 2023-12-22 01:30:41 +01:00
Laserlicht
f75ccc308b right click opens hero info 2023-12-22 00:07:41 +01:00
Ivan Savenko
27d2fc0a13
Merge pull request #3186 from SoundSSGood/quick-backpack-part1
Quick backpack window
2023-12-21 17:10:15 +02:00
Laserlicht
c6434c31fb
small fix 2023-12-20 20:34:57 +01:00
Laserlicht
1dd2a28760
small fix 2023-12-20 20:23:35 +01:00
Laserlicht
ed671fa2fa
big spellbook optimize 2023-12-20 20:16:23 +01:00
SoundSSGood
e5c532beb4 gesture for quick backpack window 2023-12-20 16:55:38 +02:00
SoundSSGood
21b02414bf Refactoring. Callbacks have been encapsulated. Added cursorPosition 2023-12-19 19:01:56 +02:00
SoundSSGood
29b61081f3 Quick backpack 2023-12-19 19:01:56 +02:00
Ivan Savenko
732cdfec73
Merge pull request #3254 from Laserlicht/spell_search
search spells
2023-12-18 13:23:06 +02:00
Laserlicht
77505af71b
remove removefoucs 2023-12-17 22:17:32 +01:00
Laserlicht
9299eaed36
code review 2023-12-16 21:10:27 +01:00
Laserlicht
56562ad8dc date time format 2023-12-16 18:57:38 +01:00
Ivan Savenko
4fa33c8d2e
Merge pull request #3279 from Laserlicht/smooth_scroll_fix
smooth scroll fix and gui option to disable
2023-12-10 22:49:43 +02:00
Laserlicht
df2a5f05d8
audio mute on focus lost setting 2023-12-10 14:49:27 +01:00
Laserlicht
e74c2262c3
add option to gui to disable smooth dragging 2023-12-10 13:38:58 +01:00
Laserlicht
dfb10bdfcb
search rectangle 2023-12-08 22:52:34 +01:00
Laserlicht
95ff89f622 search spells 2023-12-08 22:46:05 +01:00
Ivan Savenko
0fd966818f Remove 'visible' property from images, replaced with enable/disabled
call
2023-12-07 13:57:16 +02:00
Ivan Savenko
d919cb0eac
Merge pull request #3240 from IvanSavenko/bugfixing
[1.4.0] Bugfixing for beta
2023-12-02 12:20:37 +02:00
Ivan Savenko
55ad903ffb
Merge pull request #3231 from dydzio0614/large-spellbook-setting
Split large spellbook from UI enhancements setting
2023-12-02 12:13:06 +02:00
Dydzio
fc035b1b55 Change large spellbook config section to gameTweaks 2023-11-28 22:30:50 +01:00
Ivan Savenko
ea8995e901 Fixed check for free slots when recruiting in towns 2023-11-28 16:25:11 +02:00
Ivan Savenko
d5f8db2222 Fixed undefined behavior on accessing array with -1 index 2023-11-27 14:09:08 +02:00
Ivan Savenko
344d8891e4 Fix display of creatures to sell in Freelancer Guild 2023-11-27 14:08:49 +02:00
Ivan Savenko
81a48f2d80 Do not attempt to resize text box to zero-width 2023-11-27 14:08:49 +02:00
Dydzio
a4d76b2529 Split large spellbook from UI enhancements setting 2023-11-26 19:16:53 +01:00
Laserlicht
2eada0efca
allow shortcout if any town has a marketplace 2023-11-25 03:14:31 +01:00
Laserlicht
1954447a9e
fix image order 2023-11-25 02:58:06 +01:00
Ivan Savenko
07990644b5
Merge pull request #3191 from Laserlicht/touch-introduction
Touch introduction
2023-11-20 14:05:47 +02:00
Laserlicht
70b6906e6d
adjust messages, add radial wheel 2023-11-17 18:23:11 +01:00
Laserlicht
a6dd5c2887
translation 2023-11-16 23:03:41 +01:00
Laserlicht
1bf05d43a1
fix video implementation error; implement paging; video loading 2023-11-16 22:39:50 +01:00
Laserlicht
2cfbcd067b
videos 2023-11-16 02:58:43 +01:00
Ivan Savenko
52050d0ef1 Fix build 2023-11-15 15:55:19 +02:00
Ivan Savenko
6cb1f6ff11 Remove all remaining implicit conversion in lib 2023-11-15 15:55:19 +02:00
Laserlicht
05efb12d82
format fix 2023-11-14 22:50:22 +01:00
Laserlicht
cb92778e00
add ui 2023-11-14 22:39:11 +01:00
Laserlicht
f7a31865f3
basic touch introduction implementation 2023-11-14 21:52:30 +01:00
Ivan Savenko
07472d3b05
Merge pull request #3147 from IvanSavenko/serialization_refactor
Serialization refactor - remove VLC from saved games
2023-11-11 17:35:01 +02:00
Ivan Savenko
5c810df36f Reorganized types registration code 2023-11-11 00:39:08 +02:00
Ivan Savenko
864462b84a Reduce excessive updates of garrisons. Fixes selection reset in simturns 2023-11-09 00:01:48 +02:00
Ivan Savenko
6b81012f31 Use variant identifier in netpacks where applicable 2023-11-08 14:00:23 +02:00
SoundSSGood
41ee52d9d4 fix build & suggested changed 2023-11-08 01:51:13 +02:00
SoundSSGood
539b2e596d adjusting the placement of artifact slots 2023-11-06 14:31:32 +02:00
SoundSSGood
75ebd954af Creatures altar & Artifacts altar 2023-11-06 14:31:32 +02:00
SoundSSGood
9f9317a8a0 CTradeBase initial commit 2023-11-06 14:31:31 +02:00
Ivan Savenko
5487f07d3b added toEntity overload that accepts generic Services class 2023-11-04 17:04:53 +02:00
Ivan Savenko
184f5a72cc Use toEntity/toXXX methods in Identifier instead VLC objects access 2023-11-03 16:03:29 +02:00
Ivan Savenko
87f6c7354b
Merge pull request #3139 from IvanSavenko/component_variant_identifier
Refactoring of Component class
2023-11-03 15:52:07 +02:00
Ivan Savenko
4a24da3804
Merge pull request #3114 from Laserlicht/fix-highscore
fix high scores screen
2023-11-03 15:51:37 +02:00
Ivan Savenko
056ef00f74 Bugfixing 2023-11-02 13:52:58 +02:00
Ivan Savenko
10e50548e7 Converted Component class to use VariantIdentifier instead of int 2023-11-02 12:00:04 +02:00
Ivan Savenko
8346d71c98 Remove more subID access 2023-11-01 14:44:05 +02:00
Ivan Savenko
7107b3202f
Merge pull request #3069 from SoundSSGood/artifact-location-id
ArtifactLocation now use ID for artHolder identification
2023-11-01 14:41:36 +02:00
Laserlicht
8a9f10ec3a
fix asset failures 2023-10-31 22:05:22 +01:00
SoundSSGood
3c5527a222 ArtifactLocation now use ID for artHolder identification part3 2023-10-29 17:46:13 +02:00
SoundSSGood
ab2f6abb87 ArtifactLocation now use ID for artHolder identification part2 2023-10-29 17:46:13 +02:00
SoundSSGood
61fc236d79 ArtifactLocation now use ID for artHolder identification part1 2023-10-29 17:46:13 +02:00
Alexander Wilms
5cbc75d3b7 Merge remote-tracking branch 'upstream/develop' into develop 2023-10-29 13:35:37 +00:00
Alexander Wilms
10ad5b6789 client/windows/CCastleInterface.cpp: Identical sub-expressions on both sides of operator "&&".
Identical expressions should not be used on both sides of a binary operator
2023-10-27 18:19:17 +00:00
Ivan Savenko
5523f05284 Moved ArtifactLocation to a separate file 2023-10-23 19:02:28 +03:00
Ivan Savenko
b88a8da4e8 Split off some netpack structures into separate files 2023-10-23 13:59:15 +03:00
Ivan Savenko
3880ea58b9 Merge branch 'josch/dos2unix' into develop 2023-10-22 18:39:03 +03:00
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