staphen
3e5e5b2696
Synchronize SFileCloseFile() access
2021-05-08 04:01:07 +02:00
Gleb Mazovetskiy
987ab2533b
🐞 Synchronize SFileReadFile access
...
StormLib read function is not thread-safe: https://github.com/ladislav-zezula/StormLib/issues/175
2021-05-03 02:35:22 +02:00
Gleb Mazovetskiy
f33f7ae7eb
💨 Do not zero-initalize arrays we write to
...
`std::make_unique<T[]>(size)` always zero-initalizes the array.
C++20 has `std::make_unique_for_overwrite` to avoid that, while
older C++ versions can use the approach applied here.
2021-05-02 05:52:11 +02:00
Gleb Mazovetskiy
47c93c2f9c
🧹 Fix more -Wformat warnings
2021-05-01 22:19:27 +02:00
Vladimir Olteanu
a2cb1e5c59
Cleanup pfile_encode_hero
2021-04-30 13:31:48 +02:00
Vladimir Olteanu
c319344c50
Load/save cleanup ( #1766 )
2021-04-30 08:44:11 +02:00
Vladimir Olteanu
bea21a5e20
Replace LOAD_LE32 & LOAD_BE32 with signedness- and endian-agnostic equivalents
2021-04-28 20:11:51 +02:00
Gleb Mazovetskiy
83292c8e67
♻️ Fix -Wunused-variable in pfile.cpp
2021-04-26 05:16:59 +02:00
Jmgr
d4f62870b8
Remove globals from paths.h
...
Fix for Vita
Update to use free functions
Use std::optional to allow setting empty paths
Change header inclusion order
Co-authored-by: Gleb Mazovetskiy <glex.spb@gmail.com>
Use std::optional to allow setting empty paths
Apply clang-format
Temporary commit
2021-04-25 22:26:37 +02:00
Anders Jenbo
b69d18f12d
🌐 Enable translation of all remaning strings
2021-04-25 21:32:41 +02:00
Anders Jenbo
7912e510f0
🎨 Clean up overuse of SDL types
2021-04-24 17:07:07 +02:00
Anders Jenbo
8fa0612433
🐛 Fix loading chosen hero
2021-04-23 04:53:46 +02:00
Anders Jenbo
a32ac83090
🎨 cleanup trivial trype comparisons
2021-04-23 02:48:25 +02:00
Anders Jenbo
cc164985a3
🎨 Correct type checks in src sub-folder
2021-04-22 20:33:24 +02:00
Anders Jenbo
f004c78824
🧹 performance-unnecessary-value-param
2021-04-22 00:08:19 +02:00
qndel
7563234ca9
fix saves ( #1621 )
2021-04-19 23:31:04 +02:00
Anders Jenbo
bb4e1960e7
🎨 modernize-use-nullptr
2021-04-19 16:02:05 +02:00
Anders Jenbo
c89bd9c001
🚨 Fix remaning warnings for clang and gcc
2021-04-19 02:44:39 +02:00
Gleb Mazovetskiy
95946e3a7c
🧹 Cleanup unused variables ( #1584 )
...
Fixes `unused-variable` and `unused-but-set-variable` compiler warnings.
2021-04-18 18:15:47 +02:00
Gleb Mazovetskiy
2c924e1ab1
🐞 pfile: Fix stale tables after leaving a game
...
In multiplayer, the hash and block tables are kept around between the
saves (presumably to improve performance).
When leaving the game, they should be cleared.
Clearing of the tables is handled by `Archive::Close` in `mpqapi.cpp`.
After 135f5e03c7 ,
which moved the archive closing inside `pfile_write_hero`, the tables
were no longer cleared on `pfile_flush_W` (because the archive was
already closed when it was called).
To fix the issue, this commit adds a `clear_tables` argument
to `pfile_write_hero` and removes the `pfile_flush_W` method.
Bug reported and root cause found by @Eider-McDuck:
> Example to reproduce: Have 2 vanilla savegames, join a game with the first,
> then leave, then join a game with the second, then drop an item on the floor.
2021-04-16 15:50:13 +02:00
Anders Jenbo
8c821e98d3
🚚 Restructure files
2021-04-16 03:57:22 +02:00
Anders Jenbo
997c1dba55
🚚 Split up all.h in to proper header relations
2021-04-16 01:04:54 +02:00
Anders Jenbo
6e1a106a38
🚚 Move header we implement into the project
2021-04-16 01:04:54 +02:00
Gleb Mazovetskiy
135f5e03c7
Only write to the file once when saving
2021-04-12 10:44:36 +02:00
Anders Jenbo
a1dabf3aba
🐛 Fix Hellfire save games corrupting game state in Windows
2021-04-11 15:42:45 +02:00
Anders Jenbo
20186e0370
🎨 Replace TRUE/FALSE with true/false
...
fix
Fix
fix
2021-04-09 15:13:02 +02:00
Anders Jenbo
93d42b62b8
♻️ Change BOOL to bool
2021-04-09 15:13:02 +02:00
Gleb Mazovetskiy
642472cce8
pfile: extract pfile_get_password()
2021-04-08 21:51:55 +02:00
Anders Jenbo
ebc27082e7
🔥 remove unused parts of init_test_access
2021-04-08 19:20:55 +02:00
Anders Jenbo
bfb3c11c2b
🎨 Change namespace to devilution
2021-04-06 15:21:25 +02:00
Anders Jenbo
630e507f63
🚚 Apply namespace
2021-04-06 15:21:25 +02:00
Anders Jenbo
6f1498d315
🚚 Move structures to there respective headers
2021-04-06 12:41:00 +02:00
Anders Jenbo
bc3dc545da
🔥 Remove unused parts of game creation logic
2021-04-06 12:41:00 +02:00
Anders Jenbo
bba73ea20f
✨ Handle mixed item origins in multiplayer
2021-04-01 14:52:44 +02:00
Anders Jenbo
a2656637e4
🎨 Format source
2021-03-31 00:52:47 +02:00
Anders Jenbo
8196bdbd31
✨ Set the initial ready spell when creating a new hero
2021-03-29 02:19:01 +02:00
Anders Jenbo
1284333765
♻️ Use explicit types and remove globals from save file logic
2021-03-09 22:27:11 +01:00
Xadhoom
12c7b715cd
Add test for vanilla pfile_write_hero()
2021-03-08 18:32:25 +01:00
qndel
12dddc4e8f
✨ Preserve active spell and hotkeys across games
2021-03-07 17:30:03 +01:00
Anders Jenbo
c71efb5960
✅ Better assertions on item generation tests
...
[Diablo/Hellfire] Also clear PkItemStruct when calling PackItem() to
avoid garbage data ending up in the saves.
2021-03-03 09:30:09 +01:00
Anders Jenbo
8cebb84475
Remove unused function
2021-02-27 15:01:07 +01:00
Anders Jenbo
3593266ef7
Converte all Levels when cross loading saves
2021-02-27 14:51:37 +01:00
Anders Jenbo
4d47d513ce
Implement Hellfire multiplayer saves
2021-02-25 05:50:24 +01:00
pionere
97d53ced7e
get rid of a few warnings (strncpy)
2021-02-19 22:04:11 +01:00
qndel
ab9911064f
unify checks for single and multiplayer
2021-02-18 22:32:01 +01:00
Anders Jenbo
4ffbb32952
[hellfire] Allow continuing Diablo saves in Hellfire and vice versa
2021-01-13 16:10:21 +01:00
Anders Jenbo
0c96e32f19
Unify all defines, enums and structs
2021-01-08 20:53:06 +01:00
Anders Jenbo
6f8f4c3293
Unify another chunk of simple Hellfire code paths
2021-01-07 07:19:07 +01:00
Anders Jenbo
e609e170d0
Merge a large chunk of Hellfire the code paths
2021-01-06 08:07:20 +01:00
Anders Jenbo
a2a3729491
Enable loading hellfire games form main menu
2021-01-02 07:40:05 +01:00