Anders Jenbo
f81f3814f5
Use fixed sizes for player properties
3 years ago
Anders Jenbo
8e7c29ecd3
Remove unused player property _pISplDur
3 years ago
obligaron
aa354849ee
Fix stone curse shows the wrong animation & infinite petrify
3 years ago
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.
3 years ago
Anders Jenbo
e969a8ad01
Invert player to vision relation
3 years ago
Anders Jenbo
13c5c09990
Clean up Light related naming
...
A few are left unchanged as they will be removed in a later commit
3 years ago
obligaron
40bb3aeb45
Replace earflag with DeathReason
3 years ago
staphen
57cc5ee73e
Fix OOB when triggering a Nova chest
3 years ago
obligaron
e64270bfc6
Fix Flash hits north east direction
3 years ago
Gleb Mazovetskiy
e67ea9b006
Make `MissilesData` const
...
Instead of temporarily modifying `MissileData` around certain calls,
pass the arguments from the outside.
3 years ago
Gleb Mazovetskiy
98294e0ad5
Optimize `MissileData`: 32 bytes -> 24
...
23 bytes used, 1 spare byte in the padding.
3 years ago
staphen
72585098e4
Adjust position of Flame Wave missiles before processing
3 years ago
KPhoenix
d813f13700
`enum spell_id` -> `enum class SpellID`
3 years ago
Gleb Mazovetskiy
64730bd0bd
Optimize `MissileFileData` size: 80 bytes -> 32
3 years ago
Gleb Mazovetskiy
0a6a8e8aa0
Clean up missile data access
...
Replace enum static casts with `GetMissile(Sprite)Data`.
3 years ago
KPhoenix
7947b99511
Implement new enum class
3 years ago
Eric Robinson
d7b6c7dca8
Refactor Missile Function Names ( #5733 )
3 years ago
staphen
ed02eb58d4
Don't consume mana when Mana Shield is already active
3 years ago
DakkJaniels
fa56ae31ea
move damage formula for guardian firebolt to GuardianTryFireAt so each firebolt damage is randomized
3 years ago
DakkJaniels
fb420b1473
Consistency: use damage formulas if missile damage has not already been assigned
3 years ago
DakkJaniels
f750e77476
remove commented out code
3 years ago
DakkJaniels
48e562e875
clean up MI_Projectile
3 years ago
DakkJaniels
d2134f93cd
MI_Firebolt -> MI_Projectile. Calculate damage when missile is added.
3 years ago
Eric Robinson
30c1991039
`enum _mai_id` -> `enum class MonsterAIID` ( #5683 )
3 years ago
Anders Jenbo
c99f7cf644
Floating numbers ( #5639 )
...
Co-authored-by: qndel <stefan551@o2.pl>
Co-authored-by: Stephen C. Wills <staphen@gmail.com>
3 years ago
KPhoenix
8db521727d
`enum missile_id` -> `enum class MissileID`
...
Changes `enum missile_id` to `enum class MissileID`
3 years ago
KPhoenix
12fc02f7f5
Fix redundancy in AddBoneSpirit function
3 years ago
staphen
0d43f468e5
Improve missile collision interpolation logic
3 years ago
Anders Jenbo
0c5fd01067
Change missile_resistance into class DamageType
3 years ago
KPhoenix
a22389613d
Remove No Monster Heal from Fire Arrows
3 years ago
Gleb Mazovetskiy
09d7f99c32
Optimize IsTileSafe
...
Add dungeon flags for Fire/Lightning Wall and use them to check if the
monster considers the tile safe.
3 years ago
obligaron
610e80f098
Sync break crux
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
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
Gleb Mazovetskiy
0498d7d3a7
Fix compilation warnings
3 years ago
staphen
702fedbc54
Remove ConsumeSpell() from AddMissile() functions
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
obligaron
795a43dd89
Add Arena Support
3 years ago
ephphatha
ea3ecbd619
Use _item_indexes type where appropriate
3 years ago
ephphatha
28d685ea85
Save and restore item seed when downgrading potions from steal trap
3 years ago
obligaron
7ad5a45905
Fix warp position offset and adjust some spawn positions ( #5364 )
4 years ago
Mikołaj Piróg
5e340d3261
Replace level member with a member function in monster ( #5336 )
4 years ago
obligaron
72dc999aba
Fix cathedral warp for upstairs
4 years ago
obligaron
948e74c539
Fix crypt warp
4 years ago
obligaron
9c97b302cd
Simplify AddWarp
4 years ago
zaid-ismail031
af32a42e53
Added clang formatting to missiles.cpp.
4 years ago
zaid-ismail031
b0c9a8024e
Refactor missiles.cpp to use Direction enum instead of magic Point/Displacement constants.
4 years ago
obligaron
deb0d6d9e1
Use missile helpers in MoveMissile/UpdateMissileRendererData ( #5291 )
4 years ago
obligaron
68891a8df1
Rename MissileMovementDistrubution => MissileMovementDistribution
4 years ago
obligaron
4b93249eee
Use MoveMissile in SpawnLightning to correctly check walls
4 years ago