obligaron
dc3d797269
GetOffsetForWalking: use uint8_t for animation fraction
3 years ago
obligaron
d0978672e9
Make Poisoned Water Supply quest multiplayer compatible
3 years ago
obligaron
5a45ee4eba
Update diablo pentagram when quest state changes
3 years ago
obligaron
9a1bf42519
Always set lazarus portal position
3 years ago
obligaron
1999280c7a
Fix assert in delta_sync_monster
3 years ago
obligaron
0c13f88694
Ensure questmap changes are synced between clients
3 years ago
obligaron
7980a5a890
Make debug god mode damage multiplayer compatible
3 years ago
obligaron
5fe20e3d32
Make Lazarus quest map multiplayer compatible
3 years ago
obligaron
5f63060c28
Add FindUniqueMonster
3 years ago
obligaron
57a3ede76a
Introduce UseMultiplayerQuests
3 years ago
obligaron
17712562c8
Sync Quest._qvar2
3 years ago
obligaron
0de0894ad5
Enable sync of all quests
3 years ago
Gleb Mazovetskiy
a2a8b1c706
Padmapper: Simplify `buttonTo*` data structures
...
Use an `std::array` instead of `std::unordered_map`.
3 years ago
obligaron
eca1a68bec
AnimationInfo: Use fixed point math for fractions
3 years ago
staphen
f60f704ecc
Reverse A and B in pad button to key translation functions
3 years ago
Gleb Mazovetskiy
e7c0d2943f
KeyMapper: Use forward_list instead of vector
...
Similar to how we do this for Padmapper.
3 years ago
Gleb Mazovetskiy
6dca019de2
Use `function_ref` instead of `function`
...
`function_ref` is a lightweight function pointer,
whereas `std::function` always involves a heap allocation.
3 years ago
Gleb Mazovetskiy
1da4be3839
Fix chat
...
Accidentally broken by #5453
3 years ago
KPhoenix
8c3ced3cb6
Display correct Armor Class in Char Panel ( #5443 )
...
In the hit calculation for a monster hitting a player, the player level is used, which equates to the player always having a 2 * clvl increase to what is displayed in the character panel. This adds it in.
3 years ago
staphen
e1167350a2
Clean up handling for gamepad IGNORE/NONE buttons
3 years ago
Gleb Mazovetskiy
37ec8d030f
Fix loading screen glitches
3 years ago
Gleb Mazovetskiy
680ab5ec40
Overhaul backbuffer state handling
...
When rendering directly to the output buffer, we need to maintain the
state of what has been drawn and what needs redrawing per-buffer.
We previously tried to do it implicitly by checking `SDL_DOUBLEBUF` and
other flags. The previous implementation was broken in several
ways, resulting in rendering issues on devices that support 8-bit output
directly.
Changes this mechanism to explicitly maintain buffer state per output
buffer. The new mechanism doesn't require knowledge of the number of
buffers, and thus also works correctly with triple-buffering.
Fixes #5447
3 years ago
KPhoenix
069ba7f1d4
[QOL] Colored slot backs ( #5266 )
3 years ago
staphen
6a565d3755
Further improve simulated mouse interaction
3 years ago
staphen
198dec9412
Iron out interactions between simulated mouse movement and character movement
3 years ago
staphen
d7908d82f4
Always remove release actions from padmapper regardless of whether the action can be invoked
3 years ago
staphen
4579324726
Ensure that padmapper actions are in the correct order after initialization
3 years ago
staphen
33d4cc2544
Properly handle d-pad events for mouse simulation
3 years ago
staphen
28a9f0e8b5
Forward SDL_JOYHATMOTION events in FetchMessage_Real()
3 years ago
Gleb Mazovetskiy
17bcca539f
Fix InfoString-related stack-use-after-free
3 years ago
Gleb Mazovetskiy
0498d7d3a7
Fix compilation warnings
3 years ago
Gleb Mazovetskiy
88289bb02e
Fix HAS_KBCTRL build
3 years ago
staphen
c83f7d3958
Avoid copy construction of PadmapperOptions::Action
3 years ago
staphen
21bd760bfa
Bypass CMD_PUTITEM when triggering CMD_OPENHIVE or CMD_OPENGRAVE
3 years ago
obligaron
b3be4ab65e
TimeoutCursor: Only restore previous cursor when cursor is not already changed
3 years ago
obligaron
a0bba9b152
Only color cycle animations if game logic is processed
3 years ago
obligaron
5eaee56030
Avoid dramatically speed up in solo multiplayer
3 years ago
staphen
702fedbc54
Remove ConsumeSpell() from AddMissile() functions
3 years ago
obligaron
d59a7e2794
Combine SyncDropItem and SyncPutItem
3 years ago
obligaron
ba65d5fbff
SyncPutItem: Always use passed coordinates for item position
3 years ago
staphen
b8ceade79e
Forward touch events from FetchMessage_Real()
3 years ago
obligaron
d0c1aba463
Don't process get request item commands after start changing level
3 years ago
staphen
3049421008
Include runes in CanUseScroll() validation
3 years ago
staphen
0f74370a99
Move gamepad logic from FetchMessage() to GameEventHandler()
3 years ago
Gleb Mazovetskiy
179ae009df
Improve logic and fix for old compilers
3 years ago
staphen
e67e4934cc
Add padmapper for gamepad customization
3 years ago
Gleb Mazovetskiy
0f6a4be8ab
trigs.cpp: Fix build error
3 years ago
Gleb Mazovetskiy
b5f788cb33
trigs.cpp: Optimize & clean up the data structures
...
1. Use appropriate types.
2. Do not use an end marker for static arrays (their length is known).
3 years ago
Gleb Mazovetskiy
6d7d95c5da
drlg_l2: Use WorldTilePosition for Room/HallNode
3 years ago
Gleb Mazovetskiy
759ca7f055
`WorldTileRectangle/Size`
...
Adds a custom sized type for the world tile rectagle.
This allows us to better express intent.
It also allows us to make certain globals smaller, e.g. `THEME_LOC`.
3 years ago