obligaron
c8b8996cdd
Fix MSVC warnings in controls\*
2023-12-17 15:42:33 +01:00
obligaron
dc4cd43e8f
Remove duplicate function definitions from control.h
2023-12-14 22:17:57 +01:00
obligaron
2da492d203
Change some functions to Player reference
2023-12-05 20:40:30 +01:00
ephphatha
3b458376bb
Use a pointer to a player instance instead of network id for cursor hovering
2023-11-09 17:40:50 +01:00
Gleb Mazovetskiy
fdb5738815
Add cursor support to DiabloUI and chat
...
Supports move left/right/home/end, backspace, delete, and Ctrl+V.
2023-10-24 01:56:54 +01:00
Gleb Mazovetskiy
848f234aed
Add automap type cycling controls
...
Makes cycling the automap type separate from toggling it on/off.
The TAB key can still be used for quick on/off as usual, while
the new Cycle key ("m" by default) can be used to switch between available
display types.
`Get/NextDebugMonster` debug keybind changed to "v" to avoid a conflict.
2023-09-20 04:50:52 +01:00
ephphatha
24a20ce8e2
Extract uses of MyPlayer to prevent future crashes in tests/game init
2023-09-20 05:49:54 +02:00
Gleb Mazovetskiy
af869ac732
Merge branch 'master' into dev-merged
2023-09-01 20:49:34 +01:00
ephphatha
bd8aab0aff
handle stash item swapping using the gamepad a bit better
2023-09-01 15:26:52 +02:00
ephphatha
c85fcbdfb1
fix cursor alignment following gamepad movement in stash
...
align the cursor to the middle of the cell/region when moving through the stash to match the way we simulate mouse movement for inventory cells
2023-09-01 15:26:52 +02:00
ephphatha
0d292b10c4
Move to the first inventory column from the left hand while holding wide items
2023-08-31 15:53:43 +02:00
ephphatha
070a11901f
Fix handling of gamepad cursor movement following item cursor change
2023-08-31 15:53:43 +02:00
Gleb Mazovetskiy
26f42520fa
Fix unused variable warnings
2023-08-16 06:02:17 +09:00
Gleb Mazovetskiy
d5446f2f01
Use std::variant in StringOrView
...
We also add a direct string move-assignment (`operator=(std::string &&)`),
which results in better codegen.
As a consequence, we have to replace `= {}` assignments with `= StringOrView {}`
because `= {}` is now ambiguous.
2023-08-14 10:55:02 +01:00
Gleb Mazovetskiy
8c1a847f41
Remove utils/stdcompat/string_view.hpp
2023-08-14 09:59:14 +01:00
Gleb Mazovetskiy
c19bfe87fa
Remove utils/stdcompat/algorithm.hpp
2023-08-14 01:54:29 +01:00
Gleb Mazovetskiy
14540164a7
Remove utils/stdcompat/optional.hpp
2023-08-14 01:54:29 +01:00
Gleb Mazovetskiy
62d067b653
Remove utils/stdcompat/abs.hpp
2023-08-14 01:54:29 +01:00
staphen
11e0ccd854
Invoke padmap release handler in menus
2023-07-09 22:06:38 +02:00
Gleb Mazovetskiy
72d42143a1
Demo: Disable KBCTRL while the demo is running
...
KBCTRL can interfere with the demo mode.
For example, Escape maps to Select on most KBCTRL platforms.
2023-06-16 18:49:14 +01:00
Anders Jenbo
01a7966f1d
Empty cursor when closing inventory
...
Fixes #4205
2023-06-03 20:25:50 +02:00
Gleb Mazovetskiy
5bf0b8bc96
Add more missing <cstdint> includes
...
https://github.com/diasurgical/devilutionX/pull/6095 only added includes
for `uint32_t`, this PR also adds the includes for the remaining
integral types.
2023-05-10 16:29:27 +01:00
qndel
731ad1ada5
use std::rotate ( #6019 )
2023-04-22 13:53:03 +02:00
staphen
8b6b898493
Defer d-pad inputs to movement handlers
2023-04-21 02:45:10 +02:00
staphen
b537f677f9
Improve d-pad handling for in-game menus
2023-04-17 00:55:01 +02:00
staphen
71ccd415c5
Update gamepad motion state regardless of the active event handler
2023-04-16 08:49:30 +02:00
staphen
bfc54c9bd3
Add arena potions to the virtual gamepad renderer
2023-04-14 10:26:46 +02:00
qndel
ce2ce86070
inspect players command
2023-04-14 02:40:17 +02:00
obligaron
b916c8e428
Introduce Open/Close/ToggleCharPanel
2023-04-14 02:40:17 +02:00
obligaron
c4388b0d41
Remove unused pnum from UseInvItem
2023-04-14 02:40:17 +02:00
obligaron
1522dc7031
Multiplayer: Add arena potions
2023-04-13 21:20:53 +02:00
staphen
d2bc7c10ba
Fix stand ground for gamepad controls
2023-04-02 18:31:16 +02:00
Gleb Mazovetskiy
c71eb0ff54
Add support for new SDL 2.24.0 gamepad types
...
Fixes #5878
2023-03-26 13:28:03 +01:00
ephphatha
94c646ef8f
Use rectangles for inventory/belt hit areas
2023-03-25 14:22:57 +01:00
obligaron
2296bf5625
Use StashStruct::EmptyCell instead for empty stash item check
2023-03-21 14:15:00 -04:00
Gleb Mazovetskiy
ebcd6b222d
Optimize SpellData size: 40 bytes -> 24
2023-02-10 10:51:06 +00:00
KPhoenix
a1fbf5253f
enum talk_id -> enum class TalkID
2023-02-09 13:04:01 +01:00
Gleb Mazovetskiy
b61dac853b
Add GetSpellData(SpellID)
2023-02-05 12:12:48 +00:00
KPhoenix
d813f13700
enum spell_id -> enum class SpellID
2023-02-05 10:24:58 +00:00
Gleb Mazovetskiy
1788d2f8ec
Remove miniwin
...
Event handling code moved to `engine/events.{hpp,cpp}`.
2023-02-01 16:06:57 +00:00
Eric Robinson
ef3a57b7d9
enum spell_type -> enum class SpellType (#5674 )
2023-01-28 22:25:37 +01:00
KPhoenix
8db521727d
enum missile_id -> enum class MissileID
...
Changes `enum missile_id` to `enum class MissileID`
2023-01-18 17:17:25 +00:00
Anders Jenbo
a29fc3a074
Correct casing for Player::isWalking()
2023-01-12 09:42:49 +01:00
staphen
b66b6c611b
Produce multiple controller button events for SDL_JOYHATMOTION events
2022-12-05 05:05:07 +01:00
staphen
f17ea8db98
Implement settings menu for gamepad customization
2022-11-27 18:27:21 +01:00
Gleb Mazovetskiy
46e755f680
Simplify spell icon handling
...
Hide the internals of spell icon rendering behind simple functions.
2022-11-22 02:37:19 +01:00
Gleb Mazovetskiy
74ca2ab0db
Use no-background spell icons with UNPACKED_MPQS
...
Spell icons size: 200 KiB -> 81 KiB
Fixes #5470
2022-11-22 00:14:18 +00:00
Gleb Mazovetskiy
a2a8b1c706
Padmapper: Simplify buttonTo* data structures
...
Use an `std::array` instead of `std::unordered_map`.
2022-11-07 04:56:50 +00:00
staphen
f60f704ecc
Reverse A and B in pad button to key translation functions
2022-11-04 11:27:14 +00:00
staphen
e1167350a2
Clean up handling for gamepad IGNORE/NONE buttons
2022-11-02 07:41:30 +00:00