Ivan Savenko
4aa73b40c9
Split CTownHandler into smaller chunks
2024-07-21 18:21:48 +00:00
Ivan Savenko
1aa391fdf8
Split CGeneralTextHandler file into 1 file per class form
...
All text processing code is now located in lib/texts.
No changes other than code being moved around and adjustment of includes
Moved without changes:
Languages.h -> texts/Languages.h
MetaString.* -> texts/MetaString.*
TextOperations.* -> texts/TextOperations.*
Split into parts:
CGeneralTextHandler.* -> texts/CGeneralTextHandler.*
-> texts/CLegacyConfigParser.*
-> texts/TextLocalizationContainer.*
-> texts/TextIdentifier.h
2024-07-20 12:55:17 +00:00
Ivan Savenko
0d6ec0d224
Reviewed usage of EBlitMode, now specified clearly in all cases
2024-07-19 10:08:50 +00:00
Ivan Savenko
920a39844b
Unified naming of method to recolor UI element to current player scheme
2024-07-19 10:08:50 +00:00
Ivan Savenko
a8a330f39f
Remove unused code and no longer needed caching
2024-07-19 10:08:50 +00:00
Ivan Savenko
a1fb3b8b01
Reduce direct access to CAnimation, removed various caching schemes
2024-07-19 10:08:50 +00:00
Ivan Savenko
f920e94366
Merge pull request #4210 from Laserlicht/graphics_improvements
...
[1.6] Graphics improvements
2024-07-16 12:17:39 +03:00
Ivan Savenko
3134d8383c
Merge pull request #4207 from Laserlicht/map_format_additional
...
[1.6] Map format additional infos
2024-07-16 12:15:58 +03:00
Laserlicht
6aa7c9ebf9
code review
2024-07-15 00:51:41 +02:00
Ivan Savenko
6b8f94e6e7
Merge remote-tracking branch 'vcmi/master' into develop
2024-07-11 17:43:44 +00:00
Laserlicht
8b1c038415
fix
2024-07-06 23:57:08 +02:00
Laserlicht
81574138c7
show only used fields
2024-07-06 23:22:40 +02:00
Laserlicht
37c783b7c1
code review
2024-07-06 22:55:56 +02:00
Laserlicht
da83f5dc3b
fix if only one line
2024-07-06 13:04:00 +02:00
Laserlicht
301da0b75a
fix for multiplayer
2024-07-06 13:04:00 +02:00
Laserlicht
27dd00f8ce
remember slider location
2024-07-06 13:04:00 +02:00
Laserlicht
684a9519b6
max columns
2024-07-06 13:04:00 +02:00
Laserlicht
b3f0bf1e1d
finish slider
2024-07-06 13:04:00 +02:00
Laserlicht
29d4cf274a
basic slider
2024-07-06 13:04:00 +02:00
Ivan Savenko
70af104839
Merge pull request #4208 from Laserlicht/patch-3
...
[1.5.4] fix text lenght
2024-07-03 13:31:29 +03:00
Laserlicht
6e3ff219ec
fix text lenght
2024-06-29 14:32:03 +02:00
Laserlicht
02bd52041b
extend map format
2024-06-29 13:13:59 +02:00
Ivan Savenko
9ea3b31ddc
Use spell name for spell scroll campaign bonus
2024-06-27 09:58:53 +00:00
Alexander Wilms
31e1d39f92
Fix issues introduced by fixing typos
2024-06-27 08:38:04 +00:00
Alexander Wilms
02e429e973
Fix typos using https://github.com/crate-ci/typos
...
Changes were reviewed manually
2024-06-24 03:47:19 +02:00
Ivan Savenko
b8beb4fb13
Fixes for various minor issues detected by Sonar Cloud
2024-06-01 11:48:30 +00:00
Ivan Savenko
df83fa33a1
Merge branch 'vcmi/master' into 'vcmi/develop'
2024-05-31 09:34:21 +00:00
Ivan Savenko
adc3441bda
Merge pull request #3998 from IvanSavenko/refactor_sdl_media
...
[1.6] Reorganize SDL sound/music/video handling
2024-05-31 12:02:55 +03:00
Ivan Savenko
5d6470e527
Merge pull request #4025 from IvanSavenko/shared_ptr_lib
...
[1.6] Use shared_ptr for library entities
2024-05-30 19:14:06 +03:00
Ivan Savenko
a092760237
Fix freeze on attempt to load campaign save list
2024-05-28 16:00:52 +00:00
Ivan Savenko
6d01b6d7c9
Show multiplayer saves in singleplayer mode
2024-05-21 15:15:18 +00:00
Ivan Savenko
d1aa4ecd10
Merge pull request #4013 from IvanSavenko/shortcuts_additions
...
[1.5.2] Shortcuts additions
2024-05-21 14:18:55 +03:00
Ivan Savenko
9ed749e104
Merge pull request #3991 from Laserlicht/preselect_last_save_while_loading
...
[1.5.2] preselect last save in loading screen
2024-05-19 15:42:59 +03:00
Ivan Savenko
d965226cbd
Moved Exchange Window to new file, no functionality changes
2024-05-19 10:53:56 +00:00
Ivan Savenko
0db8266495
Implemented some of the requested shortcuts
2024-05-19 09:12:36 +00:00
Ivan Savenko
88fbb7ee71
Most of buttons created in cpp now have assigned shortcut
2024-05-19 09:12:36 +00:00
Ivan Savenko
7461df161c
lib now uses shared_ptr for entities. Removed manual memory management.
2024-05-17 15:04:05 +00:00
Ivan Savenko
721b15d9de
Merge branch 'vcmi/master' into 'vcmi/develop'
2024-05-17 08:26:37 +00:00
Laserlicht
359503f878
preselect last save in loading screen
2024-05-16 13:16:14 +02:00
Laserlicht
eb96f42ba0
fixes graphical glitch when there is no savegame
2024-05-15 21:07:47 +02:00
Ivan Savenko
d27b854cb1
Reorganized music, video and sound players:
...
- All XXXplayers are now in client/media directory
- Reogranized code on one class per file basis
- Extracted interfaces from handlers. Handlers now implement
corresponding interface.
- CCS now only stores pointer to an interface
2024-05-15 17:05:12 +00:00
Ivan Savenko
7790b8969d
Simplify TextInput constructor
2024-05-15 12:45:45 +00:00
Ivan Savenko
93c3cf372b
Reworked TextInput to allow text overflow support
2024-05-15 12:45:45 +00:00
Ivan Savenko
1abe9007bc
Moved CTextInput to a separate file. No changes in logic
2024-05-15 12:45:45 +00:00
Laserlicht
07a06ea08a
block for guests
2024-05-14 00:49:33 +02:00
Laserlicht
941c1576c5
improve extraoptions
2024-05-14 00:33:30 +02:00
Ivan Savenko
a341abbd31
Merge pull request #3927 from IvanSavenko/fix_doubleclick
...
[1.5.1] Fixed mouse double-click handling in some widgets
2024-05-11 21:57:15 +03:00
Ivan Savenko
87e4756f6d
Fix crash on hiding empty map/save list
2024-05-11 13:19:07 +00:00
Ivan Savenko
64d6e48540
Fixed mouse double-click handling in some widgets.
...
Now double-click when 1st click was not inside widget should work as
expected:
- scenario list: 2nd click on non-selected scenario will select it
instead of starting unselected map
- component selection: 2nd click on non-selected component would select
it instead of confirming choice
- town portal dialog: 2nd click on non-selected town would only select
it
- tavern window: right-click would now also select this hero (h3 logic)
2024-05-10 16:05:59 +00:00
Ivan Savenko
2521557f68
Fixed some newly reported issues from SonarCloud
2024-05-10 13:40:24 +00:00
Ivan Savenko
cd79953693
Fix crash on accessing campaign screen
2024-05-06 12:32:32 +00:00
Laserlicht
37d9e862c2
Code review
2024-05-02 20:15:34 +02:00
Laserlicht
812e96ebb1
Guest can also use & renaming
2024-05-01 15:58:22 +02:00
Laserlicht
5b8b75da22
small fixes
2024-05-01 15:30:35 +02:00
Laserlicht
426a008506
no slider needed when only 9 towns
2024-05-01 13:36:00 +02:00
Laserlicht
1a51495ef5
show popup window for towns
2024-05-01 13:19:58 +02:00
Laserlicht
5413fc2c7e
finished
2024-05-01 01:26:51 +02:00
Laserlicht
e505aab29a
scrolling works
2024-05-01 00:49:33 +02:00
Laserlicht
7c96ffa8ff
townselector
2024-04-30 23:12:55 +02:00
Laserlicht
78b8c2c71c
changed layout
2024-04-30 21:52:04 +02:00
Laserlicht
0565c062e5
Server functionality
2024-04-30 01:52:49 +02:00
Laserlicht
f4d1442a86
pvp option init
2024-04-29 23:55:02 +02:00
Ivan Savenko
0c24c93c8c
SonarCloud fixes
2024-04-26 17:57:16 +03:00
Ivan Savenko
eaae78da7a
Do not reset map settings unless player switches between scenario and
...
random map
2024-04-26 16:51:40 +03:00
Ivan Savenko
3311676f1d
Fix incorrect string ID
2024-04-22 16:51:08 +03:00
Ivan Savenko
50dc6f67c6
Merge pull request #3809 from dydzio0614/shortcut-enhancements
...
Artifact management shortcuts + game begin default keybind fix
2024-04-22 11:13:09 +03:00
Laserlicht
1f850b8e4e
fix error with custom campaign
2024-04-20 18:57:53 +02:00
M
6fed084055
Do not use enter for non-campaign game start, do not use "B" for non-campaign game start
2024-04-20 15:43:39 +02:00
Laserlicht
b74c1818c4
set save name by default
2024-04-16 21:21:20 +02:00
Ivan Savenko
c99d4b959e
Fix potentially uninintialized variables
2024-04-11 13:25:54 +03:00
Ivan Savenko
2d9e42b623
Do not attempt to show extra options in campaign scenario information
...
screen
2024-04-06 15:59:08 +03:00
Ivan Savenko
b9cd9a5822
Open lobby when players leaves pregame menu opened via lobby
2024-03-27 13:10:55 +02:00
Ivan Savenko
d700e94189
Code cleanup
2024-03-27 13:10:55 +02:00
Ivan Savenko
862f6f8c7b
Added descriptions for new buttons in pregame menu
2024-03-27 13:10:55 +02:00
Ivan Savenko
ace43e97b9
Added UI for inviting players into a match
2024-03-27 13:10:55 +02:00
DjWarmonger
2c9b7089ad
Merge pull request #3645 from vcmi/save_rmg_options
...
Save rmg options
2024-03-14 19:54:08 +01:00
Tomasz Zieliński
e7af9d5607
Code review fixes, Sonarcloud fixes
2024-03-04 21:23:17 +01:00
Tomasz Zieliński
5f95955535
Store and load last difficulty setting
2024-03-01 10:57:48 +01:00
Tomasz Zieliński
17fc1604ca
Remove unused file
2024-02-29 20:20:35 +01:00
Ivan Savenko
22f23ba6f8
Restore previously disabled functionality
2024-02-29 16:47:44 +02:00
Tomasz Zieliński
b7320bbc8a
Cleanup
2024-02-29 13:04:48 +01: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
Tomasz Zieliński
2c32c770f7
First version that works in lobby
2024-02-29 12:45:08 +01:00
Ivan Savenko
99cb1df91d
Fixes for positioning on popups with components
2024-02-27 13:15:16 +02:00
Ivan Savenko
af671d109f
Made graphical primitive-based UI more configurable
2024-02-18 20:48: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
ef8eb330d6
Merge branch 'develop' into random_template_description
2024-02-11 17:54:18 +02:00
Ivan Savenko
f2ecd4cf11
Merge branch 'develop' into 'lobby'
2024-02-11 16:13:13 +02:00
Laserlicht
4e8152f268
reorder gui
2024-02-07 22:04:50 +01:00
Laserlicht
c8b6d6a684
add extra button for campaigns
2024-02-07 21:40:56 +01:00
Ivan Savenko
87059be67b
Added range checks to values read from h3m.
...
Fixes reading of morale/luck values (-3..3) as unsigned leading to
overflow.
2024-02-05 21:27:55 +02: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
Tomasz Zieliński
b7df6064cd
Add random map description and display it in RMG menu
2024-02-03 16:23:56 +01:00
Ivan Savenko
a9866bb5c6
Added RandomGeneratorUtil::nextItemWeighted convenience method
2024-01-31 00:17:40 +02: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
Ivan Savenko
891d25a634
Merge pull request #3552 from Laserlicht/video_button
...
video button
2024-01-25 16:31:24 +02:00
Ivan Savenko
2a193effcc
Merge branch 'master' into 'develop'
2024-01-25 16:23:13 +02:00
Ivan Savenko
2f5bf64340
Do not crash on attempt to load campaign with unsupported maps
2024-01-24 13:44:22 +02:00
Laserlicht
56db0e06cf
fix render artefacts remaining after video playback
2024-01-24 00:04:56 +01:00
Laserlicht
0df4f9bda5
video button
2024-01-23 23:45:31 +01:00
Laserlicht
0a4b5dbe10
code review
2024-01-21 18:12:46 +01:00
Laserlicht
883ea23495
moved to gameconfig
2024-01-20 17:54:15 +01:00
Laserlicht
d6172a9c4c
disable buttons while loading (not changable)
2024-01-20 13:42:37 +01:00
Laserlicht
4813179abb
Invite hero setting
2024-01-20 01:24:34 +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
0a1153e1c6
Switch client-server communication to new API
2024-01-19 23:49:59 +02:00
Ivan Savenko
bd5682ecc3
Merge remote-tracking branch 'vcmi/master' into develop
2024-01-19 13:49:54 +02: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
b4a1a755a4
Merge pull request #3498 from IvanSavenko/simturns_pathfinder
...
[1.4.3] Fixes for simultaneous turns
2024-01-15 12:00:54 +02:00
Laserlicht
e25c8c21e0
fix buggy multiplayer selection
2024-01-13 21:51:56 +01:00
Ivan Savenko
fc163898d9
Fixed delayed updates in timer editing, limited to 24 hours at most
2024-01-13 22:31:26 +02:00
Ivan Savenko
7cf738b20e
Merge pull request #3462 from Laserlicht/trim_text
...
limit textboxes
2024-01-12 21:53:30 +02:00
Alexander Wilms
f3277b7953
Define each identifier in a dedicated statement
2024-01-10 00:22:23 +00:00
Ivan Savenko
eae3d806db
Merge pull request #3460 from Laserlicht/changedate_sort
...
add sort for changedate
2024-01-09 12:43:01 +02:00
Laserlicht
056dccda30
different max width
2024-01-08 00:08:05 +01:00
Laserlicht
24d4816a36
trim text
2024-01-07 23:42:48 +01:00
Laserlicht
8b262e49a6
add sort for changedate
2024-01-07 20:17:44 +01:00
Laserlicht
8f2f5344a9
correct starting bonus in selection windows
2024-01-07 17:25:33 +01:00
Ivan Savenko
63a2ed7cf8
Replace vector[] with range-checking vector.at()
2024-01-04 23:52:57 +02:00
Laserlicht
cb9c4bbaf0
unlimited replay option
2023-12-28 20:48:19 +01:00
Laserlicht
a3e27b859e
extra option tab
2023-12-28 19:41:01 +01:00
Laserlicht
c471b626a2
code review
2023-12-27 15:26:08 +01:00
Laserlicht
fc4827c89c
option for allowing cheats
2023-12-27 14:39:35 +01:00
Ivan Savenko
50536e28da
Fixed invalid text ID in description of "start with hero" campaign bonus
2023-12-23 18:13:31 +02:00
Ivan Savenko
ec1aee68d5
Fix invisible chat in pregame. Fixed positioning of chat box
2023-12-23 18:12:55 +02:00
Ivan Savenko
37a8c8db8d
Workaround for vcmi-extras bug
2023-12-22 18:40:29 +02:00
Ivan Savenko
fe5918ebf5
Clients will now switch to turn options when host does so
2023-12-22 18:40:28 +02:00
Ivan Savenko
76cb5387c5
Access CHero in a way that will throw exception on invalid access
...
instead of crash
2023-12-13 16:50:56 +02:00
Ivan Savenko
edbe25b33a
Updated layout and localizations
2023-12-07 16:36:44 +02:00
Ivan Savenko
861c53059e
Added callbacks for preset dropdowns
2023-12-07 13:57:16 +02:00
Ivan Savenko
653304b004
Implemented accumulating timers, rename creature timer to unit timer
2023-12-07 13:57:16 +02:00
Ivan Savenko
02f7193260
Fix regression from map translation - properly translate custom main
...
hero name
2023-11-27 20:27:10 +02:00
Ivan Savenko
e5e01ab35d
Disable spectator mode in single player to avoid confusing players
2023-11-20 14:38:57 +02:00
Ivan Savenko
13763cad8e
Remove few more implicit conversions
2023-11-15 15:55:19 +02:00
Ivan Savenko
0842f5afee
Removed remaining usages of std::vector<bool>
2023-11-15 15:55:18 +02:00
Ivan Savenko
f65f4b1285
Disable new UI if enhancements are off
2023-11-13 19:49:41 +02:00
Ivan Savenko
d1ae5bbee5
Implement AI simturns checkbox
2023-11-13 19:06:56 +02:00
Ivan Savenko
c5eeaa6526
Added non-linear slider for better simturn duration selection
2023-11-13 19:06:56 +02:00
Ivan Savenko
7d54f6a9c0
Implemented basic support for plural forms in translations
2023-11-13 19:06:56 +02:00
Ivan Savenko
e160b8557b
Implement min/max simturns callbacks
2023-11-13 19:06:56 +02:00
Ivan Savenko
32633d5f52
Initial version of Turn Options tab screen
2023-11-13 19:06:56 +02:00
Ivan Savenko
3268ebe27c
Moved some code from OptionTab to separate class, OptionTabBase
2023-11-13 19:06:56 +02:00
Ivan Savenko
59806bf112
Fix right-click tooltips for starting hero/towns
2023-11-12 17:17:07 +02:00
Ivan Savenko
86a3806bec
MetaString refactor to eliminate integer usage for identifiers
...
- entity names are now stored and serialized as text ID's
- added helper methods for convenience to get entities names to
metastring
2023-11-07 22:47:10 +02:00
Tomasz Zieliński
c909bd766e
Merge remote-tracking branch 'origin/develop' into fix_rmg_teams
...
# Conflicts:
# lib/rmg/CMapGenOptions.cpp
# lib/rmg/CMapGenOptions.h
2023-11-07 20:54:04 +01:00
Andrii Danylchenko
0927d3e3e8
Merge pull request #3145 from vcmi/fix-3142
...
#3142 - fi custom campaign selection screen
2023-11-05 11:12:58 +02:00