Commit Graph
47 Commits
Author SHA1 Message Date
Ivan Savenko 4ed961fb96 Partially unified handling of pregame and in-game chats 2024-03-27 13:10:55 +02:00
Ivan Savenko 3023db6f0f Store and show correct player room limit in UI 2024-03-27 13:10:55 +02:00
Ivan Savenko 07d201502e Refactoring of button class to prepare for configurable button 2024-02-29 13:57:25 +02:00
Ivan Savenko 38ba42ef7a Rename 'c' to 'logicConnection' 2024-02-11 16:26:27 +02:00
Ivan Savenko d4bedd8d8d Fixed handling of match server crash 2024-02-04 19:58:09 +02:00
Ivan Savenko bd4c7e3ac0 Added LobbyPrepareStartGame pack to replace old workarounds 2024-02-03 19:57:23 +02:00
Ivan Savenko 2c2bec791c Fixes and cleanup of game client network shutdown and restart 2024-02-03 19:27:04 +02:00
Ivan Savenko c5c46a7c9a Implemented connecting to server via proxy 2024-01-30 21:31:41 +02:00
Ivan Savenko eaca128c99 Code cleanup 2024-01-26 19:15:57 +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 ffa58152ac Client-side support for hosting game server via lobby 2024-01-19 23:49:59 +02:00
Ivan Savenko 0196707083 Fix UUID initialization on client 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
Laserlicht a3e27b859e extra option tab 2023-12-28 19:41:01 +01: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 d8b601e759 Fix crash on disconnecting 2023-12-22 14:03:05 +02:00
Ivan Savenko b88a8da4e8 Split off some netpack structures into separate files 2023-10-23 13:59:15 +03:00
nordsoft 4691907f9c Show root mods only 2023-09-21 22:28:29 +02:00
Ivan Savenko f8541d0ae4 Merge branch 'vcmi/master' into 'vcmi/develop' 2023-09-15 13:59:02 +03:00
Ivan Savenko 538665fe42 Fix "Start game" blocking status:
- Start game is now initially blocked
- Receiving valid startInfo from server will unlock button
2023-09-12 21:15:15 +03:00
nordsoft 6efccb2503 Fix removing loading screen 2023-08-24 15:01:43 +04:00
nordsoft dfaf778d16 Redesign loading solution 2023-08-22 20:10:20 +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 70d04ad957 Replace thread approach with callback based 2023-08-11 20:04:14 +04: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 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
Andrii Danylchenko 9f55666931 rework netpacks to avoid double typeinfo 2023-02-13 20:26:39 +02:00
nordsoft a2581fb942 Fix crash at start 2023-01-16 20:58:19 +04:00
nordsoft b91bb41a80 One step forward 2022-10-04 02:25:22 +04:00
nordsoft 512cf014aa Freeze current state 2022-10-03 20:47:00 +04:00
nordsoft 135be21f07 Fix another crash with disconnecting hero 2022-10-03 20:47:00 +04:00
nordsoft 628abd1428 Fix campaign serialization 2022-10-03 01:48:03 +04:00
nordsoft fea05a4320 Finally game restart works
# Conflicts:
#	lib/CGameState.cpp
#	server/CVCMIServer.cpp
2022-09-29 21:08:05 +04:00
nordsoft 0eb589fb58 Load map by itself 2022-09-29 00:09:18 +04:00
nordsoft 7ee4fca120 Pass whole gamestate over network 2022-09-28 23:15:05 +04:00
nordsoft e74890c4b1 Add system message about mods incompatibility 2022-09-23 15:02:45 +04:00
Michał Janiszewski aa28fc4794 Remove empty branch from LobbyClientConnected::applyOnLobbyScreen (#507)
It was empty ever since introduction in ac66fc7f42

[ci skip]
2018-10-30 04:59:02 +03:00
Alexander Shishkin 75f8c8b29a Gui cleanup4 (#446)
* use smart pointers for almost all widget fields
* use SDL2 texture for cursor
* a lot af small tweaks and formatting
* removed CompImage class, it is actually useless as long as regular SDLImage support margins
* CGuiHandler: use smart pointers for [push|pop]Int
2018-07-25 01:36:48 +03:00
Dydzio e4a9ce3efe Do not create main menu UI for game restart (#462) 2018-07-19 00:58:38 +03:00
Arseniy Shestakov 4af288aee4 Refactoring of main menu related code
We need to make sure it's not stay active during gameplay.
Proper fix would require actually removing menu interface from GH, but then GH needs refactoring too.
2018-04-07 18:44:21 +07:00
Arseniy Shestakov ac66fc7f42 Full rework of pre-game interface and networking
New features for players:
* Loading for multiplayer. Any save could be used for multiplayer.
* Restart for multiplayer. All clients will restart together.
* Loading from single save.
* Hotseat mixed with network game. Multiple players per client.
* Now connection to server could be cancelled.
* Return to menu on disconnections instead of crashes.
* Restoring of last selected map, save or campaign on next run.

TLDR on important changes in engine code:
* UI: work with server separated from UI
* UI: all explitic blitting replaced with IntObject's
* UI: all new code use smart pointers instead of DISPOSE
* Gameplay always start through lobby controlled by server.
* Threads receiving netpacks now shared for lobby and gameplay.
* Campaigns: heroes for crossover now serialized as JsonNode.
2018-04-04 14:24:26 +07:00