Anders Jenbo
134791af3f
Remove pointless math related to finding monsters for levels
4 years ago
Anders Jenbo
0645d9b2a1
Correct missing hellfire level mapping in leveltype
...
Hellfire never added the 2 new dungion types, instead it makes
additional checks on currlevel. This is confusing and mess, so cleaned
it up.
4 years ago
qndel
89109dc9f4
HP bar tweaks and fixes ( #4525 )
...
* HP bar tweaks and fixes
4 years ago
DakkJaniels
dad46e1905
Item special effect enum ( #4129 )
4 years ago
Gleb Mazovetskiy
a66ca44695
Zero-based frame indexing
...
Index frames starting at 0 instead of 1.
4 years ago
Gleb Mazovetskiy
ade8aba822
Fix some more warnings
4 years ago
staphen
32311d4835
Fix Diablo's HP
4 years ago
obligaron
7d1e2d738e
Ensure Reflect + Thorn don't kill a monster twice ( #4318 )
4 years ago
Anders Jenbo
55a0b71b1c
Only spawn loot once
4 years ago
Anders Jenbo
1409e604f5
Reduce string conversions
4 years ago
Anders Jenbo
718c46e7fe
Remove use of tempstr
4 years ago
obligaron
e0ef3a2307
Init monster TRN after monster load
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
DakkJaniels
7bc19ee91a
add enum for the spell flags. Adjust code to use them.
4 years ago
qndel
d3995736b9
fix spawning unique monsters
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
DakkJaniels
0790416781
Unique Monster Variable Rename ( #4060 )
...
* fix variable name to reflect what it is modifying (unique monster custom to hit, not custom hit points)
* align UniqueMonstersData table
4 years ago
staphen
30a9595020
Fix Hork Demon and Nakrul drops in multiplayer
4 years ago
ephphatha
32d397eb2a
Add max_size checks when adding missiles to allow for limited size containers
...
This doesn't handle failed allocations (e.g. if the platform runs out of memory) but makes it easier to use a fixed size container on limited memory devices.
4 years ago
obligaron
234a053863
Change Missiles Array to std::list
4 years ago
SoundChaser83
b52724a15e
Fix monster damage potentially being off by 63/64th
...
Monster damage values from melee/missile hits could potentially add or subtract up to 63/64ths of damage over and above a monster's usual damage range
Co-authored-by: Stephen C. Wills <staphen@gmail.com>
4 years ago
staphen
bd0470994a
Initialize golems before objects
4 years ago
obligaron
f2f764ed68
Fix Knockback checks wrong position when a monster is moving
4 years ago
obligaron
f58a42ca97
Check that monsters aren't placed in doors
4 years ago
Anders Jenbo
ffae6d805b
Clean up check for borken monster position in DirOK
4 years ago
obligaron
ff5de056fa
Add all (boolean) Game Settings to Settingsmenu ( #3616 )
4 years ago
qndel
7b82c52da9
add _mai_id enums in comment
4 years ago
Gleb Mazovetskiy
3aa8149d3e
`PrintMonstHistory`: Fix string manipulation
...
The code previously assumed that there is an ASCII separator after each
resistance type.
Different languages may use something else entirely. Relaxes the
assumption to any single code point to avoid producing malformed
UTF-8.
4 years ago
qndel
1110927057
make berserked monsters fight each other
4 years ago
Andrew James
796e2813cf
Use scoped enums for DungeonFlags/BFLAG ( #3135 )
4 years ago
Gleb Mazovetskiy
3d308983a8
Migrate to libmpq
...
libmpq is a much simpler alternative to StormLib for reading MPQ archives.
We use our own fork of libmpq: https://github.com/diasurgical/libmpq
Impact:
* DevilutionX is now a lot more portable. Unlike StormLib, libmpq only
needs platform-specific code for Windows.
* Locks around file access **removed** (instead we duplicate the file descriptor for streamed audio only).
* RAM usage is **300 KiB** lower than StormLib.
* Stripped release linux_x86_64 binary is **32 KiB** smaller.
* Amiga build now hangs instead of crashing.
4 years ago
Anders Jenbo
160c0fc2e4
Fix OOB when monsters attack monsters
4 years ago
qndel
e567953bc9
Sharing automap exploration in multiplayer
4 years ago
qndel
0ccdf940f7
fix bounds checks ( #3237 )
4 years ago
Anders Jenbo
0e3c1321fb
🐛 Fix scavenger groups getting stuck
4 years ago
Thomas Christlieb
e5f5c4ef0c
Make variable a const reference
...
Co-authored-by: Juliano Leal Goncalves <julealgon@gmail.com>
4 years ago
ThomasChr
b473a33496
remove light source when killing a berserk monster
4 years ago
Anders Jenbo
aa90229821
🐛 Make monsters follow the leader
4 years ago
qndel
f8cda02456
apply bounds check function
4 years ago
qndel
2d81357069
fix anvil monsters placement ( #3035 )
5 years ago
Anders Jenbo
2708b16c05
Validate CMD_SYNCDATA ( #2968 )
5 years ago
Anders Jenbo
671fdbd125
Implement contextural translation (pgettext)
...
Fixes #2369
Fixes #2790
5 years ago
obligaron
0acaec710c
Remove -m debug command line
5 years ago
obligaron
74a1810576
Remove most uses of BFLAG_MONSTLR
5 years ago
obligaron
e62aaa562f
Fix missiles don't hit horizontal walking players/monsters
5 years ago
qndel
a5ea763567
fix saves bricked by spawn command
5 years ago
staphen
60492ef954
Add proper graphics for gamepad
5 years ago
Siddharth singh chouhan
ba161f623e
Move documentation from implementations to declarations. ( #2858 )
5 years ago
Juliano Leal Goncalves
379a27b64a
♻️ Convert 'ItemType' enum to enum class
...
🎨 Rename 'ItemType' elements to enum class standards
5 years ago