Commit Graph
77 Commits
Author SHA1 Message Date
Anders Jenbo 16b65120ea Clean up LevelMonsterTypes related code 2022-07-15 19:36:47 +02:00
ephphatha 1337ff6ea2 Add check if a monster potentially has leashed minions 2022-07-13 07:13:34 +02:00
Gleb Mazovetskiy 33ac2cca8e ♻️ Make Monster counters size_t 2022-07-12 03:04:53 +01:00
Mikołaj Piróg 15989609a8 Members' name changes and comments in Monster struct (#4861) 2022-07-06 10:21:22 +02:00
Gleb Mazovetskiy 6949a6f418 Monster: Remove MType/MData pointers
These pointers are redundant, replaces them with methods.
2022-07-03 13:21:11 +01:00
Mikołaj Piróg 7cab074aa5 Correct members' names in monster.h (#4850)
* Fix case in AnimStruct
* Rename CMonster members
2022-07-01 23:34:32 +02:00
Mikołaj Piróg 2e7ff45fbf Monster global constants cleanup (#4827)
* Change #defines to constexpr const, add constexpr where applicable, fix typos
2022-07-01 00:43:03 +02:00
Anders Jenbo 6d56058708 Move level generation to subfolder 2022-06-23 09:21:58 +02:00
Gleb Mazovetskiy a66ca44695 Zero-based frame indexing
Index frames starting at 0 instead of 1.
2022-04-14 04:39:26 +01:00
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.
2022-03-06 04:49:13 +01:00
qndel 9ba64ad08b TRN rewrite + bugfix (#4056)
* working new TRN system
* apply TRNs to all unique missiles
2022-02-20 14:28:51 +01:00
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.
2022-02-01 04:04:59 +00:00
ephphathaandAnders Jenbo b12de6fe12 Use scoped enum for Direction
Identified and removed an instance of Direction being used as an argument for a bool parameter

Removed a single-use temporary variable being cast from sprite frame to direction to size_t

Co-authored-by: Anders Jenbo <[email protected]>

Fix alignment of WalkSettings array
2021-09-12 02:27:47 +02:00
Juliano Leal Goncalves 0d3d4c14f6 🚚 Rename 'Dead' concept to 'Corpse' everywhere (#2808) 2021-09-06 12:49:00 +02:00
qndel e355d03019 Rename SetDead 2021-08-21 02:11:41 +02:00
vlad a07ea153ae load animation into correct Dead slot - fixes crash on killing petrified monsters -
fixes https://github.com/diasurgical/devilutionX/issues/2633
2021-08-20 00:47:45 +02:00
Anders Jenbo e9f1d6ad88 Fix crash on monster death with existing saves
fixes #2603
2021-08-15 04:08:05 +02:00
Anders Jenbo f289fbcec5 Remove dead missile code 2021-08-13 03:59:29 +02:00
Vladimir Olteanu 040ca7b1e9 Remove logic related to unused MFLAG_ALLOW_SPECIAL 2021-08-12 00:19:09 +02:00
Vladimir Olteanu 3364a4e00c Refactor MisFileData
MisFileData: make pinnedMem private
2021-08-12 00:19:09 +02:00
Anders Jenbo 77b72da276 ♻️Use monster by reference when possible 2021-07-14 20:22:35 -07:00
Anders Jenbo ef6275caac Clean up private function names 2021-07-12 17:59:22 -07:00
obligaron 54d63e2edd Change AnimationInfo.pCelSprite to const 2021-07-12 07:40:38 -07:00
obligaron 3e57d0d69b Introduce MonsterGraphic enum class 2021-07-12 07:40:38 -07:00
obligaron 5f7a2803fc Introduce CMonster::GetAnimData 2021-07-12 07:40:38 -07:00
Anders Jenbo 9ae908f947 Rename missile globals 2021-07-08 02:01:14 -07:00
Anders Jenbo 07ad083fda Rename monster globals 2021-07-08 02:01:14 -07:00
Anders Jenbo cb564a2d54 Clean up A-D 2021-07-04 05:25:37 -07:00
Anders Jenbo 4eabc6024b Apply various cleanups via Android Studio 2021-07-03 18:27:17 -07:00
Anders Jenbo e11b86b6f1 Clang-tidy: llvm-namespace-comment 2021-06-27 01:44:20 +02:00
Anders Jenbo de4ced7e4f Clang-tidy: readability-qualified-auto 2021-06-27 00:56:08 +02:00
obligaron b5ad92eb2c Convert _mAnimData to CelSprite 2021-06-18 21:47:19 +02:00
obligaron ceda0b46ce Introduce InitDeadAnimationFromMonster 2021-06-18 21:47:19 +02:00
Juliano Leal Goncalves b3ec79af4f Leverage 'Point' in Lighting and Player functions (#2048) 2021-05-24 17:28:52 +02:00
Juliano Leal Goncalves d55cd99dd5 🚚 Rename 'direction' enum to 'Direction' 2021-05-24 04:46:08 +02:00
Gleb Mazovetskiy 28182ca5e3 🧹 Fix a couple more compilation warnings 2021-05-01 23:55:45 +02:00
Vladimir Olteanu 4d5b9ac023 Coding style changes for dead.h, dead.cpp 2021-04-28 12:56:00 +02:00
Vladimir Olteanu 2a3cf98850 Slight cleanup of dead{.h,.cpp} 2021-04-28 12:56:00 +02:00
obligaron 239a43cc1c Remove "AnimWidth2" expect for missiles (#1680) 2021-04-25 13:32:33 +02:00
Anders Jenbo 61d15e23db 🎨 Apply direction enum to monsters and relations
Missiles _mimfnum is being used for a lot more then just directions and
can also be a 16 degree direction so can't apply enum verbs and
restricitons to it in most cases. This in turns also affects SetMissDir
and some other functions that have to stay int.
2021-04-18 23:13:03 +02:00
Anders Jenbo b238d320c2 🎨 Clean up dead.cpp 2021-04-18 21:21:51 +02:00
Anders Jenbo 01afe7c997 🎨 clang-tidy iterators 2021-04-18 21:21:51 +02:00
Anders Jenbo d9c2108513 🎨 clang-tidy type definition 2021-04-18 21:21:51 +02:00
Anders Jenbo 997c1dba55 🚚 Split up all.h in to proper header relations 2021-04-16 01:04:54 +02:00
Anders Jenbo 61244c4d93 ♻️ Rearange and apply more enums 2021-04-10 05:24:01 +02:00
Anders Jenbo bfb3c11c2b 🎨 Change namespace to devilution 2021-04-06 15:21:25 +02:00
Anders Jenbo 630e507f63 🚚 Apply namespace 2021-04-06 15:21:25 +02:00
pionere f5c1079d6f eliminate unused code 2021-02-19 22:04:11 +01:00
Anders Jenbo 3c5982083f Merge branch 'master' of github.com:diasurgical/devilution 2020-04-06 12:05:13 +02:00
Anders Jenbo f217b14e3e Order variables logically 2020-04-06 05:43:20 +02:00