Commit Graph
358 Commits
Author SHA1 Message Date
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
staphen 6a565d3755 Further improve simulated mouse interaction 2022-10-31 10:29:37 +01:00
staphen 198dec9412 Iron out interactions between simulated mouse movement and character movement 2022-10-31 10:29:37 +01:00
staphen d7908d82f4 Always remove release actions from padmapper regardless of whether the action can be invoked 2022-10-31 10:29:37 +01:00
staphen 33d4cc2544 Properly handle d-pad events for mouse simulation 2022-10-31 10:29:37 +01:00
Gleb Mazovetskiy 0498d7d3a7 Fix compilation warnings 2022-10-29 13:41:23 +01:00
Gleb Mazovetskiy 88289bb02e Fix HAS_KBCTRL build 2022-10-29 11:37:08 +02:00
staphen 21bd760bfa Bypass CMD_PUTITEM when triggering CMD_OPENHIVE or CMD_OPENGRAVE 2022-10-25 07:14:03 +02:00
obligaron ba65d5fbff SyncPutItem: Always use passed coordinates for item position 2022-10-23 10:09:54 +02:00
staphen 0f74370a99 Move gamepad logic from FetchMessage() to GameEventHandler() 2022-10-17 01:01:21 +02:00
Gleb Mazovetskiy 179ae009df Improve logic and fix for old compilers 2022-10-17 01:01:21 +02:00
staphen e67e4934cc Add padmapper for gamepad customization 2022-10-17 01:01:21 +02:00
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`.
2022-10-16 03:53:26 +01:00
Gleb Mazovetskiy 57e267e990 button.png: Arrange sprites horizontally
87x2262 -> 1131x174

This makes the file smaller and also makes the texture fit
on devices with 2048x2048 max texture size (Fixes #5403).

`button.png` updated with:

    convert -crop 87x174 button.png +append out.png
    optipng -o9 out.png
    mv out.png button.png
2022-10-15 14:20:05 +01:00
Gleb Mazovetskiy f7335e9df7 Xbox nxdk: Set gamepad type
Set the gamepad type to Xbox for the original Xbox.
2022-10-12 02:45:38 +01:00
Gleb Mazovetskiy 12c7dab3f3 Define gamepad type for SDL1 handhelds 2022-10-11 02:04:58 +01:00
Gleb Mazovetskiy 6150973c1b Clean up gamepad icons code
1. Correctly defined button strings.
2. Clean up the printing code.
3. Use translatable strings for the generic gamepad type.
2022-10-11 02:04:58 +01:00
Nicholas Calaway eb45857422 Gamepad icons (#5357) 2022-10-10 18:30:58 +02:00
staphen 8b6db3a678 Get rid of panelstr, pnumlines, and ClearPanel() 2022-10-02 08:51:24 +02:00
staphen c90d884597 Fix skipping intro using gamepad 2022-09-08 06:11:19 +02:00
Anders Jenbo 872456ae5d Use size_t for a select few pnum variables 2022-08-26 13:22:04 +09:00
Gleb Mazovetskiy 188dc79f6e Make Players a vector 2022-08-26 13:22:04 +09:00
Nicholas Calaway cf33230293 #3380 Use appropriate terms for mouse/gamepad/touch #5234 (#5235) 2022-08-17 00:36:58 +02:00