948 Commits
Author SHA1 Message Date
obligaron 423150b457 Introduce SpawnMonster 2024-01-12 00:35:40 +01:00
obligaron b42b72221f Use PlayerAtPosition at more places 2023-12-05 20:40:30 +01:00
obligaron fae6b3d817 Change Player::getId() and MyPlayerId to uint8_t 2023-12-05 19:05:08 +01:00
obligaron 75f68e1b8f Introduce Player::occupyTile 2023-11-26 23:38:34 +01:00
obligaron 81d738e303 Introduce Monster::occupyTile 2023-11-26 17:39:50 +01:00
obligaron 79a43dc1de Introduce AddMissile overloads specific for player and monster 2023-11-26 13:36:28 +01:00
Gleb Mazovetskiy 17f95a04da Migrate missile sprite data to txtdata 2023-11-18 17:33:14 +00:00
Gleb Mazovetskiy c5a5dc9f5c Fix a few MSVC warnings 2023-11-05 12:57:59 +00:00
Anders Jenbo bb2e189327 Convert _sfx_id in to class enum 2023-11-02 14:34:24 +01:00
ephphatha c1f3dcb705 Use safer versions of random number functions instead of GenerateRnd 2023-09-19 16:52:40 +02:00
Gleb Mazovetskiy 62e9aa0448 MissilePosition: Use WorldTilePosition
Reduces struct size and makes the types of coordinates more obvious.
2023-08-29 20:00:54 +01:00
ephphatha da76e131e4 Add getter/setter for character levels to ensure _pNextExper stays synced 2023-08-24 05:46:44 +02:00
Gleb Mazovetskiy 9e8465e152 Clean up spell book rendering 2023-08-17 18:11:02 +09:00
Gleb Mazovetskiy c19bfe87fa Remove utils/stdcompat/algorithm.hpp 2023-08-14 01:54:29 +01:00
Gleb Mazovetskiy 62d067b653 Remove utils/stdcompat/abs.hpp 2023-08-14 01:54:29 +01:00
Gleb Mazovetskiy 999f44cf07 Point: Safer operator-
1. Require both operands to have the same signedness to avoid surprises.
2. Only allow unary negation on signed points.

Fixes #6409
Also fixes a potential bug in the sound position calculation.
2023-08-11 22:58:44 +01:00
staphen 21af333d90 Fix missiles passing through enemies on SW/NE diagonal 2023-08-04 18:38:05 +02:00
staphen 36186ca9b5 Don't extrapolate missile position in collision interpolation logic 2023-08-03 06:52:41 +02:00
obligaron 09bc43b0ed Ensure warp and teleport target position is free 2023-07-21 14:23:49 +02:00
Gleb Mazovetskiy de081b7080 Fix a few compilation warnings 2023-07-12 12:35:06 +01:00
Anders Jenbo 8e7c29ecd3 Remove unused player property _pISplDur 2023-06-28 23:50:50 +02:00
obligaron aa354849ee Fix stone curse shows the wrong animation & infinite petrify 2023-05-28 11:19:42 +02:00
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.
2023-05-10 16:29:27 +01:00
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