Anders Jenbo
860bd1cebf
Operate directly on SOL data
4 years ago
obligaron
19749420b5
Introduce Player::isOnActiveLevel
4 years ago
Andrew James
0add7a8af6
Define sizes using Size type in control.cpp/stash.cpp ( #4737 )
...
* Use appropriate types for size constants in control.cpp
* Declare constexpr value for iterating over the cells in a stash grid
* Use appropriate type for UIRectangle dimensions
4 years ago
Anders Jenbo
1203514383
Clean up use of currlevel
4 years ago
Andrew James
1047e408bd
Simplify logic of UpdateMissilePos using helpers from 4620 ( #4621 )
4 years ago
qndel
354e329644
Players[MyPlayerId] -> MyPlayer
4 years ago
obligaron
bc15bdf3a9
Remove PANEL_ defines and replace them with GetMainPanel()
4 years ago
obligaron
70c5cf6cad
Fix item label text with open stash ( #4595 )
...
* Item labels: check if stash is open in IsMouseOverGameArea
* Add IsLeft/RightPanelOpen
4 years ago
qndel
0e2d056a9a
fix refreshing/drawing bottom description part
4 years ago
qndel
0f0e2895fd
fix displacement on death
4 years ago
Anders Jenbo
dc706e8ed5
Use HoldItem for determining if an item is held
...
This cleans up a bit of code and solves a few edge cases where an item
could be lost, the game be unresponsive, or miss fire an event during
lag cause of the cursor not reflecting the currently held item.
4 years ago
Andrew James
8ed94ec365
Use zero-based arch indexes
...
fixes #4434
4 years ago
Gleb Mazovetskiy
a66ca44695
Zero-based frame indexing
...
Index frames starting at 0 instead of 1.
4 years ago
Gleb Mazovetskiy
7de6a25b41
Remove `(un)lock_buf`
...
We do not seem to render from multiple threads, so these calls are
unnecessary.
4 years ago
Anders Jenbo
a48f89007d
Implement stash
4 years ago
obligaron
973ce9d46e
Use original position for DrawPlayerIconHelper
4 years ago
Gleb Mazovetskiy
f4b43c478a
Fix reflect icon offset ( #4133 )
...
Regression introduced in f4bce38875
4 years ago
Gleb Mazovetskiy
f4bce38875
Use `uint16_t` for sprite widths
4 years ago
Gleb Mazovetskiy
7fede6c4cb
Clean up owned/unowned CelSprite ambiguity
...
Makes `CelSprite` unowned and adds a new `OwnedCelSprite` class for
owned sprites.
This clarifies ownership and makes the code cleaner in a number of
places.
Additionally, because the `CelSprite` class is now tiny (1 less
pointer), we can pass it by-value instead of by-reference, removing a
pointer indirection in the rendering functions.
4 years ago
qndel
48f102eff1
Chat log
4 years ago
qndel
9ba64ad08b
TRN rewrite + bugfix ( #4056 )
...
* working new TRN system
* apply TRNs to all unique missiles
4 years ago
Gleb Mazovetskiy
48ff656dc0
Load monster graphics into a single buffer
...
Follow-up to a5e1fa5bbe , which loaded
the missiles into a single buffer.
4 years ago
Gleb Mazovetskiy
a5e1fa5bbe
Load missile frames into a single buffer
...
Previously, the memory for each frame was allocated separately.
Changes it to allocate a single buffer for all the frames.
This has the following advantages:
1. Less bookkeeping overhead in the allocator.
2. Less alignment overhead (allocator results are max-aligned by default).
We can follow this up with a similar treatment for other multi-file
animations.
4 years ago
qndel
9536927301
Display hp/mana values on life/mana orbs ( #4006 )
4 years ago
obligaron
234a053863
Change Missiles Array to std::list
4 years ago
obligaron
35dc64312e
Show preview CelSprite for player actions (Introduce PlayerStruct.pPreviewCelSprite and UpdatePreviewFrame)
4 years ago
obligaron
ac0bd7bb58
DrawPlayer: Calculate Width2 later
4 years ago
Gleb Mazovetskiy
e12adf689e
Fix windows build
4 years ago
Anders Jenbo
6b2481a76c
Touch support on all SDL2 platforms
4 years ago
Trihedraf
bb68c800bc
move FPS display down due to new display of difficulty
4 years ago
ephphatha
279fbe32b3
Tidy up checks for missile collision with objects/tiles
...
This was repeated in multiple places with essentially identical logic. Can expose the existing missiles.cpp function to capture the use in scrollrt.cpp
4 years ago
ephphatha
01ffc2c501
Use ObjectAtPosition helper in DrawObject
4 years ago
Gleb Mazovetskiy
c57644970f
Move `UiFlags` and `UiPanels` into their own files
...
The first breaks circular dependency between `DiabloUI` and `text_render`.
The latter one moves `UiPanels` to a more appropriate place.
4 years ago
Gleb Mazovetskiy
7e1fea6f76
clang-format all files in {Source,test}/
...
Also includes a few manual tweaks to comments and newlines for better results.
Co-authored-by: Anders Jenbo <anders@jenbo.dk>
4 years ago
obligaron
677303cba9
Reduce use of view globals in game menu
4 years ago
qndel
4072bd351f
fix debug display in town
4 years ago
Anders Jenbo
56170b3372
Clean up id normalization
4 years ago
qndel
53f89fb9d9
debug fps command ( #3418 )
4 years ago
Andrew James
796e2813cf
Use scoped enums for DungeonFlags/BFLAG ( #3135 )
4 years ago
qndel
46ed79ad42
add megatiles to tiledata ( #3211 )
4 years ago
ephphatha
782e07d967
Refactor DrawObject to avoid repeated Objects lookup
...
The check if the object position is offset is not strictly necessary as a displacement of {0, 0} remains the same after the world/screen transform.
4 years ago
Anders Jenbo
609414fd69
[touch] Indicate level up in a touch friendly way
4 years ago
qndel
0ccdf940f7
fix bounds checks ( #3237 )
4 years ago
Anders Jenbo
1ba7e07b29
Do not show the cursor when using a touch device
4 years ago
obligaron
f9b306d24f
Change EnableFrameCount() from toggle to enable only
4 years ago
qndel
f8cda02456
apply bounds check function
4 years ago
staphen
1142d2ee7b
Hardware rendering for the virtual gamepad
5 years ago
obligaron
e62aaa562f
Fix missiles don't hit horizontal walking players/monsters
5 years ago
staphen
599b29d825
Add renderer for displaying virtual gamepad on screen
5 years ago
obligaron
9678d002d3
Reduce exported functions in debug.h
5 years ago