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

42 Commits

Author SHA1 Message Date
Ivan Savenko
52e0899d6f
Merge pull request #4780 from Laserlicht/text_pos_fix
fix: campaign video scrolling for short texts
2024-10-15 18:01:52 +03:00
Laserlicht
d65938fa17 fix campaign video scrolling for short texts 2024-10-14 23:26:24 +02:00
Laserlicht
cb6fa74cc4 lower background music while campaign audio plays 2024-10-14 21:02:49 +02:00
Ivan Savenko
9fba3d97f1 Renamed & unified OBJECT_CONSTRUCTION macro set 2024-08-09 15:30:04 +00:00
Ivan Savenko
df83fa33a1 Merge branch 'vcmi/master' into 'vcmi/develop' 2024-05-31 09:34:21 +00:00
Ivan Savenko
3ed7c1d066 Implement playback of two-part campaign videos 2024-05-30 18:02:19 +00:00
Laserlicht
fc50482b43 background for multiple windows 2024-05-18 19:58:51 +02:00
Ivan Savenko
540bd16e7b Fixed video widget playback 2024-05-16 16:50:36 +00:00
Ivan Savenko
d08c7b7b8f Added VideoWidget to hide implementation details 2024-05-15 17:05:16 +00: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
d3d15cd6b9 Loop audio stream from video file on campaing prolog/epilog window 2024-05-02 16:45:46 +03:00
Ivan Savenko
9188280d02 Fix access to CPrologEpilogVideo after destruction from sound callback 2024-04-11 13:25:54 +03: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
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
Laserlicht
63ee20de6c
video campaign fix 2024-01-01 15:25:42 +01:00
Laserlicht
89a39fcfc0
code review 2023-10-08 20:27:56 +02:00
Laserlicht
be2b3afe48 implements sounds 2023-10-08 12:49:59 +02:00
nordsoft
6da605ff83 Campaign meta strings 2023-09-28 00:10:28 +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
8dfdfffd87 Use ResourcePath for audio files 2023-09-04 18:22:34 +03:00
Ivan Savenko
ca889a5c2a Replaced clickLeft with clickPressed clickReleased methods 2023-07-08 14:33:04 +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
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
nordsoft
91b4782a2f Refactor more fields from campaign header 2023-04-17 04:47:54 +04:00
Ivan Savenko
3fef2a5e1f Moved Colors to a separate file, updated includes 2023-02-03 11:39:40 +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
0cae259f53 Most of rendering in BattleInt is done via canvas
- refactoring of CBattleStacksController.cpp
- moved EAlignment enum to Geometries.h from CIntObject
- renamed EAlignment to ETextAlignment, to avoid conflict with good/evil
alignemt
- ETextAlignment is now enum class
2022-11-26 23:12:20 +02:00
Ivan Savenko
38b8fc0af8 Formatting: space -> tabs 2022-11-13 14:24:15 +02:00
Ivan Savenko
4af9bc2461 Music: remember playback position of music tracks
Town & terrain themes will now resume from previously stopped position
instead of playing from start, as it was in original game.
Fixes #965
2022-11-13 14:05:51 +02: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
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