obligaron
f65152c556
Introduce GetItemBLevel
3 years ago
obligaron
f154bad1bd
IsPrefixValidForItemType/IsSuffixValidForItemType doesn't rely on gbIsHellfire
3 years ago
obligaron
0d7711ee63
Introduce GetItemPowerPrefixAndSuffix
3 years ago
obligaron
085f98c9a1
Introduce GetStaffPrefixId
3 years ago
Gleb Mazovetskiy
ac0627f029
Add a debug function that describes a CLX
...
Example output (also demonstrates a bug in our encoder):
CLX sprite: 16x20 pixelDataSize=97b
command | width | bytes | color(s)
--------|------:|------:|---------
Transp. | 80 | 1 |
Pixels | 2 | 3 | 203 199
Fill | 3 | 2 | 202
Pixels | 2 | 3 | 199 201
Fill | 1 | 2 | 205
Transp. | 8 | 1 |
Pixels | 3 | 4 | 205 199 196
Fill | 4 | 2 | 197
Fill | 1 | 2 | 202
Transp. | 9 | 1 |
Pixels | 6 | 7 | 206 199 197 203 206 202
Fill | 1 | 2 | 204
Transp. | 10 | 1 |
Pixels | 4 | 5 | 206 199 197 205
Fill | 1 | 2 | 207
Transp. | 12 | 1 |
Pixels | 3 | 4 | 206 197 197
Fill | 1 | 2 | 205
Transp. | 9 | 1 |
Pixels | 7 | 8 | 207 205 203 206 206 197 197
Fill | 1 | 2 | 206
Transp. | 8 | 1 |
Pixels | 3 | 4 | 204 197 199
Fill | 1 | 2 | 205
Transp. | 1 | 1 |
Pixels | 2 | 3 | 202 197
Fill | 1 | 2 | 204
Transp. | 8 | 1 |
Pixels | 7 | 8 | 206 197 199 207 206 199 196
Fill | 1 | 2 | 205
Transp. | 9 | 1 |
Pixels | 1 | 2 | 203
Fill | 4 | 2 | 197
Fill | 1 | 2 | 202
Transp. | 10 | 1 |
Pixels | 5 | 6 | 207 205 199 199 203
Fill | 1 | 2 | 207
Transp. | 89 | 1 |
3 years ago
Gleb Mazovetskiy
6d1064b57a
Re-encode all the bundled CLX assets
...
Following the CLX encoding fix in https://github.com/diasurgical/devilutionx-graphics-tools/pull/3
3 years ago
Gleb Mazovetskiy
5625a7007c
Add a script to convert from devilutionx-assets
3 years ago
Gleb Mazovetskiy
f616214020
Fix suboptimal CLX encoding
...
See https://github.com/diasurgical/devilutionx-graphics-tools/pull/3 for
details
3 years ago
obligaron
0e663a8d64
Multiplayer: Sync circles in Lazarus' Lair
3 years ago
staphen
db21a9b316
Use PROJECT_SOURCE_DIR in asio_defs.cmake
3 years ago
staphen
151564f46d
Remove optimization that skips quest sync at game start
3 years ago
obligaron
1a150ed193
Multiplayer: Ensure monster hitpoints are calculated reproducable in quest/set-maps ( #5958 )
...
* Always use the same seed for generating set/quest maps
* Use setlvltype for loading quest/set-map (instead of leveltype)
* Ensure dungeon flags are reset when loading a quest/set-map
3 years ago
obligaron
cb5e2b252c
Multiplayer: Enable Slain Hero
3 years ago
staphen
57cc5ee73e
Fix OOB when triggering a Nova chest
3 years ago
Anders Jenbo
82d233baf9
Add widescreen version of level 16 loadscreen
3 years ago
staphen
d2bc7c10ba
Fix stand ground for gamepad controls
3 years ago
Gleb Mazovetskiy
dd3103497a
aarch64-linux-gnu cross-compilation
...
Allows one to easily cross-compile for aarch64 on a Debian/Ubuntu host.
Also adds a GitHub Action for it.
3 years ago
Trihedraf
13e38c2c30
Update Linux Packaging Script
3 years ago
obligaron
04b66114f2
Multiplayer: When updating remote player tile ensures that it's free
3 years ago
Anders Jenbo
5a1f0f4280
Add widscreen load background for Hell
3 years ago
Gleb Mazovetskiy
c71eb0ff54
Add support for new SDL 2.24.0 gamepad types
...
Fixes #5878
3 years ago
Gleb Mazovetskiy
8408743eed
Draw item labels before the monster health bar
...
Fixes #5867
3 years ago
ephphatha
94c646ef8f
Use rectangles for inventory/belt hit areas
3 years ago
staphen
40f95006ff
Add cutttw.clx to Assets.cmake
3 years ago
Anders Jenbo
839690a74f
Add cutttw widescreen load screen ( #5923 )
3 years ago
Gleb Mazovetskiy
3f0d089928
Blitter: Minor optimization
...
`src < end - 3` is one more instruction than `src + 3 < end`.
Godbolt: https://godbolt.org/z/PPfhYYWG8
RG-99 binary becomes 224 bytes smaller.
3 years ago
Anders Jenbo
45023b5680
Add files via upload
3 years ago
Gleb Mazovetskiy
e81f8affba
Fix rendering issues introduced by #5913
...
Fixes #5914
3 years ago
Gleb Mazovetskiy
774993c6d0
dun_renderer: Avoid calling 0-width `Blit*`
...
A slight optimization to avoid calling blit functions entirely
when the width is zero.
3 years ago
Anders Jenbo
4bd0148f49
Add cave widescreen
3 years ago
obligaron
2296bf5625
Use StashStruct::EmptyCell instead for empty stash item check
3 years ago
Gleb Mazovetskiy
c5e6bf630f
demomode.cpp: Set `mouse.*.which` to 0
...
Otherwise it can end up as `-1`, triggering the `VirtualGamepad` input
type (-1 is `SDL_TOUCH_MOUSEID`).
3 years ago
staphen
132d911a41
Fix year in screenshot file names
3 years ago
Gleb Mazovetskiy
397529bf0f
Rendering: Unify and optimize pixel blitters
...
1. Unifies the underlying CLX and dun_render blitters.
2. Optimizes them by unrolling loops and using pointer comparison rather
than length comparison (saves a length decrement).
3. In `dun_render`, extracts `RenderLineTransparent/Opaque` branches into
functions via explicit template specialization.
Example RG-99 FPS (non-PGO'd): 17.4->18.4
3 years ago
Gleb Mazovetskiy
d57e59d9ee
Fix OpenDingux/build.sh buildroot prep
...
1. Creates the missing `shared-dl` directory.
2. Unsets some environment variables that interfere with buildroot.
3. Disables `BR2_PER_PACKAGE_DIRECTORIES`, which prevented us
from using the partial sysroot build.
Also documents the `TOOLCHAIN=...` option in docs/building.md.
3 years ago
obligaron
4826e5819e
Multiplayer: Fix desync when teleporting
3 years ago
hiperiondev
25f302f0fd
Minimal correction for-> items.cpp: fix inconsistent localization for miscellanous items #5890
3 years ago
Anders Jenbo
92244af90d
Re generate load screen graphics
3 years ago
Łukasz
2ec0603896
use `Point`s instead of `x, y`s in GetRndObjLoc (objects.cpp) and portal-related functions (portal.cpp) ( #5897 )
...
Nice cleanup, thanks.
3 years ago
Gleb Mazovetskiy
4d4c296bce
GitHub CI: Fix cache strategy
...
GitHub caches are immutable, so #5883 was wrong (caches were never
updated).
Goes back to the previous caching strategy but with a cleanup workflow
to delete caches for merged/closed PRs.
The cleanup code comes from the example in GitHub docs:
https://docs.github.com/en/actions/using-workflows/caching-dependencies-to-speed-up-workflows#force-deleting-cache-entries
3 years ago
Gleb Mazovetskiy
6bbe9e5ce8
CMake: Cleanup no-mpq config
...
Introduce a `SUPPORTS_MPQ` variable and use it throughout.
Also disables fetching bzip2 when MPQ support is disabled.
3 years ago
Łukasz Łapiński
243c3ffcd4
items.cpp: fix inconsistent localization for miscellanous items ( #5890 )
...
* Update line 'Right-click to read, then left-click to target'
* Update line 'Select from spell book, then\n cast spell to read' across languages
3 years ago
Anders Jenbo
20eb12570f
Add catacombs widescreen ( #5889 )
3 years ago
Łukasz Łapiński
39567cd316
Fix odd PL translation structure ( #5886 )
3 years ago
Anders Jenbo
28ea755e32
Add churche widescreen
3 years ago
DakkJaniels
d6af35fe35
3DS install note
...
add note to 3DS install instructions regarding lowercase letters.
3 years ago
Gleb Mazovetskiy
9a1056bd0c
GitHub CI: Remove git SHA from cache key
...
We're hitting the GitHub cache limit because we create a new cache for
every commit.
Reuse the same cache instead.
3 years ago
Gleb Mazovetskiy
e35595a1eb
StrCat improvements
...
1. Use `fmt::format_int` directly instead of parsing a format string.
2. Use `AppendStrView`.
3. Define the varargs versions using fold expressions when available.
4. Add tests.
3 years ago
obligaron
36ecc50fcb
Always use infravision in Arenas
3 years ago
Gleb Mazovetskiy
86ac8c459c
Bump libfmt
3 years ago