Anders Jenbo
e969a8ad01
Invert player to vision relation
2023-04-21 21:25:19 +02:00
Anders Jenbo
13c5c09990
Clean up Light related naming
...
A few are left unchanged as they will be removed in a later commit
2023-04-21 21:25:19 +02:00
obligaron
40bb3aeb45
Replace earflag with DeathReason
2023-04-14 23:34:54 +02:00
staphen
57cc5ee73e
Fix OOB when triggering a Nova chest
2023-04-08 09:12:06 +02:00
obligaron
e64270bfc6
Fix Flash hits north east direction
2023-03-12 16:00:56 +01:00
Gleb Mazovetskiy
e67ea9b006
Make MissilesData const
...
Instead of temporarily modifying `MissileData` around certain calls,
pass the arguments from the outside.
2023-02-15 10:47:08 +00:00
Gleb Mazovetskiy
98294e0ad5
Optimize MissileData: 32 bytes -> 24
...
23 bytes used, 1 spare byte in the padding.
2023-02-07 08:08:04 +01:00
staphen
72585098e4
Adjust position of Flame Wave missiles before processing
2023-02-06 02:07:42 +01:00
KPhoenix
d813f13700
enum spell_id -> enum class SpellID
2023-02-05 10:24:58 +00:00
Gleb Mazovetskiy
64730bd0bd
Optimize MissileFileData size: 80 bytes -> 32
2023-02-03 19:00:17 +00:00
Gleb Mazovetskiy
0a6a8e8aa0
Clean up missile data access
...
Replace enum static casts with `GetMissile(Sprite)Data`.
2023-02-03 14:37:44 +00:00
KPhoenix
7947b99511
Implement new enum class
2023-02-03 05:05:12 +01:00
Eric Robinson
d7b6c7dca8
Refactor Missile Function Names ( #5733 )
2023-02-03 03:27:57 +01:00
staphen
ed02eb58d4
Don't consume mana when Mana Shield is already active
2023-02-01 04:04:03 +01:00
DakkJaniels
fa56ae31ea
move damage formula for guardian firebolt to GuardianTryFireAt so each firebolt damage is randomized
2023-01-30 20:19:39 +01:00
DakkJaniels
fb420b1473
Consistency: use damage formulas if missile damage has not already been assigned
2023-01-30 19:01:18 +01:00
DakkJaniels
f750e77476
remove commented out code
2023-01-30 19:01:18 +01:00
DakkJaniels
48e562e875
clean up MI_Projectile
2023-01-30 19:01:18 +01:00
DakkJaniels
d2134f93cd
MI_Firebolt -> MI_Projectile. Calculate damage when missile is added.
2023-01-30 19:01:18 +01:00
Eric Robinson
30c1991039
enum _mai_id -> enum class MonsterAIID (#5683 )
2023-01-28 00:10:15 +01:00
c99f7cf644
Floating numbers ( #5639 )
...
Co-authored-by: qndel <[email protected] >
Co-authored-by: Stephen C. Wills <[email protected] >
2023-01-22 07:20:10 +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
KPhoenix
12fc02f7f5
Fix redundancy in AddBoneSpirit function
2023-01-15 14:58:12 +01:00
staphen
0d43f468e5
Improve missile collision interpolation logic
2023-01-12 15:32:08 +01:00
Anders Jenbo
0c5fd01067
Change missile_resistance into class DamageType
2023-01-12 11:03:07 +01:00
KPhoenix
a22389613d
Remove No Monster Heal from Fire Arrows
2022-12-31 22:13:58 +01:00
Gleb Mazovetskiy
09d7f99c32
Optimize IsTileSafe
...
Add dungeon flags for Fire/Lightning Wall and use them to check if the
monster considers the tile safe.
2022-12-09 05:00:14 +01:00
obligaron
610e80f098
Sync break crux
2022-11-14 06:58:56 +01:00
Gleb Mazovetskiy
6dca019de2
Use function_ref instead of function
...
`function_ref` is a lightweight function pointer,
whereas `std::function` always involves a heap allocation.
2022-11-02 11:46:15 +00:00
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
2022-11-01 02:43:24 +00:00
Gleb Mazovetskiy
0498d7d3a7
Fix compilation warnings
2022-10-29 13:41:23 +01:00
staphen
702fedbc54
Remove ConsumeSpell() from AddMissile() functions
2022-10-23 10:10:57 +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
obligaron
795a43dd89
Add Arena Support
2022-10-14 16:25:30 +02:00
ephphatha
ea3ecbd619
Use _item_indexes type where appropriate
2022-10-11 18:51:13 +02:00
ephphatha
28d685ea85
Save and restore item seed when downgrading potions from steal trap
2022-10-11 11:39:47 +02:00
obligaron
7ad5a45905
Fix warp position offset and adjust some spawn positions ( #5364 )
2022-09-25 02:20:35 +02:00
Mikołaj Piróg
5e340d3261
Replace level member with a member function in monster ( #5336 )
2022-09-17 11:39:44 +02:00
obligaron
72dc999aba
Fix cathedral warp for upstairs
2022-09-10 04:40:00 +02:00
obligaron
948e74c539
Fix crypt warp
2022-09-10 04:40:00 +02:00
obligaron
9c97b302cd
Simplify AddWarp
2022-09-10 04:40:00 +02:00
zaid-ismail031
af32a42e53
Added clang formatting to missiles.cpp.
2022-08-30 21:25:44 +02:00
zaid-ismail031
b0c9a8024e
Refactor missiles.cpp to use Direction enum instead of magic Point/Displacement constants.
2022-08-30 21:25:44 +02:00
Anders Jenbo
f8dca40427
Merge branch 'master' of https://github.com/diasurgical/devilution
2022-08-27 02:41:28 +02:00
obligaron
deb0d6d9e1
Use missile helpers in MoveMissile/UpdateMissileRendererData ( #5291 )
2022-08-26 21:50:42 +02:00
obligaron
68891a8df1
Rename MissileMovementDistrubution => MissileMovementDistribution
2022-08-20 23:41:40 +02:00
obligaron
4b93249eee
Use MoveMissile in SpawnLightning to correctly check walls
2022-08-20 23:41:40 +02:00
obligaron
9d68478cb4
Split MoveMissile out of MoveMissileAndCheckMissileCol
2022-08-20 23:41:40 +02:00
obligaron
4dc0666b12
Resurrect SyncPositionWithParent
2022-08-12 23:44:16 +02:00
Vladimir Olteanu
58ae9169f1
Item effect cleanup ( #5229 )
2022-08-11 01:00:38 +02:00