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

280 Commits

Author SHA1 Message Date
Ivan Savenko
ac1c36b7e2 Fixed not working shortcuts on some buttons in main menu 2024-04-11 22:00:54 +03:00
Ivan Savenko
9188280d02 Fix access to CPrologEpilogVideo after destruction from sound callback 2024-04-11 13:25:54 +03:00
Ivan Savenko
07d201502e Refactoring of button class to prepare for configurable button 2024-02-29 13:57:25 +02:00
Ivan Savenko
af671d109f Made graphical primitive-based UI more configurable 2024-02-18 20:48:45 +02:00
Ivan Savenko
c3957c2c2a Moved json files to new directory, split on per-class basis 2024-02-14 13:08:24 +02:00
Ivan Savenko
9ebd194ab1
Merge pull request #3609 from IvanSavenko/single_process
Allow running server as part of client process
2024-02-14 12:06:22 +02:00
Ivan Savenko
6e399eb21a Make some non-const static variables const or constexpr 2024-02-12 13:22:54 +02:00
Ivan Savenko
0d263c5571 Implemented option to run server as a thread with shared VLC 2024-02-11 17:55:02 +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
Ivan Savenko
c5c46a7c9a Implemented connecting to server via proxy 2024-01-30 21:31:41 +02:00
Ivan Savenko
dc2f8cb81d
Merge pull request #3553 from Laserlicht/sync_subtitle
sync subtitle with audio
2024-01-29 12:54:43 +02:00
Laserlicht
d53dd83466
fix; cleanup; optimized times 2024-01-26 21:58:39 +01:00
Laserlicht
6e957d4913
fix build 2024-01-26 20:31:57 +01:00
Laserlicht
3d57437e52
move logic to tick 2024-01-26 20:13:02 +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
Laserlicht
28c6385211
fix 2024-01-26 11:17:38 +01:00
Laserlicht
c2c86ec278
fix 2024-01-25 21:11:42 +01:00
Laserlicht
3b9372c51c
Code review 2024-01-25 20:49:59 +01:00
Laserlicht
134eaa1583
sync subtitle 2024-01-24 01:17:23 +01:00
Laserlicht
0df4f9bda5
video button 2024-01-23 23:45:31 +01:00
Ivan Savenko
ffa58152ac Client-side support for hosting game server via lobby 2024-01-19 23:49:59 +02: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
78833a1015 Split LobbyWindow file into one file per class 2024-01-19 23:49:59 +02:00
Ivan Savenko
20a38d8514 Renamed new LobbyXXX classes to GlobaLobbyXXX 2024-01-19 23:49:59 +02:00
Ivan Savenko
2396c14114 Fixed logic for reconnection attempts to local server. Cleanup.
Added distinct fields in config for local and remote connection.
Removed code for restoring last session since it does not works as
intended and often triggers after crash
2024-01-19 23:49:59 +02:00
Ivan Savenko
5694777a96 Simplified connection logic 2024-01-19 23:49:59 +02:00
Ivan Savenko
22f0ca67c6 Fix connection to game lobby & map load 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
c2c43602ea Initial version of global lobby server available in client 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
f3277b7953 Define each identifier in a dedicated statement 2024-01-10 00:22:23 +00:00
Laserlicht
63ee20de6c
video campaign fix 2024-01-01 15:25:42 +01:00
Ivan Savenko
44a79c1ff4
Merge pull request #3327 from Laserlicht/datetime
date time format
2023-12-18 13:21:01 +02: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
9f8a5119f9 Less strict check for Armageddon's Blade data files presence 2023-12-16 15:04:41 +02:00
Dydzio
4b57b9f9a9 Display disabled connect button on server autojoin 2023-11-26 18:39:51 +01:00
Ivan Savenko
d1a4e84255 Show message about mods that failed to load on opening main menu 2023-11-15 17:57:40 +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
Laserlicht
8a9f10ec3a
fix asset failures 2023-10-31 22:05:22 +01:00
Alexander Wilms
5cbc75d3b7 Merge remote-tracking branch 'upstream/develop' into develop 2023-10-29 13:35:37 +00:00
Alexander Wilms
f01ec55d21 Use the "nullptr" literal.
"nullptr" should be used to denote the null pointer
2023-10-27 18:18:59 +00:00
Laserlicht
c1707bcc71
fix datatype 2023-10-27 18:52:25 +02:00
Ivan Savenko
b88a8da4e8 Split off some netpack structures into separate files 2023-10-23 13:59:15 +03:00
nordsoft
c8452355ce Revert "Merge pull request #2959 from Alexander-Wilms/faster-server-connection"
This reverts commit 43636af2e4, reversing
changes made to aed2e360ba.

