Gleb Mazovetskiy
9feb3139e2
Add XDG_DATA_DIRS to MPQ search paths
...
Fixes #5304
2022-08-29 15:12:27 +01:00
staphen
a3e94d6b55
[Switch] Bundle assets directly in romfs
2022-08-21 06:41:35 +02:00
Anders Jenbo
df45bd28d7
Do not try to load devilutionx.mpq on 3DS
2022-08-21 06:41:35 +02:00
staphen
5a2b167728
[3DS] Bundle assets directly in romfs
2022-08-21 05:41:04 +02:00
Gleb Mazovetskiy
2d0d7ccc88
Reinitialize hardware cursor on window size change
2022-08-08 12:05:59 +01:00
Gleb Mazovetskiy
ba34bafb3f
Use SDL events directly
...
Removes redundant miniwin events and queue, using SDL events directly instead.
Demo migrated using this script: https://gist.github.com/glebm/8a73b04f695de96f344cc2e35151e03e
2022-08-03 03:50:19 +02:00
obligaron
ebfb519ee0
Rename gbQuietMode to HeadlessMode
2022-07-13 18:54:36 +02:00
obligaron
bab9baa42a
Handle gbQuietMode for paths in StartGame
2022-07-13 18:54:36 +02:00
Anders Jenbo
3ae834148a
Split event handeling from general miniwin features
2022-07-10 21:13:39 +02:00
Anders Jenbo
a7be622aa3
Clean up naming of event handler
2022-07-10 21:13:39 +02:00
Anders Jenbo
2d21fc372e
Remove more miniwin code
2022-07-10 21:13:39 +02:00
Anders Jenbo
c7f19336c9
[xbox] Initialize the video system and specify search path
2022-07-09 18:50:53 +01:00
Gleb Mazovetskiy
4063afb792
Xbox NXDK platform
2022-07-09 18:50:53 +01:00
Gleb Mazovetskiy
72660d9189
Migrate snprintf to fmt ( #4845 )
...
* Migrate `app_fatal` from printf to libfmt
* Migrate snprintf to fmt
2022-07-02 02:36:17 +02:00
Anders Jenbo
99181fd709
Move more files to the engine folder
2022-06-24 11:08:15 +02:00
obligaron
7afe7d2a70
Save Methods in loadsave gets MpqWriter passed
2022-06-16 09:43:34 +02:00
Gleb Mazovetskiy
779ccaca17
Overhaul translation fetching
...
1. Do not modify the map after loading. Instead, return string views
(guaranteed to be null-terminated) from look up functions and return
the key directly if not found.
2. Use an `unorded_map` instead of `map` where available (C++20).
Saves a bit of RAM (~50 KiB) and improves lookup performance.
2022-06-14 12:46:36 +01:00
Dmitry Marakasov
446ec5f95d
check for either linux or BSDs as defined(__unix__)
2022-05-18 17:39:07 +02:00
obligaron
c6c929a90c
Remove MpqDir and use PrefPath instead.
2022-04-10 17:06:45 +02:00
staphen
56af849632
Use romfs on Switch for devilutionx.mpq
2022-04-09 03:23:42 +02:00
Anders Jenbo
1409e604f5
Reduce string conversions
2022-03-20 11:04:15 +01:00
Anders Jenbo
a48f89007d
Implement stash
2022-03-18 06:01:53 +01:00
Felipe Wannmacher
8efbcf2058
Xbox One/Series support ( #3946 )
2022-01-17 12:37:29 +01:00
Andrew James
d3aedf5df1
Split loading of MPQs to handle translations and voice packs ( #3922 )
2022-01-08 09:15:39 +01:00
Gleb Mazovetskiy
0f924528ba
macOS/iOS: Add resources to the bundle
2021-12-05 20:33:24 +01:00
obligaron
945ee04f62
Add OptionEntry Language
2021-11-28 19:08:10 +01:00
obligaron
b3740012b0
Add init_language_archives() to reinitalize lang_mpq
2021-11-28 19:08:10 +01:00
Gleb Mazovetskiy and Anders Jenbo
7e1fea6f76
clang-format all files in {Source,test}/
...
Also includes a few manual tweaks to comments and newlines for better results.
Co-authored-by: Anders Jenbo <[email protected] >
2021-11-24 23:44:12 +01:00
Anders Jenbo
799f1763af
Performce UTF8 aware limited string copies
2021-11-22 03:28:51 +01:00
Gleb Mazovetskiy
fa90679416
game_assets.* -> assets.*
2021-11-17 11:49:57 +01:00
Gleb Mazovetskiy
720d210d95
utils/mpq* -> mpq/*
2021-11-17 11:49:57 +01:00
Gleb Mazovetskiy
3d308983a8
Migrate to libmpq
...
libmpq is a much simpler alternative to StormLib for reading MPQ archives.
We use our own fork of libmpq: https://github.com/diasurgical/libmpq
Impact:
* DevilutionX is now a lot more portable. Unlike StormLib, libmpq only
needs platform-specific code for Windows.
* Locks around file access **removed** (instead we duplicate the file descriptor for streamed audio only).
* RAM usage is **300 KiB** lower than StormLib.
* Stripped release linux_x86_64 binary is **32 KiB** smaller.
* Amiga build now hangs instead of crashing.
2021-11-06 23:51:42 +00:00
Anders Jenbo
fa4321adcc
Do not probe for devilutionx.mpq on Android
...
Android loads the assets from the APK instead
2021-10-26 01:18:41 +02:00
Anders Jenbo
ac18696af6
Fix loading translation packs
2021-10-26 00:46:06 +02:00
Gleb Mazovetskiy
7e230df94a
Allow forcing Hellfire with command-line flags
...
This is useful for systems such as batocera.linux that have dynamic
launcher items that depend on the presence of the appropriate MPQ files.
2021-10-25 13:52:14 +01:00
Gleb Mazovetskiy
a97ffd1640
Load MPQ file overrides without StormLib
...
Also logs the overrides in verbose mode.
2021-10-24 16:21:39 +01:00
Gleb Mazovetskiy
5d53910127
Verbose log base/pref/config/assets paths
2021-10-24 16:21:39 +01:00
Gleb Mazovetskiy
7d91bc461a
Improve asset file opening
...
Avoid wrapping asset files via StormLib, open them directly via SDL
instead.
2021-10-24 16:21:39 +01:00
obligaron
a0b14e43fe
Ensure SFileSetAssetsPath is called before InsertCDDlg is called
2021-10-21 18:39:20 +02:00
Anders Jenbo
e69853487d
Correct name of font mpq
2021-10-21 13:14:25 +02:00
Anders Jenbo
508cfabcdb
Load langauge specific mpq files
2021-10-21 03:56:21 +02:00
Anders Jenbo
8df5912dc6
Always use SDL wrapper for file access
2021-10-20 21:52:59 +02:00
obligaron
8dd5fcfc8f
Search app assets folder in SFileOpenFile
2021-10-10 00:51:45 +02:00
staphen
e5d32da8a2
Load font file from devilutionx.mpq
2021-09-30 09:48:15 +02:00
Cong
6091c3f3c2
Add GOG installation paths to game data search paths ( fixes #2709 ) ( #2748 )
2021-08-30 12:00:21 +00:00
Vladimir Olteanu
f1490b7826
Fix mem leak in storm.cpp
2021-08-17 17:49:08 +02:00
ephphatha
aec1491c98
Close devilutionx_mpq instead of trying to close patch_rt_mpq twice
2021-08-08 16:19:31 +02:00
Anders Jenbo
9818ad4891
[Android] Locate external App data path and migrate data files
2021-07-26 02:50:30 +02:00
Anders Jenbo
4eabc6024b
Apply various cleanups via Android Studio
2021-07-03 18:27:17 -07:00
Anders Jenbo
a7c7fa0030
Fully apply clang-tidy/format to all files
2021-07-03 16:41:43 -07:00