# Conflicts:
#	client/CServerHandler.cpp
2023-10-14 22:52:24 +02:00
Nordsoft91
4ae123e2a1
Merge pull request #3038 from Alexander-Wilms/connection-error-window
Show info dialog when connection to multiplayer server fails
2023-10-12 00:16:04 +02:00
Alexander Wilms
7c627d8163 Show info dialog when connection to multiplayer server fails 2023-10-10 18:11:11 +02:00
Nordsoft91
b6da60b105
Merge pull request #3023 from Laserlicht/video_audio
audio from SMK video file
2023-10-10 00:40:33 +02:00
Laserlicht
89a39fcfc0
code review 2023-10-08 20:27:56 +02:00
Nordsoft91
43636af2e4
Merge pull request #2959 from Alexander-Wilms/faster-server-connection
Sleep for 10 ms instead of 1000 ms while waiting for server connection
2023-10-08 17:21:57 +02:00
Laserlicht
be2b3afe48 implements sounds 2023-10-08 12:49:59 +02:00
Alexander Wilms
c8f1512a3f Use correct address to decide whether we're connecting to a remote server or a local one 2023-10-06 23:33:51 +02: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
nordsoft
6da605ff83 Campaign meta strings 2023-09-28 00:10:28 +02:00
nordsoft
03c099d4fd First steps 2023-09-27 22:53:13 +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
71a1ed816a
Merge pull request #2892 from Laserlicht/highscore_menu
Highscore Menu & end video
2023-09-27 15:48:47 +03:00
Laserlicht
242e0ffa4a
fix playername 2023-09-26 22:06:04 +02:00
Laserlicht
2738dc3190
better approach for redrawing 2023-09-26 21:12:04 +02:00
Laserlicht
c3373ea34c
code review 2023-09-25 18:06:40 +02:00
Laserlicht
68e536c290
code review 2023-09-24 02:00:42 +02:00
Laserlicht
e69b91fbdd
fix layer problem 2023-09-23 23:44:12 +02:00
Laserlicht
41b03e7c5b
fixed some edge cases 2023-09-23 23:11:17 +02:00
Laserlicht
96df11a6f2
always show actual entry 2023-09-23 22:45:38 +02:00
Laserlicht
8a0565eb9b
use vector 2023-09-23 22:15:05 +02:00
Laserlicht
6f8b62d77d
codereview 2023-09-23 20:41:30 +02:00
Laserlicht
ca96749c45
workaround for missing video 2023-09-23 16:28:28 +02:00
Laserlicht
06895e6733
fine tuning 2023-09-23 15:11:48 +02:00
Laserlicht
e3edcb6cd8
rmb; bugfix; tabs 2023-09-23 14:51:39 +02:00
Laserlicht
d2398b804a
implement adding 2023-09-23 13:14:45 +02:00
Laserlicht
049f90159d
highlight preparation 2023-09-23 01:53:45 +02:00
Laserlicht
d3f007453d
win screen ready 2023-09-23 01:36:01 +02:00
Laserlicht
901a33bf1d
calculation 2023-09-23 01:03:15 +02:00
Laserlicht
1a0f5cf159
calc preperation 2023-09-23 00:21:36 +02:00
Laserlicht
30c6cf3b98
video & audio correction; win/lose 2023-09-22 21:45:12 +02:00
Laserlicht
a4cb74f0dc
highscore input window 2023-09-22 20:39:20 +02:00
Laserlicht
909b06f7c1
draw images 2023-09-22 02:19:31 +02:00
Laserlicht
92b0e2b400
initial highscore support 2023-09-22 01:39:35 +02:00
Laserlicht
5fd2eee3e8
code review 2023-09-21 21:27:06 +02:00
Laserlicht
4d8414bd3d
unlock functionality 2023-09-20 23:06:32 +02:00
Laserlicht
dfb5ccbeaf
add persistent storage & completed campaign support 2023-09-20 22:18:53 +02:00
Laserlicht
52b86eb9c1
get back to campaignmenu 2023-09-20 21:18:13 +02:00
Laserlicht
34182069f5
campaignset 2023-09-20 03:13:54 +02:00
Laserlicht
1c68937d95 new approach 2023-09-15 15:26:14 +02:00
Laserlicht
42d2257f19 VCMI credits 2023-09-15 15:26:14 +02:00
Laserlicht
994da3fcf2
code review 2023-09-11 14:44:07 +02:00
Laserlicht
fa19ed4e7c
format 2023-09-11 14:11:16 +02:00
Laserlicht
00f07f93d1
wait while audio playing; no audio on custom campaigns 2023-09-11 14:04:44 +02:00
Laserlicht
fc1ce85a72
basic voice support 2023-09-11 12:57:10 +02:00
Ivan Savenko
9cfcf5ea19 Fix regressions 2023-09-04 18:22:34 +03:00
Ivan Savenko
8dfdfffd87 Use ResourcePath for audio files 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
Ivan Savenko
0613756abc Remove unused code 2023-08-23 16:32:29 +03:00
Ivan Savenko
87957e74c1 Replaced boost::thread_specific_ptr with thread_local 2023-08-23 16:32:29 +03:00
Ivan Savenko
142889e3a5 Give all threads created by client human-readable name for debug 2023-08-23 16:32:29 +03:00
nordsoft
937935ce8c Fix compiling (how does it work on mac?) 2023-08-23 01:20:29 +04:00
nordsoft
d9a2a7bfd0 Fix minor points 2023-08-22 16:00:14 +04:00
nordsoft
b1bfc2239f Backward compatibility with mods 2023-08-22 00:32:26 +04:00
nordsoft
a60d503078 Fix progress bar 2023-08-21 19:21:32 +04:00
nordsoft
45f13c7964 Progress update on client side 2023-08-21 19:21:27 +04:00
nordsoft
584dd20943 Progress on server side for rmg 2023-08-21 19:21:22 +04:00
nordsoft
989a0859ef Fix tutorial loading 2023-08-20 17:58:40 +04:00
nordsoft
70d04ad957 Replace thread approach with callback based 2023-08-11 20:04:14 +04:00
nordsoft
ef7008a753 Unblock UI while tutorial loading 2023-08-10 01:27:13 +04:00
nordsoft
f4869cbfb0 Tutorial load game mode 2023-08-09 15:29:48 +04:00
nordsoft
04c0124759 Remove unnecessary strings 2023-08-09 14:59:26 +04:00
nordsoft
1def98a862 Tutorial implemented 2023-08-09 03:54:09 +04:00
Ivan Savenko
4d08a131d3 Reorganization of boost filesystem usage
- Removed (most of) boost filesystem namespace usings
- Replaced boost::filesystem::fstream with std::fstream and different
constructor that should be available on any plaftorm
2023-07-28 19:12:04 +03:00
Ivan Savenko
bb17cc13b1 Implemented lazy totalRedraw to prevent multiple redraws on single frame 2023-07-18 17:31:21 +03:00
Ivan Savenko
0deeff30b9 replaced clickPressed with clickReleased where applicable to H3 2023-07-09 17:55:39 +03:00
Ivan Savenko
ca889a5c2a Replaced clickLeft with clickPressed clickReleased methods 2023-07-08 14:33:04 +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
cdc27d1fcf Play correct music file in campaign menu 2023-06-27 20:09:11 +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
f6b2f58da9 Use inheritance instead of composition for campaign header 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
d4aa778547 Replaced clickRight event with showPopupWindow/closePopupWindow 2023-06-20 19:58:05 +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
b04b11b9d1
Merge pull request #2175 from IvanSavenko/map_format_mappings
HotA map format support  - object mapping
2023-06-01 22:06:18 +03:00
Ivan Savenko
acac42291e Remove excessive CMap.h includes 2023-05-31 23:18:38 +03:00
Michael
eb618fbff9
rename function 2023-05-28 17:29:11 +02:00
Michael
8672fc7e3d
Allows to translate default playername 2023-05-28 16:57:24 +02:00
Michael
3ee7610015
added missing translation strings 2023-05-28 14:58:21 +02:00
Ivan Savenko
5e86b00dda Moved input handling from GuiHandler to set of classes in eventsSDL dir 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
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
b1bd49ecd8 Fix main menu resize on resolution change 2023-05-09 13:10:33 +03:00
Ivan Savenko
dea10e6091 Use more descriptive names for hotkeys 2023-05-01 17:59:20 +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
nordsoft
91b4782a2f Refactor more fields from campaign header 2023-04-17 04:47:54 +04:00
Konstantin
5366f9190e vcmi: reduce boost::lexical_cast usage 2023-03-09 16:36:46 +03:00
Andrey Filipenkov
313d479d42 fix using JNI from server in single process build 2023-03-02 12:09:48 +03:00
Ivan Savenko
7c58a46279 Removed some instances of access to screen surface 2023-02-03 18:23:53 +02:00
Ivan Savenko
3fef2a5e1f Moved Colors to a separate file, updated includes 2023-02-03 11:39:40 +02:00
Ivan Savenko
aab082fd2e Remove remaining access to SDL_Events 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
108a42e4ba Reorganized includes for new layout. New class - IImageLoader 2023-02-01 20:42:06 +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
e35a669eeb Refactoring of CPicture class to improve encapsulation 2023-01-30 13:58:13 +02:00
Konstantin
cf56f7ccce vcmi: remove unused-but-set-variables 2023-01-26 23:49:00 +03: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